monkey-style-guide 2.0.143 → 2.0.144
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -15
- package/assets/icons/arrows.svg +6 -0
- package/assets/icons/bank-account.svg +12 -0
- package/assets/icons/card-machine.svg +14 -0
- package/assets/icons/contract-pen.svg +7 -0
- package/assets/icons/dollar-sign-circle.svg +7 -0
- package/assets/icons/medal.svg +12 -0
- package/assets/icons/money-hand.svg +6 -0
- package/assets/icons/money.svg +6 -0
- package/assets/icons/new-company.svg +10 -0
- package/esm2020/lib/components/icon/icon-arrows.component.mjs +15 -0
- package/esm2020/lib/components/icon/icon-bank-account.component.mjs +15 -0
- package/esm2020/lib/components/icon/icon-card-machine.component.mjs +15 -0
- package/esm2020/lib/components/icon/icon-contract-pen.component.mjs +15 -0
- package/esm2020/lib/components/icon/icon-dollar-sign-circle.component.mjs +15 -0
- package/esm2020/lib/components/icon/icon-medal.component.mjs +15 -0
- package/esm2020/lib/components/icon/icon-money-hand.component.mjs +15 -0
- package/esm2020/lib/components/icon/icon-money.component.mjs +15 -0
- package/esm2020/lib/components/icon/icon-new-company.component.mjs +15 -0
- package/esm2020/lib/components/icon/icon.component.mjs +191 -74
- package/esm2020/lib/components/icon/icon.module.mjs +29 -2
- package/esm2020/lib/components/icon/index.mjs +10 -1
- package/fesm2015/monkey-style-guide.mjs +246 -3
- package/fesm2015/monkey-style-guide.mjs.map +1 -1
- package/fesm2020/monkey-style-guide.mjs +246 -3
- package/fesm2020/monkey-style-guide.mjs.map +1 -1
- package/lib/components/icon/icon-arrows.component.d.ts +7 -0
- package/lib/components/icon/icon-bank-account.component.d.ts +7 -0
- package/lib/components/icon/icon-card-machine.component.d.ts +7 -0
- package/lib/components/icon/icon-contract-pen.component.d.ts +7 -0
- package/lib/components/icon/icon-dollar-sign-circle.component.d.ts +7 -0
- package/lib/components/icon/icon-medal.component.d.ts +7 -0
- package/lib/components/icon/icon-money-hand.component.d.ts +7 -0
- package/lib/components/icon/icon-money.component.d.ts +7 -0
- package/lib/components/icon/icon-new-company.component.d.ts +7 -0
- package/lib/components/icon/icon.module.d.ts +83 -74
- package/lib/components/icon/index.d.ts +9 -0
- package/monkey-style-guide-2.0.144.tgz +0 -0
- package/package.json +1 -1
- package/monkey-style-guide-2.0.143.tgz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monkey-style-guide.mjs","sources":["../../../projects/monkey-style-guide/src/lib/core/services/monkey-style-guide.service.ts","../../../projects/monkey-style-guide/src/lib/core/services/settings/monkey-style-guide-theme-settings.service.ts","../../../projects/monkey-style-guide/src/lib/core/services/settings/monkey-style-guide-settings.service.ts","../../../projects/monkey-style-guide/src/lib/core/utils/utils.ts","../../../projects/monkey-style-guide/src/lib/core/services/snackbar/mokey-style-guide-snackbar.service.ts","../../../projects/monkey-style-guide/src/lib/core/services/modal/monkey-style-guide-modal.service.ts","../../../projects/monkey-style-guide/src/lib/core/services/modal/monkey-style-guide-modal-fixed.service.ts","../../../projects/monkey-style-guide/src/lib/components/badge/badge.component.ts","../../../projects/monkey-style-guide/src/lib/components/badge/badge.module.ts","../../../projects/monkey-style-guide/src/lib/components/icon/icon-arrow-down.component.ts","../../../projects/monkey-style-guide/assets/icons/arrow-down.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-arrow-left.component.ts","../../../projects/monkey-style-guide/assets/icons/arrow-left.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-arrow-right.component.ts","../../../projects/monkey-style-guide/assets/icons/arrow-right.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-arrow-up.component.ts","../../../projects/monkey-style-guide/assets/icons/arrow-up.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-auction.component.ts","../../../projects/monkey-style-guide/assets/icons/auction.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-bank.component.ts","../../../projects/monkey-style-guide/assets/icons/bank.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-bell.component.ts","../../../projects/monkey-style-guide/assets/icons/bell.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-book.component.ts","../../../projects/monkey-style-guide/assets/icons/book.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-box.component.ts","../../../projects/monkey-style-guide/assets/icons/box.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-calendar.component.ts","../../../projects/monkey-style-guide/assets/icons/calendar.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-camera.component.ts","../../../projects/monkey-style-guide/assets/icons/camera.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-chat.component.ts","../../../projects/monkey-style-guide/assets/icons/chat.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-check-circle-out.component.ts","../../../projects/monkey-style-guide/assets/icons/check-circle-out.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-check-circle.component.ts","../../../projects/monkey-style-guide/assets/icons/check-circle.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-check-grey.component.ts","../../../projects/monkey-style-guide/assets/icons/check-grey.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-check-white.component.ts","../../../projects/monkey-style-guide/assets/icons/check-white.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-check.component.ts","../../../projects/monkey-style-guide/assets/icons/check.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-clipboard.component.ts","../../../projects/monkey-style-guide/assets/icons/clipboard.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-clock.component.ts","../../../projects/monkey-style-guide/assets/icons/clock.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-close.component.ts","../../../projects/monkey-style-guide/assets/icons/close.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-cnpj.component.ts","../../../projects/monkey-style-guide/assets/icons/cnpj.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-codepen.component.ts","../../../projects/monkey-style-guide/assets/icons/codepen.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-company-name.component.ts","../../../projects/monkey-style-guide/assets/icons/company-name.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-contract.component.ts","../../../projects/monkey-style-guide/assets/icons/contract.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-delete.component.ts","../../../projects/monkey-style-guide/assets/icons/delete.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-document.component.ts","../../../projects/monkey-style-guide/assets/icons/document.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-dollar-sign.component.ts","../../../projects/monkey-style-guide/assets/icons/dollar-sign.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-domain.component.ts","../../../projects/monkey-style-guide/assets/icons/domain.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-download.component.ts","../../../projects/monkey-style-guide/assets/icons/download.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-edit-square.component.ts","../../../projects/monkey-style-guide/assets/icons/edit-square.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-edit.component.ts","../../../projects/monkey-style-guide/assets/icons/edit.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-email.component.ts","../../../projects/monkey-style-guide/assets/icons/email.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-empty-doc.component.ts","../../../projects/monkey-style-guide/assets/icons/empty-doc.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-error.component.ts","../../../projects/monkey-style-guide/assets/icons/error.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-eye-closed.component.ts","../../../projects/monkey-style-guide/assets/icons/eye-closed.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-eye-open.component.ts","../../../projects/monkey-style-guide/assets/icons/eye-open.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-filter.component.ts","../../../projects/monkey-style-guide/assets/icons/filter.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-grid.component.ts","../../../projects/monkey-style-guide/assets/icons/grid.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-help.component.ts","../../../projects/monkey-style-guide/assets/icons/help.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-hexagon.component.ts","../../../projects/monkey-style-guide/assets/icons/hexagon.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-home.component.ts","../../../projects/monkey-style-guide/assets/icons/home.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-image.component.ts","../../../projects/monkey-style-guide/assets/icons/image.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-list.component.ts","../../../projects/monkey-style-guide/assets/icons/list.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-location-pin.component.ts","../../../projects/monkey-style-guide/assets/icons/location-pin.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-login.component.ts","../../../projects/monkey-style-guide/assets/icons/login.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-logout.component.ts","../../../projects/monkey-style-guide/assets/icons/logout.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-menu.component.ts","../../../projects/monkey-style-guide/assets/icons/menu.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-money-cedule.component.ts","../../../projects/monkey-style-guide/assets/icons/money-cedule.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-money-sign.component.ts","../../../projects/monkey-style-guide/assets/icons/money-sign.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-more.component.ts","../../../projects/monkey-style-guide/assets/icons/more.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-offered.component.ts","../../../projects/monkey-style-guide/assets/icons/offered.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-password.component.ts","../../../projects/monkey-style-guide/assets/icons/password.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-people.component.ts","../../../projects/monkey-style-guide/assets/icons/people.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-percent.component.ts","../../../projects/monkey-style-guide/assets/icons/percent.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-person-document.component.ts","../../../projects/monkey-style-guide/assets/icons/person-document.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-person-sad.component.ts","../../../projects/monkey-style-guide/assets/icons/person-sad.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-phone.component.ts","../../../projects/monkey-style-guide/assets/icons/phone.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-pork.component.ts","../../../projects/monkey-style-guide/assets/icons/pork.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-radio.component.ts","../../../projects/monkey-style-guide/assets/icons/radio.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-refresh.component.ts","../../../projects/monkey-style-guide/assets/icons/refresh.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-repeat.component.ts","../../../projects/monkey-style-guide/assets/icons/repeat.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-search.component.ts","../../../projects/monkey-style-guide/assets/icons/search.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-second-warning.component.ts","../../../projects/monkey-style-guide/assets/icons/second-warning.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-settings.component.ts","../../../projects/monkey-style-guide/assets/icons/settings.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-trash.component.ts","../../../projects/monkey-style-guide/assets/icons/trash.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-trophy.component.ts","../../../projects/monkey-style-guide/assets/icons/trophy.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-upload.component.ts","../../../projects/monkey-style-guide/assets/icons/upload.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-user.component.ts","../../../projects/monkey-style-guide/assets/icons/user.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-waiting.component.ts","../../../projects/monkey-style-guide/assets/icons/waiting.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-wallet.component.ts","../../../projects/monkey-style-guide/assets/icons/wallet.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-warning.component.ts","../../../projects/monkey-style-guide/assets/icons/warning.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon.component.ts","../../../projects/monkey-style-guide/src/lib/components/button/button.component.ts","../../../projects/monkey-style-guide/src/lib/components/button/button-dropdown.component.ts","../../../projects/monkey-style-guide/src/lib/components/button/button-avatar.component.ts","../../../projects/monkey-style-guide/src/lib/components/icon/icon.module.ts","../../../projects/monkey-style-guide/src/lib/components/button/button.module.ts","../../../projects/monkey-style-guide/src/lib/components/date-range-picker/date-range-picker.component.ts","../../../projects/monkey-style-guide/src/lib/components/date-range-picker/date-range-picker.module.ts","../../../projects/monkey-style-guide/src/lib/components/input/input.component.ts","../../../projects/monkey-style-guide/src/lib/components/input/input-filter.component.ts","../../../projects/monkey-style-guide/src/lib/components/input/input.module.ts","../../../projects/monkey-style-guide/src/lib/components/option/option.component.ts","../../../projects/monkey-style-guide/src/lib/components/option/option.module.ts","../../../projects/monkey-style-guide/src/lib/components/select/select.component.ts","../../../projects/monkey-style-guide/src/lib/components/input-phone/input-phone.component.ts","../../../projects/monkey-style-guide/src/lib/components/select/select-multiple.component.ts","../../../projects/monkey-style-guide/src/lib/components/select/select-search.component.ts","../../../projects/monkey-style-guide/src/lib/components/select/select-filter.component.ts","../../../projects/monkey-style-guide/src/lib/components/select/select.module.ts","../../../projects/monkey-style-guide/src/lib/components/input-phone/input-phone.module.ts","../../../projects/monkey-style-guide/src/lib/components/checkbox/checkbox.component.ts","../../../projects/monkey-style-guide/src/lib/components/checkbox/checkbox.module.ts","../../../projects/monkey-style-guide/src/lib/components/radiobutton/radiobutton.component.ts","../../../projects/monkey-style-guide/src/lib/components/radiobutton/radiobutton.module.ts","../../../projects/monkey-style-guide/src/lib/components/wizard/wizard.component.ts","../../../projects/monkey-style-guide/src/lib/components/wizard/wizard.module.ts","../../../projects/monkey-style-guide/src/lib/components/file-upload/file-upload.component.ts","../../../projects/monkey-style-guide/src/lib/components/file-upload/file-upload.module.ts","../../../projects/monkey-style-guide/src/lib/components/image-crop/image-crop.component.ts","../../../projects/monkey-style-guide/src/lib/components/image-crop/image-crop.module.ts","../../../projects/monkey-style-guide/src/lib/components/modal/modal.component.ts","../../../projects/monkey-style-guide/src/lib/components/modal/modal.module.ts","../../../projects/monkey-style-guide/src/lib/components/expansion/expansion.component.ts","../../../projects/monkey-style-guide/src/lib/components/expansion/expansion.module.ts","../../../projects/monkey-style-guide/src/lib/components/table/table.component.ts","../../../projects/monkey-style-guide/src/lib/components/table/table-column.component.ts","../../../projects/monkey-style-guide/src/lib/components/table/table.module.ts","../../../projects/monkey-style-guide/src/lib/components/toggle/toggle.component.ts","../../../projects/monkey-style-guide/src/lib/components/toggle/toggle.module.ts","../../../projects/monkey-style-guide/src/lib/components/tab/tab.component.ts","../../../projects/monkey-style-guide/src/lib/components/tab/tab.module.ts","../../../projects/monkey-style-guide/src/lib/components/stepper/stepper.component.ts","../../../projects/monkey-style-guide/src/lib/components/stepper/stepper.module.ts","../../../projects/monkey-style-guide/src/lib/monkey-style-guide.module.ts","../../../projects/monkey-style-guide/src/public-api.ts","../../../projects/monkey-style-guide/src/monkey-style-guide.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class MonkeyStyleGuideService {\r\n constructor(private http: HttpClient) {}\r\n\r\n public get<T>(url: string, options?: T) {\r\n return this.http.get<T>(url, options);\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { MonkeyStyleSettings, MonkeyStyleFontSettings } from '../../interfaces';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Injectable()\r\nexport class MonkeyStyleGuideThemeSettingsService {\r\n constructor(@Inject(DOCUMENT) private doc: any) {}\r\n\r\n private applyColors(settings: MonkeyStyleSettings): any {\r\n const colors: any = settings.colors;\r\n\r\n let bucketColors = null;\r\n\r\n ['theme', 'error', 'warning', 'success', 'question'].forEach((color) => {\r\n Object.entries(colors[color] as any).forEach(\r\n ([paletteKey, paletteValue]) => {\r\n if (paletteKey === 'contrast') {\r\n Object.entries(paletteValue).forEach(\r\n ([paletteContrastKey, paletteContrastValue]) => {\r\n document.documentElement.style.setProperty(\r\n `--mecx-color-${color}-contrast-${paletteContrastKey}`,\r\n `${paletteContrastValue}`\r\n );\r\n bucketColors = {\r\n ...bucketColors,\r\n [`--mecx-color-${color}-contrast-${paletteContrastKey}`]: `${paletteContrastValue}`,\r\n };\r\n }\r\n );\r\n } else {\r\n document.documentElement.style.setProperty(\r\n `--mecx-color-${color}-${paletteKey}`,\r\n `${paletteValue}`\r\n );\r\n bucketColors = {\r\n ...bucketColors,\r\n [`--mecx-color-${color}-${paletteKey}`]: `${paletteValue}`,\r\n };\r\n }\r\n }\r\n );\r\n });\r\n\r\n return bucketColors;\r\n }\r\n\r\n private applyFonts(settings: MonkeyStyleSettings) {\r\n const font: MonkeyStyleFontSettings = {\r\n url:\r\n 'https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,500;1,600;1,700;1,800;1,900&display=swap',\r\n name: 'Work Sans',\r\n ...settings.font,\r\n };\r\n\r\n document.documentElement.style.setProperty(\r\n `--mecx-font-name`,\r\n `${font.name}`\r\n );\r\n\r\n let link: HTMLLinkElement = this.doc.createElement('link');\r\n link.setAttribute('rel', 'stylesheet');\r\n link.setAttribute('type', 'text/css');\r\n link.setAttribute('href', `${font.url}`);\r\n this.doc.head.appendChild(link);\r\n }\r\n\r\n private applyTheme(settings: MonkeyStyleSettings) {\r\n const { theme } = settings;\r\n document.title = `${theme.title}`;\r\n\r\n let link: HTMLLinkElement = this.doc.createElement('link');\r\n link.setAttribute('rel', 'icon');\r\n link.setAttribute('type', 'image/x-icon');\r\n link.setAttribute('href', `${theme.favicon}`);\r\n this.doc.head.appendChild(link);\r\n }\r\n\r\n public apply(config: MonkeyStyleSettings, callback?: Function) {\r\n const bucketColors = this.applyColors(config);\r\n this.applyFonts(config);\r\n this.applyTheme(config);\r\n setTimeout(() => {\r\n if (callback)\r\n callback({\r\n bucketColors,\r\n });\r\n }, 500);\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Injectable } from '@angular/core';\r\nimport { MonkeyStyleGuideService } from '../monkey-style-guide.service';\r\nimport { MonkeyStyleSettings } from '../../interfaces';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { throwError, BehaviorSubject, Observable } from 'rxjs';\r\nimport { MonkeyStyleGuideThemeSettingsService } from './monkey-style-guide-theme-settings.service';\r\n\r\n@Injectable()\r\nexport class MonkeyStyleGuideSettingsService {\r\n private readonly settingsSubject$: BehaviorSubject<MonkeyStyleSettings> = new BehaviorSubject({});\r\n\r\n constructor(\r\n private monkeySGService: MonkeyStyleGuideService,\r\n private monkeySGThemeConfigService: MonkeyStyleGuideThemeSettingsService\r\n ) {}\r\n\r\n public boostrap(settingsUrl: string, callback?: Function) {\r\n const { monkeySGService, settingsSubject$, monkeySGThemeConfigService } = this;\r\n\r\n monkeySGService.get<any>(settingsUrl || `assets/monkey-style-guide-settings.json`).subscribe(\r\n (_: MonkeyStyleSettings) => {\r\n monkeySGThemeConfigService.apply(_, callback);\r\n settingsSubject$.next(_);\r\n },\r\n (err: HttpErrorResponse) => {\r\n console.error('Monkey-style-guide-settings not found!');\r\n throwError(err);\r\n }\r\n );\r\n }\r\n\r\n public boostrapWithData(data: any, callback?: Function) {\r\n const { settingsSubject$, monkeySGThemeConfigService } = this;\r\n monkeySGThemeConfigService.apply(data, callback);\r\n settingsSubject$.next(data);\r\n }\r\n\r\n public settings(): Observable<any> {\r\n return this.settingsSubject$.asObservable();\r\n }\r\n}\r\n","import { PhoneNumberUtil } from 'google-libphonenumber';\r\n\r\nconst phoneUtil = PhoneNumberUtil.getInstance();\r\n\r\nexport class MonkeyUtils {\r\n public static persistNullEmptyUndefined(tp: any): boolean {\r\n return tp !== null && tp !== undefined && tp !== '';\r\n }\r\n\r\n public static getDocumentType(doc: string) {\r\n if (!doc) return '';\r\n return doc.length <= 11 ? 'CPF' : 'CNPJ';\r\n }\r\n\r\n public static getDocumentMask(type: string) {\r\n if (type === 'CPF') return '000.000.000-00';\r\n return '00.000.000/0000-00';\r\n }\r\n\r\n public static formatDocumentWithMask(doc: string, withType?: boolean): string {\r\n if (!doc) return doc;\r\n let formated: string = '';\r\n if (doc.length === 14)\r\n formated = doc\r\n .replace(/^(\\d{2})(\\d)/, '$1.$2')\r\n .replace(/^(\\d{2})\\.(\\d{3})(\\d)/, '$1.$2.$3')\r\n .replace(/\\.(\\d{3})(\\d)/, '.$1/$2')\r\n .replace(/(\\d{4})(\\d)/, '$1-$2');\r\n else\r\n formated = doc\r\n .replace(/^(\\d{3})(\\d)/, '$1.$2')\r\n .replace(/^(\\d{3})\\.(\\d{3})(\\d)/, '$1.$2.$3')\r\n .replace(/\\.(\\d{3})(\\d)/, '.$1-$2');\r\n\r\n return `${withType ? `${this.getDocumentType(doc)}:` : ''} ${formated}`;\r\n }\r\n\r\n public static cutFirstLastName(value: string, tp: string = 'first') {\r\n const split = value?.trim()?.split(' ');\r\n\r\n if (tp === 'first') return split[0];\r\n return split?.splice(1, split.length)?.join(' ');\r\n }\r\n\r\n public static isCPFCNPJValid(document: any): boolean {\r\n document = document.replace(/[^\\d]/g, '');\r\n if (document.length === 11) {\r\n let base = [10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0];\r\n for (var i = 0, n = 0; i < 9; n += document[i] * base[i++]);\r\n if (document[9] != ((n %= 11) <= 1 ? 0 : 11 - n)) {\r\n return false;\r\n }\r\n base = [11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0];\r\n for (var i = 0, n = 0; i <= 9; n += document[i] * base[i++]);\r\n if (document[10] != ((n %= 11) <= 1 ? 0 : 11 - n)) {\r\n return false;\r\n }\r\n return true;\r\n } else if (document.length === 14 || /0{14}/.test(document)) {\r\n let base = [6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2];\r\n for (var i = 0, n = 0; i < 12; n += document[i] * base[++i]);\r\n if (document[12] != ((n %= 11) < 2 ? 0 : 11 - n)) {\r\n return false;\r\n }\r\n\r\n for (var i = 0, n = 0; i <= 12; n += document[i] * base[i++]);\r\n if (document[13] != ((n %= 11) < 2 ? 0 : 11 - n)) {\r\n return false;\r\n }\r\n\r\n return true;\r\n } else return false;\r\n }\r\n\r\n public static isValidUrl(txt: string): boolean {\r\n const regex = new RegExp(\r\n /^(http:\\/\\/www\\.|https:\\/\\/www\\.|http:\\/\\/|https:\\/\\/)+[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,10}(:[0-9]{1,5})?(\\/.*)?$/gm\r\n );\r\n return regex.test(txt);\r\n }\r\n\r\n public static isValidZipCode(zipCode: string): boolean {\r\n return `${this.handleOnlyNumbers(zipCode)}`.length === 8;\r\n }\r\n\r\n public static getRandomString(len: number, charSet?: string): string {\r\n charSet = charSet || 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\r\n let randomString: string = Array.apply(null, Array(len))\r\n .map(function () {\r\n return charSet.charAt(Math.floor(Math.random() * charSet.length));\r\n })\r\n .join('');\r\n return randomString;\r\n }\r\n\r\n public static handleOnlyNumbersCurrency(value: any) {\r\n if (!value) return null;\r\n return value.replace(new RegExp(/[^0-9.]/g), '');\r\n }\r\n\r\n public static handleOnlyNumbers(value: any) {\r\n if (!value) return null;\r\n return value.replace(new RegExp(/[^0-9]/g), '');\r\n }\r\n\r\n public static handleOnlyAlphaNumeric(value: any) {\r\n if (!value) return '';\r\n return value.replace(new RegExp(/[^0-9A-Za-z]/, 'g'), '');\r\n }\r\n\r\n public static capitalize(value: string) {\r\n return `${value.charAt(0).toUpperCase()}${value.slice(1)}`;\r\n }\r\n\r\n public static formatZipCode(zipCode: string): string {\r\n if (!zipCode) return zipCode;\r\n const formated: string = zipCode\r\n .replace(/^(\\d{5})(\\d)/, '$1-$2')\r\n .replace(/\\.(\\d{3})(\\d)/, '.$1-$2');\r\n\r\n return `${formated}`;\r\n }\r\n\r\n public static formatFileSize(size: number): string {\r\n let units = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\r\n let l = 0;\r\n while (size >= 1024 && ++l) {\r\n size = size / 1024;\r\n }\r\n return size.toFixed(size < 10 && l > 0 ? 1 : 0) + ' ' + units[l];\r\n }\r\n\r\n public static sufflue(data: any[]): any[] {\r\n for (let i = data.length - 1; i > 0; i--) {\r\n const j = Math.floor(Math.random() * i);\r\n const temp = data[i];\r\n data[i] = data[j];\r\n data[j] = temp;\r\n }\r\n return data;\r\n }\r\n\r\n public static handleBlobFile(theBlob: any, fileName: string, fileType: string) {\r\n function blobToFile(theBlob, fileName) {\r\n const b = theBlob;\r\n b.lastModifiedDate = new Date();\r\n b.name = fileName;\r\n return b;\r\n }\r\n\r\n let file: any;\r\n if (!(navigator as any).msSaveBlob) {\r\n file = new File([theBlob], fileName, { type: fileType });\r\n } else {\r\n file = new Blob([theBlob], { type: fileType });\r\n file = blobToFile(file, fileName);\r\n }\r\n return file;\r\n }\r\n\r\n public static truncate(text: string, maxLength: number = 25): string {\r\n const midChar = '...';\r\n if (!text) return midChar;\r\n if (text && text.length <= maxLength) return text;\r\n\r\n const left = Math.ceil(maxLength / 2);\r\n const right = text.length - left + 1;\r\n\r\n return `${text.substr(0, left)} ${midChar} ${text.substring(right)}`;\r\n }\r\n\r\n public static isLocalhost() {\r\n const { href } = window?.location;\r\n if (!href) return false;\r\n return href?.search('localhost') >= 0;\r\n }\r\n\r\n public static getPhoneRegions() {\r\n return phoneUtil\r\n .getSupportedRegions()\r\n .map((code: string) => {\r\n return phoneUtil.getCountryCodeForRegion(code);\r\n })\r\n .filter((v, i, a) => a.indexOf(v) === i)\r\n .sort((a, b) => (a < b ? -1 : 1));\r\n }\r\n\r\n public static getPhoneHandle(internationalNumber = 55) {\r\n let maxLength = 14;\r\n let mask = 'XX XXXXX-XXXX';\r\n try {\r\n const country = phoneUtil.getRegionCodeForCountryCode(internationalNumber);\r\n const exampleNumber = phoneUtil.getExampleNumber(country)['values_']['2'];\r\n\r\n const number = phoneUtil.parse(`${exampleNumber}`, country);\r\n const formated = phoneUtil.format(number, null);\r\n if (formated) {\r\n maxLength = `${formated}`.length;\r\n mask = `${formated}`.replace(new RegExp(/[^0-9]/g), '0');\r\n }\r\n } catch (e) {\r\n //not to do\r\n }\r\n return {\r\n maxLength,\r\n mask,\r\n };\r\n }\r\n\r\n public static getPhoneCountryCode(phone: string) {\r\n if (!phone) return '';\r\n let cc = `${this.handleOnlyNumbers(phone)}`?.substring(0, 2);\r\n let code;\r\n try {\r\n const number = phoneUtil.parse(phone);\r\n code = number.getCountryCodeOrDefault();\r\n } catch (e) {\r\n //not to do\r\n }\r\n return code || cc;\r\n }\r\n\r\n public static getPhoneNumberFormated(phone: string, internationalNumber = 55) {\r\n if (!phone) return '';\r\n phone = phone.replace(`+${internationalNumber}`, '');\r\n try {\r\n const country = phoneUtil.getRegionCodeForCountryCode(internationalNumber);\r\n const number = phoneUtil.parse(phone, country);\r\n if (phoneUtil.isPossibleNumber(number)) {\r\n return phoneUtil.format(number, null);\r\n }\r\n } catch (e) {\r\n //not to do\r\n }\r\n return phone;\r\n }\r\n\r\n public static isPhoneNumberValid(phone: string, internationalNumber = 55) {\r\n if (!phone) return false;\r\n try {\r\n const country = phoneUtil.getRegionCodeForCountryCode(internationalNumber);\r\n const number = phoneUtil.parse(phone, country);\r\n return phoneUtil.isValidNumberForRegion(number, country);\r\n } catch (e) {\r\n //not to do\r\n }\r\n return false;\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Location } from '@angular/common';\r\nimport { Injectable } from '@angular/core';\r\nimport { MonkeyUtils } from '../../utils';\r\n\r\nconst icons = {\r\n success: `<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <circle cx=\"8\" cy=\"8\" r=\"7\" fill=\"#00875A\"/>\r\n <path d=\"M11 5L7 11L4 8.27273\" stroke=\"white\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>`,\r\n warning: `<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.85433 2.63819L1.17957 12.0114C1.06257 12.2118 1.00066 12.4391 1.00001 12.6706C0.99935 12.9021 1.05997 13.1297 1.17583 13.3308C1.2917 13.532 1.45877 13.6995 1.66042 13.8169C1.86207 13.9343 2.09128 13.9975 2.32524 14H13.6748C13.9087 13.9975 14.1379 13.9343 14.3396 13.8169C14.5412 13.6995 14.7083 13.532 14.8242 13.3308C14.94 13.1297 15.0006 12.9021 15 12.6706C14.9993 12.4391 14.9374 12.2118 14.8204 12.0114L9.14567 2.63819C9.02623 2.44337 8.85806 2.2823 8.65738 2.17051C8.45671 2.05873 8.2303 2 8 2C7.7697 2 7.54329 2.05873 7.34262 2.17051C7.14194 2.2823 6.97377 2.44337 6.85433 2.63819Z\" fill=\"#EFA30E\"/>\r\n <path d=\"M8 6V10\" stroke=\"#000F1E\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M8 12H8.00667\" stroke=\"#000F1E\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>`,\r\n error: `<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M5.102 1H10.898L15 5.102V10.898L10.898 15H5.102L1 10.898V5.102L5.102 1Z\" fill=\"#FA3838\"/>\r\n <path d=\"M8 5.33333V7.99999\" stroke=\"#F5FAFF\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M8 10.6667H8.00667\" stroke=\"#F5FAFF\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>`,\r\n question: `<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M8.00004 14.6668C11.6819 14.6668 14.6667 11.6821 14.6667 8.00016C14.6667 4.31826 11.6819 1.3335 8.00004 1.3335C4.31814 1.3335 1.33337 4.31826 1.33337 8.00016C1.33337 11.6821 4.31814 14.6668 8.00004 14.6668Z\" stroke=\"#8D38FA\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M6.05994 5.99989C6.21667 5.55434 6.52604 5.17863 6.93324 4.93931C7.34044 4.7 7.8192 4.61252 8.28472 4.69237C8.75024 4.77222 9.17248 5.01424 9.47665 5.37558C9.78083 5.73691 9.94731 6.19424 9.9466 6.66656C9.9466 7.99989 7.9466 8.66656 7.9466 8.66656V9.49989\" stroke=\"#8D38FA\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M8 11.3335H8.00667\" stroke=\"#8D38FA\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>`,\r\n loading: `<svg class=\"circular-loader\" viewBox=\"25 25 50 50\" >\r\n <circle class=\"loader-path\" cx=\"50\" cy=\"50\" r=\"20\" fill=\"none\" stroke=\"#575757\" stroke-width=\"5\" />\r\n </svg>`,\r\n};\r\n\r\ninterface SnackbarActionConfig {\r\n confirm?: {\r\n style: 'link' | 'button';\r\n label: string;\r\n action: Function;\r\n keepOnAction?: boolean;\r\n };\r\n cancel?: {\r\n style: 'link' | 'button';\r\n label: string;\r\n action: Function;\r\n keepOnAction?: boolean;\r\n };\r\n}\r\n\r\ninterface SnackbarConfig {\r\n title?: string;\r\n message?: string;\r\n type?: 'theme' | 'warning' | 'success' | 'error' | 'question' | 'loading';\r\n duration?: number;\r\n horizontalPosition?: 'center' | 'left' | 'right';\r\n verticalPosition?: 'top' | 'bottom';\r\n action?: SnackbarActionConfig;\r\n keepOpen?: boolean;\r\n blinkTab?: boolean;\r\n keepOnUrlChange?: boolean;\r\n}\r\n\r\nclass SnackbarElements {\r\n elements: {\r\n element?: HTMLDivElement;\r\n interval?: any;\r\n }[] = [];\r\n lastScrollTop: number = 15;\r\n\r\n constructor() {}\r\n\r\n add(element: HTMLDivElement, duration: number, callback: Function, verticalPosition: string) {\r\n if (this.elements && this.elements.length === 0) {\r\n this.lastScrollTop = 15;\r\n }\r\n element.style[verticalPosition] = `${this.lastScrollTop}px`;\r\n\r\n const interval = setInterval(() => {\r\n callback();\r\n }, duration);\r\n\r\n this.elements.push({\r\n element: element,\r\n interval: interval,\r\n });\r\n document.body.appendChild(element);\r\n this.lastScrollTop = this.lastScrollTop + document.getElementById(element.id).offsetHeight + 15;\r\n }\r\n\r\n remove(removeId: string) {\r\n const element = this.elements.find(({ element: { id } }) => id === removeId);\r\n if (element) {\r\n this.elements =\r\n this.elements.filter(({ element: { id } }) => id !== element.element.id) || [];\r\n element.element.className = `${element.element.className} fade-out hide`;\r\n setTimeout(() => {\r\n this.lastScrollTop =\r\n this.lastScrollTop - (document.getElementById(removeId).offsetHeight + 15);\r\n document.body.removeChild(element.element);\r\n clearInterval(element.interval);\r\n }, 1000);\r\n }\r\n }\r\n\r\n removeAll() {\r\n this.elements.forEach((element) => {\r\n document.body.removeChild(element.element);\r\n clearInterval(element.interval);\r\n });\r\n this.lastScrollTop = 15;\r\n this.elements = [];\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class MonkeyStyleGuideSnackbarService {\r\n private config: SnackbarConfig;\r\n private snackbarElement: HTMLDivElement;\r\n private snackbarElements: SnackbarElements;\r\n private snackbarBodyElement: HTMLDivElement;\r\n private snackbarBodyMessageElement: HTMLDivElement;\r\n private oldTitle: string;\r\n private timeoutBlinkTab = null;\r\n\r\n constructor(private locationRouter: Location) {\r\n this.snackbarElements = new SnackbarElements();\r\n this.locationRouter.onUrlChange(() => {\r\n if(this.config && !this.config?.keepOnUrlChange){\r\n this.closeAll();\r\n }\r\n });\r\n }\r\n\r\n private stopBlinking() {\r\n if (this.oldTitle) {\r\n document.title = this.oldTitle;\r\n if (this.snackbarElements.elements.length <= 0) {\r\n clearInterval(this.timeoutBlinkTab);\r\n }\r\n }\r\n }\r\n\r\n private blinkTab() {\r\n this.oldTitle = this.oldTitle || document.title;\r\n\r\n const startBlinking = () => {\r\n let message = `(${this.snackbarElements.elements.length}) ${this.oldTitle}`;\r\n document.title = document.title === message ? this.oldTitle : message;\r\n };\r\n\r\n if (this.timeoutBlinkTab) clearInterval(this.timeoutBlinkTab);\r\n this.timeoutBlinkTab = setInterval(startBlinking, 1000);\r\n }\r\n\r\n private init(id: string) {\r\n const { config } = this;\r\n let { horizontalPosition, verticalPosition, type } = config;\r\n horizontalPosition = horizontalPosition || 'center';\r\n verticalPosition = verticalPosition || 'top';\r\n\r\n this.snackbarElement = document.createElement('div');\r\n this.snackbarElement.id = `${id}`;\r\n this.snackbarElement.className = `mecx-snackbar-container ${horizontalPosition}-${verticalPosition} ${type}`;\r\n }\r\n\r\n private buildBody() {\r\n this.snackbarBodyElement = document.createElement('div');\r\n this.snackbarBodyElement.className = 'mecx-snackbar-container-body';\r\n\r\n this.snackbarBodyMessageElement = document.createElement('div');\r\n this.snackbarBodyMessageElement.className = 'mecx-snackbar-container-body-content';\r\n }\r\n\r\n private buildTitleAndMessage() {\r\n let {\r\n config: { title, message, action },\r\n } = this;\r\n const titleElement = document.createElement('div');\r\n titleElement.innerText = `${title}`;\r\n titleElement.className = 'mecx-snackbar-container-body-content-title';\r\n\r\n const messageElement = document.createElement('div');\r\n messageElement.innerText = `${message}`;\r\n messageElement.className = `mecx-snackbar-container-body-content-message ${\r\n action ? 'with-action' : ''\r\n }`;\r\n\r\n this.snackbarBodyMessageElement.appendChild(titleElement);\r\n this.snackbarBodyMessageElement.appendChild(messageElement);\r\n }\r\n\r\n private buildAction(id: string) {\r\n const {\r\n config: { type, action },\r\n } = this;\r\n if (action) {\r\n const { confirm, cancel } = action;\r\n const actionElement = document.createElement('div');\r\n\r\n let actionCancelElement = null,\r\n actionConfirmElement = null;\r\n\r\n if(confirm){\r\n const { style, label } = confirm;\r\n if (style === 'link') {\r\n actionConfirmElement = document.createElement('a');\r\n actionConfirmElement.href = 'javascript:void(0)';\r\n actionConfirmElement.innerText = label;\r\n }else {\r\n actionConfirmElement = document.createElement('button');\r\n actionConfirmElement.className = `mecx-button-primary mecx-button-primary__${type}`;\r\n actionConfirmElement.innerText = label;\r\n }\r\n }\r\n\r\n if(cancel){ \r\n const { style, label } = cancel;\r\n if(style === 'link'){\r\n actionCancelElement = document.createElement('a');\r\n actionCancelElement.href = 'javascript:void(0)';\r\n actionCancelElement.innerText = label;\r\n }else{\r\n actionCancelElement = document.createElement('button');\r\n actionCancelElement.className = `mecx-button-tertiary mecx-button-tertiary__${type}`;\r\n actionCancelElement.innerText = label;\r\n }\r\n }\r\n\r\n if (actionCancelElement) {\r\n actionCancelElement.addEventListener('click', () => {\r\n if (!cancel?.keepOnAction) {\r\n this.close(id);\r\n }\r\n cancel.action();\r\n });\r\n\r\n actionElement.appendChild(actionCancelElement);\r\n }\r\n\r\n if (actionConfirmElement) {\r\n actionConfirmElement.addEventListener('click', () => {\r\n if (!confirm?.keepOnAction) {\r\n this.close(id);\r\n }\r\n confirm.action();\r\n });\r\n actionElement.appendChild(actionConfirmElement);\r\n }\r\n\r\n actionElement.className = 'mecx-snackbar-container-body-content-action';\r\n this.snackbarBodyMessageElement.appendChild(actionElement);\r\n }\r\n }\r\n\r\n private buildIcon() {\r\n let {\r\n config: { type },\r\n } = this;\r\n\r\n const snackbarBodyIconElement = document.createElement('div');\r\n snackbarBodyIconElement.className = 'mecx-snackbar-container-body-icon';\r\n snackbarBodyIconElement.innerHTML = `${icons[type]}`;\r\n this.snackbarBodyElement.appendChild(snackbarBodyIconElement);\r\n }\r\n\r\n private finish(id: string) {\r\n let {\r\n config: { duration, keepOpen, verticalPosition },\r\n } = this;\r\n duration = duration || 4000;\r\n const { snackbarBodyElement, snackbarBodyMessageElement, snackbarElement } = this;\r\n snackbarBodyElement.appendChild(snackbarBodyMessageElement);\r\n snackbarElement.appendChild(snackbarBodyElement);\r\n\r\n this.snackbarElements.add(\r\n snackbarElement,\r\n duration,\r\n () => (!keepOpen ? this.close(id) : null),\r\n verticalPosition\r\n );\r\n }\r\n\r\n public show(config: SnackbarConfig): string {\r\n this.config = config;\r\n const id = `monkey-snackbar-${MonkeyUtils.getRandomString(30)}`;\r\n this.closeAll();\r\n this.init(id);\r\n this.buildBody();\r\n this.buildTitleAndMessage();\r\n this.buildAction(id);\r\n this.buildIcon();\r\n this.finish(id);\r\n if (config?.blinkTab) {\r\n this.blinkTab();\r\n }\r\n return id;\r\n }\r\n\r\n public closeAll() {\r\n const { snackbarElements } = this;\r\n snackbarElements.removeAll();\r\n }\r\n\r\n public close(id: string) {\r\n const { snackbarElements } = this;\r\n snackbarElements.remove(id);\r\n this.stopBlinking();\r\n }\r\n}\r\n","import {\n ApplicationRef,\n ComponentFactoryResolver,\n EmbeddedViewRef,\n Injectable,\n Injector,\n} from '@angular/core';\nimport { Location } from '@angular/common';\nimport { MonkeyUtils } from '../../utils';\nimport { MonkeyModalComponent } from '../../../components/modal';\nimport { MonkeyModalConfig, MonkeyModalRefs } from '../../interfaces';\n\n@Injectable()\nexport class MonkeyStyleGuideModalService {\n private dialogComponentRef: MonkeyModalRefs<MonkeyModalComponent>[] = [];\n\n constructor(\n private resolver: ComponentFactoryResolver,\n private appRef: ApplicationRef,\n private injector: Injector,\n private locationRouter: Location\n ) {\n this.locationRouter.onUrlChange(() => {\n this.closeAll();\n });\n }\n\n open(\n component: any,\n config: MonkeyModalConfig\n ): MonkeyModalRefs<MonkeyModalComponent> {\n const componentFactory = this.resolver.resolveComponentFactory(component);\n const componentRef: any = componentFactory.create(this.injector);\n this.appRef.attachView(componentRef.hostView);\n\n const refRet = {\n id: `mecx-modal-${MonkeyUtils.getRandomString(30)}`,\n component: componentRef,\n };\n\n componentRef.instance.config = config;\n componentRef.instance.modalRef = refRet;\n\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>)\n .rootNodes[0] as HTMLElement;\n document.body.appendChild(domElem);\n document.body.classList.add('mecx-monkey-open');\n\n this.dialogComponentRef.push(refRet);\n return refRet;\n }\n\n close(ref: MonkeyModalRefs<MonkeyModalComponent>) {\n this.appRef.detachView(ref.component.hostView);\n ref.component.destroy();\n this.dialogComponentRef = this.dialogComponentRef.filter(\n ({ id }) => id !== ref.id\n );\n if (this.dialogComponentRef.length === 0) {\n document.body.classList.remove('mecx-monkey-open');\n }\n }\n\n closeAll() {\n this.dialogComponentRef.forEach(\n (val: MonkeyModalRefs<MonkeyModalComponent>) => {\n this.appRef.detachView(val.component.hostView);\n val.component.destroy();\n }\n );\n this.dialogComponentRef = [];\n document.body.classList.remove('mecx-monkey-open');\n }\n}\n","import {\n ApplicationRef,\n ComponentFactoryResolver,\n EmbeddedViewRef,\n Injectable,\n Injector,\n} from '@angular/core';\nimport { Location } from '@angular/common';\nimport { MonkeyUtils } from '../../utils';\nimport { MonkeyModalComponent } from '../../../components/modal';\nimport { MonkeyModalConfig, MonkeyModalRefs } from '../../interfaces';\n\n@Injectable()\nexport class MonkeyStyleGuideModalFixedService {\n private dialogComponentRef: MonkeyModalRefs<MonkeyModalComponent>[] = [];\n\n constructor(\n private resolver: ComponentFactoryResolver,\n private appRef: ApplicationRef,\n private injector: Injector\n ) {\n //not to do\n }\n\n open(\n component: any,\n config: MonkeyModalConfig\n ): MonkeyModalRefs<MonkeyModalComponent> {\n this.closeAll();\n const componentFactory = this.resolver.resolveComponentFactory(component);\n const componentRef: any = componentFactory.create(this.injector);\n this.appRef.attachView(componentRef.hostView);\n\n const refRet = {\n id: `mecx-modal-${MonkeyUtils.getRandomString(30)}`,\n component: componentRef,\n };\n\n componentRef.instance.config = config;\n componentRef.instance.modalRef = refRet;\n\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>)\n .rootNodes[0] as HTMLElement;\n document.body.appendChild(domElem);\n document.body.classList.add('mecx-monkey-open');\n\n this.dialogComponentRef.push(refRet);\n return refRet;\n }\n\n close(ref: MonkeyModalRefs<MonkeyModalComponent>) {\n this.appRef.detachView(ref.component.hostView);\n ref.component.destroy();\n this.dialogComponentRef = this.dialogComponentRef.filter(\n ({ id }) => id !== ref.id\n );\n if (this.dialogComponentRef.length === 0) {\n document.body.classList.remove('mecx-monkey-open');\n }\n }\n\n closeAll() {\n this.dialogComponentRef.forEach(\n (val: MonkeyModalRefs<MonkeyModalComponent>) => {\n this.appRef.detachView(val.component.hostView);\n val.component.destroy();\n }\n );\n this.dialogComponentRef = [];\n document.body.classList.remove('mecx-monkey-open');\n }\n}\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, ViewEncapsulation, Input } from '@angular/core';\r\nimport { MonkeyUtils } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-badge',\r\n template: `\r\n <mecx-monkey-badge [id]=\"_id\" [ngClass]=\"{ pulse: pulseOn }\">\r\n <div class=\"badge-count\">\r\n {{ count }}\r\n </div>\r\n </mecx-monkey-badge>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyBadgeComponent {\r\n @Input() count = 0;\r\n @Input() pulseOn = false;\r\n\r\n public _id: string = `mecx-badge-${MonkeyUtils.getRandomString(10)}`;\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { MonkeyBadgeComponent } from './badge.component';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [MonkeyBadgeComponent],\n imports: [CommonModule],\n exports: [MonkeyBadgeComponent],\n schemas: [NO_ERRORS_SCHEMA],\n})\nexport class MonkeyBadgeModule {}\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-arrow-down',\r\n templateUrl: `../../../../assets/icons/arrow-down.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconArrowDownComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M2 5L8 11L14 5\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-arrow-left',\r\n templateUrl: `../../../../assets/icons/arrow-left.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconArrowLeftComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M10 1.99976L4 7.99976L10 13.9998\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-arrow-right',\r\n templateUrl: `../../../../assets/icons/arrow-right.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconArrowRightComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M6.00098 13.9997L12.001 7.99974L6.00098 1.99974\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-arrow-up',\r\n templateUrl: `../../../../assets/icons/arrow-up.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconArrowUpComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M14.0005 10.9997L8.00049 4.99974L2.00049 10.9997\" stroke=\"#C3261F\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-auction',\r\n templateUrl: `../../../../assets/icons/auction.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconAuctionComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M8.63522 10.4077L8.28166 10.7612L8.98877 11.4683L9.34232 11.1148L8.63522 10.4077ZM13.1136 7.34355L13.4671 6.98999L12.76 6.28289L12.4065 6.63644L13.1136 7.34355ZM9.34232 11.1148L13.1136 7.34355L12.4065 6.63644L8.63522 10.4077L9.34232 11.1148Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M4.86471 6.63668L4.51115 6.99023L5.21826 7.69734L5.57182 7.34379L4.86471 6.63668ZM9.34305 3.57255L9.69661 3.219L8.9895 2.51189L8.63594 2.86545L9.34305 3.57255ZM5.57182 7.34379L9.34305 3.57255L8.63594 2.86545L4.86471 6.63668L5.57182 7.34379Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"3.33252\" y=\"5.10449\" width=\"5.33333\" height=\"10.6667\" rx=\"1.33333\" transform=\"rotate(-45 3.33252 5.10449)\" stroke=\"#4B4A53\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M1.31295 13.9799C1.11769 14.1752 1.11769 14.4918 1.31295 14.687C1.50821 14.8823 1.8248 14.8823 2.02006 14.687L1.31295 13.9799ZM7.02006 9.68705C7.21532 9.49179 7.21532 9.1752 7.02006 8.97994C6.8248 8.78468 6.50821 8.78468 6.31295 8.97994L7.02006 9.68705ZM2.02006 14.687L7.02006 9.68705L6.31295 8.97994L1.31295 13.9799L2.02006 14.687Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M9.3335 14.1665C9.05735 14.1665 8.8335 14.3904 8.8335 14.6665C8.8335 14.9426 9.05735 15.1665 9.3335 15.1665V14.1665ZM14.6668 15.1665C14.943 15.1665 15.1668 14.9426 15.1668 14.6665C15.1668 14.3904 14.943 14.1665 14.6668 14.1665V15.1665ZM9.3335 15.1665H14.6668V14.1665H9.3335V15.1665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-bank',\r\n templateUrl: `../../../../assets/icons/bank.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconBankComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M13.9687 7.21878C14.4515 7.21878 14.6531 6.59846 14.2609 6.31253L8.29368 1.9719C8.20847 1.90947 8.10557 1.87581 7.99993 1.87581C7.89429 1.87581 7.7914 1.90947 7.70618 1.9719L1.739 6.31253C1.34681 6.5969 1.54837 7.21878 2.03275 7.21878H2.99993V13.0625H1.87493C1.80618 13.0625 1.74993 13.1188 1.74993 13.1875V14C1.74993 14.0688 1.80618 14.125 1.87493 14.125H14.1249C14.1937 14.125 14.2499 14.0688 14.2499 14V13.1875C14.2499 13.1188 14.1937 13.0625 14.1249 13.0625H12.9999V7.21878H13.9687ZM7.99993 3.07346L12.2359 6.15471H3.764L7.99993 3.07346ZM4.12493 7.21878H5.95306V13.0625H4.12493V7.21878ZM7.07806 7.21878H8.90618V13.0625H7.07806V7.21878ZM11.8749 13.0625H10.0312V7.21878H11.8749V13.0625Z\" fill=\"#000000\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-bell',\r\n templateUrl: `../../../../assets/icons/bell.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconBellComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12 5.33334C12 4.27248 11.5786 3.25506 10.8284 2.50492C10.0783 1.75477 9.06087 1.33334 8 1.33334C6.93913 1.33334 5.92172 1.75477 5.17157 2.50492C4.42143 3.25506 4 4.27248 4 5.33334C4 10 2 11.3333 2 11.3333H14C14 11.3333 12 10 12 5.33334Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9.1535 14C9.03629 14.2021 8.86806 14.3698 8.66565 14.4864C8.46324 14.6029 8.23375 14.6643 8.00017 14.6643C7.76658 14.6643 7.53709 14.6029 7.33468 14.4864C7.13227 14.3698 6.96404 14.2021 6.84683 14\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-book',\r\n templateUrl: `../../../../assets/icons/book.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconBookComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M3.99994 19.5C3.99994 18.837 4.26333 18.2011 4.73217 17.7322C5.20101 17.2634 5.8369 17 6.49994 17H19.9999\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M6.49994 2.00003H19.9999V22H6.49994C5.8369 22 5.20101 21.7366 4.73217 21.2678C4.26333 20.799 3.99994 20.1631 3.99994 19.5V4.50003C3.99994 3.83699 4.26333 3.2011 4.73217 2.73226C5.20101 2.26342 5.8369 2.00003 6.49994 2.00003V2.00003Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-box',\r\n templateUrl: `../../../../assets/icons/box.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconBoxComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"17\" height=\"18\" viewBox=\"0 0 17 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M11.9638 7.05192L4.5943 2.80615\" stroke=\"#0273E8\" stroke-width=\"0.994908\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15.6484 12.4513V5.90673C15.6482 5.61981 15.5723 5.33802 15.4286 5.08961C15.2849 4.84121 15.0783 4.63493 14.8296 4.49147L9.0978 1.2192C8.84884 1.0756 8.56644 1 8.27897 1C7.9915 1 7.70909 1.0756 7.46013 1.2192L1.72832 4.49147C1.47961 4.63493 1.27303 4.84121 1.12931 5.08961C0.985589 5.33802 0.909779 5.61981 0.909485 5.90673V12.4513C0.909779 12.7382 0.985589 13.02 1.12931 13.2684C1.27303 13.5168 1.47961 13.7231 1.72832 13.8665L7.46013 17.1388C7.70909 17.2824 7.9915 17.358 8.27897 17.358C8.56644 17.358 8.84884 17.2824 9.0978 17.1388L14.8296 13.8665C15.0783 13.7231 15.2849 13.5168 15.4286 13.2684C15.5723 13.02 15.6482 12.7382 15.6484 12.4513Z\" stroke=\"#0273E8\" stroke-width=\"0.994908\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M1.1315 5.05588L8.2799 9.18712L15.4283 5.05588\" stroke=\"#0273E8\" stroke-width=\"0.994908\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8.27893 17.4252V9.17908\" stroke=\"#0273E8\" stroke-width=\"0.994908\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-calendar',\r\n templateUrl: `../../../../assets/icons/calendar.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCalendarComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12.6667 2.66667H3.33333C2.59695 2.66667 2 3.26363 2 4.00001V13.3333C2 14.0697 2.59695 14.6667 3.33333 14.6667H12.6667C13.403 14.6667 14 14.0697 14 13.3333V4.00001C14 3.26363 13.403 2.66667 12.6667 2.66667Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M10.6665 1.33333V3.99999\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.3335 1.33333V3.99999\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M2 6.66667H14\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-camera',\r\n templateUrl: `../../../../assets/icons/camera.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCameraComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M23 19C23 19.5304 22.7893 20.0391 22.4142 20.4142C22.0391 20.7893 21.5304 21 21 21H3C2.46957 21 1.96086 20.7893 1.58579 20.4142C1.21071 20.0391 1 19.5304 1 19V8C1 7.46957 1.21071 6.96086 1.58579 6.58579C1.96086 6.21071 2.46957 6 3 6H7L9 3H15L17 6H21C21.5304 6 22.0391 6.21071 22.4142 6.58579C22.7893 6.96086 23 7.46957 23 8V19Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12 17C14.2091 17 16 15.2091 16 13C16 10.7909 14.2091 9 12 9C9.79086 9 8 10.7909 8 13C8 15.2091 9.79086 17 12 17Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-chat',\r\n templateUrl: `../../../../assets/icons/chat.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconChatComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M20.2033 15.0281C20.1565 14.8594 20.2596 14.625 20.358 14.4562C20.3881 14.406 20.421 14.3575 20.4565 14.3109C21.2985 13.0598 21.7489 11.5862 21.7502 10.0781C21.7643 5.75625 18.1174 2.25 13.608 2.25C9.67522 2.25 6.39397 4.92656 5.62522 8.47969C5.51021 9.00632 5.45207 9.54377 5.45178 10.0828C5.45178 14.4094 8.95803 18.0094 13.4674 18.0094C14.1846 18.0094 15.1502 17.7937 15.6799 17.6484C16.2096 17.5031 16.7346 17.3109 16.8705 17.2594C17.0099 17.2068 17.1575 17.1798 17.3065 17.1797C17.469 17.1791 17.6299 17.2109 17.7799 17.2734L20.4377 18.2156C20.496 18.2403 20.5576 18.2561 20.6205 18.2625C20.72 18.2625 20.8154 18.223 20.8857 18.1527C20.956 18.0823 20.9955 17.987 20.9955 17.8875C20.9923 17.8446 20.9844 17.8022 20.9721 17.7609L20.2033 15.0281Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-miterlimit=\"10\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M3.11565 10.875C2.50085 11.9795 2.20344 13.2325 2.2563 14.4954C2.30916 15.7584 2.71023 16.9821 3.41518 18.0314C3.52346 18.195 3.5844 18.3216 3.56565 18.4064C3.5469 18.4912 3.00643 21.3065 3.00643 21.3065C2.99343 21.3724 2.99836 21.4406 3.0207 21.5039C3.04305 21.5673 3.08199 21.6234 3.13346 21.6665C3.20213 21.7213 3.28753 21.7507 3.37533 21.75C3.42226 21.7501 3.4687 21.7405 3.51174 21.7219L6.14658 20.6906C6.32793 20.6191 6.53022 20.6225 6.70908 20.7C7.5969 21.0459 8.57846 21.2625 9.56049 21.2625C10.8783 21.2639 12.1729 20.9163 13.3128 20.2551\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-miterlimit=\"10\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-check-circle-out',\r\n templateUrl: `../../../../assets/icons/check-circle-out.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCheckCircleOutComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"17\" height=\"17\" viewBox=\"0 0 17 17\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M15.0468 7.5784V8.20761C15.046 9.68243 14.5684 11.1175 13.6853 12.2987C12.8023 13.4799 11.5611 14.3441 10.1468 14.7622C8.73246 15.1804 7.22088 15.1302 5.83746 14.6191C4.45403 14.108 3.27289 13.1634 2.47017 11.9261C1.66746 10.6889 1.2862 9.22532 1.38323 7.7537C1.48027 6.28208 2.05042 4.88125 3.00864 3.76013C3.96686 2.63902 5.26181 1.85768 6.70037 1.53266C8.13893 1.20763 9.64401 1.35634 10.9912 1.95659\" stroke=\"#0273E8\" stroke-width=\"1.00638\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15.0462 2.73547L8.20703 9.5815L6.15527 7.52975\" stroke=\"#0273E8\" stroke-width=\"1.00638\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-check-circle',\r\n templateUrl: `../../../../assets/icons/check-circle.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCheckCircleComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<circle cx=\"8\" cy=\"8\" r=\"7\" fill=\"#00875A\"/>\r\n<path d=\"M11 5L7 11L4 8.27273\" stroke=\"white\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-check-grey',\r\n templateUrl: '../../../../assets/icons/check-grey.svg',\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCheckGreyComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<rect x=\"0.5\" y=\"0.5\" width=\"15\" height=\"15\" rx=\"5.5\" fill=\"#EBEBEB\" stroke=\"#C2C2C2\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-check-white',\r\n templateUrl: `../../../../assets/icons/check-white.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCheckWhiteComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<rect width=\"16\" height=\"16\" rx=\"6\" fill=\"#FAFAFA\"/>\r\n<path d=\"M11 6L6.875 10L5 8.18182\" stroke=\"#00875A\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-check',\r\n templateUrl: `../../../../assets/icons/check.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCheckComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M28 8L11.5 24L4 16.7273\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-clipboard',\r\n templateUrl: `../../../../assets/icons/clipboard.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconClipboardComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M16 4H18C18.5304 4 19.0391 4.21071 19.4142 4.58579C19.7893 4.96086 20 5.46957 20 6V20C20 20.5304 19.7893 21.0391 19.4142 21.4142C19.0391 21.7893 18.5304 22 18 22H6C5.46957 22 4.96086 21.7893 4.58579 21.4142C4.21071 21.0391 4 20.5304 4 20V6C4 5.46957 4.21071 4.96086 4.58579 4.58579C4.96086 4.21071 5.46957 4 6 4H8\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15 2H9C8.44772 2 8 2.44772 8 3V5C8 5.55228 8.44772 6 9 6H15C15.5523 6 16 5.55228 16 5V3C16 2.44772 15.5523 2 15 2Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-clock',\r\n templateUrl: `../../../../assets/icons/clock.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconClockComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C4.13401 1 1 4.13401 1 8C1 11.866 4.13401 15 8 15Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 4V8L11 10\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-close',\r\n templateUrl: `../../../../assets/icons/close.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCloseComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M26 6L6 26\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M6 6L26 26\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-cnpj',\r\n templateUrl: `../../../../assets/icons/cnpj.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCNPJComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M8 8H10V12H8V8Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M8 14H10V18H8V14Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M14 8H16V12H14V8Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M14 14H16V18H14V14Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M8 20H10V24H8V20Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M14 20H16V24H14V20Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M30 14C30 13.4696 29.7893 12.9609 29.4142 12.5858C29.0391 12.2107 28.5304 12 28 12H22V4C22 3.46957 21.7893 2.96086 21.4142 2.58579C21.0391 2.21071 20.5304 2 20 2H4C3.46957 2 2.96086 2.21071 2.58579 2.58579C2.21071 2.96086 2 3.46957 2 4V30H30V14ZM4 4H20V28H4V4ZM22 28V14H28V28H22Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-codepen',\r\n templateUrl: `../../../../assets/icons/codepen.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCodepenComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M8.00004 1.33334L14.6667 5.66668V10.3333L8.00004 14.6667L1.33337 10.3333V5.66668L8.00004 1.33334Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 14.6667V10.3333\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.6667 5.66666L8.00004 10.3333L1.33337 5.66666\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M1.33337 10.3333L8.00004 5.66666L14.6667 10.3333\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 1.33334V5.66668\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-company-name',\r\n templateUrl: `../../../../assets/icons/company-name.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCompanyNameComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<rect x=\"3\" y=\"5\" width=\"26\" height=\"22\" rx=\"1\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<rect x=\"14\" y=\"8\" width=\"12\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"6\" y=\"8\" width=\"6\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"6\" y=\"12\" width=\"10\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"6\" y=\"16\" width=\"6\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"14\" y=\"16\" width=\"12\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"6\" y=\"20\" width=\"4\" height=\"4\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"12\" y=\"20\" width=\"10\" height=\"4\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"24\" y=\"20\" width=\"2\" height=\"4\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"18\" y=\"12\" width=\"8\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-contract',\r\n templateUrl: `../../../../assets/icons/contract.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconContractComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"40\" viewBox=\"0 0 32 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M9.59969 28.6665H8.31969C7.96609 28.6665 7.67969 28.9648 7.67969 29.3332C7.67969 29.7015 7.96609 29.9998 8.31969 29.9998H9.59969C9.95329 29.9998 10.2397 29.7015 10.2397 29.3332C10.2397 28.9648 9.95329 28.6665 9.59969 28.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M27.5195 28.6665H12.1595C11.8059 28.6665 11.5195 28.9648 11.5195 29.3332C11.5195 29.7015 11.8059 29.9998 12.1595 29.9998H27.5195C27.8731 29.9998 28.1595 29.7015 28.1595 29.3332C28.1595 28.9648 27.8731 28.6665 27.5195 28.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M9.59969 24.6665H8.31969C7.96609 24.6665 7.67969 24.9648 7.67969 25.3332C7.67969 25.7015 7.96609 25.9998 8.31969 25.9998H9.59969C9.95329 25.9998 10.2397 25.7015 10.2397 25.3332C10.2397 24.9648 9.95329 24.6665 9.59969 24.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M27.5195 24.6665H12.1595C11.8059 24.6665 11.5195 24.9648 11.5195 25.3332C11.5195 25.7015 11.8059 25.9998 12.1595 25.9998H27.5195C27.8731 25.9998 28.1595 25.7015 28.1595 25.3332C28.1595 24.9648 27.8731 24.6665 27.5195 24.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M9.59969 20.6665H8.31969C7.96609 20.6665 7.67969 20.9648 7.67969 21.3332C7.67969 21.7015 7.96609 21.9998 8.31969 21.9998H9.59969C9.95329 21.9998 10.2397 21.7015 10.2397 21.3332C10.2397 20.9648 9.95329 20.6665 9.59969 20.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M27.5195 20.6665H12.1595C11.8059 20.6665 11.5195 20.9648 11.5195 21.3332C11.5195 21.7015 11.8059 21.9998 12.1595 21.9998H27.5195C27.8731 21.9998 28.1595 21.7015 28.1595 21.3332C28.1595 20.9648 27.8731 20.6665 27.5195 20.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M9.59969 16.6665H8.31969C7.96609 16.6665 7.67969 16.9648 7.67969 17.3332C7.67969 17.7015 7.96609 17.9998 8.31969 17.9998H9.59969C9.95329 17.9998 10.2397 17.7015 10.2397 17.3332C10.2397 16.9648 9.95329 16.6665 9.59969 16.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M27.5195 16.6665H12.1595C11.8059 16.6665 11.5195 16.9648 11.5195 17.3332C11.5195 17.7015 11.8059 17.9998 12.1595 17.9998H27.5195C27.8731 17.9998 28.1595 17.7015 28.1595 17.3332C28.1595 16.9648 27.8731 16.6665 27.5195 16.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M9.59969 12.6665H8.31969C7.96609 12.6665 7.67969 12.9648 7.67969 13.3332C7.67969 13.7015 7.96609 13.9998 8.31969 13.9998H9.59969C9.95329 13.9998 10.2397 13.7015 10.2397 13.3332C10.2397 12.9648 9.95329 12.6665 9.59969 12.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M27.5195 12.6665H12.1595C11.8059 12.6665 11.5195 12.9648 11.5195 13.3332C11.5195 13.7015 11.8059 13.9998 12.1595 13.9998H27.5195C27.8731 13.9998 28.1595 13.7015 28.1595 13.3332C28.1595 12.9648 27.8731 12.6665 27.5195 12.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M31.992 9.95833C31.9888 9.9 31.9776 9.8425 31.9592 9.78667C31.952 9.765 31.9472 9.745 31.9384 9.72417C31.9072 9.65167 31.864 9.58583 31.8104 9.52917L22.8504 0.195833C22.796 0.14 22.7328 0.095 22.6632 0.0625C22.6432 0.0533333 22.6232 0.0475 22.604 0.0408333C22.5504 0.0216667 22.4944 0.01 22.4384 0.00583333C22.4264 0.0075 22.4144 0 22.4 0H4.48C4.1264 0 3.84 0.298333 3.84 0.666667V2.66667H0.64C0.2864 2.66667 0 2.965 0 3.33333V39.3333C0 39.7017 0.2864 40 0.64 40H27.52C27.8736 40 28.16 39.7017 28.16 39.3333V36H31.36C31.7136 36 32 35.7017 32 35.3333V10C32 9.985 31.9928 9.9725 31.992 9.95833ZM23.04 2.27583L29.8152 9.33333H23.04V2.27583ZM26.88 38.6667H1.28V4H3.84V35.3333C3.84 35.7017 4.1264 36 4.48 36H26.88V38.6667ZM30.72 34.6667H5.12V1.33333H21.76V10C21.76 10.3683 22.0464 10.6667 22.4 10.6667H30.72V34.6667Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M12.1597 6H8.31969C7.96609 6 7.67969 6.29833 7.67969 6.66667V10.6667C7.67969 11.035 7.96609 11.3333 8.31969 11.3333H12.1597C12.5133 11.3333 12.7997 11.035 12.7997 10.6667V6.66667C12.7997 6.29833 12.5133 6 12.1597 6ZM11.5197 10H8.95969V7.33333H11.5197V10Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-delete',\r\n templateUrl: `../../../../assets/icons/delete.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDeleteComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M14 2.66663H5.33329L0.666626 7.99996L5.33329 13.3333H14C14.3536 13.3333 14.6927 13.1928 14.9428 12.9428C15.1928 12.6927 15.3333 12.3536 15.3333 12V3.99996C15.3333 3.64634 15.1928 3.3072 14.9428 3.05715C14.6927 2.8071 14.3536 2.66663 14 2.66663V2.66663Z\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12 6L8 10\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 6L12 10\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-document',\r\n templateUrl: `../../../../assets/icons/document.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDocumentComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12.9375 2.25H6.375C5.87772 2.25 5.40081 2.45545 5.04917 2.82114C4.69754 3.18684 4.5 3.68283 4.5 4.2V19.8C4.5 20.3172 4.69754 20.8132 5.04917 21.1789C5.40081 21.5446 5.87772 21.75 6.375 21.75H17.625C18.1223 21.75 18.5992 21.5446 18.9508 21.1789C19.3025 20.8132 19.5 20.3172 19.5 19.8V9.075L12.9375 2.25Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12.75 3V9.75H19.5\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 13H13.5\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 15H16\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 17H16\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-dollar-sign',\r\n templateUrl: `../../../../assets/icons/dollar-sign.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDollarSignComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M4 23V1H5H8.5H12H15.5H19H20V23H19L15.5 19L12 23L8.5 19L5 23H4Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12 5.49988V16.4999\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.5 7.50012H10.75C10.2859 7.50012 9.84075 7.6845 9.51256 8.01269C9.18437 8.34087 9 8.78599 9 9.25012C9 9.71425 9.18437 10.1594 9.51256 10.4876C9.84075 10.8157 10.2859 11.0001 10.75 11.0001H13.25C13.7141 11.0001 14.1592 11.1845 14.4874 11.5127C14.8156 11.8409 15 12.286 15 12.7501C15 13.2143 14.8156 13.6594 14.4874 13.9876C14.1592 14.3157 13.7141 14.5001 13.25 14.5001H9\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-domain',\r\n templateUrl: `../../../../assets/icons/domain.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDomainComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"64\" height=\"64\" viewBox=\"0 0 64 64\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M16 16H20V24H16V16Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M16 28H20V36H16V28Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M28 16H32V24H28V16Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M28 28H32V36H28V28Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M16 40H20V48H16V40Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M28 40H32V48H28V40Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M60 28C60 26.9391 59.5786 25.9217 58.8284 25.1716C58.0783 24.4214 57.0609 24 56 24H44V8C44 6.93913 43.5786 5.92172 42.8284 5.17157C42.0783 4.42143 41.0609 4 40 4H8C6.93913 4 5.92172 4.42143 5.17157 5.17157C4.42143 5.92172 4 6.93913 4 8V60H60V28ZM8 8H40V56H8V8ZM44 56V28H56V56H44Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-download',\r\n templateUrl: `../../../../assets/icons/download.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDownloadComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M14 10V12.6667C14 13.0203 13.8595 13.3594 13.6095 13.6095C13.3594 13.8595 13.0203 14 12.6667 14H3.33333C2.97971 14 2.64057 13.8595 2.39052 13.6095C2.14048 13.3594 2 13.0203 2 12.6667V10\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M4.6665 6.66667L7.99984 10L11.3332 6.66667\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 10V2\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-edit-square',\r\n templateUrl: `../../../../assets/icons/edit-square.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconEditSquareComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M7.33325 2.66675H2.66659C2.31296 2.66675 1.97382 2.80722 1.72378 3.05727C1.47373 3.30732 1.33325 3.64646 1.33325 4.00008V13.3334C1.33325 13.687 1.47373 14.0262 1.72378 14.2762C1.97382 14.5263 2.31296 14.6667 2.66659 14.6667H11.9999C12.3535 14.6667 12.6927 14.5263 12.9427 14.2762C13.1928 14.0262 13.3333 13.687 13.3333 13.3334V8.66675\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12.3333 1.66665C12.5985 1.40144 12.9582 1.25244 13.3333 1.25244C13.7083 1.25244 14.068 1.40144 14.3333 1.66665C14.5985 1.93187 14.7475 2.29158 14.7475 2.66665C14.7475 3.04173 14.5985 3.40144 14.3333 3.66665L7.99992 9.99999L5.33325 10.6667L5.99992 7.99999L12.3333 1.66665Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-edit',\r\n templateUrl: `../../../../assets/icons/edit.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconEditComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M21.1298 6.8356C21.3947 6.57068 21.7092 6.36054 22.0553 6.21716C22.4015 6.07379 22.7725 6 23.1471 6C23.5217 6 23.8927 6.07379 24.2389 6.21716C24.585 6.36054 24.8995 6.57068 25.1644 6.8356C25.4293 7.10051 25.6395 7.41501 25.7828 7.76114C25.9262 8.10727 26 8.47825 26 8.8529C26 9.22755 25.9262 9.59853 25.7828 9.94466C25.6395 10.2908 25.4293 10.6053 25.1644 10.8702L11.5476 24.487L6 26L7.51298 20.4524L21.1298 6.8356Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-email',\r\n templateUrl: `../../../../assets/icons/email.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconEmailComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M5.33366 5.33334H26.667C28.1337 5.33334 29.3337 6.53334 29.3337 8V24C29.3337 25.4667 28.1337 26.6667 26.667 26.6667H5.33366C3.86699 26.6667 2.66699 25.4667 2.66699 24V8C2.66699 6.53334 3.86699 5.33334 5.33366 5.33334Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M29.3337 8L16.0003 17.3333L2.66699 8\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-empty-doc',\r\n templateUrl: `../../../../assets/icons/empty-doc.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconEmptyDocComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"64\" height=\"64\" viewBox=\"0 0 64 64\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M34.5 6H17C15.6739 6 14.4021 6.54786 13.4645 7.52304C12.5268 8.49823 12 9.82087 12 11.2V52.8C12 54.1791 12.5268 55.5018 13.4645 56.477C14.4021 57.4521 15.6739 58 17 58H47C48.3261 58 49.5979 57.4521 50.5355 56.477C51.4732 55.5018 52 54.1791 52 52.8V24.2L34.5 6Z\" stroke=\"#0273E8\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M34 8V26H52\" stroke=\"#0273E8\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-error',\r\n templateUrl: `../../../../assets/icons/error.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconErrorComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M5.102 1H10.898L15 5.102V10.898L10.898 15H5.102L1 10.898V5.102L5.102 1Z\" fill=\"#FA3838\"/>\r\n<path d=\"M8 5.33333V7.99999\" stroke=\"#F5FAFF\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n<path d=\"M8 10.6667H8.00667\" stroke=\"#F5FAFF\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-eye-closed',\r\n templateUrl: `../../../../assets/icons/eye-closed.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconEyeClosedComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"17\" height=\"17\" viewBox=\"0 0 17 17\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<g clip-path=\"url(#clip0)\">\r\n<path d=\"M10.108 9.61859C9.9249 9.81509 9.70409 9.9727 9.45876 10.082C9.21343 10.1913 8.9486 10.2501 8.68005 10.2548C8.41151 10.2596 8.14477 10.2102 7.89573 10.1096C7.6467 10.009 7.42048 9.85928 7.23056 9.66936C7.04064 9.47945 6.89092 9.25322 6.79033 9.00419C6.68974 8.75515 6.64035 8.48841 6.64508 8.21987C6.64982 7.95133 6.7086 7.68649 6.81791 7.44116C6.92722 7.19583 7.08483 6.97503 7.28133 6.79193M12.6547 12.1653C11.5151 13.0339 10.1274 13.5152 8.69466 13.5386C4.02799 13.5386 1.36133 8.20526 1.36133 8.20526C2.19059 6.65986 3.34075 5.30967 4.73466 4.24526L12.6547 12.1653ZM7.29466 3.03193C7.75355 2.92451 8.22337 2.87082 8.69466 2.87193C13.3613 2.87193 16.028 8.20526 16.028 8.20526C15.6233 8.96233 15.1407 9.67508 14.588 10.3319L7.29466 3.03193Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n<path d=\"M1.36133 0.871927L16.028 15.5386\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</g>\r\n<defs>\r\n<clipPath id=\"clip0\">\r\n<rect width=\"16\" height=\"16\" fill=\"white\" transform=\"translate(0.694824 0.205261)\"/>\r\n</clipPath>\r\n</defs>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-eye-open',\r\n templateUrl: `../../../../assets/icons/eye-open.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconEyeOpenComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M0.666504 8C0.666504 8 3.33317 2.66667 7.99984 2.66667C12.6665 2.66667 15.3332 8 15.3332 8C15.3332 8 12.6665 13.3333 7.99984 13.3333C3.33317 13.3333 0.666504 8 0.666504 8Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 10C9.10457 10 10 9.10457 10 8C10 6.89543 9.10457 6 8 6C6.89543 6 6 6.89543 6 8C6 9.10457 6.89543 10 8 10Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-filter',\r\n templateUrl: `../../../../assets/icons/filter.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconFilterComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M14.6667 2H1.33337L6.66671 8.30667V12.6667L9.33337 14V8.30667L14.6667 2Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-grid',\r\n templateUrl: `../../../../assets/icons/grid.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconGridComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M6 2H3C2.44772 2 2 2.44772 2 3V6C2 6.55228 2.44772 7 3 7H6C6.55228 7 7 6.55228 7 6V3C7 2.44772 6.55228 2 6 2Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M13 2H10C9.44772 2 9 2.44772 9 3V6C9 6.55228 9.44772 7 10 7H13C13.5523 7 14 6.55228 14 6V3C14 2.44772 13.5523 2 13 2Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M13 9H10C9.44772 9 9 9.44772 9 10V13C9 13.5523 9.44772 14 10 14H13C13.5523 14 14 13.5523 14 13V10C14 9.44772 13.5523 9 13 9Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M6 9H3C2.44772 9 2 9.44772 2 10V13C2 13.5523 2.44772 14 3 14H6C6.55228 14 7 13.5523 7 13V10C7 9.44772 6.55228 9 6 9Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-help',\r\n templateUrl: `../../../../assets/icons/help.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconHelpComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M16.0003 29.3333C23.3641 29.3333 29.3337 23.3638 29.3337 16C29.3337 8.6362 23.3641 2.66666 16.0003 2.66666C8.63653 2.66666 2.66699 8.6362 2.66699 16C2.66699 23.3638 8.63653 29.3333 16.0003 29.3333Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12.1201 12C12.4336 11.1089 13.0523 10.3575 13.8667 9.87884C14.6811 9.40021 15.6386 9.22525 16.5697 9.38495C17.5007 9.54464 18.3452 10.0287 18.9536 10.7514C19.5619 11.474 19.8949 12.3887 19.8934 13.3333C19.8934 16 15.8934 17.3333 15.8934 17.3333V19\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16 22.6667H16.0133\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-hexagon',\r\n templateUrl: `../../../../assets/icons/hexagon.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconHexagonComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M14 10.6667V5.33335C13.9998 5.09953 13.938 4.86989 13.821 4.66746C13.704 4.46503 13.5358 4.29692 13.3333 4.18002L8.66667 1.51335C8.46397 1.39633 8.23405 1.33472 8 1.33472C7.76595 1.33472 7.53603 1.39633 7.33333 1.51335L2.66667 4.18002C2.46418 4.29692 2.29599 4.46503 2.17897 4.66746C2.06196 4.86989 2.00024 5.09953 2 5.33335V10.6667C2.00024 10.9005 2.06196 11.1301 2.17897 11.3326C2.29599 11.535 2.46418 11.7031 2.66667 11.82L7.33333 14.4867C7.53603 14.6037 7.76595 14.6653 8 14.6653C8.23405 14.6653 8.46397 14.6037 8.66667 14.4867L13.3333 11.82C13.5358 11.7031 13.704 11.535 13.821 11.3326C13.938 11.1301 13.9998 10.9005 14 10.6667Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-home',\r\n templateUrl: `../../../../assets/icons/home.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconHomeComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M3 9L12 2L21 9V20C21 20.5304 20.7893 21.0391 20.4142 21.4142C20.0391 21.7893 19.5304 22 19 22H5C4.46957 22 3.96086 21.7893 3.58579 21.4142C3.21071 21.0391 3 20.5304 3 20V9Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9 22V12H15V22\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-image',\r\n templateUrl: `../../../../assets/icons/image.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconImageComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M25.3333 4H6.66667C5.19391 4 4 5.19391 4 6.66667V25.3333C4 26.8061 5.19391 28 6.66667 28H25.3333C26.8061 28 28 26.8061 28 25.3333V6.66667C28 5.19391 26.8061 4 25.3333 4Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M11.334 13.3333C12.4386 13.3333 13.334 12.4379 13.334 11.3333C13.334 10.2288 12.4386 9.33334 11.334 9.33334C10.2294 9.33334 9.33398 10.2288 9.33398 11.3333C9.33398 12.4379 10.2294 13.3333 11.334 13.3333Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M27.9994 20L21.3327 13.3333L6.66602 28\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-list',\r\n templateUrl: `../../../../assets/icons/list.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconListComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M5.33325 4H13.9999\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.33325 8H13.9999\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.33325 12H13.9999\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M2 4H2.00667\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M2 8H2.00667\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M2 12H2.00667\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-location-pin',\r\n templateUrl: `../../../../assets/icons/location-pin.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconLocationPinComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"64\" height=\"64\" viewBox=\"0 0 64 64\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M56 26.666C56 45.3327 32 61.3327 32 61.3327C32 61.3327 8 45.3327 8 26.666C8 20.3008 10.5286 14.1963 15.0294 9.69545C19.5303 5.19458 25.6348 2.66602 32 2.66602C38.3652 2.66602 44.4697 5.19458 48.9706 9.69545C53.4714 14.1963 56 20.3008 56 26.666Z\" stroke=\"#0273E8\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M32 34.666C36.4183 34.666 40 31.0843 40 26.666C40 22.2477 36.4183 18.666 32 18.666C27.5817 18.666 24 22.2477 24 26.666C24 31.0843 27.5817 34.666 32 34.666Z\" stroke=\"#0273E8\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-login',\r\n templateUrl: `../../../../assets/icons/login.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconLoginComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M15 3H19C19.5304 3 20.0391 3.21071 20.4142 3.58579C20.7893 3.96086 21 4.46957 21 5V19C21 19.5304 20.7893 20.0391 20.4142 20.4142C20.0391 20.7893 19.5304 21 19 21H15\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M10 17L15 12L10 7\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15 12H3\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-logout',\r\n templateUrl: `../../../../assets/icons/logout.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconLogoutComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M6 14H3.33333C2.97971 14 2.64057 13.8595 2.39052 13.6095C2.14048 13.3594 2 13.0203 2 12.6667V3.33333C2 2.97971 2.14048 2.64057 2.39052 2.39052C2.64057 2.14048 2.97971 2 3.33333 2H6\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M10.6667 11.3333L14 7.99999L10.6667 4.66666\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14 8H6\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-menu',\r\n templateUrl: `../../../../assets/icons/menu.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconMenuComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M3 12H21\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M3 6H21\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M3 18H21\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-money-cedule',\r\n templateUrl: `../../../../assets/icons/money-cedule.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconMoneyCeduleComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.3335 13.91C13.4381 13.91 14.3335 13.0146 14.3335 11.91C14.3335 10.8055 13.4381 9.91003 12.3335 9.91003C11.2289 9.91003 10.3335 10.8055 10.3335 11.91C10.3335 13.0146 11.2289 13.91 12.3335 13.91Z\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M6.8335 14V11\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M17.8335 13V10\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M20.1375 18.213V18.213C17.6325 17.712 15.0485 17.774 12.5705 18.393L12.3335 18.453C9.6995 19.111 6.9525 19.177 4.2905 18.644L4.1375 18.613C3.6695 18.52 3.3335 18.109 3.3335 17.633V6.79402C3.3335 6.16302 3.9105 5.69002 4.5295 5.81302V5.81302C7.0345 6.31402 9.6185 6.25202 12.0965 5.63302L12.5695 5.51502C15.0475 4.89602 17.6325 4.83402 20.1365 5.33502L20.5285 5.41302C20.9975 5.50702 21.3335 5.91702 21.3335 6.39402V17.233C21.3335 17.864 20.7565 18.337 20.1375 18.213V18.213Z\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-money-sign',\r\n templateUrl: `../../../../assets/icons/money-sign.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconMoneySignComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12 1V23\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M17 5H9.5C8.57174 5 7.6815 5.36875 7.02513 6.02513C6.36875 6.6815 6 7.57174 6 8.5C6 9.42826 6.36875 10.3185 7.02513 10.9749C7.6815 11.6313 8.57174 12 9.5 12H14.5C15.4283 12 16.3185 12.3688 16.9749 13.0251C17.6313 13.6815 18 14.5717 18 15.5C18 16.4283 17.6313 17.3185 16.9749 17.9749C16.3185 18.6313 15.4283 19 14.5 19H6\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-more',\r\n templateUrl: `../../../../assets/icons/more.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconMoreComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M27.9998 16H4.00018\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16 4V28\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-offered',\r\n templateUrl: `../../../../assets/icons/offered.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconOfferedComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M15.1838 13.1061L15.0823 13.1673C14.7488 12.6998 14.1591 12.5157 13.7115 12.7693C13.7101 12.7701 13.7087 12.7709 13.7073 12.7718L13.4933 12.9006C13.2584 12.6736 12.9662 12.5338 12.6571 12.5008C12.348 12.4677 12.0373 12.543 11.7682 12.7162L10.6857 13.3741H9.24637C8.93253 13.3736 8.62281 13.2943 8.34011 13.142L8.14295 13.0355C7.58541 12.7323 6.96367 12.6074 6.34657 12.6748C5.72947 12.7421 5.14108 12.9991 4.64657 13.4171C4.64239 13.4206 4.63831 13.4242 4.63439 13.4282L4.15854 13.9018C3.98503 14.0743 2.19298 15.1264 1.10413 15.7491C1.08177 15.7618 1.06189 15.7794 1.04561 15.8008C1.02933 15.8222 1.01698 15.8469 1.00926 15.8736C1.00154 15.9003 0.998602 15.9285 1.00062 15.9565C1.00263 15.9844 1.00955 16.0117 1.02099 16.0367C1.03243 16.0617 1.04816 16.0839 1.06728 16.1021C1.08641 16.1203 1.10855 16.1341 1.13245 16.1427C1.15635 16.1513 1.18153 16.1546 1.20656 16.1524C1.23159 16.1501 1.25599 16.1424 1.27834 16.1296C1.75592 15.8565 4.1514 14.4811 4.41278 14.221L4.8828 13.7533C5.32104 13.3849 5.84179 13.1588 6.38766 13.1C6.93353 13.0413 7.48333 13.1521 7.97645 13.4202L8.17358 13.5268C8.50823 13.707 8.87486 13.8009 9.24637 13.8015H11.1583C11.4497 13.8019 11.7315 13.9177 11.9537 14.1284C12.176 14.339 12.3242 14.6308 12.3722 14.952L10.9576 14.8806C10.4553 14.8554 9.95187 14.8814 9.45373 14.9583C9.42864 14.9618 9.40444 14.9709 9.38252 14.985C9.3606 14.9991 9.3414 15.0179 9.32603 15.0404C9.31066 15.0628 9.29943 15.0884 9.29298 15.1158C9.28653 15.1431 9.28499 15.1716 9.28846 15.1996C9.29192 15.2276 9.30032 15.2545 9.31317 15.2788C9.32602 15.3032 9.34306 15.3244 9.36331 15.3414C9.38355 15.3583 9.4066 15.3706 9.43112 15.3775C9.45564 15.3844 9.48115 15.3858 9.50616 15.3816C9.98123 15.3083 10.4613 15.2835 10.9404 15.3076L12.5712 15.3901C12.597 15.3914 12.6228 15.3869 12.647 15.3767C12.6713 15.3665 12.6934 15.351 12.7121 15.331C12.7307 15.3111 12.7456 15.2871 12.7557 15.2605C12.7659 15.2339 12.7711 15.2053 12.7711 15.1764C12.7711 15.1325 12.7692 15.0892 12.7664 15.0461L13.0033 14.9065L15.3656 13.4823C15.5556 13.3673 15.7747 13.3274 15.9876 13.3689C16.2004 13.4105 16.3944 13.5311 16.5383 13.7113L11.7409 17.3925C11.1102 17.7361 10.3982 17.8468 9.70749 17.7088L6.83992 17.1187C6.52946 17.0329 6.20143 17.0828 5.92273 17.2581L3.0497 19.0934C3.02778 19.1072 3.00851 19.1258 2.99302 19.148C2.97753 19.1702 2.96612 19.1956 2.95943 19.2227C2.95275 19.2499 2.95093 19.2782 2.95408 19.3062C2.95723 19.3341 2.96529 19.3611 2.97779 19.3855C2.99029 19.4099 3.00699 19.4314 3.02693 19.4486C3.04686 19.4658 3.06964 19.4784 3.09396 19.4858C3.11828 19.4931 3.14366 19.495 3.16863 19.4914C3.19361 19.4877 3.21769 19.4786 3.2395 19.4645L6.11097 17.63C6.30617 17.5077 6.53591 17.4736 6.75291 17.5349C6.75686 17.536 6.76084 17.537 6.76486 17.5378L9.63878 18.1293C10.415 18.2844 11.2152 18.1582 11.9226 17.769C11.9307 17.7645 11.9386 17.7593 11.946 17.7536L16.917 13.9392C16.9572 13.9083 16.9853 13.8615 16.9956 13.8083C17.006 13.7551 16.9977 13.6994 16.9726 13.6527C16.7948 13.3217 16.5096 13.0801 16.1764 12.9783C15.8431 12.8765 15.4876 12.9222 15.1838 13.1061ZM11.9531 13.0904L11.9577 13.0875C12.136 12.9723 12.3394 12.9146 12.5453 12.9209C12.7512 12.9272 12.9515 12.9972 13.1239 13.1231L12.1179 13.729C11.9177 13.5627 11.6856 13.4508 11.4401 13.4023L11.9531 13.0904ZM12.8232 14.5294L12.6886 14.6088C12.6269 14.4016 12.532 14.2087 12.4085 14.0395L13.8864 13.1495C14.1516 13.0009 14.5108 13.1073 14.7377 13.3752L12.8232 14.5294Z\" fill=\"#0273E8\" stroke=\"#0273E8\" stroke-width=\"0.336574\" [attr.stroke]=\"fillColor\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M10.2178 1V10.164\" stroke=\"#0273E8\" stroke-width=\"0.897531\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12.5833 4H9.45833C9.07156 4 8.70063 4.18437 8.42714 4.51256C8.15365 4.84075 8 5.28587 8 5.75C8 6.21413 8.15365 6.65925 8.42714 6.98744C8.70063 7.31563 9.07156 7.5 9.45833 7.5H11.5417C11.9284 7.5 12.2994 7.68437 12.5729 8.01256C12.8464 8.34075 13 8.78587 13 9.25C13 9.71413 12.8464 10.1592 12.5729 10.4874C12.2994 10.8156 11.9284 11 11.5417 11H8\" stroke=\"#0273E8\" stroke-width=\"0.897531\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-password',\r\n templateUrl: `../../../../assets/icons/password.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPasswordComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M25.3333 14H6.66667C5.19391 14 4 15.3024 4 16.9091V27.0909C4 28.6976 5.19391 30 6.66667 30H25.3333C26.8061 30 28 28.6976 28 27.0909V16.9091C28 15.3024 26.8061 14 25.3333 14Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9 14V8.66667C9 6.89856 9.7375 5.20286 11.0503 3.95262C12.363 2.70238 14.1435 2 16 2C17.8565 2 19.637 2.70238 20.9497 3.95262C22.2625 5.20286 23 6.89856 23 8.66667V14\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-people',\r\n templateUrl: `../../../../assets/icons/people.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPeopleComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M11.4175 13.0849C12.4024 13.2687 13.317 13.746 14.0355 14.4645C14.0473 14.4763 14.0591 14.4881 14.0707 14.5H19.5C20.0304 14.5 20.5391 14.7107 20.9142 15.0858C21.2893 15.4609 21.5 15.9696 21.5 16.5V18C21.5 18.5523 21.9477 19 22.5 19C23.0523 19 23.5 18.5523 23.5 18V16.5C23.5 15.4391 23.0786 14.4217 22.3284 13.6716C21.5783 12.9214 20.5609 12.5 19.5 12.5H13.5C12.7592 12.5 12.0396 12.7055 11.4175 13.0849ZM11.5 18C11.5 17.7348 11.3946 17.4804 11.2071 17.2929C11.0196 17.1054 10.7652 17 10.5 17H9.5V18C9.5 18.5523 9.94772 19 10.5 19C11.0523 19 11.5 18.5523 11.5 18Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M13.5 19.5V18C13.5 17.2044 13.1839 16.4413 12.6213 15.8787C12.0587 15.3161 11.2956 15 10.5 15H4.5C3.70435 15 2.94129 15.3161 2.37868 15.8787C1.81607 16.4413 1.5 17.2044 1.5 18V19.5\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M7.5 12C9.15685 12 10.5 10.6569 10.5 9C10.5 7.34315 9.15685 6 7.5 6C5.84315 6 4.5 7.34315 4.5 9C4.5 10.6569 5.84315 12 7.5 12Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16.5 10.5C18.1569 10.5 19.5 9.15685 19.5 7.5C19.5 5.84315 18.1569 4.5 16.5 4.5C14.8431 4.5 13.5 5.84315 13.5 7.5C13.5 9.15685 14.8431 10.5 16.5 10.5Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-percent',\r\n templateUrl: `../../../../assets/icons/percent.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPercentComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12.6666 3.33337L3.33325 12.6667\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M4.33341 5.99996C5.25389 5.99996 6.00008 5.25377 6.00008 4.33329C6.00008 3.41282 5.25389 2.66663 4.33341 2.66663C3.41294 2.66663 2.66675 3.41282 2.66675 4.33329C2.66675 5.25377 3.41294 5.99996 4.33341 5.99996Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M11.6667 13.3333C12.5871 13.3333 13.3333 12.5871 13.3333 11.6667C13.3333 10.7462 12.5871 10 11.6667 10C10.7462 10 10 10.7462 10 11.6667C10 12.5871 10.7462 13.3333 11.6667 13.3333Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-person-document',\r\n templateUrl: `../../../../assets/icons/person-document.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPersonDocumentComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"63\" height=\"44\" viewBox=\"0 0 63 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M19.3541 22.7148H14.6053C10.5046 22.7253 7.18263 25.9466 7.17188 29.9231V32.2315C7.17188 32.6679 7.53587 33.0208 7.98587 33.0208H25.9705C25.9736 33.0208 25.9767 33.0208 25.9797 33.0208C26.4297 33.0178 26.7906 32.6619 26.7876 32.2255V29.9231C26.7768 25.9466 23.4548 22.7253 19.3541 22.7148ZM25.1596 31.4362H8.79986V29.9231C8.81675 26.8209 11.4062 24.3099 14.6053 24.2935H19.3541C22.5533 24.3099 25.1427 26.8209 25.1596 29.9231V31.4362Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M55.0224 29.7861H33.2135C32.8035 29.81 32.4763 30.1272 32.4518 30.5248C32.4241 30.9597 32.7651 31.335 33.2135 31.3618H55.0224C55.4325 31.338 55.7596 31.0208 55.7842 30.6231C55.8118 30.1868 55.4709 29.8129 55.0224 29.7861Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M20.8075 20.1055L20.8566 20.0608L20.8581 20.0593C22.9991 17.9832 22.9976 14.6159 20.8566 12.5398C19.8307 11.5405 18.4346 10.979 16.9801 10.979C15.5472 10.979 14.1726 11.5226 13.1498 12.4951L13.1006 12.5398L13.0991 12.5413C10.9581 14.6174 10.9597 17.9847 13.1006 20.0608C15.2216 22.122 18.6604 22.1428 20.8075 20.1055ZM14.2586 13.6597L14.2986 13.621C15.8129 12.2062 18.215 12.2226 19.7078 13.6597L19.717 13.6568C21.2237 15.1193 21.2237 17.4873 19.717 18.9498L19.6771 18.9885C18.1627 20.4108 15.753 20.3944 14.2586 18.9527C12.752 17.4902 12.752 15.1222 14.2586 13.6597Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M57.5785 0H5.4215C2.43123 0.00893582 0.00767918 2.35757 0 5.25724V38.7428C0.00767918 41.6424 2.43123 43.9911 5.4215 44H57.5785C60.5688 43.9925 62.9908 41.6424 63 38.7428V5.25724C62.9908 2.35757 60.5688 0.00893582 57.5785 0ZM61.3751 38.7428C61.3689 40.7727 59.6718 42.4184 57.5785 42.4243H5.4215C3.32816 42.4184 1.63106 40.7727 1.62491 38.7428V5.25724C1.63106 3.22732 3.32816 1.58164 5.4215 1.57568H57.5785C59.6718 1.58164 61.3689 3.22732 61.3751 5.25724V38.7428Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M55.0224 12.6411H33.2135C32.8035 12.6649 32.4763 12.9822 32.4518 13.3798C32.4241 13.8147 32.7651 14.19 33.2135 14.2168H55.0224C55.4325 14.193 55.7596 13.8757 55.7842 13.4781C55.8118 13.0417 55.4709 12.6679 55.0224 12.6411Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M55.0224 21.2139H33.2135C32.8035 21.2377 32.4763 21.5549 32.4518 21.9526C32.4241 22.3874 32.7651 22.7627 33.2135 22.7896H55.0224C55.4325 22.7657 55.7596 22.4485 55.7842 22.0509C55.8118 21.6145 55.4709 21.2407 55.0224 21.2139Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M55.0224 16.9272H33.2135C32.8035 16.9511 32.4763 17.2683 32.4518 17.6659C32.4241 18.1008 32.7651 18.4761 33.2135 18.5029H55.0224C55.4325 18.4791 55.7596 18.1619 55.7842 17.7642C55.8118 17.3279 55.4709 16.9541 55.0224 16.9272Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M55.0224 25.5H33.2135C32.8035 25.5238 32.4763 25.841 32.4518 26.2387C32.4241 26.6736 32.7651 27.0489 33.2135 27.0757H55.0224C55.4325 27.0519 55.7596 26.7346 55.7842 26.337C55.8118 25.9006 55.4709 25.5268 55.0224 25.5Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-person-sad',\r\n templateUrl: `../../../../assets/icons/person-sad.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPersonSadComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M27.9998 51.3333C40.8865 51.3333 51.3332 40.8866 51.3332 28C51.3332 15.1133 40.8865 4.66663 27.9998 4.66663C15.1132 4.66663 4.6665 15.1133 4.6665 28C4.6665 40.8866 15.1132 51.3333 27.9998 51.3333Z\" stroke=\"#FA3838\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M37.3332 37.3333C37.3332 37.3333 33.8332 32.6666 27.9998 32.6666C22.1665 32.6666 18.6665 37.3333 18.6665 37.3333\" stroke=\"#FA3838\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M21 21H21.0233\" stroke=\"#FA3838\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M35 21H35.0233\" stroke=\"#FA3838\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-phone',\r\n templateUrl: `../../../../assets/icons/phone.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPhoneComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M29.3339 22.56V26.56C29.3354 26.9313 29.2593 27.2989 29.1106 27.6391C28.9618 27.9793 28.7436 28.2848 28.47 28.5358C28.1964 28.7868 27.8733 28.9779 27.5216 29.0969C27.1698 29.2159 26.7971 29.2601 26.4272 29.2266C22.3243 28.7808 18.3832 27.3788 14.9206 25.1333C11.699 23.0862 8.96768 20.3549 6.92056 17.1333C4.6672 13.6549 3.26489 9.69463 2.82723 5.5733C2.79391 5.20459 2.83773 4.83298 2.9559 4.48213C3.07406 4.13128 3.26399 3.80889 3.51358 3.53546C3.76318 3.26204 4.06697 3.04358 4.40562 2.894C4.74426 2.74441 5.11035 2.66698 5.48056 2.66663H9.48056C10.1276 2.66026 10.755 2.8894 11.2456 3.31134C11.7362 3.73328 12.0567 4.31923 12.1472 4.95997C12.3161 6.24006 12.6292 7.49694 13.0806 8.70663C13.26 9.18387 13.2988 9.70252 13.1924 10.2011C13.0861 10.6998 12.839 11.1574 12.4806 11.52L10.7872 13.2133C12.6853 16.5514 15.4492 19.3152 18.7872 21.2133L20.4806 19.52C20.8431 19.1615 21.3008 18.9144 21.7994 18.8081C22.298 18.7018 22.8167 18.7406 23.2939 18.92C24.5036 19.3714 25.7605 19.6845 27.0406 19.8533C27.6883 19.9447 28.2798 20.2709 28.7026 20.77C29.1254 21.269 29.3501 21.9061 29.3339 22.56Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-pork',\r\n templateUrl: `../../../../assets/icons/pork.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPorkComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M8.76432 4.65334C7.8261 4.47001 6.85543 4.55 5.95988 4.88445C5.91639 4.90167 5.87673 4.92728 5.84315 4.95983C5.80956 4.99238 5.78272 5.03122 5.76415 5.07414C5.72664 5.16083 5.7251 5.25886 5.75988 5.34668C5.79465 5.43449 5.86288 5.5049 5.94957 5.54241C6.03625 5.57991 6.13428 5.58145 6.2221 5.54668C6.9932 5.25512 7.82964 5.18132 8.63988 5.33334C8.68737 5.34584 8.73694 5.34837 8.78546 5.34076C8.83398 5.33315 8.8804 5.31557 8.92178 5.28913C8.96317 5.26269 8.99863 5.22796 9.02593 5.18714C9.05323 5.14631 9.07178 5.10027 9.0804 5.05192C9.08903 5.00357 9.08754 4.95396 9.07604 4.90621C9.06453 4.85847 9.04326 4.81362 9.01356 4.77451C8.98387 4.73539 8.94639 4.70285 8.90349 4.67893C8.8606 4.65502 8.81321 4.64025 8.76432 4.63556V4.65334Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M11.2802 8.03111C11.6141 8.03111 11.8847 7.76049 11.8847 7.42666C11.8847 7.09284 11.6141 6.82222 11.2802 6.82222C10.9464 6.82222 10.6758 7.09284 10.6758 7.42666C10.6758 7.76049 10.9464 8.03111 11.2802 8.03111Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M15.7822 8.27999C15.741 8.21905 15.6854 8.16928 15.6202 8.13515C15.5551 8.10102 15.4824 8.08359 15.4089 8.08443C15.0498 8.03459 14.7204 7.85805 14.48 7.58666C14.0175 7.08108 13.6244 6.51611 13.3111 5.90666L14.5911 3.90666C14.6688 3.79076 14.7164 3.65733 14.7296 3.51844C14.7427 3.37954 14.7211 3.23955 14.6667 3.1111C14.6121 2.99424 14.5297 2.89259 14.4266 2.81509C14.3235 2.73758 14.203 2.68661 14.0756 2.66666C13.2616 2.55696 12.4331 2.67224 11.68 2.99999C11.2484 3.1901 10.8423 3.43347 10.4711 3.72443C9.74417 3.39847 8.97009 3.18995 8.17778 3.10666C5.02667 2.79999 2.14667 4.84443 1.77778 7.55555C1.63401 7.49087 1.50526 7.39703 1.39968 7.27997C1.2941 7.16292 1.21399 7.0252 1.16444 6.87555C1.13275 6.77293 1.12193 6.66501 1.13262 6.55814C1.14331 6.45128 1.17528 6.34763 1.22667 6.25332C1.27274 6.17414 1.3386 6.10829 1.41778 6.06221C1.47176 6.02953 1.51879 5.98653 1.55616 5.93567C1.59353 5.88482 1.62051 5.8271 1.63558 5.76581C1.65064 5.70452 1.65349 5.64087 1.64395 5.57848C1.63441 5.5161 1.61268 5.4562 1.58 5.40221C1.54731 5.34822 1.50432 5.3012 1.45346 5.26383C1.4026 5.22646 1.34488 5.19947 1.2836 5.18441C1.22231 5.16935 1.15866 5.1665 1.09627 5.17604C1.03388 5.18557 0.973987 5.20731 0.919999 5.23999C0.704853 5.37205 0.527308 5.55724 0.404444 5.77777C0.290214 5.98473 0.218406 6.21239 0.193223 6.44744C0.168039 6.68249 0.189985 6.92019 0.257777 7.14666C0.341221 7.42108 0.479597 7.67567 0.664494 7.89495C0.849392 8.11422 1.07695 8.29361 1.33333 8.42221L1.74222 8.62666C1.7933 9.70855 2.06876 10.768 2.55111 11.7378L2.62667 11.9067C3.01215 12.7219 3.50383 13.4826 4.08889 14.1689C4.13054 14.2163 4.1818 14.2543 4.23928 14.2803C4.29675 14.3064 4.35912 14.3199 4.42222 14.32H6.43111C6.5039 14.3196 6.57549 14.3014 6.63959 14.2669C6.70368 14.2324 6.75832 14.1827 6.7987 14.1221C6.83908 14.0615 6.86396 13.992 6.87116 13.9195C6.87836 13.8471 6.86766 13.774 6.84 13.7067L6.66667 13.3067L7.19111 13.3644C7.78226 13.4229 8.37774 13.4229 8.96889 13.3644C9.13333 13.6311 9.31111 13.8978 9.50667 14.16C9.5476 14.216 9.60107 14.2617 9.66281 14.2933C9.72456 14.3249 9.79285 14.3417 9.86222 14.3422H11.7911C11.8645 14.3422 11.9367 14.3239 12.0013 14.2892C12.0659 14.2544 12.1209 14.2042 12.1614 14.1431C12.2019 14.0819 12.2266 14.0117 12.2333 13.9386C12.2401 13.8656 12.2286 13.792 12.2 13.7244C12.1244 13.5467 12.0489 13.3555 11.9911 13.1911C11.9111 12.9555 11.8489 12.7467 11.8 12.5467C12.2908 12.2817 12.7413 11.9479 13.1378 11.5555C13.5806 11.6091 14.0283 11.6091 14.4711 11.5555C14.5479 11.5439 14.6204 11.5124 14.6812 11.464C14.742 11.4157 14.7891 11.3522 14.8178 11.28L15.8222 8.69777C15.8505 8.63022 15.8616 8.55674 15.8546 8.48386C15.8477 8.41098 15.8228 8.34094 15.7822 8.27999ZM14.1022 10.6978C13.7533 10.7176 13.4033 10.7012 13.0578 10.6489C12.6643 10.5824 12.2845 10.4518 11.9333 10.2622C11.8293 10.2106 11.7093 10.2018 11.5989 10.2376C11.4885 10.2734 11.3964 10.3509 11.3425 10.4537C11.2885 10.5564 11.2768 10.6762 11.31 10.7874C11.3432 10.8987 11.4185 10.9925 11.52 11.0489C11.7057 11.1463 11.8972 11.2324 12.0933 11.3067C11.851 11.5136 11.5819 11.687 11.2933 11.8222L10.8222 12.0355C10.8222 12.0355 11.04 13.0089 11.1867 13.44H10.1289C10.0222 13.2889 9.48444 12.3911 9.48444 12.3911L9.18667 12.4311C8.56117 12.5213 7.92737 12.5392 7.29778 12.4844C7.00444 12.4578 6.51555 12.3955 6.13333 12.3289L5.44444 12.2089C5.44444 12.2089 5.72444 13.2889 5.77778 13.4267H4.63111C4.16271 12.8531 3.76573 12.2248 3.44889 11.5555L3.36889 11.3822C2.79142 10.2706 2.54756 9.01583 2.66667 7.76888C2.90667 5.46221 5.38667 3.71999 8.08444 3.97332C8.86923 4.0613 9.63299 4.28381 10.3422 4.6311L10.6178 4.75999L10.84 4.5511C11.1861 4.24185 11.5772 3.98708 12 3.79555C12.5594 3.55294 13.1704 3.45365 13.7778 3.50666L12.2756 5.85777L12.3867 6.07999C12.7748 6.86182 13.27 7.58581 13.8578 8.2311C14.1308 8.49794 14.4541 8.70792 14.8089 8.84888L14.1022 10.6978Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-radio',\r\n templateUrl: `../../../../assets/icons/radio.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconRadioComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M20.0003 23.3332C21.8413 23.3332 23.3337 21.8408 23.3337 19.9998C23.3337 18.1589 21.8413 16.6665 20.0003 16.6665C18.1594 16.6665 16.667 18.1589 16.667 19.9998C16.667 21.8408 18.1594 23.3332 20.0003 23.3332Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M27.0667 12.9335C27.9965 13.8622 28.734 14.9651 29.2373 16.1791C29.7405 17.393 29.9996 18.6943 29.9996 20.0085C29.9996 21.3226 29.7405 22.6239 29.2373 23.8379C28.734 25.0518 27.9965 26.1547 27.0667 27.0835M12.9334 27.0668C12.0036 26.1381 11.266 25.0352 10.7628 23.8212C10.2595 22.6072 10.0005 21.306 10.0005 19.9918C10.0005 18.6776 10.2595 17.3764 10.7628 16.1624C11.266 14.9484 12.0036 13.8455 12.9334 12.9168M31.7834 8.2168C34.9079 11.3423 36.6631 15.5807 36.6631 20.0001C36.6631 24.4195 34.9079 28.658 31.7834 31.7835M8.21669 31.7835C5.09217 28.658 3.33691 24.4195 3.33691 20.0001C3.33691 15.5807 5.09217 11.3423 8.21669 8.2168\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-refresh',\r\n templateUrl: `../../../../assets/icons/refresh.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconRefreshComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"18\" height=\"16\" viewBox=\"0 0 18 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M1.5 2.2207V6.55518H5.59091\" stroke=\"#0273E8\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16.5 13.7793V9.44482H12.4091\" stroke=\"#0273E8\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.7886 5.83276C14.4428 4.79739 13.8551 3.87171 13.0804 3.14208C12.3056 2.41246 11.369 1.90267 10.358 1.6603C9.34697 1.41792 8.29449 1.45086 7.29873 1.75603C6.30298 2.0612 5.39642 2.62866 4.66364 3.40546L1.5 6.55518M16.5 9.44482L13.3364 12.5945C12.6036 13.3713 11.697 13.9388 10.7013 14.244C9.70551 14.5491 8.65303 14.5821 7.64201 14.3397C6.631 14.0973 5.69441 13.5875 4.91964 12.8579C4.14486 12.1283 3.55716 11.2026 3.21136 10.1672\" stroke=\"#0273E8\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-repeat',\r\n templateUrl: `../../../../assets/icons/repeat.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconRepeatComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M5 1L2 4L5 7\" stroke=\"#747880\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M2 14H10C12.2091 14 14 12.2091 14 10V8C14 5.79086 12.2091 4 10 4H2\" stroke=\"#747880\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-search',\r\n templateUrl: `../../../../assets/icons/search.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconSearchComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M7.33333 12.6667C10.2789 12.6667 12.6667 10.2789 12.6667 7.33333C12.6667 4.38781 10.2789 2 7.33333 2C4.38781 2 2 4.38781 2 7.33333C2 10.2789 4.38781 12.6667 7.33333 12.6667Z\" stroke=\"#474747\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.0001 14.0001L11.1001 11.1001\" stroke=\"#474747\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-second-warning',\r\n templateUrl: `../../../../assets/icons/second-warning.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconSecondWarningComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M6.85433 2.63819L1.17957 12.0114C1.06257 12.2118 1.00066 12.4391 1.00001 12.6706C0.99935 12.9021 1.05997 13.1297 1.17583 13.3308C1.2917 13.532 1.45877 13.6995 1.66042 13.8169C1.86207 13.9343 2.09128 13.9975 2.32524 14H13.6748C13.9087 13.9975 14.1379 13.9343 14.3396 13.8169C14.5412 13.6995 14.7083 13.532 14.8242 13.3308C14.94 13.1297 15.0006 12.9021 15 12.6706C14.9993 12.4391 14.9374 12.2118 14.8204 12.0114L9.14567 2.63819C9.02623 2.44337 8.85806 2.2823 8.65738 2.17051C8.45671 2.05873 8.2303 2 8 2C7.7697 2 7.54329 2.05873 7.34262 2.17051C7.14194 2.2823 6.97377 2.44337 6.85433 2.63819Z\" fill=\"#000000\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M8 6V10\" stroke=\"#ffffff\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n<path d=\"M8 12H8.00667\" stroke=\"#ffffff\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-settings',\r\n templateUrl: `../../../../assets/icons/settings.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconSettingsComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M19.4 15C19.2669 15.3016 19.2272 15.6362 19.286 15.9606C19.3448 16.285 19.4995 16.5843 19.73 16.82L19.79 16.88C19.976 17.0657 20.1235 17.2863 20.2241 17.5291C20.3248 17.7719 20.3766 18.0322 20.3766 18.295C20.3766 18.5578 20.3248 18.8181 20.2241 19.0609C20.1235 19.3037 19.976 19.5243 19.79 19.71C19.6043 19.896 19.3837 20.0435 19.1409 20.1441C18.8981 20.2448 18.6378 20.2966 18.375 20.2966C18.1122 20.2966 17.8519 20.2448 17.6091 20.1441C17.3663 20.0435 17.1457 19.896 16.96 19.71L16.9 19.65C16.6643 19.4195 16.365 19.2648 16.0406 19.206C15.7162 19.1472 15.3816 19.1869 15.08 19.32C14.7842 19.4468 14.532 19.6572 14.3543 19.9255C14.1766 20.1938 14.0813 20.5082 14.08 20.83V21C14.08 21.5304 13.8693 22.0391 13.4942 22.4142C13.1191 22.7893 12.6104 23 12.08 23C11.5496 23 11.0409 22.7893 10.6658 22.4142C10.2907 22.0391 10.08 21.5304 10.08 21V20.91C10.0723 20.579 9.96512 20.258 9.77251 19.9887C9.5799 19.7194 9.31073 19.5143 9 19.4C8.69838 19.2669 8.36381 19.2272 8.03941 19.286C7.71502 19.3448 7.41568 19.4995 7.18 19.73L7.12 19.79C6.93425 19.976 6.71368 20.1235 6.47088 20.2241C6.22808 20.3248 5.96783 20.3766 5.705 20.3766C5.44217 20.3766 5.18192 20.3248 4.93912 20.2241C4.69632 20.1235 4.47575 19.976 4.29 19.79C4.10405 19.6043 3.95653 19.3837 3.85588 19.1409C3.75523 18.8981 3.70343 18.6378 3.70343 18.375C3.70343 18.1122 3.75523 17.8519 3.85588 17.6091C3.95653 17.3663 4.10405 17.1457 4.29 16.96L4.35 16.9C4.58054 16.6643 4.73519 16.365 4.794 16.0406C4.85282 15.7162 4.81311 15.3816 4.68 15.08C4.55324 14.7842 4.34276 14.532 4.07447 14.3543C3.80617 14.1766 3.49179 14.0813 3.17 14.08H3C2.46957 14.08 1.96086 13.8693 1.58579 13.4942C1.21071 13.1191 1 12.6104 1 12.08C1 11.5496 1.21071 11.0409 1.58579 10.6658C1.96086 10.2907 2.46957 10.08 3 10.08H3.09C3.42099 10.0723 3.742 9.96512 4.0113 9.77251C4.28059 9.5799 4.48572 9.31073 4.6 9C4.73311 8.69838 4.77282 8.36381 4.714 8.03941C4.65519 7.71502 4.50054 7.41568 4.27 7.18L4.21 7.12C4.02405 6.93425 3.87653 6.71368 3.77588 6.47088C3.67523 6.22808 3.62343 5.96783 3.62343 5.705C3.62343 5.44217 3.67523 5.18192 3.77588 4.93912C3.87653 4.69632 4.02405 4.47575 4.21 4.29C4.39575 4.10405 4.61632 3.95653 4.85912 3.85588C5.10192 3.75523 5.36217 3.70343 5.625 3.70343C5.88783 3.70343 6.14808 3.75523 6.39088 3.85588C6.63368 3.95653 6.85425 4.10405 7.04 4.29L7.1 4.35C7.33568 4.58054 7.63502 4.73519 7.95941 4.794C8.28381 4.85282 8.61838 4.81311 8.92 4.68H9C9.29577 4.55324 9.54802 4.34276 9.72569 4.07447C9.90337 3.80617 9.99872 3.49179 10 3.17V3C10 2.46957 10.2107 1.96086 10.5858 1.58579C10.9609 1.21071 11.4696 1 12 1C12.5304 1 13.0391 1.21071 13.4142 1.58579C13.7893 1.96086 14 2.46957 14 3V3.09C14.0013 3.41179 14.0966 3.72618 14.2743 3.99447C14.452 4.26276 14.7042 4.47324 15 4.6C15.3016 4.73311 15.6362 4.77282 15.9606 4.714C16.285 4.65519 16.5843 4.50054 16.82 4.27L16.88 4.21C17.0657 4.02405 17.2863 3.87653 17.5291 3.77588C17.7719 3.67523 18.0322 3.62343 18.295 3.62343C18.5578 3.62343 18.8181 3.67523 19.0609 3.77588C19.3037 3.87653 19.5243 4.02405 19.71 4.21C19.896 4.39575 20.0435 4.61632 20.1441 4.85912C20.2448 5.10192 20.2966 5.36217 20.2966 5.625C20.2966 5.88783 20.2448 6.14808 20.1441 6.39088C20.0435 6.63368 19.896 6.85425 19.71 7.04L19.65 7.1C19.4195 7.33568 19.2648 7.63502 19.206 7.95941C19.1472 8.28381 19.1869 8.61838 19.32 8.92V9C19.4468 9.29577 19.6572 9.54802 19.9255 9.72569C20.1938 9.90337 20.5082 9.99872 20.83 10H21C21.5304 10 22.0391 10.2107 22.4142 10.5858C22.7893 10.9609 23 11.4696 23 12C23 12.5304 22.7893 13.0391 22.4142 13.4142C22.0391 13.7893 21.5304 14 21 14H20.91C20.5882 14.0013 20.2738 14.0966 20.0055 14.2743C19.7372 14.452 19.5268 14.7042 19.4 15V15Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-trash',\r\n templateUrl: `../../../../assets/icons/trash.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconTrashComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M2 4H3.33333H14\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.33337 4.00001V2.66668C5.33337 2.31305 5.47385 1.97392 5.7239 1.72387C5.97395 1.47382 6.31309 1.33334 6.66671 1.33334H9.33337C9.687 1.33334 10.0261 1.47382 10.2762 1.72387C10.5262 1.97392 10.6667 2.31305 10.6667 2.66668V4.00001M12.6667 4.00001V13.3333C12.6667 13.687 12.5262 14.0261 12.2762 14.2762C12.0261 14.5262 11.687 14.6667 11.3334 14.6667H4.66671C4.31309 14.6667 3.97395 14.5262 3.7239 14.2762C3.47385 14.0261 3.33337 13.687 3.33337 13.3333V4.00001H12.6667Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M6.66663 7.33334V11.3333\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9.33337 7.33334V11.3333\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-trophy',\r\n templateUrl: `../../../../assets/icons/trophy.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconTrophyComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M10.5 3.72C10.5 3.5985 10.5985 3.5 10.72 3.5H29.28C29.4015 3.5 29.5 3.5985 29.5 3.72V11C29.5 16.2467 25.2467 20.5 20 20.5C14.7533 20.5 10.5 16.2467 10.5 11V3.72Z\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n<rect x=\"18.5\" y=\"20.5\" width=\"3\" height=\"5\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n<rect x=\"15.5\" y=\"25.5\" width=\"9\" height=\"3\" rx=\"0.5\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M11 5H9.54138C7.68756 5 6.27743 6.6646 6.5822 8.4932L7.44293 13.6576C7.76439 15.5863 9.43315 17 11.3885 17H12.5\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M29 5H30.4586C32.3124 5 33.7226 6.6646 33.4178 8.4932L32.5571 13.6576C32.2356 15.5863 30.5668 17 28.6115 17H27.5\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n<rect x=\"12.5\" y=\"28.5\" width=\"15\" height=\"8\" rx=\"0.5\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-upload',\r\n templateUrl: `../../../../assets/icons/upload.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconUploadComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M28 20V25.3333C28 26.0406 27.719 26.7189 27.219 27.219C26.7189 27.719 26.0406 28 25.3333 28H6.66667C5.95942 28 5.28115 27.719 4.78105 27.219C4.28095 26.7189 4 26.0406 4 25.3333V20\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M22.6663 10.6667L15.9997 4L9.33301 10.6667\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16 4V20\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-user',\r\n templateUrl: `../../../../assets/icons/user.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconUserComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M28 28V25.3333C28 23.9188 27.3679 22.5623 26.2426 21.5621C25.1174 20.5619 23.5913 20 22 20H10C8.4087 20 6.88258 20.5619 5.75736 21.5621C4.63214 22.5623 4 23.9188 4 25.3333V28\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16 16C19.3137 16 22 13.3137 22 10C22 6.68629 19.3137 4 16 4C12.6863 4 10 6.68629 10 10C10 13.3137 12.6863 16 16 16Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-waiting',\r\n templateUrl: `../../../../assets/icons/waiting.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconWaitingComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<g clip-path=\"url(#clip0_638_12213)\">\r\n<path d=\"M20 5V13\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M30.6055 9.39355L24.9486 15.0504\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M13 20L6 20\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15.0508 15.0503L11.5152 11.5148\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M20 35L20 27\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9.39453 30.6064L15.0514 24.9496\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M35 20L27 20\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M30.6055 30.6064L24.9486 24.9496\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</g>\r\n<defs>\r\n<clipPath id=\"clip0_638_12213\">\r\n<rect width=\"40\" height=\"40\" fill=\"white\"/>\r\n</clipPath>\r\n</defs>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-wallet',\r\n templateUrl: `../../../../assets/icons/wallet.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconWalletComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M19.5 6.75H4.5C3.25736 6.75 2.25 7.75736 2.25 9V18C2.25 19.2426 3.25736 20.25 4.5 20.25H19.5C20.7426 20.25 21.75 19.2426 21.75 18V9C21.75 7.75736 20.7426 6.75 19.5 6.75Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M19.2825 6.74998V5.34373C19.2824 4.99883 19.2062 4.6582 19.0592 4.34615C18.9123 4.0341 18.6984 3.75832 18.4326 3.53849C18.1668 3.31866 17.8558 3.16019 17.5217 3.0744C17.1877 2.98861 16.8388 2.9776 16.5 3.04217L4.155 5.1492C3.6189 5.25136 3.13526 5.53741 2.78749 5.958C2.43972 6.37859 2.24963 6.90736 2.25 7.4531V9.74998\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M17.25 15C16.9533 15 16.6633 14.912 16.4166 14.7472C16.17 14.5824 15.9777 14.3481 15.8642 14.074C15.7506 13.7999 15.7209 13.4983 15.7788 13.2074C15.8367 12.9164 15.9796 12.6491 16.1893 12.4393C16.3991 12.2295 16.6664 12.0867 16.9574 12.0288C17.2483 11.9709 17.5499 12.0006 17.824 12.1142C18.0981 12.2277 18.3324 12.42 18.4972 12.6666C18.662 12.9133 18.75 13.2033 18.75 13.5C18.75 13.8978 18.592 14.2794 18.3107 14.5607C18.0294 14.842 17.6478 15 17.25 15Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-warning',\r\n templateUrl: `../../../../assets/icons/warning.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconWarningComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M6.85433 2.63819L1.17957 12.0114C1.06257 12.2118 1.00066 12.4391 1.00001 12.6706C0.99935 12.9021 1.05997 13.1297 1.17583 13.3308C1.2917 13.532 1.45877 13.6995 1.66042 13.8169C1.86207 13.9343 2.09128 13.9975 2.32524 14H13.6748C13.9087 13.9975 14.1379 13.9343 14.3396 13.8169C14.5412 13.6995 14.7083 13.532 14.8242 13.3308C14.94 13.1297 15.0006 12.9021 15 12.6706C14.9993 12.4391 14.9374 12.2118 14.8204 12.0114L9.14567 2.63819C9.02623 2.44337 8.85806 2.2823 8.65738 2.17051C8.45671 2.05873 8.2303 2 8 2C7.7697 2 7.54329 2.05873 7.34262 2.17051C7.14194 2.2823 6.97377 2.44337 6.85433 2.63819Z\" fill=\"#EFA30E\"/>\r\n<path d=\"M8 6V10\" stroke=\"#000F1E\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n<path d=\"M8 12H8.00667\" stroke=\"#000F1E\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n OnInit,\r\n Input,\r\n OnChanges,\r\n HostListener,\r\n} from '@angular/core';\r\nimport { MonkeyStyleGuideSettingsService } from '../../core/services/settings/monkey-style-guide-settings.service';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-icon',\r\n template: `\r\n <monkey-icon-arrow-down\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'arrow-down'\"\r\n ></monkey-icon-arrow-down>\r\n <monkey-icon-arrow-left\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'arrow-left'\"\r\n ></monkey-icon-arrow-left>\r\n <monkey-icon-arrow-right\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'arrow-right'\"\r\n ></monkey-icon-arrow-right>\r\n <monkey-icon-arrow-up\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'arrow-up'\"\r\n ></monkey-icon-arrow-up>\r\n <monkey-icon-auction\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'auction'\"\r\n ></monkey-icon-auction>\r\n <monkey-icon-bank\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'bank'\"\r\n ></monkey-icon-bank>\r\n <monkey-icon-bell\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'bell'\"\r\n ></monkey-icon-bell>\r\n <monkey-icon-book\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'book'\"\r\n ></monkey-icon-book>\r\n <monkey-icon-box\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'box'\"\r\n ></monkey-icon-box>\r\n <monkey-icon-calendar\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'calendar'\"\r\n ></monkey-icon-calendar>\r\n <monkey-icon-camera\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'camera'\"\r\n ></monkey-icon-camera>\r\n <monkey-icon-chat\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'chat'\"\r\n ></monkey-icon-chat>\r\n <monkey-icon-check-circle-out\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'check-circle-out'\"\r\n ></monkey-icon-check-circle-out>\r\n <monkey-icon-check-circle\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'check-circle'\"\r\n ></monkey-icon-check-circle>\r\n <monkey-icon-check-grey\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'check-grey'\"\r\n ></monkey-icon-check-grey>\r\n <monkey-icon-check-white\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'check-white'\"\r\n ></monkey-icon-check-white>\r\n <monkey-icon-check\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'check'\"\r\n ></monkey-icon-check>\r\n <monkey-icon-clipboard\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'clipboard'\"\r\n ></monkey-icon-clipboard>\r\n <monkey-icon-clock\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'clock'\"\r\n ></monkey-icon-clock>\r\n <monkey-icon-close\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'close'\"\r\n ></monkey-icon-close>\r\n <monkey-icon-cnpj\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'cnpj'\"\r\n ></monkey-icon-cnpj>\r\n <monkey-icon-codepen\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'codepen'\"\r\n ></monkey-icon-codepen>\r\n <monkey-icon-company-name\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'company-name'\"\r\n ></monkey-icon-company-name>\r\n <monkey-icon-contract\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'contract'\"\r\n ></monkey-icon-contract>\r\n <monkey-icon-delete\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'delete'\"\r\n ></monkey-icon-delete>\r\n <monkey-icon-document\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'document'\"\r\n ></monkey-icon-document>\r\n <monkey-icon-dollar-sign\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'dollar-sign'\"\r\n ></monkey-icon-dollar-sign>\r\n <monkey-icon-domain\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'domain'\"\r\n ></monkey-icon-domain>\r\n <monkey-icon-download\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'download'\"\r\n ></monkey-icon-download>\r\n <monkey-icon-edit-square\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'edit-square'\"\r\n ></monkey-icon-edit-square>\r\n <monkey-icon-edit\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'edit'\"\r\n ></monkey-icon-edit>\r\n <monkey-icon-email\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'email'\"\r\n ></monkey-icon-email>\r\n <monkey-icon-empty-doc\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'empty-doc'\"\r\n ></monkey-icon-empty-doc>\r\n <monkey-icon-error\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'error'\"\r\n ></monkey-icon-error>\r\n <monkey-icon-eye-closed\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'eye-closed'\"\r\n ></monkey-icon-eye-closed>\r\n <monkey-icon-eye-open\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'eye-open'\"\r\n ></monkey-icon-eye-open>\r\n <monkey-icon-filter\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'filter'\"\r\n ></monkey-icon-filter>\r\n <monkey-icon-grid\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'grid'\"\r\n ></monkey-icon-grid>\r\n <monkey-icon-help\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'help'\"\r\n ></monkey-icon-help>\r\n <monkey-icon-hexagon\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'hexagon'\"\r\n ></monkey-icon-hexagon>\r\n <monkey-icon-home\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'home'\"\r\n ></monkey-icon-home>\r\n <monkey-icon-image\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'image'\"\r\n ></monkey-icon-image>\r\n <monkey-icon-list\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'list'\"\r\n ></monkey-icon-list>\r\n <monkey-icon-location-pin\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'location-pin'\"\r\n ></monkey-icon-location-pin>\r\n <monkey-icon-login\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'login'\"\r\n ></monkey-icon-login>\r\n <monkey-icon-logout\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'logout'\"\r\n ></monkey-icon-logout>\r\n <monkey-icon-menu\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'menu'\"\r\n ></monkey-icon-menu>\r\n <monkey-icon-money-cedule\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'money-cedule'\"\r\n ></monkey-icon-money-cedule>\r\n <monkey-icon-money-sign\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'money-sign'\"\r\n ></monkey-icon-money-sign>\r\n <monkey-icon-more\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'more'\"\r\n ></monkey-icon-more>\r\n <monkey-icon-offered\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'offered'\"\r\n ></monkey-icon-offered>\r\n <monkey-icon-password\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'password'\"\r\n ></monkey-icon-password>\r\n <monkey-icon-people\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'people'\"\r\n ></monkey-icon-people>\r\n <monkey-icon-percent\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'percent'\"\r\n ></monkey-icon-percent>\r\n <monkey-icon-person-document\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'person-document'\"\r\n ></monkey-icon-person-document>\r\n <monkey-icon-person-sad\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'person-sad'\"\r\n ></monkey-icon-person-sad>\r\n <monkey-icon-phone\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'phone'\"\r\n ></monkey-icon-phone>\r\n <monkey-icon-pork\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'pork'\"\r\n ></monkey-icon-pork>\r\n <monkey-icon-radio\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'radio'\"\r\n ></monkey-icon-radio>\r\n <monkey-icon-refresh\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'refresh'\"\r\n ></monkey-icon-refresh>\r\n <monkey-icon-repeat\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'repeat'\"\r\n ></monkey-icon-repeat>\r\n <monkey-icon-search\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'search'\"\r\n ></monkey-icon-search>\r\n <monkey-icon-second-warning\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'second-warning'\"\r\n ></monkey-icon-second-warning>\r\n <monkey-icon-settings\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'settings'\"\r\n ></monkey-icon-settings>\r\n <monkey-icon-trash\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'trash'\"\r\n ></monkey-icon-trash>\r\n <monkey-icon-trophy\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'trophy'\"\r\n ></monkey-icon-trophy>\r\n <monkey-icon-upload\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'upload'\"\r\n ></monkey-icon-upload>\r\n <monkey-icon-user\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'user'\"\r\n ></monkey-icon-user>\r\n <monkey-icon-waiting\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'waiting'\"\r\n ></monkey-icon-waiting>\r\n <monkey-icon-wallet\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'wallet'\"\r\n ></monkey-icon-wallet>\r\n <monkey-icon-warning\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'warning'\"\r\n ></monkey-icon-warning>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyIconComponent implements OnInit, OnChanges {\r\n @Input() icon: string;\r\n\r\n @Input() color: string = 'theme';\r\n\r\n @Input() contrast = false;\r\n\r\n @Input() disabled: boolean = false;\r\n\r\n _fillColor = '#000000';\r\n\r\n _icon = '';\r\n\r\n _id = `mecx-icon-${MonkeyUtils.getRandomString(10)}`;\r\n\r\n _size: string;\r\n\r\n private unsubscribeAll: Subject<any>;\r\n\r\n constructor(private monkeyStyleGuideSettingsService: MonkeyStyleGuideSettingsService) {\r\n this.unsubscribeAll = new Subject();\r\n }\r\n\r\n private handleIcon() {\r\n const { icon, color, contrast, monkeyStyleGuideSettingsService } = this;\r\n const handledIcon = icon?.substr(0, icon?.lastIndexOf('-'));\r\n this._icon = handledIcon;\r\n this._size = icon?.substr(icon?.lastIndexOf('-') + 1, icon?.length);\r\n\r\n monkeyStyleGuideSettingsService\r\n .settings()\r\n .pipe(takeUntil(this.unsubscribeAll))\r\n .subscribe((settings: any) => {\r\n if (settings && JSON.stringify(settings) !== '{}') {\r\n const { colors } = settings;\r\n\r\n let handledColor = '';\r\n if ((color || '').search('#') < 0) {\r\n let handledMainColor = '',\r\n handledSecondColor = '';\r\n handledMainColor = color.split('-')[0];\r\n if (!handledMainColor) handledMainColor = 'theme';\r\n handledSecondColor = color.split('-')[1];\r\n if (!handledSecondColor) handledSecondColor = 'main';\r\n\r\n handledColor = colors[handledMainColor][handledSecondColor];\r\n if (contrast) {\r\n handledColor = colors[handledMainColor]['contrast'][handledSecondColor];\r\n }\r\n } else {\r\n handledColor = color;\r\n }\r\n\r\n this._fillColor = handledColor;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.handleIcon();\r\n }\r\n\r\n ngOnChanges() {\r\n this.handleIcon();\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n if (this.disabled) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n event.stopImmediatePropagation();\r\n }\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, ViewEncapsulation, Input, OnInit, HostListener } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-button',\r\n template: `\r\n <button\r\n [ngClass]=\"\r\n 'mecx-button-' +\r\n type +\r\n ' mecx-button-' +\r\n type +\r\n '__' +\r\n color +\r\n (icon ? ' with-icon' : ' no-icon') +\r\n ' ' +\r\n size\r\n \"\r\n type=\"button\"\r\n [disabled]=\"disabled\"\r\n >\r\n <monkey-icon\r\n [icon]=\"icon\"\r\n [color]=\"\r\n disabled\r\n ? '#999999'\r\n : type === 'filter'\r\n ? '#4b4a53'\r\n : type === 'nav-active'\r\n ? 'theme'\r\n : 'theme-800'\r\n \"\r\n [contrast]=\"_useContrast\"\r\n [disabled]=\"disabled\"\r\n *ngIf=\"iconPosition === 'left' && icon\"\r\n ></monkey-icon>\r\n {{ label }}\r\n <ng-content></ng-content>\r\n <monkey-icon\r\n [icon]=\"icon\"\r\n [color]=\"\r\n disabled\r\n ? '#999999'\r\n : type === 'filter'\r\n ? '#4b4a53'\r\n : type === 'nav-active'\r\n ? 'theme'\r\n : 'theme-800'\r\n \"\r\n [disabled]=\"disabled\"\r\n *ngIf=\"iconPosition === 'right' && icon\"\r\n ></monkey-icon>\r\n </button>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyButtonComponent implements OnInit {\r\n @Input() label: string;\r\n @Input() icon: string;\r\n @Input() iconPosition: string = 'left';\r\n @Input() type: string;\r\n @Input() color: string;\r\n @Input() disabled: boolean = false;\r\n @Input() size: 'sm' | 'md' | 'lg' = 'md';\r\n\r\n _useContrast = false;\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n const { type } = this;\r\n if (type === 'primary') {\r\n this._useContrast = true;\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n if (this.disabled) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n event.stopImmediatePropagation();\r\n }\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n HostListener,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-button-dropdown',\r\n template: `\r\n <mecx-button-dropdown\r\n [ngClass]=\"{\r\n trigger: type === 'filled',\r\n open: _opened\r\n }\"\r\n >\r\n <mecx-button-dropdown__trigger>\r\n <ng-container *ngTemplateOutlet=\"label\"></ng-container>\r\n <monkey-icon\r\n icon=\"arrow-down-16\"\r\n [color]=\"'#4B4A53'\"\r\n *ngIf=\"!_opened && type === 'filled'\"\r\n ></monkey-icon>\r\n <monkey-icon\r\n icon=\"arrow-up-16\"\r\n [color]=\"'#4B4A53'\"\r\n *ngIf=\"_opened && type === 'filled'\"\r\n ></monkey-icon>\r\n </mecx-button-dropdown__trigger>\r\n </mecx-button-dropdown>\r\n <mecx-button-dropdown-backdrop *ngIf=\"_opened\" (click)=\"close()\">\r\n </mecx-button-dropdown-backdrop>\r\n <mecx-button-dropdown [ngClass]=\"{ open: _opened }\">\r\n <mecx-button-dropdown-options>\r\n <ng-content></ng-content>\r\n </mecx-button-dropdown-options>\r\n </mecx-button-dropdown>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyButtonDropdownComponent {\r\n @Input() label: any;\r\n @Input() type: 'unfilled' | 'filled' = 'filled';\r\n @Input() listenClicks = true;\r\n\r\n public _customClass = 'trigger';\r\n public _opened: boolean = false;\r\n public _id: string = `mecx-button-dropdown-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor(private cdr: ChangeDetectorRef) {\r\n //not to do\r\n }\r\n\r\n @HostListener('document:click', ['$event'])\r\n clickout(event: any) {\r\n this.close();\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n clickon(event: any) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n if (this._opened && this.listenClicks) {\r\n this.close();\r\n } else {\r\n this._opened = true;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n close() {\r\n setTimeout(() => {\r\n this._opened = false;\r\n this.cdr.detectChanges();\r\n }, 20);\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, ViewEncapsulation, Input, OnInit } from '@angular/core';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-button-avatar',\r\n template: `\r\n <div\r\n [ngClass]=\"'mecx-button-avatar mecx-button-avatar__' + type + ' mecx-button-avatar__' + size\"\r\n >\r\n <img [src]=\"img\" *ngIf=\"img\" />\r\n <span *ngIf=\"!img && _handledValue\">{{ _handledValue }}</span>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyButtonAvatarComponent implements OnInit {\r\n @Input() label: string;\r\n @Input() type: string;\r\n @Input() size: string;\r\n @Input() img: string;\r\n\r\n public _id = `mecx-button-avatar-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled = false;\r\n public _handledValue = '';\r\n\r\n ngOnInit() {\r\n const { label } = this;\r\n this._handledValue = label?.charAt(0);\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MonkeyIconArrowDownComponent } from './icon-arrow-down.component';\r\nimport { MonkeyIconArrowLeftComponent } from './icon-arrow-left.component';\r\nimport { MonkeyIconArrowRightComponent } from './icon-arrow-right.component';\r\nimport { MonkeyIconArrowUpComponent } from './icon-arrow-up.component';\r\nimport { MonkeyIconAuctionComponent } from './icon-auction.component';\r\nimport { MonkeyIconBankComponent } from './icon-bank.component';\r\nimport { MonkeyIconBellComponent } from './icon-bell.component';\r\nimport { MonkeyIconBookComponent } from './icon-book.component';\r\nimport { MonkeyIconBoxComponent } from './icon-box.component';\r\nimport { MonkeyIconCalendarComponent } from './icon-calendar.component';\r\nimport { MonkeyIconCameraComponent } from './icon-camera.component';\r\nimport { MonkeyIconChatComponent } from './icon-chat.component';\r\nimport { MonkeyIconCheckCircleComponent } from './icon-check-circle.component';\r\nimport { MonkeyIconCheckCircleOutComponent } from './icon-check-circle-out.component';\r\nimport { MonkeyIconCheckComponent } from './icon-check.component';\r\nimport { MonkeyIconCheckGreyComponent } from './icon-check-grey.component';\r\nimport { MonkeyIconCheckWhiteComponent } from './icon-check-white.component';\r\nimport { MonkeyIconClipboardComponent } from './icon-clipboard.component';\r\nimport { MonkeyIconClockComponent } from './icon-clock.component';\r\nimport { MonkeyIconCloseComponent } from './icon-close.component';\r\nimport { MonkeyIconCNPJComponent } from './icon-cnpj.component';\r\nimport { MonkeyIconCodepenComponent } from './icon-codepen.component';\r\nimport { MonkeyIconCompanyNameComponent } from './icon-company-name.component';\r\nimport { MonkeyIconComponent } from './icon.component';\r\nimport { MonkeyIconContractComponent } from './icon-contract.component';\r\nimport { MonkeyIconDeleteComponent } from './icon-delete.component';\r\nimport { MonkeyIconDocumentComponent } from './icon-document.component';\r\nimport { MonkeyIconDollarSignComponent } from './icon-dollar-sign.component';\r\nimport { MonkeyIconDomainComponent } from './icon-domain.component';\r\nimport { MonkeyIconDownloadComponent } from './icon-download.component';\r\nimport { MonkeyIconEditComponent } from './icon-edit.component';\r\nimport { MonkeyIconEditSquareComponent } from './icon-edit-square.component';\r\nimport { MonkeyIconEmailComponent } from './icon-email.component';\r\nimport { MonkeyIconEmptyDocComponent } from './icon-empty-doc.component';\r\nimport { MonkeyIconErrorComponent } from './icon-error.component';\r\nimport { MonkeyIconEyeClosedComponent } from './icon-eye-closed.component';\r\nimport { MonkeyIconEyeOpenComponent } from './icon-eye-open.component';\r\nimport { MonkeyIconFilterComponent } from './icon-filter.component';\r\nimport { MonkeyIconGridComponent } from './icon-grid.component';\r\nimport { MonkeyIconHelpComponent } from './icon-help.component';\r\nimport { MonkeyIconHexagonComponent } from './icon-hexagon.component';\r\nimport { MonkeyIconHomeComponent } from './icon-home.component';\r\nimport { MonkeyIconImageComponent } from './icon-image.component';\r\nimport { MonkeyIconListComponent } from './icon-list.component';\r\nimport { MonkeyIconLocationPinComponent } from './icon-location-pin.component';\r\nimport { MonkeyIconLoginComponent } from './icon-login.component';\r\nimport { MonkeyIconLogoutComponent } from './icon-logout.component';\r\nimport { MonkeyIconMenuComponent } from './icon-menu.component';\r\nimport { MonkeyIconMoneyCeduleComponent } from './icon-money-cedule.component';\r\nimport { MonkeyIconMoneySignComponent } from './icon-money-sign.component';\r\nimport { MonkeyIconMoreComponent } from './icon-more.component';\r\nimport { MonkeyIconOfferedComponent } from './icon-offered.component';\r\nimport { MonkeyIconPasswordComponent } from './icon-password.component';\r\nimport { MonkeyIconPeopleComponent } from './icon-people.component';\r\nimport { MonkeyIconPercentComponent } from './icon-percent.component';\r\nimport { MonkeyIconPersonDocumentComponent } from './icon-person-document.component';\r\nimport { MonkeyIconPersonSadComponent } from './icon-person-sad.component';\r\nimport { MonkeyIconPhoneComponent } from './icon-phone.component';\r\nimport { MonkeyIconPorkComponent } from './icon-pork.component';\r\nimport { MonkeyIconRadioComponent } from './icon-radio.component';\r\nimport { MonkeyIconRefreshComponent } from './icon-refresh.component';\r\nimport { MonkeyIconRepeatComponent } from './icon-repeat.component';\r\nimport { MonkeyIconSearchComponent } from './icon-search.component';\r\nimport { MonkeyIconSecondWarningComponent } from './icon-second-warning.component';\r\nimport { MonkeyIconSettingsComponent } from './icon-settings.component';\r\nimport { MonkeyIconTrashComponent } from './icon-trash.component';\r\nimport { MonkeyIconTrophyComponent } from './icon-trophy.component';\r\nimport { MonkeyIconUploadComponent } from './icon-upload.component';\r\nimport { MonkeyIconUserComponent } from './icon-user.component';\r\nimport { MonkeyIconWaitingComponent } from './icon-waiting.component';\r\nimport { MonkeyIconWalletComponent } from './icon-wallet.component';\r\nimport { MonkeyIconWarningComponent } from './icon-warning.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonkeyIconArrowDownComponent,\r\n MonkeyIconArrowLeftComponent,\r\n MonkeyIconArrowRightComponent,\r\n MonkeyIconArrowUpComponent,\r\n MonkeyIconAuctionComponent,\r\n MonkeyIconBankComponent,\r\n MonkeyIconBellComponent,\r\n MonkeyIconBookComponent,\r\n MonkeyIconBoxComponent,\r\n MonkeyIconCalendarComponent,\r\n MonkeyIconCameraComponent,\r\n MonkeyIconChatComponent,\r\n MonkeyIconCheckCircleComponent,\r\n MonkeyIconCheckCircleOutComponent,\r\n MonkeyIconCheckComponent,\r\n MonkeyIconCheckGreyComponent,\r\n MonkeyIconCheckWhiteComponent,\r\n MonkeyIconClipboardComponent,\r\n MonkeyIconClockComponent,\r\n MonkeyIconCloseComponent,\r\n MonkeyIconCNPJComponent,\r\n MonkeyIconCodepenComponent,\r\n MonkeyIconCompanyNameComponent,\r\n MonkeyIconComponent,\r\n MonkeyIconContractComponent,\r\n MonkeyIconDeleteComponent,\r\n MonkeyIconDocumentComponent,\r\n MonkeyIconDollarSignComponent,\r\n MonkeyIconDomainComponent,\r\n MonkeyIconDownloadComponent,\r\n MonkeyIconEditComponent,\r\n MonkeyIconEditSquareComponent,\r\n MonkeyIconEmailComponent,\r\n MonkeyIconEmptyDocComponent,\r\n MonkeyIconErrorComponent,\r\n MonkeyIconEyeClosedComponent,\r\n MonkeyIconEyeOpenComponent,\r\n MonkeyIconFilterComponent,\r\n MonkeyIconGridComponent,\r\n MonkeyIconHelpComponent,\r\n MonkeyIconHexagonComponent,\r\n MonkeyIconHomeComponent,\r\n MonkeyIconImageComponent,\r\n MonkeyIconListComponent,\r\n MonkeyIconLocationPinComponent,\r\n MonkeyIconLoginComponent,\r\n MonkeyIconLogoutComponent,\r\n MonkeyIconMenuComponent,\r\n MonkeyIconMoneyCeduleComponent,\r\n MonkeyIconMoneySignComponent,\r\n MonkeyIconMoreComponent,\r\n MonkeyIconOfferedComponent,\r\n MonkeyIconPasswordComponent,\r\n MonkeyIconPeopleComponent,\r\n MonkeyIconPercentComponent,\r\n MonkeyIconPersonDocumentComponent,\r\n MonkeyIconPersonSadComponent,\r\n MonkeyIconPhoneComponent,\r\n MonkeyIconPorkComponent,\r\n MonkeyIconRadioComponent,\r\n MonkeyIconRefreshComponent,\r\n MonkeyIconRepeatComponent,\r\n MonkeyIconSearchComponent,\r\n MonkeyIconSecondWarningComponent,\r\n MonkeyIconSettingsComponent,\r\n MonkeyIconTrashComponent,\r\n MonkeyIconTrophyComponent,\r\n MonkeyIconUploadComponent,\r\n MonkeyIconUserComponent,\r\n MonkeyIconWaitingComponent,\r\n MonkeyIconWalletComponent,\r\n MonkeyIconWarningComponent\r\n ],\r\n imports: [CommonModule],\r\n exports: [MonkeyIconComponent],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n})\r\nexport class MonkeyIconModule {}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyButtonComponent } from './button.component';\r\nimport { MonkeyButtonDropdownComponent } from './button-dropdown.component';\r\nimport { MonkeyButtonAvatarComponent } from './button-avatar.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MonkeyIconModule } from '../icon/icon.module';\r\n\r\n@NgModule({\r\n declarations: [MonkeyButtonComponent, MonkeyButtonDropdownComponent, MonkeyButtonAvatarComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, MonkeyIconModule],\r\n exports: [MonkeyButtonComponent, MonkeyButtonDropdownComponent, MonkeyButtonAvatarComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyButtonModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { CurrencyPipe } from '@angular/common';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n forwardRef,\r\n OnInit,\r\n Output,\r\n EventEmitter,\r\n Input,\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormBuilder,\r\n FormGroup,\r\n NG_VALUE_ACCESSOR,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { MonkeyUtils } from '../../core/utils';\r\nimport * as moment_ from 'moment';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nconst moment: any = moment_;\r\n\r\n@Component({\r\n selector: 'monkey-date-range-picker',\r\n template: `\r\n <mecx-date-range-picker-group [ngClass]=\"{ disabled: _disabled }\" [id]=\"_id\">\r\n <mecx-date-range-picker-group-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-date-range-picker-group-header>\r\n <mecx-date-range-picker-selected-dates>\r\n <div class=\"from\"\r\n [class.actual]=\"!_startDate\">\r\n <span class=\"title\">\r\n {{ i18n?.from }}\r\n </span>\r\n <span class=\"data\">\r\n <ng-container *ngIf=\"_startDate; else select\">\r\n {{ _startDate?.format('DD') }}\r\n {{ i18n?.of }}\r\n {{ i18n?.months?.[_startDate.format('M')] }},\r\n {{ _startDate.format('YYYY') }}\r\n </ng-container>\r\n </span>\r\n </div>\r\n <div class=\"to\" [class.actual]=\"_startDate\">\r\n <span class=\"title\">\r\n {{ i18n?.to }}\r\n </span>\r\n <span class=\"data\">\r\n <ng-container *ngIf=\"_endDate; else select\">\r\n {{ _endDate.format('DD') }}\r\n {{ i18n?.of }}\r\n {{ i18n?.months?.[_endDate.format('M')] }},\r\n {{ _endDate.format('YYYY') }}\r\n </ng-container>\r\n </span>\r\n </div>\r\n <ng-template #select>\r\n {{ i18n?.select }}\r\n </ng-template>\r\n </mecx-date-range-picker-selected-dates>\r\n <mecx-date-range-picker-group-body>\r\n <mecx-date-range-picker class=\"first-date-range\">\r\n <mecx-date-range-picker-header>\r\n <div class=\"calendar-title\">\r\n <monkey-button\r\n class=\"calendar-previous\"\r\n color=\"theme\"\r\n icon=\"arrow-left-16\"\r\n type=\"tertiary\"\r\n (click)=\"previousMonth()\"\r\n size=\"sm\"\r\n [disabled]=\"_disabled\"\r\n >\r\n </monkey-button>\r\n <div class=\"month-year-title\">\r\n {{ i18n?.months?.[_dateFirst.format('M')] }}\r\n {{ _dateFirst.format('YYYY') }}\r\n </div>\r\n <monkey-button\r\n class=\"calendar-next\"\r\n color=\"theme\"\r\n icon=\"arrow-right-16\"\r\n type=\"tertiary\"\r\n (click)=\"nextMonth()\"\r\n size=\"sm\"\r\n [disabled]=\"_disabled\"\r\n >\r\n </monkey-button>\r\n </div>\r\n <div class=\"week\">\r\n <span class=\"week-day\" *ngFor=\"let day of [1, 2, 3, 4, 5, 6, 7]\">\r\n {{ i18n?.days?.[day]}}\r\n </span>\r\n </div>\r\n </mecx-date-range-picker-header>\r\n <mecx-date-range-picker-body>\r\n <div class=\"month-week\" *ngFor=\"let week of _daysArrFirst\">\r\n <div\r\n class=\"month-day\"\r\n (click)=\"selectedDate(day)\"\r\n [ngClass]=\"{\r\n inactive: !day || isDisabled(day),\r\n selected: isSelected(day),\r\n today: todayCheck(day),\r\n 'first-selected': isFirstSelected(day),\r\n 'last-selected': isLastSelected(day)\r\n }\"\r\n *ngFor=\"let day of week\"\r\n #divOne\r\n >\r\n {{ day?.date() }}\r\n </div>\r\n </div>\r\n </mecx-date-range-picker-body>\r\n </mecx-date-range-picker>\r\n\r\n <mecx-date-range-picker class=\"second-date-range\">\r\n <mecx-date-range-picker-header>\r\n <div class=\"calendar-title\">\r\n <div class=\"month-year-title\">\r\n {{ i18n?.months?.[_dateSecond.format('M')] }}\r\n {{ _dateSecond.format('YYYY') }}\r\n </div>\r\n <monkey-button\r\n class=\"calendar-previous\"\r\n color=\"theme\"\r\n icon=\"arrow-right-16\"\r\n type=\"tertiary\"\r\n (click)=\"nextMonth()\"\r\n size=\"sm\"\r\n [disabled]=\"_disabled\"\r\n >\r\n </monkey-button>\r\n </div>\r\n <div class=\"week\">\r\n <span class=\"week-day\" *ngFor=\"let day of [1, 2, 3, 4, 5, 6, 7]\">\r\n {{ i18n?.days?.[day]}}\r\n </span>\r\n </div>\r\n </mecx-date-range-picker-header>\r\n <mecx-date-range-picker-body>\r\n <div class=\"month-week\" *ngFor=\"let week of _daysArrSecond\">\r\n <div\r\n class=\"month-day\"\r\n (click)=\"selectedDate(day)\"\r\n [ngClass]=\"{\r\n inactive: !day || isDisabled(day),\r\n selected: isSelected(day),\r\n today: todayCheck(day),\r\n 'first-selected': isFirstSelected(day),\r\n 'last-selected': isLastSelected(day)\r\n }\"\r\n *ngFor=\"let day of week\"\r\n >\r\n {{ day?.date() }}\r\n </div>\r\n </div>\r\n </mecx-date-range-picker-body>\r\n </mecx-date-range-picker>\r\n </mecx-date-range-picker-group-body>\r\n <mecx-date-range-picker-group-info>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-date-range-picker-group-info>\r\n <mecx-date-range-picker-group-action [class.error]=\"errorMessage?.trim()\">\r\n <div class=\"action-days\">\r\n <monkey-button\r\n color=\"theme\"\r\n type=\"secondary\"\r\n (click)=\"selectRangeOfDays(30)\"\r\n [disabled]=\"_disabled\"\r\n >\r\n {{ i18n?.actions?.['30'] }}\r\n </monkey-button>\r\n <monkey-button\r\n color=\"theme\"\r\n type=\"secondary\"\r\n (click)=\"selectRangeOfDays(60)\"\r\n [disabled]=\"_disabled\"\r\n >\r\n {{ i18n?.actions?.['60'] }}\r\n </monkey-button>\r\n <monkey-button\r\n color=\"theme\"\r\n type=\"secondary\"\r\n (click)=\"selectRangeOfDays(90)\"\r\n [disabled]=\"_disabled\"\r\n >\r\n {{ i18n?.actions?.['90'] }}\r\n </monkey-button>\r\n </div>\r\n <monkey-button\r\n color=\"theme\"\r\n type=\"primary\"\r\n (click)=\"navigateToToday()\"\r\n [disabled]=\"_disabled\"\r\n >\r\n {{ i18n?.today }}\r\n </monkey-button>\r\n </mecx-date-range-picker-group-action>\r\n </mecx-date-range-picker-group>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyDateRangePickerComponent),\r\n multi: true,\r\n },\r\n CurrencyPipe,\r\n ],\r\n})\r\nexport class MonkeyDateRangePickerComponent implements ControlValueAccessor, OnInit, OnDestroy {\r\n @Input() label: string;\r\n @Input() helperMessage: string = '';\r\n @Input() i18n: {\r\n months: {\r\n [s: string]: string;\r\n };\r\n days: {\r\n [s: string]: string;\r\n };\r\n actions: {\r\n [s: string]: string;\r\n };\r\n from: string;\r\n to: string;\r\n of: string;\r\n today: string;\r\n select: string;\r\n };\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() moveDaysForward = true;\r\n @Input()\r\n set minDate(value: any) {\r\n this._minDate = !this.moveDaysForward ? null : value;\r\n }\r\n\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private today = moment.default().format('YYYY-MM-DD');\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n private unsubscribeAll: Subject<any>;\r\n\r\n public _dateFirst = moment.default();\r\n public _dateSecond = moment.default().add(1, 'M');\r\n public _id: string = `mecx-date-range-picker-${MonkeyUtils.getRandomString(10)}`;\r\n public _daysArrFirst = [];\r\n public _daysArrSecond = [];\r\n public _dateForm: FormGroup;\r\n public _disabled: boolean = false;\r\n public _minDate = null;\r\n public _startDate = null;\r\n public _endDate = null;\r\n\r\n constructor(private fb: FormBuilder, private cdr: ChangeDetectorRef) {\r\n this.unsubscribeAll = new Subject();\r\n this.initDateRange();\r\n }\r\n\r\n private initDateRange() {\r\n this._dateForm = this.fb.group({\r\n startDate: [null, Validators.required],\r\n endDate: [null, Validators.required],\r\n });\r\n this._dateForm?.valueChanges?.pipe(takeUntil(this.unsubscribeAll))?.subscribe((values: any) => {\r\n const { startDate, endDate } = values;\r\n this._startDate = startDate && moment.default(startDate)\r\n this._endDate = endDate && moment.default(endDate)\r\n });\r\n }\r\n\r\n private createCalendar(month: any) {\r\n let firstDay = moment.default(month).startOf('M');\r\n let lastDay = moment.default(month).endOf('M');\r\n let days = Array.apply(null, { length: month.daysInMonth() })\r\n .map(Number.call, Number)\r\n .map((n: number) => {\r\n return moment.default(firstDay).add(n, 'd');\r\n });\r\n\r\n let n = 0;\r\n while (n < firstDay.weekday()) {\r\n days.unshift(null);\r\n n++;\r\n }\r\n n = 0;\r\n while (n < 7 - lastDay.weekday()) {\r\n days.push(null);\r\n n++;\r\n }\r\n\r\n let index = 1;\r\n let group = [];\r\n let grouped = [];\r\n\r\n Object.entries(days).map(([key, value]: [string, any]) => {\r\n if (index > 7) {\r\n index = 1;\r\n grouped.push(group);\r\n group = [];\r\n }\r\n\r\n group.push(value);\r\n index++;\r\n });\r\n grouped.push(group);\r\n\r\n return grouped;\r\n }\r\n\r\n private build() {\r\n this._daysArrFirst = this.createCalendar(this._dateFirst);\r\n this._daysArrSecond = this.createCalendar(this._dateSecond);\r\n }\r\n\r\n private clearDates() {\r\n if (this._disabled) return;\r\n this._dateForm.setValue({ startDate: null, endDate: null });\r\n this.writeValue(this._dateForm.value);\r\n }\r\n\r\n navigateToToday() {\r\n this._dateFirst = moment.default();\r\n this._dateSecond = moment.default().add(1, 'M');\r\n this.build();\r\n }\r\n\r\n ngOnInit() {\r\n this.build();\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (\r\n value &&\r\n Object.prototype.hasOwnProperty.call(value, 'startDate') &&\r\n Object.prototype.hasOwnProperty.call(value, 'endDate')\r\n ) {\r\n this._dateForm.setValue(value);\r\n this.cdr.detectChanges();\r\n this.onModelChange(this._dateForm.value);\r\n this.onModelTouched(this._dateForm.value);\r\n } else {\r\n this.clearDates();\r\n }\r\n }\r\n\r\n get value(): any {\r\n return this._dateForm.value;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n this.onChange.next(value);\r\n }\r\n\r\n nextMonth() {\r\n if (this._disabled) return;\r\n this._dateFirst.add(1, 'M');\r\n this._dateSecond.add(1, 'M');\r\n\r\n this._daysArrFirst = this.createCalendar(this._dateFirst);\r\n this._daysArrSecond = this.createCalendar(this._dateSecond);\r\n }\r\n\r\n previousMonth() {\r\n if (this._disabled) return;\r\n this._dateFirst.subtract(1, 'M');\r\n this._dateSecond.subtract(1, 'M');\r\n\r\n this._daysArrFirst = this.createCalendar(this._dateFirst);\r\n this._daysArrSecond = this.createCalendar(this._dateSecond);\r\n }\r\n\r\n todayCheck(day: any) {\r\n if (!day) {\r\n return false;\r\n }\r\n\r\n return moment.default().format('L') === day.format('L');\r\n }\r\n\r\n isSelected(day: any) {\r\n if (!day) {\r\n return false;\r\n }\r\n\r\n let startDateMoment = moment.default(this._dateForm.value.startDate, 'YYYY-MM-DD');\r\n let endDateMoment = moment.default(this._dateForm.value.endDate, 'YYYY-MM-DD');\r\n\r\n if (this._dateForm.valid) {\r\n return startDateMoment.isSameOrBefore(day) && endDateMoment.isSameOrAfter(day);\r\n }\r\n\r\n if (this._dateForm.get('startDate').valid) {\r\n return startDateMoment.isSame(day);\r\n }\r\n }\r\n\r\n isDisabled(day) {\r\n const { _minDate } = this;\r\n if (_minDate) {\r\n const firstDay = moment.default(_minDate);\r\n return day.isBefore(firstDay.subtract(1, 'day'));\r\n }\r\n return false;\r\n }\r\n\r\n isFirstSelected(day) {\r\n const { _dateForm } = this;\r\n const { startDate } = _dateForm.value;\r\n return day?.isSame(startDate);\r\n }\r\n\r\n isLastSelected(day: any) {\r\n const { _dateForm } = this;\r\n const { endDate } = _dateForm.value;\r\n return day?.isSame(endDate);\r\n }\r\n\r\n selectedDate(day: any) {\r\n if (this._disabled) return;\r\n const { _dateForm, _minDate } = this;\r\n let dayFormatted = day.format('YYYY-MM-DD');\r\n\r\n if (_minDate) {\r\n const firstDay = moment.default(_minDate);\r\n if (day.isBefore(firstDay.subtract(1, 'day'))) return;\r\n }\r\n\r\n if (_dateForm.valid) {\r\n this.clearDates();\r\n }\r\n\r\n let { startDate, endDate } = _dateForm.value;\r\n if (startDate) {\r\n if (moment.default(startDate).isAfter(moment.default(dayFormatted))) {\r\n endDate = startDate;\r\n startDate = dayFormatted;\r\n } else {\r\n endDate = dayFormatted;\r\n }\r\n } else startDate = dayFormatted;\r\n\r\n if (startDate) {\r\n _dateForm.get('startDate').patchValue(startDate);\r\n }\r\n\r\n if (endDate) {\r\n _dateForm.get('endDate').patchValue(endDate);\r\n }\r\n\r\n this.writeValue(_dateForm.value);\r\n }\r\n\r\n selectRangeOfDays(days: number) {\r\n if (this._disabled) return;\r\n const { _dateForm, _minDate, today, moveDaysForward } = this;\r\n const { startDate } = _dateForm.value;\r\n\r\n const firstDay = moment.default(startDate || _minDate || today).format('YYYY-MM-DD');\r\n const method = moveDaysForward ? 'add' : 'subtract';\r\n const lastDay = moment.default(firstDay)[method](days, 'day').format('YYYY-MM-DD');\r\n \r\n if(moveDaysForward){\r\n _dateForm.get('startDate').patchValue(firstDay);\r\n _dateForm.get('endDate').patchValue(lastDay);\r\n } else {\r\n _dateForm.get('startDate').patchValue(lastDay);\r\n _dateForm.get('endDate').patchValue(firstDay);\r\n }\r\n this.writeValue(_dateForm.value);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.unsubscribeAll.next();\r\n this.unsubscribeAll.complete();\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyDateRangePickerComponent } from './date-range-picker.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MonkeyIconModule } from '../icon/icon.module';\r\nimport { MonkeyButtonModule } from '../button/button.module';\r\n\r\n@NgModule({\r\n declarations: [MonkeyDateRangePickerComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, MonkeyButtonModule, MonkeyIconModule],\r\n exports: [MonkeyDateRangePickerComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyDateRangePickerModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { CurrencyPipe } from '@angular/common';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n OnInit,\r\n ElementRef,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyStyleGuideSettingsService, MonkeyStyleSettings } from '../../core';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-input',\r\n template: `\r\n <mecx-form-field [ngClass]=\"{ disabled: _disabled }\" [id]=\"_id\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body [class.error]=\"errorMessage?.trim()\">\r\n <monkey-icon\r\n [icon]=\"icon\"\r\n [color]=\"errorMessage?.trim() ? '#fa3838' : '#4B4A53'\"\r\n *ngIf=\"icon\"\r\n ></monkey-icon>\r\n <symbol>\r\n {{ _symbol }}\r\n </symbol>\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n (input)=\"onChangeValue($event)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"_formatedValue\"\r\n [disabled]=\"_disabled\"\r\n [mask]=\"mask\"\r\n [prefix]=\"prefix\"\r\n *ngIf=\"mask && prefix\"\r\n #monkeyInput\r\n />\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n (input)=\"onChangeValue($event)\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"_formatedValue\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"_disabled\"\r\n [mask]=\"mask\"\r\n *ngIf=\"mask && !prefix\"\r\n #monkeyInput\r\n />\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n (input)=\"onChangeValue($event)\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"_formatedValue\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"_disabled\"\r\n [maxLength]=\"maxLength\"\r\n *ngIf=\"!mask && !prefix\"\r\n [max]=\"maxDateToday ? _maxDateToday : null\"\r\n #monkeyInput\r\n />\r\n <monkey-icon\r\n icon=\"eye-open-16\"\r\n [color]=\"errorMessage?.trim() ? '#fa3838' : '#4B4A53'\"\r\n *ngIf=\"_oldType === 'password' && type === 'text'\"\r\n (click)=\"onShowAndHidePassword()\"\r\n ></monkey-icon>\r\n <monkey-icon\r\n icon=\"eye-closed-16\"\r\n [color]=\"errorMessage?.trim() ? '#fa3838' : '#4B4A53'\"\r\n *ngIf=\"_oldType === 'password' && type === 'password'\"\r\n (click)=\"onShowAndHidePassword()\"\r\n ></monkey-icon>\r\n </mecx-form-field-body>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyInputComponent),\r\n multi: true,\r\n },\r\n CurrencyPipe,\r\n ],\r\n})\r\nexport class MonkeyInputComponent implements ControlValueAccessor, OnInit {\r\n @Input() name: string = `mecx-input-${MonkeyUtils.getRandomString(10)}`;\r\n @Input() label: string;\r\n @Input() helperMessage: string = '';\r\n @Input() placeholder: string = '';\r\n @Input() icon: string;\r\n @Input() type: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() mask: string;\r\n @Input() prefix: string;\r\n @Input() maxLength: number = 255;\r\n @Input() onlyNumber: any;\r\n @Input() onlyAlphaNumeric: any;\r\n @Input() upperCase: any;\r\n @Input() lowerCase: any;\r\n @Input() capitalize: any;\r\n @Input() currency: any;\r\n @Input() percent: any;\r\n @Input() maxDateToday = false;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private settings: MonkeyStyleSettings;\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n\r\n public _id: string = `mecx-input-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n public _oldType: string;\r\n public _formatedValue: any;\r\n public _maxDateToday = new Date().toISOString().split('T')[0];\r\n public _symbol = '';\r\n\r\n @ViewChild('monkeyInput', {\r\n static: true,\r\n })\r\n monkeyInput: ElementRef;\r\n\r\n constructor(\r\n private currencyPipe: CurrencyPipe,\r\n private settingsService: MonkeyStyleGuideSettingsService,\r\n private cdr: ChangeDetectorRef\r\n ) {}\r\n\r\n private handleValue(value: any, apply = false): any {\r\n if (this.onlyNumber) {\r\n return MonkeyUtils.handleOnlyNumbers(`${value}`);\r\n } else if (this.onlyAlphaNumeric) return MonkeyUtils.handleOnlyAlphaNumeric(`${value}`);\r\n else if (this.upperCase) return `${value}`.toUpperCase();\r\n else if (this.lowerCase) return `${value}`.toLowerCase();\r\n else if (this.capitalize) return MonkeyUtils.capitalize(`${value}`.toUpperCase());\r\n else if (this.currency || this.percent) {\r\n const handled = MonkeyUtils.handleOnlyNumbers(`${value}`);\r\n const result = handled / 100;\r\n if(!result) return '';\r\n return result.toFixed(2);\r\n }\r\n\r\n return value;\r\n }\r\n\r\n private replaceZero(value: any) {\r\n return `${value}`.replace(new RegExp(/0/, 'g'), '');\r\n }\r\n\r\n private formatValue(value: any): any {\r\n const { settings } = this;\r\n if (this.currency) {\r\n if (!value || !this.replaceZero(value)) return '';\r\n return this.currencyPipe.transform(\r\n value,\r\n settings?.currency?.code || 'BRL',\r\n '',\r\n '1.2-2',\r\n settings?.currency?.locale || 'pt-BR'\r\n );\r\n } else if (this.percent) {\r\n return `${value}`;\r\n }\r\n\r\n return value;\r\n }\r\n\r\n private handleSymbol() {\r\n const { settings } = this;\r\n if (this.currency) {\r\n this._symbol = {\r\n BRL: 'R$',\r\n CLP: 'CLP',\r\n }[settings?.currency?.code || 'BRL'];\r\n } else if (this.percent) {\r\n this._symbol = '%';\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n const { settingsService } = this;\r\n this._oldType = this.type;\r\n settingsService.settings().subscribe((val: MonkeyStyleSettings) => {\r\n this.settings = val;\r\n this.handleSymbol();\r\n });\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n this.handledValue = value;\r\n this._formatedValue = this.formatValue(value);\r\n this.cdr.detectChanges();\r\n this.onModelChange(this.handledValue);\r\n this.onModelTouched(this.handledValue);\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any) {\r\n const value = this._formatedValue;\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n const handled = this.handleValue(value, true);\r\n this.writeValue(handled);\r\n this.onChange.next(handled);\r\n }\r\n\r\n onShowAndHidePassword() {\r\n this.type = this.type === 'password' ? 'text' : 'password';\r\n }\r\n\r\n @HostListener('click')\r\n onClick() {\r\n document?.getElementById(this._id)?.getElementsByTagName('input')?.[0]?.focus();\r\n }\r\n\r\n onKeyPress(event: any) {\r\n let pattern = null;\r\n const cmp = event?.target?.value;\r\n const inputChar = String.fromCharCode(event.charCode);\r\n if (this.currency || this.onlyNumber || this.percent) {\r\n pattern = /[0-9]/;\r\n if (!this.onlyNumber && inputChar === '0' && !this.replaceZero(cmp)) {\r\n event.preventDefault();\r\n return;\r\n }\r\n } else if (this.onlyAlphaNumeric) {\r\n pattern = /[^0-9A-Za-z]/;\r\n }\r\n\r\n if (pattern && !pattern.test(inputChar)) {\r\n event.preventDefault();\r\n }\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { CurrencyPipe } from '@angular/common';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n OnInit,\r\n ElementRef,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyStyleGuideSettingsService, MonkeyStyleSettings } from '../../core';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-input-filter',\r\n template: `\r\n <mecx-form-field-filter [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header *ngIf=\"label\">\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body>\r\n <monkey-icon [icon]=\"icon\" [color]=\"'#4B4A53'\"\r\n *ngIf=\"iconPosition === 'left' && icon\"></monkey-icon>\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"value\"\r\n (input)=\"onChangeInput($event)\"\r\n [id]=\"_id\"\r\n [disabled]=\"_disabled\"\r\n [mask]=\"mask\"\r\n [prefix]=\"prefix\"\r\n *ngIf=\"mask && prefix\"\r\n />\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"value\"\r\n (input)=\"onChangeInput($event)\"\r\n [id]=\"_id\"\r\n [disabled]=\"_disabled\"\r\n [mask]=\"mask\"\r\n *ngIf=\"mask && !prefix\"\r\n />\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"value\"\r\n (input)=\"onChangeInput($event)\"\r\n [id]=\"_id\"\r\n [disabled]=\"_disabled\"\r\n *ngIf=\"!mask && !prefix\"\r\n />\r\n <monkey-icon [icon]=\"icon\" [color]=\"'#4B4A53'\"\r\n *ngIf=\"iconPosition === 'right' && icon\"></monkey-icon>\r\n <monkey-icon\r\n icon=\"eyes-16\"\r\n [color]=\"'#4B4A53'\"\r\n *ngIf=\"_oldType === 'password' && type === 'text'\"\r\n (click)=\"onShowAndHidePassword()\"\r\n ></monkey-icon>\r\n <monkey-icon\r\n icon=\"eyes-off-16\"\r\n [color]=\"'#4B4A53'\"\r\n *ngIf=\"_oldType === 'password' && type === 'password'\"\r\n (click)=\"onShowAndHidePassword()\"\r\n ></monkey-icon>\r\n </mecx-form-field-body>\r\n </mecx-form-field-filter>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyInputFilterComponent),\r\n multi: true,\r\n },\r\n CurrencyPipe,\r\n ],\r\n})\r\nexport class MonkeyInputFilterComponent implements ControlValueAccessor, OnInit {\r\n @Input() name: string;\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() type: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() mask: string;\r\n @Input() prefix: string;\r\n @Input() onlyNumber: any;\r\n @Input() onlyAlphaNumeric: any;\r\n @Input() upperCase: any;\r\n @Input() lowerCase: any;\r\n @Input() capitalize: any;\r\n @Input() currency: any;\r\n @Input() iconPosition: string = 'right';\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private settings: MonkeyStyleSettings;\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n private timer: any;\r\n\r\n public _id: string = `mecx-input-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n public _oldType: string;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private currencyPipe: CurrencyPipe,\r\n private settingsService: MonkeyStyleGuideSettingsService\r\n ) {}\r\n\r\n private handleValue(value: any): any {\r\n const { settings } = this;\r\n if (this.onlyNumber !== undefined) {\r\n return MonkeyUtils.handleOnlyNumbers(`${value}`);\r\n } else if (this.onlyAlphaNumeric !== undefined)\r\n return MonkeyUtils.handleOnlyAlphaNumeric(`${value}`);\r\n else if (this.upperCase !== undefined) return `${value}`.toUpperCase();\r\n else if (this.lowerCase !== undefined) return `${value}`.toLowerCase();\r\n else if (this.capitalize !== undefined) return MonkeyUtils.capitalize(`${value}`.toUpperCase());\r\n else if (this.currency !== undefined) {\r\n const newValue = MonkeyUtils.handleOnlyNumbers(value);\r\n return this.currencyPipe.transform(\r\n newValue / 100,\r\n settings?.currency?.code || 'BRL',\r\n 'symbol',\r\n '',\r\n settings?.currency?.locale || 'pt-BR'\r\n );\r\n }\r\n\r\n return value;\r\n }\r\n\r\n ngOnInit() {\r\n const { settingsService } = this;\r\n this._oldType = this.type;\r\n settingsService.settings().subscribe((val: MonkeyStyleSettings) => {\r\n this.settings = val;\r\n });\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeInput(event: any) {\r\n const { value } = event?.target;\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n const handled = this.handleValue(value);\r\n event.target.value = handled;\r\n this.writeValue(handled);\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n this.timer = setTimeout(() => {\r\n this.onChange.next(value);\r\n }, 400);\r\n }\r\n\r\n onShowAndHidePassword() {\r\n this.type = this.type === 'password' ? 'text' : 'password';\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n const { _id } = this;\r\n document.getElementById(_id).focus();\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyInputComponent } from './input.component';\r\nimport { MonkeyInputFilterComponent } from './input-filter.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { MonkeyIconModule } from '../icon';\r\n\r\n@NgModule({\r\n declarations: [MonkeyInputComponent, MonkeyInputFilterComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxMaskModule.forRoot(),\r\n MonkeyIconModule,\r\n ],\r\n exports: [MonkeyInputComponent, MonkeyInputFilterComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyInputModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n Output,\r\n HostListener,\r\n ElementRef,\r\n} from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-option',\r\n template: `\r\n <div class=\"mecx-option\" *ngIf=\"type === 'select-multiple'\">\r\n <!--<input type=\"checkbox\" [checked]=\"value === selected?.value\" />\r\n <span\r\n [id]=\"_id\"\r\n >\r\n {{ label }}\r\n </span>-->\r\n <label class=\"mecx-check-container\">\r\n <input type=\"checkbox\" [checked]=\"value === selected?.value\" />\r\n {{ label }}\r\n <p class=\"mecx-check-mark\"></p>\r\n </label>\r\n </div>\r\n <span\r\n class=\"mecx-option\"\r\n [ngClass]=\"{ selected: value === selected?.value }\"\r\n *ngIf=\"type === 'select'\"\r\n [id]=\"_id\"\r\n >\r\n {{ label }}\r\n </span>\r\n <label class=\"mecx-radio-container\" *ngIf=\"type === 'radio'\">\r\n <input\r\n type=\"radio\"\r\n [value]=\"selected?.value\"\r\n [checked]=\"value === selected?.value\"\r\n [id]=\"_id\"\r\n />\r\n {{ label }}\r\n <p class=\"mecx-radio-mark\"></p>\r\n </label>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyOptionComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeyOptionComponent {\r\n @Input() type: string = 'select';\r\n @Input() label: string;\r\n @Input() value: any;\r\n @Input() selectAll: boolean;\r\n @Input() selected: MonkeyOptionComponent;\r\n @Input() enableClick = true;\r\n @Output() onSelectOption: Function;\r\n\r\n public _id: string = `mecx-option-${MonkeyUtils.getRandomString(10)}`;\r\n\r\n constructor(public elRef: ElementRef) {\r\n //not to do\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n if (this.enableClick) {\r\n this.onSelectOption(this);\r\n }\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyOptionComponent } from './option.component';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonkeyOptionComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n MonkeyOptionComponent\r\n ],\r\n schemas: [\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class MonkeyOptionModule { }","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n QueryList,\r\n ContentChildren,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n OnInit,\r\n OnChanges,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyOptionComponent } from '../option';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-select',\r\n template: `\r\n <mecx-form-field [id]=\"_id\" [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body (click)=\"open()\" [class.error]=\"errorMessage?.trim()\">\r\n <monkey-icon [icon]=\"icon\" [color]=\"'#4B4A53'\"></monkey-icon>\r\n <mecx-select class=\"trigger\" [ngClass]=\"{ open: _opened }\">\r\n <mecx-select__trigger>\r\n <span>\r\n {{ _selected?.label || labelSelect }}\r\n </span>\r\n <monkey-icon\r\n [icon]=\"!_opened ? 'arrow-down-16' : 'arrow-up-16'\"\r\n [color]=\"'#4B4A53'\"\r\n ></monkey-icon>\r\n </mecx-select__trigger>\r\n </mecx-select>\r\n </mecx-form-field-body>\r\n <mecx-select-inside [ngClass]=\"{ open: _opened }\">\r\n <mecx-select-options #selectOptions>\r\n <ng-content> </ng-content>\r\n </mecx-select-options>\r\n </mecx-select-inside>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeySelectComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeySelectComponent implements OnInit, OnChanges, ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() labelSelect = 'Selecione';\r\n @Input() onHandleOptions = new EventEmitter<any>();\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n @ViewChild('selectOptions', { static: true })\r\n selectOptions: ElementRef;\r\n\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n @ContentChildren(MonkeyOptionComponent)\r\n private options!: QueryList<MonkeyOptionComponent>;\r\n\r\n public _selected: MonkeyOptionComponent;\r\n public _opened: boolean = false;\r\n public _id: string = `mecx-select-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor(private cdRef: ChangeDetectorRef) {}\r\n\r\n private onHandleSelected() {\r\n const { _opened, _selected } = this;\r\n this.options.forEach((op) => {\r\n op.selected = _selected;\r\n });\r\n if (_opened) {\r\n let scrollValue = 0;\r\n if (_selected) {\r\n const { _id } = this._selected;\r\n scrollValue = document.getElementById(_id).offsetTop;\r\n }\r\n this.selectOptions.nativeElement.scrollTo(0, scrollValue);\r\n this.selectOptions.nativeElement.focus();\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n private validateOptions() {\r\n if (!this.options) return;\r\n this.options.forEach((op) => {\r\n op.onSelectOption = this.onSelectOption.bind(this);\r\n op.type = 'select';\r\n op.selected = null;\r\n if (`${op.value}`.toLowerCase() === `${this.handledValue}`.toLowerCase()) {\r\n this._selected = op;\r\n op.selected = op;\r\n }\r\n });\r\n }\r\n\r\n private init() {\r\n setTimeout(() => {\r\n this._selected = null;\r\n this.validateOptions();\r\n }, 0);\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n this.validateOptions();\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n this.onChange.next(value);\r\n }\r\n\r\n @HostListener('document:click')\r\n clickout() {\r\n this._opened = false;\r\n }\r\n\r\n open() {\r\n if (!this._opened) {\r\n setTimeout(() => {\r\n this._opened = true;\r\n this.onHandleSelected();\r\n }, 50);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.init();\r\n this.onHandleOptions.subscribe(() => {\r\n this.init();\r\n });\r\n }\r\n\r\n ngOnChanges() {\r\n this.init();\r\n }\r\n\r\n onSelectOption(select: MonkeyOptionComponent) {\r\n this._selected = select;\r\n const { value } = select;\r\n this._opened = false;\r\n this.onChangeValue(null, value);\r\n this.onHandleSelected();\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n HostListener,\r\n OnInit,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n Directive,\r\n OnChanges,\r\n OnDestroy,\r\n SimpleChanges,\r\n Self,\r\n Optional,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, FormControl, FormControlName, NgControl } from '@angular/forms';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Directive({\r\n selector: '[phoneNumberValidate]',\r\n})\r\nexport class PhoneNumberValidDirective implements OnChanges, OnDestroy {\r\n @Input() phoneNumber: string;\r\n @Input() internationalNumber: number;\r\n @Input() ctrl: FormControl;\r\n\r\n private destroyed: boolean;\r\n\r\n private onValidate() {\r\n const { ctrl, destroyed, phoneNumber, internationalNumber } = this;\r\n if (destroyed || !phoneNumber || !ctrl) return;\r\n let isValid = false;\r\n try {\r\n isValid = MonkeyUtils.isPhoneNumberValid(phoneNumber, internationalNumber);\r\n } catch (e) {\r\n //not to do\r\n }\r\n if (!isValid) {\r\n setTimeout(() => {\r\n ctrl.markAsDirty();\r\n ctrl.markAsTouched();\r\n ctrl.setErrors({ phone: true });\r\n }, 0);\r\n }\r\n }\r\n\r\n ngOnChanges({ ctrl, phoneNumber, internationalNumber }: SimpleChanges): void {\r\n if (\r\n (phoneNumber && !phoneNumber.firstChange) ||\r\n (internationalNumber && !internationalNumber.firstChange) ||\r\n (ctrl && !ctrl.firstChange)\r\n ) {\r\n this.onValidate();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroyed = true;\r\n this.onValidate();\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'monkey-input-phone',\r\n template: `\r\n <mecx-form-field [ngClass]=\"{ disabled: _disabled }\" [id]=\"_id\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body [class.error]=\"errorMessage?.trim()\">\r\n <monkey-icon\r\n [icon]=\"icon\"\r\n [color]=\"errorMessage?.trim() ? '#fa3838' : '#4B4A53'\"\r\n *ngIf=\"icon\"\r\n ></monkey-icon>\r\n <monkey-select\r\n [(ngModel)]=\"internationalNumber\"\r\n [labelSelect]=\"onHandleInternationalNumberFormated()\"\r\n (onChange)=\"onHandleCountryCode($event)\"\r\n >\r\n <monkey-option *ngFor=\"let cc of _countryCodes\" [label]=\"'+' + cc\" [value]=\"cc\">\r\n </monkey-option>\r\n </monkey-select>\r\n <input\r\n [name]=\"name\"\r\n type=\"string\"\r\n [placeholder]=\"placeholder\"\r\n (input)=\"onChangeValue($event)\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"_formatedValue\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"_disabled\"\r\n [maxLength]=\"maxLength\"\r\n phoneNumberValidate\r\n [ctrl]=\"_formControl\"\r\n [phoneNumber]=\"_handledValue\"\r\n [internationalNumber]=\"internationalNumber\"\r\n #monkeyInput\r\n />\r\n </mecx-form-field-body>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyInputPhoneComponent implements ControlValueAccessor, OnInit {\r\n @Input() name: string = `mecx-input-phone-${MonkeyUtils.getRandomString(10)}`;\r\n @Input() label: string;\r\n @Input() helperMessage: string = '';\r\n @Input() placeholder: string = '';\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() maxLength: number = 255;\r\n @Input() internationalNumber = 55;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n\r\n public _handledValue: any;\r\n public _id: string = `mecx-input-phone-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n public _formatedValue: any;\r\n public _regionCodes = [];\r\n public _countryCodes = [];\r\n public _formControl = null;\r\n\r\n constructor(@Optional() @Self() public ngControl: NgControl, private cdr: ChangeDetectorRef) {\r\n if (this.ngControl != null) {\r\n this.ngControl.valueAccessor = this;\r\n }\r\n }\r\n\r\n private handleValue(value: any): any {\r\n return MonkeyUtils.handleOnlyNumbers(`${value}`);\r\n }\r\n\r\n private replaceZero(value: any) {\r\n return `${value}`.replace(new RegExp(/0/, 'g'), '');\r\n }\r\n\r\n private formatValue(value: any): any {\r\n return MonkeyUtils.getPhoneNumberFormated(value, this.internationalNumber);\r\n }\r\n\r\n private getValue() {\r\n const { internationalNumber, _handledValue } = this;\r\n if (_handledValue) return `+${internationalNumber}${_handledValue}`;\r\n\r\n return '';\r\n }\r\n\r\n ngOnInit() {\r\n this._countryCodes = MonkeyUtils.getPhoneRegions();\r\n this.onHandleInternationalNumber();\r\n this.onHandleCountryCode(this.internationalNumber);\r\n this._formControl =\r\n this.ngControl && ((this.ngControl as any)?.form || (this.ngControl as any)?.control);\r\n }\r\n\r\n onHandleInternationalNumber(value?: string) {\r\n this.internationalNumber =\r\n MonkeyUtils.getPhoneCountryCode(value || this._handledValue) || this.internationalNumber;\r\n }\r\n\r\n onHandleInternationalNumberFormated() {\r\n const { internationalNumber } = this;\r\n return `+${internationalNumber}`;\r\n }\r\n\r\n onHandleCountryCode(event: number) {\r\n const { maxLength } = MonkeyUtils.getPhoneHandle(event);\r\n if (maxLength) {\r\n this.maxLength = maxLength;\r\n this.onChangeValue();\r\n }\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n this._handledValue = value;\r\n this._formatedValue = this.formatValue(value);\r\n this.cdr.detectChanges();\r\n this.onModelChange(this.getValue());\r\n this.onModelTouched(this.getValue());\r\n }\r\n\r\n get value(): any {\r\n return this.getValue();\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event?: any) {\r\n const value = this._formatedValue;\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n const handled = this.handleValue(value);\r\n this.writeValue(handled);\r\n this.onChange.next(handled);\r\n }\r\n\r\n @HostListener('click')\r\n onClick() {\r\n document?.getElementById(this._id)?.getElementsByTagName('input')?.[0]?.focus();\r\n }\r\n\r\n onKeyPress(event: any) {\r\n let pattern = null;\r\n const cmp = event?.target?.value;\r\n const inputChar = String.fromCharCode(event.charCode);\r\n\r\n pattern = /[0-9]/;\r\n if (inputChar === '0' && !this.replaceZero(cmp)) {\r\n event.preventDefault();\r\n return;\r\n }\r\n\r\n if (pattern && !pattern.test(inputChar)) {\r\n event.preventDefault();\r\n }\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n QueryList,\r\n ContentChildren,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n OnInit,\r\n OnChanges,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyOptionComponent } from '../option';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-select-multiple',\r\n template: `\r\n <mecx-form-field [id]=\"_id\" [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body (click)=\"open()\" [class.error]=\"errorMessage?.trim()\">\r\n <monkey-icon [icon]=\"icon\" [color]=\"'#4B4A53'\"></monkey-icon>\r\n\r\n <mecx-select class=\"trigger\" [ngClass]=\"{ open: _opened }\">\r\n <mecx-select__trigger>\r\n <span>\r\n {{ _selectedValues || 'Selecione' }}\r\n </span>\r\n <monkey-icon\r\n [icon]=\"!_opened ? 'arrow-down-16' : 'arrow-up-16'\"\r\n [color]=\"'#4B4A53'\"\r\n ></monkey-icon>\r\n </mecx-select__trigger>\r\n </mecx-select>\r\n </mecx-form-field-body>\r\n <mecx-select-inside [ngClass]=\"{ open: _opened }\">\r\n <mecx-select-options #selectOptions>\r\n <ng-content> </ng-content>\r\n </mecx-select-options>\r\n </mecx-select-inside>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeySelectMultipleComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeySelectMultipleComponent implements AfterViewInit, ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() labelMoreValues: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n @ViewChild('selectOptions', { static: true })\r\n selectOptions: ElementRef;\r\n\r\n private handledValue: any[] = [];\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n @ContentChildren(MonkeyOptionComponent)\r\n private options!: QueryList<MonkeyOptionComponent>;\r\n private selectedAll = false;\r\n\r\n public _selected: MonkeyOptionComponent[] = [];\r\n public _opened: boolean = false;\r\n public _id: string = `mecx-select-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n public _selectedValues = '';\r\n\r\n constructor(private cdRef: ChangeDetectorRef) {}\r\n\r\n private onHandleSelectedValues() {\r\n const { _selected, labelMoreValues } = this;\r\n let selectedValues = '';\r\n const handled = _selected.filter((_) => !_.selectAll);\r\n if (_selected.length > 0) {\r\n selectedValues = `${handled[0].label}`;\r\n if (_selected.length >= 2) {\r\n selectedValues = `${handled[0].label} ${labelMoreValues} ${handled.length - 1}`;\r\n }\r\n }\r\n this._selectedValues = selectedValues;\r\n }\r\n\r\n private onHandleSelected() {\r\n const { _opened, _selected } = this;\r\n let selectedLength = 0;\r\n let selectAll = null;\r\n this.options?.forEach((op) => {\r\n const found = _selected.findIndex((val: any) => {\r\n return val.value === op.value;\r\n });\r\n op.selected = null;\r\n if (op.selectAll) selectAll = op;\r\n if (found >= 0) {\r\n op.selected = op;\r\n selectedLength += 1;\r\n }\r\n });\r\n if (this.options?.length - 1 === selectedLength && selectAll) {\r\n this.selectedAll = true;\r\n selectAll.selected = selectAll;\r\n }\r\n this.onHandleSelectedValues();\r\n\r\n if (_opened) {\r\n this.selectOptions.nativeElement.focus();\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n private validateOptions() {\r\n if (!this.options) return;\r\n this._selected = [];\r\n let selectedLength = 0;\r\n let selectAll = null;\r\n this.options?.forEach((op) => {\r\n op.onSelectOption = this.onSelectOption.bind(this);\r\n op.type = 'select-multiple';\r\n op.selected = null;\r\n if (op.selectAll) selectAll = op;\r\n const found = this.handledValue.findIndex((val: any) => {\r\n return `${val}`.trim().toLowerCase() === `${op.value}`.trim().toLowerCase();\r\n });\r\n if (found >= 0) {\r\n op.selected = op;\r\n this._selected.push(op);\r\n selectedLength += 1;\r\n }\r\n });\r\n if (this.options?.length - 1 === selectedLength && selectAll) {\r\n this.selectedAll = true;\r\n selectAll.selected = selectAll;\r\n }\r\n this.onHandleSelectedValues();\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined) {\r\n if (this.handledValue.join(',') !== value) {\r\n value?.split(',')?.forEach((op: any) => {\r\n this.handledValue.push(op);\r\n });\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n }\r\n this.onHandleSelected();\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue.join(',');\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n }\r\n\r\n @HostListener('document:click')\r\n clickout() {\r\n this._opened = false;\r\n }\r\n\r\n open() {\r\n if (!this._opened) {\r\n setTimeout(() => {\r\n this._opened = true;\r\n this.onHandleSelected();\r\n }, 50);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.validateOptions();\r\n }, 0);\r\n\r\n this.options.changes.subscribe(() => {\r\n setTimeout(() => {\r\n this.validateOptions();\r\n }, 0);\r\n });\r\n }\r\n\r\n onSelectOption(selected: MonkeyOptionComponent) {\r\n if (selected.selectAll) {\r\n this.selectedAll = !this.selectedAll;\r\n this._selected = [];\r\n if (this.selectedAll) {\r\n this.options?.forEach((op) => {\r\n this._selected.push(op);\r\n });\r\n }\r\n } else {\r\n const index = this._selected.findIndex((val: any) => val.value === selected.value);\r\n if (index >= 0) {\r\n this._selected = this._selected.filter((op: MonkeyOptionComponent) => {\r\n return (\r\n `${op.value}`.trim().toLowerCase() !== `${selected.value}`.trim().toLowerCase() &&\r\n !op.selectAll\r\n );\r\n });\r\n } else this._selected.push(selected);\r\n }\r\n const value = this._selected\r\n .filter((val) => !val.selectAll)\r\n .map((val: any) => {\r\n return val.value;\r\n });\r\n\r\n this.onChange.next(value);\r\n this.onChangeValue(null, value.join(','));\r\n this.onHandleSelected();\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n QueryList,\r\n ContentChildren,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n OnChanges,\r\n AfterViewInit,\r\n Renderer2,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyOptionComponent } from '../option';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-select-search',\r\n template: `\r\n <mecx-form-field [id]=\"_id\" [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body (click)=\"open()\" [class.error]=\"errorMessage?.trim()\">\r\n <monkey-icon [icon]=\"icon\" [color]=\"'#aaaaaa'\"></monkey-icon>\r\n <mecx-select class=\"trigger\" [ngClass]=\"{ open: _opened }\">\r\n <mecx-select__trigger>\r\n <input\r\n [placeholder]=\"labelSelect || placeholder\"\r\n (input)=\"onChangeInput($event)\"\r\n #inputFilter\r\n [ngModel]=\"_selected?.label || ''\"\r\n />\r\n <monkey-icon\r\n [icon]=\"!_opened ? 'arrow-down-16' : 'arrow-up-16'\"\r\n [color]=\"'#4B4A53'\"\r\n ></monkey-icon>\r\n </mecx-select__trigger>\r\n </mecx-select>\r\n </mecx-form-field-body>\r\n <mecx-select-inside [ngClass]=\"{ open: _opened }\">\r\n <mecx-select-options #selectOptions>\r\n <ng-content> </ng-content>\r\n </mecx-select-options>\r\n </mecx-select-inside>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeySelectSearchComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeySelectSearchComponent implements AfterViewInit, OnChanges, ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() labelSelect = 'Selecione';\r\n @Input() fieldToCompare: string;\r\n @Input() onHandleOptions = new EventEmitter<any>();\r\n @Output() onChange = new EventEmitter<any>();\r\n @Output() onSearch = new EventEmitter<any>(null);\r\n\r\n @ViewChild('selectOptions', { static: true })\r\n selectOptions: ElementRef;\r\n\r\n @ViewChild('inputFilter', { static: true })\r\n inputFilter: ElementRef;\r\n\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n @ContentChildren(MonkeyOptionComponent)\r\n private options!: QueryList<MonkeyOptionComponent>;\r\n private timer: any;\r\n\r\n public _selected: MonkeyOptionComponent;\r\n public _opened: boolean = false;\r\n public _id: string = `mecx-select-search-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor(private cdRef: ChangeDetectorRef, private renderer: Renderer2) {\r\n //not to do\r\n }\r\n\r\n private onHandleSearch(search: any) {\r\n this.options.forEach((op) => {\r\n const source = `${op.label}`.toLowerCase();\r\n const destination = `${search}`.toLowerCase();\r\n if (source.indexOf(destination) > -1) {\r\n this.renderer.setStyle(op.elRef.nativeElement, 'display', 'inline');\r\n } else {\r\n this.renderer.setStyle(op.elRef.nativeElement, 'display', 'inline');\r\n }\r\n let display = 'inline';\r\n if (source.indexOf(destination) === -1) {\r\n display = 'none';\r\n }\r\n this.renderer.setStyle(op.elRef.nativeElement, 'display', display);\r\n });\r\n }\r\n\r\n private onHandleSelected() {\r\n const { _opened, _selected } = this;\r\n this.options.forEach((op) => {\r\n op.selected = _selected;\r\n });\r\n if (_opened) {\r\n let scrollValue = 0;\r\n if (_selected) {\r\n const { _id } = this._selected;\r\n scrollValue = document.getElementById(_id).offsetTop - 10;\r\n }\r\n this.selectOptions.nativeElement.scrollTo(0, scrollValue);\r\n this.selectOptions.nativeElement.focus();\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n private validateOptions() {\r\n const { fieldToCompare } = this;\r\n if (!this.options) return;\r\n this.options.forEach((op) => {\r\n op.onSelectOption = this.onSelectOption.bind(this);\r\n op.type = op?.type || 'select';\r\n op.selected = null;\r\n let source = '';\r\n let destination = '';\r\n if (fieldToCompare) {\r\n source = `${op.value[fieldToCompare]}`.toLowerCase();\r\n destination = `${this.handledValue?.[fieldToCompare]}`.toLowerCase();\r\n } else {\r\n source = `${op.value}`.toLowerCase();\r\n destination = `${this.handledValue}`.toLowerCase();\r\n }\r\n if (source === destination) {\r\n this._selected = op;\r\n op.selected = op;\r\n }\r\n });\r\n }\r\n\r\n private doSearch(search: string) {\r\n this.onSearch.next(search);\r\n this.onHandleSearch(search);\r\n this._opened = true;\r\n this.onHandleSelected();\r\n }\r\n\r\n private init() {\r\n setTimeout(() => {\r\n this._selected = null;\r\n this.validateOptions();\r\n }, 0);\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n this.validateOptions();\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n this.onChange.next(value);\r\n }\r\n\r\n @HostListener('document:click')\r\n clickout() {\r\n this._opened = false;\r\n }\r\n\r\n open() {\r\n if (!this._opened) {\r\n setTimeout(() => {\r\n this._opened = true;\r\n this.onHandleSelected();\r\n (this.inputFilter?.nativeElement as HTMLInputElement).focus();\r\n }, 50);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.init();\r\n this.onHandleOptions.subscribe(() => {\r\n this.init();\r\n });\r\n }\r\n\r\n ngOnChanges() {\r\n this.init();\r\n }\r\n\r\n onSelectOption(select: MonkeyOptionComponent) {\r\n this._selected = select;\r\n const { value } = select;\r\n this._opened = false;\r\n this.onChangeValue(null, value);\r\n this.onHandleSelected();\r\n }\r\n\r\n onChangeInput(event: any) {\r\n const { value } = event?.target;\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n this.timer = setTimeout(() => {\r\n this.doSearch(value);\r\n }, 400);\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n QueryList,\r\n ContentChildren,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyOptionComponent } from '../option';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-select-filter',\r\n template: `\r\n <mecx-select-filter\r\n class=\"trigger\"\r\n [ngClass]=\"{\r\n open: _opened,\r\n none: type === 'none',\r\n border: type === 'border'\r\n }\"\r\n (click)=\"open()\"\r\n >\r\n <mecx-select__trigger>\r\n <span>\r\n {{ _selected?.label || placeholder }}\r\n </span>\r\n <monkey-icon\r\n [icon]=\"!_opened ? 'arrow-down-16' : 'arrow-up-16'\"\r\n [color]=\"'#4B4A53'\"\r\n ></monkey-icon>\r\n </mecx-select__trigger>\r\n </mecx-select-filter>\r\n <mecx-select-inside [ngClass]=\"{ open: _opened }\">\r\n <mecx-select-options #selectOptions>\r\n <ng-content> </ng-content>\r\n </mecx-select-options>\r\n </mecx-select-inside>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeySelectFilterComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeySelectFilterComponent implements OnInit, ControlValueAccessor {\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() type: string;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n @ViewChild('selectOptions', { static: true })\r\n selectOptions: ElementRef;\r\n\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n @ContentChildren(MonkeyOptionComponent)\r\n private options!: QueryList<MonkeyOptionComponent>;\r\n\r\n public _selected: MonkeyOptionComponent;\r\n public _opened: boolean = false;\r\n public _id: string = `mecx-select-filter-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor(private cdRef: ChangeDetectorRef) {}\r\n\r\n private onHandleSelected() {\r\n const { _opened, _selected } = this;\r\n this.options.forEach((op) => {\r\n op.selected = _selected;\r\n });\r\n if (_opened) {\r\n let scrollValue = 0;\r\n if (_selected) {\r\n const { _id } = this._selected;\r\n scrollValue = document.getElementById(_id).offsetTop;\r\n }\r\n this.selectOptions.nativeElement.scrollTo(0, scrollValue);\r\n this.selectOptions.nativeElement.focus();\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n private validateOptions() {\r\n if (!this.options) return;\r\n this.options.forEach((op) => {\r\n op.onSelectOption = this.onSelectOption.bind(this);\r\n op.type = 'select';\r\n op.selected = null;\r\n if (`${op.value}`.toLowerCase() === `${this.handledValue}`.toLowerCase()) {\r\n this._selected = op;\r\n op.selected = op;\r\n }\r\n });\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n this.validateOptions();\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n this.onChange.next(value);\r\n }\r\n\r\n @HostListener('document:click')\r\n clickout() {\r\n this._opened = false;\r\n }\r\n\r\n open() {\r\n if (!this._opened) {\r\n setTimeout(() => {\r\n this._opened = true;\r\n this.onHandleSelected();\r\n }, 50);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n setTimeout(() => {\r\n this.validateOptions();\r\n }, 0);\r\n }\r\n\r\n onSelectOption(select: MonkeyOptionComponent) {\r\n this._selected = select;\r\n const { value } = select;\r\n this._opened = false;\r\n this.onChangeValue(null, value);\r\n this.onHandleSelected();\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeySelectComponent } from './select.component';\r\nimport { MonkeySelectMultipleComponent } from './select-multiple.component';\r\nimport { MonkeySelectSearchComponent } from './select-search.component';\r\nimport { MonkeySelectFilterComponent } from './select-filter.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MonkeyOptionModule } from '../option';\r\nimport { MonkeyIconModule } from '../icon';\r\nimport { MonkeyInputModule } from '../input';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonkeySelectComponent,\r\n MonkeySelectMultipleComponent,\r\n MonkeySelectSearchComponent,\r\n MonkeySelectFilterComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MonkeyInputModule,\r\n MonkeyOptionModule,\r\n MonkeyIconModule,\r\n ],\r\n exports: [\r\n MonkeySelectComponent,\r\n MonkeySelectMultipleComponent,\r\n MonkeySelectSearchComponent,\r\n MonkeySelectFilterComponent,\r\n ],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeySelectModule {}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { MonkeyIconModule } from '../icon';\r\nimport { MonkeyInputPhoneComponent, PhoneNumberValidDirective } from './input-phone.component';\r\nimport { MonkeySelectModule } from '../select';\r\nimport { MonkeyOptionModule } from '../option';\r\n\r\n@NgModule({\r\n declarations: [MonkeyInputPhoneComponent, PhoneNumberValidDirective],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxMaskModule.forRoot(),\r\n MonkeyIconModule,\r\n MonkeySelectModule,\r\n MonkeyOptionModule,\r\n ],\r\n exports: [MonkeyInputPhoneComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyInputPhoneModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-checkbox',\r\n template: `\r\n <mecx-form-field *ngIf=\"type === 'single'; else multiple\" [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body class=\"checkbox\">\r\n <label class=\"mecx-check-container\">\r\n <input type=\"checkbox\" [(ngModel)]=\"value\" [id]=\"_id\" [disabled]=\"_disabled\" />\r\n {{ description }}\r\n <ng-content> </ng-content>\r\n <p class=\"mecx-check-mark\"></p>\r\n </label>\r\n </mecx-form-field-body>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n <ng-template #multiple>\r\n <mecx-form-field [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-body class=\"checkbox\">\r\n <label class=\"mecx-check-container\">\r\n <input type=\"checkbox\" [(ngModel)]=\"value\" [id]=\"_id\" [disabled]=\"_disabled\" />\r\n {{ description }}\r\n <p class=\"mecx-check-mark\"></p>\r\n </label>\r\n </mecx-form-field-body>\r\n </mecx-form-field>\r\n </ng-template>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyCheckboxComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeyCheckboxComponent implements ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() type: string = 'single';\r\n @Input() helperMessage: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() description: any;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n\r\n public _id: string = `mecx-checkbox-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor() {}\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n this.onChange.next(value);\r\n }\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyCheckboxComponent } from './checkbox.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@NgModule({\r\n declarations: [MonkeyCheckboxComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule],\r\n exports: [MonkeyCheckboxComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyCheckboxModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n ContentChildren,\r\n QueryList,\r\n AfterViewInit,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyOptionComponent } from '../option';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-radiobutton',\r\n template: `\r\n <mecx-form-field [id]=\"_id\" [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body class=\"radiobutton\">\r\n <ng-content> </ng-content>\r\n </mecx-form-field-body>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyRadioButtonComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeyRadioButtonComponent\r\n implements AfterViewInit, ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n @ContentChildren(MonkeyOptionComponent)\r\n private options!: QueryList<MonkeyOptionComponent>;\r\n\r\n public _selected: MonkeyOptionComponent;\r\n public _id: string = `mecx-radiobutton-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor() {}\r\n\r\n private onHandleSelected() {\r\n this.options.forEach((op) => {\r\n op.selected = this._selected;\r\n });\r\n }\r\n\r\n private validateOptions() {\r\n if (!this.options) return;\r\n this.options.forEach((op) => {\r\n op.onSelectOption = this.onSelectOption.bind(this);\r\n op.type = 'radio';\r\n op.selected = null;\r\n if (\r\n `${op.value}`.toLowerCase() === `${this.handledValue}`.toLowerCase()\r\n ) {\r\n this._selected = op;\r\n op.selected = op;\r\n }\r\n });\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n this.validateOptions();\r\n }\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n this.onChange.next(value);\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.validateOptions();\r\n }, 0);\r\n }\r\n\r\n onSelectOption(select: MonkeyOptionComponent) {\r\n this._selected = select;\r\n const { value } = select;\r\n this.onChangeValue(null, value);\r\n this.onHandleSelected();\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyRadioButtonComponent } from './radiobutton.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonkeyRadioButtonComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule\r\n ],\r\n exports: [\r\n MonkeyRadioButtonComponent\r\n ],\r\n schemas: [\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class MonkeyRadioButtonModule { }","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence \r\n**************************/\r\nimport { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-wizard',\r\n template: `\r\n <div [ngClass]=\"position\">\r\n <div class=\"mecx-wizard-body\"\r\n *ngFor=\"let step of _totalSteps\">\r\n <div class=\"mecx-wizard-option mecx-wizard-option__theme\"\r\n [ngClass]=\"{'selected': step === selectedStep, 'completed': step < selectedStep}\">\r\n {{ step }}\r\n </div>\r\n <div class=\"mecx-wizard-option-separator\"></div>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyWizardComponent implements OnInit{\r\n\r\n @Input() totalSteps: number = 0;\r\n @Input() selectedStep: number = 0;\r\n @Input() position: string = 'horizontal';\r\n\r\n public _totalSteps: number[];\r\n public _selectedStep: number;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(){\r\n const { totalSteps, selectedStep } = this;\r\n this._totalSteps = new Array(Number(totalSteps)).fill(1).map((step: number, index: number) => {\r\n return step + index;\r\n });\r\n this._selectedStep = Number(selectedStep);\r\n }\r\n}","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyWizardComponent } from './wizard.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MonkeyIconModule } from '../icon';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonkeyWizardComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MonkeyIconModule\r\n ],\r\n exports: [\r\n MonkeyWizardComponent\r\n ],\r\n schemas: [\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class MonkeyWizardModule { }","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n Output,\r\n EventEmitter,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-file-upload',\r\n template: `\r\n <mecx-form-field [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body>\r\n <input\r\n #fileInput\r\n hidden\r\n [name]=\"name\"\r\n type=\"file\"\r\n (change)=\"onChangeValue($event.target.files)\"\r\n [id]=\"_id\"\r\n [disabled]=\"_disabled\"\r\n />\r\n <span>{{\r\n value?.fileName\r\n ? value.fileName\r\n : uploadOngoingMessage\r\n ? uploadOngoingMessage\r\n : placeholder\r\n }}</span>\r\n <monkey-icon\r\n icon=\"upload-16\"\r\n [color]=\"'#4B4A53'\"\r\n *ngIf=\"!value?.fileName\"\r\n ></monkey-icon>\r\n <monkey-icon\r\n icon=\"close-16\"\r\n *ngIf=\"value?.fileName\"\r\n (click)=\"onClear($event)\"\r\n ></monkey-icon>\r\n </mecx-form-field-body>\r\n <mecx-form-field-upload-info *ngIf=\"_progress\">\r\n <span [style.width.%]=\"_progress\"> {{ _progress }}%</span>\r\n </mecx-form-field-upload-info>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n {{ _uploadErrorMessage }}\r\n {{ _maxSizeErrorMessage ? maxSizeErrorMessage : null }}\r\n {{\r\n _allowedExtensionErrorMessage ? allowedExtensionErrorMessage : null\r\n }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyFileUploadComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeyFileUploadComponent implements ControlValueAccessor, OnInit {\r\n @Input() name: string;\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() uploadOngoingMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() listenFiles: boolean;\r\n @Input() maxSize: number;\r\n @Input() allowedExtensions: string[];\r\n @Input() maxSizeErrorMessage: string;\r\n @Input() allowedExtensionErrorMessage: string;\r\n @Input() fileUpload: Function;\r\n @Output() onChange = new EventEmitter<any>();\r\n @Output() onHandleFilesReady = new EventEmitter<File>();\r\n\r\n private configFiles: ConfigFiles;\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n\r\n public _id: string = `mecx-file-upload-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n public _progress: number = null;\r\n public _maxSizeErrorMessage: boolean = false;\r\n public _allowedExtensionErrorMessage: boolean = false;\r\n public _uploadErrorMessage: string = '';\r\n\r\n constructor() {}\r\n\r\n private validateFile(file: File): boolean {\r\n const { configFiles } = this;\r\n const { name, size } = file;\r\n\r\n if (configFiles.allowedExtensions) {\r\n const hasAllowedExtensions =\r\n configFiles.allowedExtensions.filter((allow) => {\r\n const extension = name.substr(name.indexOf('.', -name.length));\r\n return (\r\n allow.extension.toLowerCase() === extension.toLowerCase() ||\r\n !MonkeyUtils.persistNullEmptyUndefined(extension)\r\n );\r\n }).length > 0;\r\n if (!hasAllowedExtensions) {\r\n this._allowedExtensionErrorMessage = true;\r\n return false;\r\n }\r\n }\r\n\r\n if (configFiles.maxSize) {\r\n if (size > configFiles.maxSize) {\r\n this._maxSizeErrorMessage = true;\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n private handleCallback(\r\n progress: number,\r\n respUploaded: any,\r\n uploadError: string\r\n ) {\r\n this._progress = progress;\r\n this.value = respUploaded;\r\n this._uploadErrorMessage = uploadError;\r\n this.onChange.next(this.value);\r\n }\r\n\r\n ngOnInit() {\r\n this.allowedExtensions = this.allowedExtensions || [\r\n '.jpg',\r\n '.jpeg',\r\n '.png',\r\n '.pdf',\r\n '.txt',\r\n '.xls',\r\n '.xlsx',\r\n ];\r\n let allow: AllowedFile[] = null;\r\n if (this.allowedExtensions.length > 0) {\r\n allow = this.allowedExtensions.map((val) => {\r\n return { extension: val };\r\n });\r\n }\r\n\r\n this.configFiles = {\r\n maxSize: this.maxSize || 5 * 1024 * 1024,\r\n allowedExtensions: allow,\r\n };\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any) {\r\n const { listenFiles } = this;\r\n this._allowedExtensionErrorMessage = false;\r\n this._maxSizeErrorMessage = false;\r\n for (let index = 0; index < event.length; index++) {\r\n const file: File = event[index];\r\n if (this.validateFile(file)) {\r\n if (listenFiles) {\r\n this.onHandleFilesReady.next(file);\r\n } else {\r\n this.fileUpload(file, this.handleCallback.bind(this));\r\n }\r\n }\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n const { _id } = this;\r\n (<HTMLInputElement>document.getElementById(_id)).value = null;\r\n document.getElementById(_id).click();\r\n }\r\n\r\n onClear(event: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.value = null;\r\n this.onChange.next(this.value);\r\n }\r\n}\r\n\r\ninterface AllowedFile {\r\n extension: string;\r\n}\r\n\r\ninterface ConfigFiles {\r\n maxSize: number;\r\n allowedExtensions: AllowedFile[];\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyFileUploadComponent } from './file-upload.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { MonkeyIconModule } from '../icon/icon.module';\r\n\r\n@NgModule({\r\n declarations: [MonkeyFileUploadComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxMaskModule.forRoot(),\r\n MonkeyIconModule,\r\n ],\r\n exports: [MonkeyFileUploadComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyFileUploadModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n OnInit,\r\n HostListener,\r\n ChangeDetectorRef,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n} from '@angular/core';\r\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\r\nimport { MonkeyUtils } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-image-crop',\r\n template: `\r\n <monkey-file-upload\r\n [label]=\"label\"\r\n [helperMessage]=\"helperMessage\"\r\n icon=\"upload-16\"\r\n [placeholder]=\"placeholder\"\r\n [maxSize]=\"maxSize\"\r\n [maxSizeErrorMessage]=\"maxSizeErrorMessage\"\r\n [allowedExtensionErrorMessage]=\"allowedExtensionErrorMessage\"\r\n (onHandleFilesReady)=\"onHandleFileUploadFilesReady($event)\"\r\n listenFiles=\"true\"\r\n [maxFiles]=\"1\"\r\n [allowedExtensions]=\"['.jpg', '.jpeg', '.png']\"\r\n *ngIf=\"!_loadCompleted\"\r\n >\r\n </monkey-file-upload>\r\n <div *ngIf=\"_loadPreview\">\r\n <progress class=\"monkey-progress monkey-progress__grey\"></progress>\r\n </div>\r\n <div class=\"box-cut-title\" *ngIf=\"_loadCompleted\">\r\n {{ cropTitle }} {{ _fileNameToCut }}\r\n </div>\r\n <div\r\n id=\"imageCropSource\"\r\n name=\"imageCropSource\"\r\n #imageCropSource\r\n class=\"box-cut\"\r\n *ngIf=\"_loadCompleted\"\r\n >\r\n <div class=\"edit-resize-cut\">\r\n <img class=\"source-image\" [src]=\"_safeImgDataUrl\" />\r\n <div\r\n class=\"cut\"\r\n [style.top.px]=\"_cutCoords.y1\"\r\n [style.left.px]=\"_cutCoords.x1\"\r\n [style.width.px]=\"_cutCoords.x2 - _cutCoords.x1\"\r\n [style.height.px]=\"_cutCoords.y2 - _cutCoords.y1\"\r\n *ngIf=\"_loadCompleted\"\r\n >\r\n <div\r\n (mousedown)=\"startMove($event, 'move')\"\r\n (touchstart)=\"startMove($event, 'move')\"\r\n class=\"move\"\r\n ></div>\r\n <span\r\n class=\"resize top-left\"\r\n (mousedown)=\"startMove($event, 'resize', 'topleft')\"\r\n (touchstart)=\"startMove($event, 'resize', 'topleft')\"\r\n >\r\n </span>\r\n <span class=\"resize top\"></span>\r\n <span\r\n class=\"resize top-right\"\r\n (mousedown)=\"startMove($event, 'resize', 'topright')\"\r\n (touchstart)=\"startMove($event, 'resize', 'topright')\"\r\n >\r\n </span>\r\n <span class=\"resize right\"></span>\r\n <span\r\n class=\"resize bottom-right\"\r\n (mousedown)=\"startMove($event, 'resize', 'bottomright')\"\r\n (touchstart)=\"startMove($event, 'resize', 'bottomright')\"\r\n >\r\n </span>\r\n <span class=\"resize bottom\"> </span>\r\n <span\r\n class=\"resize bottom-left\"\r\n (mousedown)=\"startMove($event, 'resize', 'bottomleft')\"\r\n (touchstart)=\"startMove($event, 'resize', 'bottomleft')\"\r\n >\r\n </span>\r\n <span class=\"resize left\"> </span>\r\n <span\r\n class=\"resize-bar top\"\r\n (mousedown)=\"startMove($event, 'resize', 'top')\"\r\n (touchstart)=\"startMove($event, 'resize', 'top')\"\r\n >\r\n </span>\r\n <span\r\n class=\"resize-bar right\"\r\n (mousedown)=\"startMove($event, 'resize', 'right')\"\r\n (touchstart)=\"startMove($event, 'resize', 'right')\"\r\n >\r\n </span>\r\n <span\r\n class=\"resize-bar bottom\"\r\n (mousedown)=\"startMove($event, 'resize', 'bottom')\"\r\n (touchstart)=\"startMove($event, 'resize', 'bottom')\"\r\n >\r\n </span>\r\n <span\r\n class=\"resize-bar left\"\r\n (mousedown)=\"startMove($event, 'resize', 'left')\"\r\n (touchstart)=\"startMove($event, 'resize', 'left')\"\r\n >\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <mecx-image-crop-upload-info *ngIf=\"_progress\">\r\n <span [style.width.%]=\"_progress\"> {{ _progress }}%</span>\r\n </mecx-image-crop-upload-info>\r\n <monkey-button\r\n type=\"tertiary\"\r\n color=\"theme\"\r\n (click)=\"onHandleImageChange()\"\r\n *ngIf=\"_loadCompleted\"\r\n >\r\n {{ labelChangeImage }}\r\n </monkey-button>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyImageCropComponent implements OnInit {\r\n @Input() label: string;\r\n @Input() cropTitle: string;\r\n @Input() labelChangeImage: string;\r\n @Input() labelPreviewImage: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() maxSize: number;\r\n @Input() maxSizeErrorMessage: string;\r\n @Input() allowedExtensionErrorMessage: string;\r\n @Input() fileUpload: Function;\r\n @Input() onHandleGetFilesReady = new EventEmitter<any>();\r\n @Output() onHandleFilesReady = new EventEmitter<any>();\r\n @Output() onHandlePreviewReady = new EventEmitter<any>();\r\n\r\n public _cutCoords: CutCoords = { y1: 0, y2: 0, x1: 0, x2: 0 };\r\n public _fileTypeToCut: string = '';\r\n public _fileNameToCut: string = '';\r\n public _progressingCut: boolean;\r\n public _loadCompleted: boolean;\r\n public _loadPreview: boolean;\r\n public _safeImgDataUrl: SafeUrl | string;\r\n public _disabled: boolean = false;\r\n public _progress: number = null;\r\n public _uploadErrorMessage: string = '';\r\n\r\n private mouseMoves: MouseMoves;\r\n private areMaxSize: Dimensions = { width: 150, height: 150 };\r\n private cutScaledMinWidth = 100;\r\n private cutScaledMinHeight = 100;\r\n private originalSize: Dimensions = { width: 0, height: 0 };\r\n private fileReader: FileReader = new FileReader();\r\n private originalImage = new Image();\r\n private imageCutReady: Blob = null;\r\n private savedCallback: Function;\r\n\r\n constructor(\r\n private cdr: ChangeDetectorRef,\r\n private sanitizer: DomSanitizer\r\n ) {}\r\n\r\n private initCut() {\r\n this.areMaxSize = {\r\n width: document.getElementById('imageCropSource').offsetWidth || 150,\r\n height: document.getElementById('imageCropSource').offsetHeight || 150,\r\n };\r\n this._cutCoords = {\r\n x1: this.areMaxSize.width / 2 - this.cutScaledMinWidth,\r\n y1: this.areMaxSize.height / 2 - this.cutScaledMinHeight,\r\n x2: this.areMaxSize.width / 2 + this.cutScaledMinWidth,\r\n y2: this.areMaxSize.height / 2 + this.cutScaledMinHeight,\r\n };\r\n this.cut();\r\n }\r\n\r\n private setProgressingCut(tp: boolean) {\r\n this._progressingCut = tp;\r\n }\r\n\r\n private setProgressLoadCompleted(tp: boolean) {\r\n this._loadCompleted = tp;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private setProgressLoadPreview(tp: boolean) {\r\n this._loadPreview = tp;\r\n }\r\n\r\n private cut() {\r\n this.setProgressingCut(true);\r\n const imagePosition = this.getImagePosition();\r\n let width = imagePosition.x2 - imagePosition.x1;\r\n let height = imagePosition.y2 - imagePosition.y1;\r\n const canvas = document.createElement('canvas') as HTMLCanvasElement;\r\n canvas.width = width;\r\n canvas.height = height;\r\n\r\n const ctx = canvas.getContext('2d');\r\n ctx.drawImage(\r\n this.originalImage,\r\n imagePosition.x1,\r\n imagePosition.y1,\r\n width,\r\n height,\r\n 0,\r\n 0,\r\n width,\r\n height\r\n );\r\n this.getCanvasBlob(canvas);\r\n }\r\n\r\n private getImagePosition(): CutCoords {\r\n const ratiow =\r\n this.originalSize.width /\r\n document.getElementById('imageCropSource').offsetWidth;\r\n const ratioh =\r\n this.originalSize.height /\r\n document.getElementById('imageCropSource').offsetHeight;\r\n return {\r\n x1: Math.round(this._cutCoords.x1 * ratiow),\r\n y1: Math.round(this._cutCoords.y1 * ratioh),\r\n x2: Math.min(\r\n Math.round(this._cutCoords.x2 * ratiow),\r\n this.originalSize.width\r\n ),\r\n y2: Math.min(\r\n Math.round(this._cutCoords.y2 * ratioh),\r\n this.originalSize.height\r\n ),\r\n };\r\n }\r\n\r\n private getCanvasBlob(cropCanvas: HTMLCanvasElement) {\r\n cropCanvas.toBlob(\r\n (val: Blob) => {\r\n this.imageCutReady = val;\r\n this.setProgressingCut(false);\r\n },\r\n 'image/jpeg',\r\n 0.95\r\n );\r\n }\r\n\r\n private getClientX(event: any): number {\r\n return (\r\n event.clientX ||\r\n (event.touches && event.touches[0] && event.touches[0].clientX)\r\n );\r\n }\r\n\r\n private getClientY(event: any): number {\r\n return (\r\n event.clientY ||\r\n (event.touches && event.touches[0] && event.touches[0].clientY)\r\n );\r\n }\r\n\r\n private resize(event: any): void {\r\n const diffX = this.getClientX(event) - this.mouseMoves.clientX;\r\n const diffY = this.getClientY(event) - this.mouseMoves.clientY;\r\n switch (this.mouseMoves.position) {\r\n case 'left':\r\n this._cutCoords.x1 = Math.min(\r\n this.mouseMoves.x1 + diffX,\r\n this._cutCoords.x2 - this.cutScaledMinWidth\r\n );\r\n break;\r\n case 'topleft':\r\n this._cutCoords.x1 = Math.min(\r\n this.mouseMoves.x1 + diffX,\r\n this._cutCoords.x2 - this.cutScaledMinWidth\r\n );\r\n this._cutCoords.y1 = Math.min(\r\n this.mouseMoves.y1 + diffY,\r\n this._cutCoords.y2 - this.cutScaledMinHeight\r\n );\r\n break;\r\n case 'top':\r\n this._cutCoords.y1 = Math.min(\r\n this.mouseMoves.y1 + diffY,\r\n this._cutCoords.y2 - this.cutScaledMinHeight\r\n );\r\n break;\r\n case 'topright':\r\n this._cutCoords.x2 = Math.max(\r\n this.mouseMoves.x2 + diffX,\r\n this._cutCoords.x1 + this.cutScaledMinWidth\r\n );\r\n this._cutCoords.y1 = Math.min(\r\n this.mouseMoves.y1 + diffY,\r\n this._cutCoords.y2 - this.cutScaledMinHeight\r\n );\r\n break;\r\n case 'right':\r\n this._cutCoords.x2 = Math.max(\r\n this.mouseMoves.x2 + diffX,\r\n this._cutCoords.x1 + this.cutScaledMinWidth\r\n );\r\n break;\r\n case 'bottomright':\r\n this._cutCoords.x2 = Math.max(\r\n this.mouseMoves.x2 + diffX,\r\n this._cutCoords.x1 + this.cutScaledMinWidth\r\n );\r\n this._cutCoords.y2 = Math.max(\r\n this.mouseMoves.y2 + diffY,\r\n this._cutCoords.y1 + this.cutScaledMinHeight\r\n );\r\n break;\r\n case 'bottom':\r\n this._cutCoords.y2 = Math.max(\r\n this.mouseMoves.y2 + diffY,\r\n this._cutCoords.y1 + this.cutScaledMinHeight\r\n );\r\n break;\r\n case 'bottomleft':\r\n this._cutCoords.x1 = Math.min(\r\n this.mouseMoves.x1 + diffX,\r\n this._cutCoords.x2 - this.cutScaledMinWidth\r\n );\r\n this._cutCoords.y2 = Math.max(\r\n this.mouseMoves.y2 + diffY,\r\n this._cutCoords.y1 + this.cutScaledMinHeight\r\n );\r\n break;\r\n }\r\n }\r\n\r\n private move(event: any) {\r\n const diffX = this.getClientX(event) - this.mouseMoves.clientX;\r\n const diffY = this.getClientY(event) - this.mouseMoves.clientY;\r\n\r\n this._cutCoords.x1 = this.mouseMoves.x1 + diffX;\r\n this._cutCoords.y1 = this.mouseMoves.y1 + diffY;\r\n this._cutCoords.x2 = this.mouseMoves.x2 + diffX;\r\n this._cutCoords.y2 = this.mouseMoves.y2 + diffY;\r\n }\r\n\r\n private checkMovesPosition(maintainSize = false): void {\r\n if (this._cutCoords.x1 < 0) {\r\n this._cutCoords.x2 -= maintainSize ? this._cutCoords.x1 : 0;\r\n this._cutCoords.x1 = 0;\r\n }\r\n if (this._cutCoords.y1 < 0) {\r\n this._cutCoords.y2 -= maintainSize ? this._cutCoords.y1 : 0;\r\n this._cutCoords.y1 = 0;\r\n }\r\n if (this._cutCoords.x2 > this.areMaxSize.width) {\r\n this._cutCoords.x1 -= maintainSize\r\n ? this._cutCoords.x2 - this.areMaxSize.width\r\n : 0;\r\n this._cutCoords.x2 = this.areMaxSize.width;\r\n }\r\n if (this._cutCoords.y2 > this.areMaxSize.height) {\r\n this._cutCoords.y1 -= maintainSize\r\n ? this._cutCoords.y2 - this.areMaxSize.height\r\n : 0;\r\n this._cutCoords.y2 = this.areMaxSize.height;\r\n }\r\n }\r\n\r\n private onLoadBeginPreview = (_event) => {\r\n this.setProgressLoadCompleted(false);\r\n this.setProgressLoadPreview(true);\r\n };\r\n\r\n private onLoadEndPreview = (_event) => {\r\n this.originalImage.src = this.fileReader.result.toString();\r\n this.originalImage.onload = () => {\r\n setTimeout(() => {\r\n this.originalSize.width = this.originalImage.width;\r\n this.originalSize.height = this.originalImage.height;\r\n this.setProgressLoadCompleted(true);\r\n this.setProgressLoadPreview(false);\r\n this.initCut();\r\n }, 1000);\r\n };\r\n this._safeImgDataUrl = this.sanitizer.bypassSecurityTrustResourceUrl(\r\n this.fileReader.result.toString()\r\n );\r\n };\r\n\r\n private imagePreview(file: any) {\r\n const { name, type } = file;\r\n this._fileNameToCut = MonkeyUtils.truncate(name);\r\n this._fileTypeToCut = type;\r\n this.fileReader.readAsDataURL(file);\r\n }\r\n\r\n private handleCallback(\r\n progress: number,\r\n respUploaded: any,\r\n uploadError: string\r\n ) {\r\n this._progress = progress;\r\n this._uploadErrorMessage = uploadError;\r\n if (respUploaded) {\r\n this.savedCallback(respUploaded);\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n const { onHandleGetFilesReady } = this;\r\n this.fileReader.onloadstart = this.onLoadBeginPreview;\r\n this.fileReader.onload = this.onLoadEndPreview;\r\n\r\n onHandleGetFilesReady.subscribe((val: Function) => {\r\n this.savedCallback = val;\r\n const file = this.imageCutReady\r\n ? MonkeyUtils.handleBlobFile(\r\n this.imageCutReady,\r\n this._fileNameToCut,\r\n this._fileTypeToCut\r\n )\r\n : null;\r\n this.fileUpload(file, this.handleCallback.bind(this));\r\n });\r\n }\r\n\r\n startMove(\r\n event: any,\r\n moveType: string,\r\n position: string | null = null\r\n ): void {\r\n event.preventDefault();\r\n this.mouseMoves = {\r\n active: true,\r\n type: moveType,\r\n position,\r\n clientX: this.getClientX(event),\r\n clientY: this.getClientY(event),\r\n ...this._cutCoords,\r\n };\r\n }\r\n\r\n @HostListener('mousemove', ['$event'])\r\n @HostListener('touchmove', ['$event'])\r\n moveImg(event: any): void {\r\n if (this.mouseMoves && this.mouseMoves.active) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n if (this.mouseMoves.type === 'move') {\r\n this.move(event);\r\n this.checkMovesPosition(true);\r\n } else if (this.mouseMoves.type === 'resize') {\r\n this.resize(event);\r\n this.checkMovesPosition(false);\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n @HostListener('document:mouseup')\r\n @HostListener('document:touchend')\r\n moveStop(): void {\r\n if (this.mouseMoves && this.mouseMoves.active) {\r\n this.mouseMoves.active = false;\r\n this.cut();\r\n }\r\n }\r\n\r\n onHandleFileUploadFilesReady(files: any) {\r\n this.imagePreview(files);\r\n }\r\n\r\n onHandleImageChange() {\r\n this.imageCutReady = null;\r\n this._loadCompleted = false;\r\n this._loadPreview = false;\r\n this._fileNameToCut = '';\r\n this._fileTypeToCut = '';\r\n }\r\n\r\n onHandleImagePreview() {\r\n const file = MonkeyUtils.handleBlobFile(\r\n this.imageCutReady,\r\n this._fileNameToCut,\r\n this._fileTypeToCut\r\n );\r\n this.onHandlePreviewReady.next(file);\r\n }\r\n}\r\n\r\ninterface Dimensions {\r\n width: number;\r\n height: number;\r\n}\r\n\r\ninterface CutCoords {\r\n x1?: number;\r\n y1?: number;\r\n x2?: number;\r\n y2?: number;\r\n}\r\n\r\ninterface MouseMoves {\r\n active: boolean;\r\n type: string | null;\r\n position: string | null;\r\n x1?: number;\r\n y1?: number;\r\n x2?: number;\r\n y2?: number;\r\n clientX: number;\r\n clientY: number;\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyImageCropComponent } from './image-crop.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { MonkeyFileUploadModule } from '../file-upload';\r\nimport { MonkeyButtonModule } from '../button';\r\n\r\n@NgModule({\r\n declarations: [MonkeyImageCropComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxMaskModule.forRoot(),\r\n MonkeyButtonModule,\r\n MonkeyFileUploadModule,\r\n ],\r\n exports: [MonkeyImageCropComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyImageCropModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, EventEmitter, Input, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { MonkeyModalConfig, MonkeyModalRefs, MonkeyStyleGuideModalService } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-modal',\r\n template: `\r\n <mecx-monkey-modal\r\n [ngClass]=\"\r\n 'mecx-monkey-modal mecx-monkey-modal__' +\r\n (config?.color || 'theme') +\r\n ' mecx-monkey-modal__size-' +\r\n config?.size || 'md'\r\n \"\r\n >\r\n <div class=\"header\" *ngIf=\"config?.title\">\r\n <span class=\"h4\">\r\n {{ config?.title }}\r\n </span>\r\n <span class=\"close\" (click)=\"onClose()\" *ngIf=\"!config?.hideClose\"> x </span>\r\n </div>\r\n <div class=\"body\">\r\n <ng-content></ng-content>\r\n </div>\r\n <mecx-monkey-modal-footer\r\n [ngClass]=\"\r\n 'mecx-monkey-modal-footer mecx-monkey-modal-footer__' +\r\n (config?.color || 'theme') +\r\n ' mecx-monkey-modal-footer__size-' +\r\n (config?.size || 'md') +\r\n ' mecx-monkey-modal-footer__' +\r\n ((config?.size || 'md') === 'sm' ? 'column' : 'row')\r\n \"\r\n *ngIf=\"!config?.hideActions\"\r\n >\r\n <monkey-button\r\n [type]=\"config?.action?.cancel?.actionType || 'primary'\"\r\n [color]=\"config?.action?.cancel?.actionColor || config?.color || 'theme'\"\r\n (click)=\"_actionCancel()\"\r\n *ngIf=\"config?.action?.cancel\"\r\n >\r\n {{ config?.action?.cancel?.label }}\r\n </monkey-button>\r\n <monkey-button\r\n [type]=\"config?.action?.confirm?.actionType || 'primary'\"\r\n [color]=\"config?.action?.confirm?.actionColor || config?.color || 'theme'\"\r\n (click)=\"_actionConfirm()\"\r\n *ngIf=\"config?.action?.confirm\"\r\n >\r\n {{ config?.action?.confirm?.label }}\r\n </monkey-button>\r\n <monkey-button\r\n [type]=\"config?.action?.firstAction?.actionType || 'primary'\"\r\n [color]=\"config?.action?.firstAction?.actionColor || 'theme'\"\r\n [icon]=\"config?.action?.firstAction?.icon\"\r\n [iconPosition]=\"config?.action?.firstAction?.iconPosition\"\r\n (click)=\"_firstAction()\"\r\n *ngIf=\"config?.action?.firstAction\"\r\n >\r\n {{ config?.action?.firstAction?.label }}\r\n </monkey-button>\r\n <monkey-button\r\n [type]=\"config?.action?.secondAction?.actionType || 'primary'\"\r\n [color]=\"config?.action?.secondAction?.actionColor || 'theme'\"\r\n [icon]=\"config?.action?.secondAction?.icon\"\r\n [iconPosition]=\"config?.action?.secondAction?.iconPosition\"\r\n (click)=\"_secondAction()\"\r\n *ngIf=\"config?.action?.secondAction\"\r\n >\r\n {{ config?.action?.secondAction?.label }}\r\n </monkey-button>\r\n <monkey-button\r\n [type]=\"config?.action?.thirdAction?.actionType || 'primary'\"\r\n [color]=\"config?.action?.thirdAction?.actionColor || 'theme'\"\r\n [icon]=\"config?.action?.thirdAction?.icon\"\r\n [iconPosition]=\"config?.action?.thirdAction?.iconPosition\"\r\n (click)=\"_thirdAction()\"\r\n *ngIf=\"config?.action?.thirdAction\"\r\n >\r\n {{ config?.action?.thirdAction?.label }}\r\n </monkey-button>\r\n </mecx-monkey-modal-footer>\r\n </mecx-monkey-modal>\r\n <mecx-monkey-modal-background></mecx-monkey-modal-background>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyModalComponent implements OnInit {\r\n @Input() config: MonkeyModalConfig;\r\n @Input() modalRef: MonkeyModalRefs<this>;\r\n @Input() onHandleConfirm = new EventEmitter<any>();\r\n\r\n _actionCancel: Function;\r\n _actionConfirm: Function;\r\n _firstAction: Function;\r\n _secondAction: Function;\r\n _thirdAction: Function;\r\n\r\n constructor(private modalService: MonkeyStyleGuideModalService) {}\r\n\r\n ngOnInit() {\r\n this._actionCancel = () => {\r\n if (this.config?.action?.cancel?.action) {\r\n this.config?.action?.cancel?.action();\r\n }\r\n if (!this.config?.action?.cancel?.keepOnAction) {\r\n this.modalService.close(this.modalRef);\r\n }\r\n };\r\n this._actionConfirm = () => {\r\n if (this.config?.action?.confirm?.action) {\r\n this.config?.action?.confirm?.action();\r\n if (!this.config?.action?.confirm?.keepOnAction) {\r\n this.modalService.close(this.modalRef);\r\n }\r\n } else this.onHandleConfirm.next(null);\r\n };\r\n this._firstAction = () => {\r\n if (this.config?.action?.firstAction?.action) {\r\n this.config?.action?.firstAction?.action();\r\n if (!this.config?.action?.firstAction?.keepOnAction) {\r\n this.modalService.close(this.modalRef);\r\n }\r\n }\r\n };\r\n this._secondAction = () => {\r\n if (this.config?.action?.secondAction?.action) {\r\n this.config?.action?.secondAction?.action();\r\n if (!this.config?.action?.secondAction?.keepOnAction) {\r\n this.modalService.close(this.modalRef);\r\n }\r\n }\r\n };\r\n this._thirdAction = () => {\r\n if (this.config?.action?.thirdAction?.action) {\r\n this.config?.action?.thirdAction?.action();\r\n if (!this.config?.action?.thirdAction?.keepOnAction) {\r\n this.modalService.close(this.modalRef);\r\n }\r\n }\r\n };\r\n }\r\n\r\n onClose() {\r\n this.modalService.close(this.modalRef);\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyModalComponent } from './modal.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MonkeyButtonModule } from '../button/button.module';\r\n\r\n@NgModule({\r\n declarations: [MonkeyModalComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, MonkeyButtonModule],\r\n exports: [MonkeyModalComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyModalModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, ViewEncapsulation, Input, Output, EventEmitter } from '@angular/core';\r\nimport { MonkeyUtils } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-expansion',\r\n template: `\r\n <mecx-monkey-expansion\r\n [id]=\"_id\"\r\n [ngClass]=\"\r\n ('mecx-monkey-expansion mecx-monkey-expansion__' + color || 'theme') +\r\n (disabled ? ' disabled' : '')\r\n \"\r\n >\r\n <mecx-monkey-expansion-header *ngIf=\"!open\" (click)=\"onToggleExpand()\">\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n <monkey-icon icon=\"arrow-down-16\" [color]=\"'#4B4A53'\"></monkey-icon>\r\n </mecx-monkey-expansion-header>\r\n <mecx-monkey-expansion-header\r\n class=\"open\"\r\n *ngIf=\"open\"\r\n (click)=\"onToggleExpand()\"\r\n >\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n <monkey-icon icon=\"arrow-up-16\" [color]=\"'#4B4A53'\"></monkey-icon>\r\n </mecx-monkey-expansion-header>\r\n <mecx-monkey-expansion-body [class.open]=\"open\">\r\n <ng-content></ng-content>\r\n </mecx-monkey-expansion-body>\r\n </mecx-monkey-expansion>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class MonkeyExpansionComponent {\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() color: string;\r\n @Input() disabled: boolean = false;\r\n @Input() open: boolean = false;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n public _id: string = `mecx-expansion-${MonkeyUtils.getRandomString(10)}`;\r\n\r\n constructor() {}\r\n\r\n onToggleExpand() {\r\n if (!this.disabled) {\r\n this.open = !this.open;\r\n this.onChange.next(this.open);\r\n }\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { MonkeyExpansionComponent } from './expansion.component';\nimport { CommonModule } from '@angular/common';\nimport { MonkeyIconModule } from '../icon/icon.module';\n\n@NgModule({\n declarations: [MonkeyExpansionComponent],\n imports: [CommonModule, MonkeyIconModule],\n exports: [MonkeyExpansionComponent],\n schemas: [NO_ERRORS_SCHEMA],\n})\nexport class MonkeyExpansionModule {}\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { MonkeyUtils } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-table',\r\n template: `\r\n <mecx-monkey-table>\r\n <mecx-monkey-table-header>\r\n <monkey-checkbox\r\n [value]=\"onHandleSelectedAll()\"\r\n (click)=\"onHandleSelectAll($event)\"\r\n *ngIf=\"selectable && showSelectAll\"\r\n ></monkey-checkbox>\r\n <div class=\"select-all-disabled\" *ngIf=\"selectable && !showSelectAll\"></div>\r\n <span *ngFor=\"let header of headers\" [style.width]=\"_maxWidth + '%'\">\r\n {{ header }}\r\n </span>\r\n </mecx-monkey-table-header>\r\n <mecx-monkey-table-body>\r\n <mecx-monkey-table-body-row\r\n [class.selected]=\"onHandleSelected(row)\"\r\n *ngFor=\"let row of newDataSource\"\r\n (click)=\"onHandleClicked(row)\"\r\n >\r\n <monkey-checkbox\r\n [value]=\"onHandleSelected(row)\"\r\n (click)=\"onHandleSelect($event, row)\"\r\n *ngIf=\"selectable\"\r\n ></monkey-checkbox>\r\n <ng-container *ngTemplateOutlet=\"rowTemplate; context: { row: row.data }\"></ng-container>\r\n </mecx-monkey-table-body-row>\r\n </mecx-monkey-table-body>\r\n <mecx-monkey-table-body *ngIf=\"loading\">\r\n <mecx-monkey-table-body-row *ngFor=\"let loading of [1, 2, 3]\">\r\n <progress class=\"monkey-progress monkey-progress__grey-white\"></progress>\r\n </mecx-monkey-table-body-row>\r\n </mecx-monkey-table-body>\r\n </mecx-monkey-table>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyTableComponent implements OnInit, OnChanges {\r\n @Input() headers: string[];\r\n\r\n @Input() dataSource: any[];\r\n\r\n @Input() loading = false;\r\n\r\n @Input() rowTemplate: TemplateRef<any>;\r\n\r\n @Input() selectable = false;\r\n\r\n @Input() showSelectAll = true;\r\n\r\n @Input() callbackValidation = null;\r\n\r\n @Input() callbackValidationAll = null;\r\n\r\n @Input() selectedList = null;\r\n \r\n @Input() functionId: Function;\r\n\r\n @Output() selection = new EventEmitter<any>();\r\n\r\n @Output() selected = new EventEmitter<any>();\r\n\r\n @Output() clicked = new EventEmitter<any>();\r\n\r\n newDataSource: any[];\r\n\r\n private list = [];\r\n\r\n _maxWidth = 100;\r\n\r\n constructor(public elRef: ElementRef) {\r\n //not to do\r\n }\r\n\r\n private emitSelection() {\r\n this.selection.next(this.list);\r\n }\r\n\r\n private handleDataSource() {\r\n this.newDataSource = this.dataSource.map((data) => {\r\n let id = null;\r\n if(this.functionId){\r\n id = this.functionId(data);\r\n }else{\r\n id = MonkeyUtils.getRandomString(20);\r\n }\r\n return { id, data };\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n setTimeout(() => {\r\n this._maxWidth = 100 / this.headers?.length;\r\n this.elRef.nativeElement.style.setProperty('--mecx-table-column-width', `${this._maxWidth}%`);\r\n }, 0);\r\n this.handleDataSource();\r\n if (this.selectedList) {\r\n this.list = this.selectedList;\r\n this.emitSelection();\r\n }\r\n }\r\n\r\n ngOnChanges() {\r\n this.handleDataSource();\r\n if (this.selectedList) {\r\n this.list = this.selectedList;\r\n }\r\n }\r\n\r\n onHandleSelect(event: MouseEvent, row: any) {\r\n const { callbackValidation } = this;\r\n event.preventDefault();\r\n\r\n const continueValidation = () => {\r\n this.emitSelection();\r\n this.selected.next({ row, selected: this.onHandleSelected(row) });\r\n };\r\n\r\n if (this.onHandleSelected(row)) {\r\n this.list.splice(this.list.indexOf(row), 1);\r\n continueValidation();\r\n } else {\r\n if (callbackValidation) {\r\n callbackValidation(row, () => {\r\n this.list.push(row);\r\n continueValidation();\r\n });\r\n } else {\r\n continueValidation();\r\n }\r\n }\r\n }\r\n\r\n onHandleSelectAll(event: MouseEvent) {\r\n const { callbackValidationAll } = this;\r\n event.preventDefault();\r\n\r\n const continueValidation = () => {\r\n this.emitSelection();\r\n this.selected.next({ row: this.list });\r\n };\r\n\r\n if (!this.list.length) {\r\n if (callbackValidationAll) {\r\n callbackValidationAll(this.newDataSource, (newData = null) => {\r\n if (newData) {\r\n this.list = [...newData];\r\n } else {\r\n this.list = [...this.newDataSource];\r\n }\r\n continueValidation();\r\n });\r\n }\r\n } else {\r\n this.list = [];\r\n continueValidation();\r\n }\r\n }\r\n\r\n onHandleSelected(row: any) {\r\n return !!this.list.find((value) => value.id === row.id);\r\n }\r\n \r\n onHandleSelectedAll() {\r\n return this.list.length === this.newDataSource.length;\r\n }\r\n\r\n onHandleClicked(row: any) {\r\n this.clicked.next(row); \r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, ViewEncapsulation, forwardRef } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'monkey-table-column',\r\n template: ` <ng-content> </ng-content> `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyTableColumnComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeyTableColumnComponent {}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MonkeyIconModule } from '../icon';\r\nimport { MonkeyCheckboxModule } from '../checkbox';\r\nimport { MonkeyTableComponent } from './table.component';\r\nimport { MonkeyTableColumnComponent } from './table-column.component';\r\n\r\n@NgModule({\r\n declarations: [MonkeyTableComponent, MonkeyTableColumnComponent],\r\n imports: [CommonModule, MonkeyIconModule, MonkeyCheckboxModule],\r\n exports: [MonkeyTableComponent, MonkeyTableColumnComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyTableModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n HostListener,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { MonkeyUtils } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-toggle',\r\n template: `\r\n <mecx-monkey-toggle [id]=\"_id\" [ngClass]=\"{ disabled: disabled }\">\r\n <input type=\"checkbox\" [checked]=\"value\" />\r\n <div [ngClass]=\"'slider-' + value.toString()\"></div>\r\n </mecx-monkey-toggle>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyToggleComponent {\r\n @Input() value: boolean = false;\r\n @Input() disabled: boolean = false;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n public _id: string = `mecx-toggle-${MonkeyUtils.getRandomString(10)}`;\r\n public _open = false;\r\n\r\n constructor() {}\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n if (!this.disabled) {\r\n this.value = !this.value;\r\n this.onChange.next(this.value);\r\n }\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { MonkeyToggleComponent } from './toggle.component';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [MonkeyToggleComponent],\n imports: [CommonModule],\n exports: [MonkeyToggleComponent],\n schemas: [NO_ERRORS_SCHEMA],\n})\nexport class MonkeyToggleModule {}\n","/**************************\n * Copyright Monkey Exchange. All Rights Reserved\n * This style guide was developed by Monkey Exchange Team\n * MIT Licence\n **************************/\nimport {\n ChangeDetectorRef,\n Component,\n ContentChildren,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport { MonkeyOptionComponent } from '../option';\nimport { MonkeyUtils } from '../../core/utils';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'monkey-tab',\n template: `\n <mecx-tab-body [ngClass]=\"position\">\n <ng-content></ng-content>\n </mecx-tab-body>\n `,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MonkeyTabComponent),\n multi: true,\n },\n ],\n})\nexport class MonkeyTabComponent implements OnInit {\n @Input() position: string = 'horizontal';\n @Output() onChange = new EventEmitter<any>();\n @Input() selected: any;\n\n @ContentChildren(MonkeyOptionComponent, { descendants: true })\n private options!: QueryList<MonkeyOptionComponent>;\n\n public _selected: MonkeyOptionComponent;\n public _id: string = `mecx-tab-${MonkeyUtils.getRandomString(10)}`;\n\n constructor(private cdRef: ChangeDetectorRef) {}\n\n private onHandleSelected() {\n const { _selected } = this;\n this.options.forEach((op) => {\n op.selected = _selected;\n });\n\n let scrollValue = 0;\n if (_selected) {\n const { _id } = this._selected;\n scrollValue = document.getElementById(_id).offsetTop;\n }\n this.cdRef.detectChanges();\n this.onChange.next({\n label: _selected.label,\n value: _selected.value,\n });\n }\n\n private validateOptions() {\n if (!this.options) return;\n this.options.forEach((op) => {\n op.onSelectOption = this.onSelectOption.bind(this);\n op.type = 'select';\n op.selected = null;\n if (`${op.value}`.toLowerCase() === `${this.selected}`.toLowerCase()) {\n this._selected = op;\n op.selected = op;\n }\n });\n }\n\n ngOnInit() {\n setTimeout(() => {\n this.validateOptions();\n }, 0);\n }\n\n onSelectOption(select: MonkeyOptionComponent) {\n this._selected = select;\n const { value } = select;\n this.selected = value;\n this.onHandleSelected();\n }\n}\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { MonkeyTabComponent } from './tab.component';\nimport { CommonModule } from '@angular/common';\nimport { MonkeyIconModule } from '../icon';\nimport { MonkeyOptionModule } from '../option';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\n@NgModule({\n declarations: [MonkeyTabComponent],\n imports: [CommonModule, FormsModule, ReactiveFormsModule, MonkeyOptionModule],\n exports: [MonkeyTabComponent],\n schemas: [NO_ERRORS_SCHEMA],\n})\nexport class MonkeyTabModule {}\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-stepper',\r\n template: `\r\n <div [ngClass]=\"position\">\r\n <div class=\"mecx-stepper-body\" *ngFor=\"let step of _totalSteps\">\r\n <div\r\n class=\"mecx-stepper-option mecx-stepper-option__theme\"\r\n [ngClass]=\"{ selected: step === selectedStep, completed: step < selectedStep }\"\r\n ></div>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyStepperComponent implements OnInit {\r\n @Input() totalSteps: number = 0;\r\n @Input() selectedStep: number = 0;\r\n @Input() position: string = 'horizontal';\r\n\r\n public _totalSteps: number[];\r\n public _selectedStep: number;\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n const { totalSteps, selectedStep } = this;\r\n this._totalSteps = new Array(Number(totalSteps)).fill(1).map((step: number, index: number) => {\r\n return step + index;\r\n });\r\n this._selectedStep = Number(selectedStep);\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyStepperComponent } from './stepper.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MonkeyIconModule } from '../icon';\r\n\r\n@NgModule({\r\n declarations: [MonkeyStepperComponent],\r\n imports: [CommonModule, MonkeyIconModule],\r\n exports: [MonkeyStepperComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyStepperModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { MonkeyStyleGuideService } from './core/services/monkey-style-guide.service';\r\nimport { MonkeyStyleGuideSettingsService } from './core/services/settings';\r\nimport { MonkeyStyleGuideThemeSettingsService } from './core/services/settings/monkey-style-guide-theme-settings.service';\r\nimport { MonkeyStyleGuideSnackbarService } from './core/services/snackbar';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n imports: [HttpClientModule, CommonModule],\r\n providers: [\r\n MonkeyStyleGuideService,\r\n MonkeyStyleGuideSettingsService,\r\n MonkeyStyleGuideThemeSettingsService,\r\n MonkeyStyleGuideSnackbarService,\r\n ],\r\n})\r\nexport class MonkeyStyleGuideModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence \r\n**************************/\r\nexport * from './lib/components';\r\nexport * from './lib/core';\r\nexport * from './lib/monkey-style-guide.module';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"monkey-style-guide.mjs","sources":["../../../projects/monkey-style-guide/src/lib/core/services/monkey-style-guide.service.ts","../../../projects/monkey-style-guide/src/lib/core/services/settings/monkey-style-guide-theme-settings.service.ts","../../../projects/monkey-style-guide/src/lib/core/services/settings/monkey-style-guide-settings.service.ts","../../../projects/monkey-style-guide/src/lib/core/utils/utils.ts","../../../projects/monkey-style-guide/src/lib/core/services/snackbar/mokey-style-guide-snackbar.service.ts","../../../projects/monkey-style-guide/src/lib/core/services/modal/monkey-style-guide-modal.service.ts","../../../projects/monkey-style-guide/src/lib/core/services/modal/monkey-style-guide-modal-fixed.service.ts","../../../projects/monkey-style-guide/src/lib/components/badge/badge.component.ts","../../../projects/monkey-style-guide/src/lib/components/badge/badge.module.ts","../../../projects/monkey-style-guide/src/lib/components/icon/icon-arrows.component.ts","../../../projects/monkey-style-guide/assets/icons/arrows.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-arrow-down.component.ts","../../../projects/monkey-style-guide/assets/icons/arrow-down.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-arrow-left.component.ts","../../../projects/monkey-style-guide/assets/icons/arrow-left.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-arrow-right.component.ts","../../../projects/monkey-style-guide/assets/icons/arrow-right.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-arrow-up.component.ts","../../../projects/monkey-style-guide/assets/icons/arrow-up.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-auction.component.ts","../../../projects/monkey-style-guide/assets/icons/auction.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-bank.component.ts","../../../projects/monkey-style-guide/assets/icons/bank.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-bank-account.component.ts","../../../projects/monkey-style-guide/assets/icons/bank-account.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-bell.component.ts","../../../projects/monkey-style-guide/assets/icons/bell.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-book.component.ts","../../../projects/monkey-style-guide/assets/icons/book.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-box.component.ts","../../../projects/monkey-style-guide/assets/icons/box.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-calendar.component.ts","../../../projects/monkey-style-guide/assets/icons/calendar.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-camera.component.ts","../../../projects/monkey-style-guide/assets/icons/camera.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-card-machine.component.ts","../../../projects/monkey-style-guide/assets/icons/card-machine.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-chat.component.ts","../../../projects/monkey-style-guide/assets/icons/chat.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-check-circle-out.component.ts","../../../projects/monkey-style-guide/assets/icons/check-circle-out.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-check-circle.component.ts","../../../projects/monkey-style-guide/assets/icons/check-circle.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-check-grey.component.ts","../../../projects/monkey-style-guide/assets/icons/check-grey.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-check-white.component.ts","../../../projects/monkey-style-guide/assets/icons/check-white.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-check.component.ts","../../../projects/monkey-style-guide/assets/icons/check.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-clipboard.component.ts","../../../projects/monkey-style-guide/assets/icons/clipboard.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-clock.component.ts","../../../projects/monkey-style-guide/assets/icons/clock.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-close.component.ts","../../../projects/monkey-style-guide/assets/icons/close.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-cnpj.component.ts","../../../projects/monkey-style-guide/assets/icons/cnpj.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-codepen.component.ts","../../../projects/monkey-style-guide/assets/icons/codepen.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-company-name.component.ts","../../../projects/monkey-style-guide/assets/icons/company-name.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-contract.component.ts","../../../projects/monkey-style-guide/assets/icons/contract.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-contract-pen.component.ts","../../../projects/monkey-style-guide/assets/icons/contract-pen.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-delete.component.ts","../../../projects/monkey-style-guide/assets/icons/delete.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-document.component.ts","../../../projects/monkey-style-guide/assets/icons/document.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-dollar-sign.component.ts","../../../projects/monkey-style-guide/assets/icons/dollar-sign.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-dollar-sign-circle.component.ts","../../../projects/monkey-style-guide/assets/icons/dollar-sign-circle.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-domain.component.ts","../../../projects/monkey-style-guide/assets/icons/domain.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-download.component.ts","../../../projects/monkey-style-guide/assets/icons/download.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-edit-square.component.ts","../../../projects/monkey-style-guide/assets/icons/edit-square.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-edit.component.ts","../../../projects/monkey-style-guide/assets/icons/edit.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-email.component.ts","../../../projects/monkey-style-guide/assets/icons/email.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-empty-doc.component.ts","../../../projects/monkey-style-guide/assets/icons/empty-doc.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-error.component.ts","../../../projects/monkey-style-guide/assets/icons/error.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-eye-closed.component.ts","../../../projects/monkey-style-guide/assets/icons/eye-closed.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-eye-open.component.ts","../../../projects/monkey-style-guide/assets/icons/eye-open.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-filter.component.ts","../../../projects/monkey-style-guide/assets/icons/filter.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-grid.component.ts","../../../projects/monkey-style-guide/assets/icons/grid.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-help.component.ts","../../../projects/monkey-style-guide/assets/icons/help.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-hexagon.component.ts","../../../projects/monkey-style-guide/assets/icons/hexagon.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-home.component.ts","../../../projects/monkey-style-guide/assets/icons/home.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-image.component.ts","../../../projects/monkey-style-guide/assets/icons/image.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-list.component.ts","../../../projects/monkey-style-guide/assets/icons/list.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-location-pin.component.ts","../../../projects/monkey-style-guide/assets/icons/location-pin.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-login.component.ts","../../../projects/monkey-style-guide/assets/icons/login.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-logout.component.ts","../../../projects/monkey-style-guide/assets/icons/logout.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-medal.component.ts","../../../projects/monkey-style-guide/assets/icons/medal.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-menu.component.ts","../../../projects/monkey-style-guide/assets/icons/menu.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-money.component.ts","../../../projects/monkey-style-guide/assets/icons/money.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-money-cedule.component.ts","../../../projects/monkey-style-guide/assets/icons/money-cedule.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-money-hand.component.ts","../../../projects/monkey-style-guide/assets/icons/money-hand.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-money-sign.component.ts","../../../projects/monkey-style-guide/assets/icons/money-sign.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-more.component.ts","../../../projects/monkey-style-guide/assets/icons/more.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-new-company.component.ts","../../../projects/monkey-style-guide/assets/icons/new-company.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-offered.component.ts","../../../projects/monkey-style-guide/assets/icons/offered.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-password.component.ts","../../../projects/monkey-style-guide/assets/icons/password.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-people.component.ts","../../../projects/monkey-style-guide/assets/icons/people.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-percent.component.ts","../../../projects/monkey-style-guide/assets/icons/percent.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-person-document.component.ts","../../../projects/monkey-style-guide/assets/icons/person-document.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-person-sad.component.ts","../../../projects/monkey-style-guide/assets/icons/person-sad.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-phone.component.ts","../../../projects/monkey-style-guide/assets/icons/phone.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-pork.component.ts","../../../projects/monkey-style-guide/assets/icons/pork.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-radio.component.ts","../../../projects/monkey-style-guide/assets/icons/radio.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-refresh.component.ts","../../../projects/monkey-style-guide/assets/icons/refresh.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-repeat.component.ts","../../../projects/monkey-style-guide/assets/icons/repeat.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-search.component.ts","../../../projects/monkey-style-guide/assets/icons/search.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-second-warning.component.ts","../../../projects/monkey-style-guide/assets/icons/second-warning.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-settings.component.ts","../../../projects/monkey-style-guide/assets/icons/settings.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-trash.component.ts","../../../projects/monkey-style-guide/assets/icons/trash.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-trophy.component.ts","../../../projects/monkey-style-guide/assets/icons/trophy.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-upload.component.ts","../../../projects/monkey-style-guide/assets/icons/upload.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-user.component.ts","../../../projects/monkey-style-guide/assets/icons/user.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-waiting.component.ts","../../../projects/monkey-style-guide/assets/icons/waiting.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-wallet.component.ts","../../../projects/monkey-style-guide/assets/icons/wallet.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon-warning.component.ts","../../../projects/monkey-style-guide/assets/icons/warning.svg","../../../projects/monkey-style-guide/src/lib/components/icon/icon.component.ts","../../../projects/monkey-style-guide/src/lib/components/button/button.component.ts","../../../projects/monkey-style-guide/src/lib/components/button/button-dropdown.component.ts","../../../projects/monkey-style-guide/src/lib/components/button/button-avatar.component.ts","../../../projects/monkey-style-guide/src/lib/components/icon/icon.module.ts","../../../projects/monkey-style-guide/src/lib/components/button/button.module.ts","../../../projects/monkey-style-guide/src/lib/components/date-range-picker/date-range-picker.component.ts","../../../projects/monkey-style-guide/src/lib/components/date-range-picker/date-range-picker.module.ts","../../../projects/monkey-style-guide/src/lib/components/input/input.component.ts","../../../projects/monkey-style-guide/src/lib/components/input/input-filter.component.ts","../../../projects/monkey-style-guide/src/lib/components/input/input.module.ts","../../../projects/monkey-style-guide/src/lib/components/option/option.component.ts","../../../projects/monkey-style-guide/src/lib/components/option/option.module.ts","../../../projects/monkey-style-guide/src/lib/components/select/select.component.ts","../../../projects/monkey-style-guide/src/lib/components/input-phone/input-phone.component.ts","../../../projects/monkey-style-guide/src/lib/components/select/select-multiple.component.ts","../../../projects/monkey-style-guide/src/lib/components/select/select-search.component.ts","../../../projects/monkey-style-guide/src/lib/components/select/select-filter.component.ts","../../../projects/monkey-style-guide/src/lib/components/select/select.module.ts","../../../projects/monkey-style-guide/src/lib/components/input-phone/input-phone.module.ts","../../../projects/monkey-style-guide/src/lib/components/checkbox/checkbox.component.ts","../../../projects/monkey-style-guide/src/lib/components/checkbox/checkbox.module.ts","../../../projects/monkey-style-guide/src/lib/components/radiobutton/radiobutton.component.ts","../../../projects/monkey-style-guide/src/lib/components/radiobutton/radiobutton.module.ts","../../../projects/monkey-style-guide/src/lib/components/wizard/wizard.component.ts","../../../projects/monkey-style-guide/src/lib/components/wizard/wizard.module.ts","../../../projects/monkey-style-guide/src/lib/components/file-upload/file-upload.component.ts","../../../projects/monkey-style-guide/src/lib/components/file-upload/file-upload.module.ts","../../../projects/monkey-style-guide/src/lib/components/image-crop/image-crop.component.ts","../../../projects/monkey-style-guide/src/lib/components/image-crop/image-crop.module.ts","../../../projects/monkey-style-guide/src/lib/components/modal/modal.component.ts","../../../projects/monkey-style-guide/src/lib/components/modal/modal.module.ts","../../../projects/monkey-style-guide/src/lib/components/expansion/expansion.component.ts","../../../projects/monkey-style-guide/src/lib/components/expansion/expansion.module.ts","../../../projects/monkey-style-guide/src/lib/components/table/table.component.ts","../../../projects/monkey-style-guide/src/lib/components/table/table-column.component.ts","../../../projects/monkey-style-guide/src/lib/components/table/table.module.ts","../../../projects/monkey-style-guide/src/lib/components/toggle/toggle.component.ts","../../../projects/monkey-style-guide/src/lib/components/toggle/toggle.module.ts","../../../projects/monkey-style-guide/src/lib/components/tab/tab.component.ts","../../../projects/monkey-style-guide/src/lib/components/tab/tab.module.ts","../../../projects/monkey-style-guide/src/lib/components/stepper/stepper.component.ts","../../../projects/monkey-style-guide/src/lib/components/stepper/stepper.module.ts","../../../projects/monkey-style-guide/src/lib/monkey-style-guide.module.ts","../../../projects/monkey-style-guide/src/public-api.ts","../../../projects/monkey-style-guide/src/monkey-style-guide.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class MonkeyStyleGuideService {\r\n constructor(private http: HttpClient) {}\r\n\r\n public get<T>(url: string, options?: T) {\r\n return this.http.get<T>(url, options);\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { MonkeyStyleSettings, MonkeyStyleFontSettings } from '../../interfaces';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Injectable()\r\nexport class MonkeyStyleGuideThemeSettingsService {\r\n constructor(@Inject(DOCUMENT) private doc: any) {}\r\n\r\n private applyColors(settings: MonkeyStyleSettings): any {\r\n const colors: any = settings.colors;\r\n\r\n let bucketColors = null;\r\n\r\n ['theme', 'error', 'warning', 'success', 'question'].forEach((color) => {\r\n Object.entries(colors[color] as any).forEach(\r\n ([paletteKey, paletteValue]) => {\r\n if (paletteKey === 'contrast') {\r\n Object.entries(paletteValue).forEach(\r\n ([paletteContrastKey, paletteContrastValue]) => {\r\n document.documentElement.style.setProperty(\r\n `--mecx-color-${color}-contrast-${paletteContrastKey}`,\r\n `${paletteContrastValue}`\r\n );\r\n bucketColors = {\r\n ...bucketColors,\r\n [`--mecx-color-${color}-contrast-${paletteContrastKey}`]: `${paletteContrastValue}`,\r\n };\r\n }\r\n );\r\n } else {\r\n document.documentElement.style.setProperty(\r\n `--mecx-color-${color}-${paletteKey}`,\r\n `${paletteValue}`\r\n );\r\n bucketColors = {\r\n ...bucketColors,\r\n [`--mecx-color-${color}-${paletteKey}`]: `${paletteValue}`,\r\n };\r\n }\r\n }\r\n );\r\n });\r\n\r\n return bucketColors;\r\n }\r\n\r\n private applyFonts(settings: MonkeyStyleSettings) {\r\n const font: MonkeyStyleFontSettings = {\r\n url:\r\n 'https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,500;1,600;1,700;1,800;1,900&display=swap',\r\n name: 'Work Sans',\r\n ...settings.font,\r\n };\r\n\r\n document.documentElement.style.setProperty(\r\n `--mecx-font-name`,\r\n `${font.name}`\r\n );\r\n\r\n let link: HTMLLinkElement = this.doc.createElement('link');\r\n link.setAttribute('rel', 'stylesheet');\r\n link.setAttribute('type', 'text/css');\r\n link.setAttribute('href', `${font.url}`);\r\n this.doc.head.appendChild(link);\r\n }\r\n\r\n private applyTheme(settings: MonkeyStyleSettings) {\r\n const { theme } = settings;\r\n document.title = `${theme.title}`;\r\n\r\n let link: HTMLLinkElement = this.doc.createElement('link');\r\n link.setAttribute('rel', 'icon');\r\n link.setAttribute('type', 'image/x-icon');\r\n link.setAttribute('href', `${theme.favicon}`);\r\n this.doc.head.appendChild(link);\r\n }\r\n\r\n public apply(config: MonkeyStyleSettings, callback?: Function) {\r\n const bucketColors = this.applyColors(config);\r\n this.applyFonts(config);\r\n this.applyTheme(config);\r\n setTimeout(() => {\r\n if (callback)\r\n callback({\r\n bucketColors,\r\n });\r\n }, 500);\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Injectable } from '@angular/core';\r\nimport { MonkeyStyleGuideService } from '../monkey-style-guide.service';\r\nimport { MonkeyStyleSettings } from '../../interfaces';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { throwError, BehaviorSubject, Observable } from 'rxjs';\r\nimport { MonkeyStyleGuideThemeSettingsService } from './monkey-style-guide-theme-settings.service';\r\n\r\n@Injectable()\r\nexport class MonkeyStyleGuideSettingsService {\r\n private readonly settingsSubject$: BehaviorSubject<MonkeyStyleSettings> = new BehaviorSubject({});\r\n\r\n constructor(\r\n private monkeySGService: MonkeyStyleGuideService,\r\n private monkeySGThemeConfigService: MonkeyStyleGuideThemeSettingsService\r\n ) {}\r\n\r\n public boostrap(settingsUrl: string, callback?: Function) {\r\n const { monkeySGService, settingsSubject$, monkeySGThemeConfigService } = this;\r\n\r\n monkeySGService.get<any>(settingsUrl || `assets/monkey-style-guide-settings.json`).subscribe(\r\n (_: MonkeyStyleSettings) => {\r\n monkeySGThemeConfigService.apply(_, callback);\r\n settingsSubject$.next(_);\r\n },\r\n (err: HttpErrorResponse) => {\r\n console.error('Monkey-style-guide-settings not found!');\r\n throwError(err);\r\n }\r\n );\r\n }\r\n\r\n public boostrapWithData(data: any, callback?: Function) {\r\n const { settingsSubject$, monkeySGThemeConfigService } = this;\r\n monkeySGThemeConfigService.apply(data, callback);\r\n settingsSubject$.next(data);\r\n }\r\n\r\n public settings(): Observable<any> {\r\n return this.settingsSubject$.asObservable();\r\n }\r\n}\r\n","import { PhoneNumberUtil } from 'google-libphonenumber';\r\n\r\nconst phoneUtil = PhoneNumberUtil.getInstance();\r\n\r\nexport class MonkeyUtils {\r\n public static persistNullEmptyUndefined(tp: any): boolean {\r\n return tp !== null && tp !== undefined && tp !== '';\r\n }\r\n\r\n public static getDocumentType(doc: string) {\r\n if (!doc) return '';\r\n return doc.length <= 11 ? 'CPF' : 'CNPJ';\r\n }\r\n\r\n public static getDocumentMask(type: string) {\r\n if (type === 'CPF') return '000.000.000-00';\r\n return '00.000.000/0000-00';\r\n }\r\n\r\n public static formatDocumentWithMask(doc: string, withType?: boolean): string {\r\n if (!doc) return doc;\r\n let formated: string = '';\r\n if (doc.length === 14)\r\n formated = doc\r\n .replace(/^(\\d{2})(\\d)/, '$1.$2')\r\n .replace(/^(\\d{2})\\.(\\d{3})(\\d)/, '$1.$2.$3')\r\n .replace(/\\.(\\d{3})(\\d)/, '.$1/$2')\r\n .replace(/(\\d{4})(\\d)/, '$1-$2');\r\n else\r\n formated = doc\r\n .replace(/^(\\d{3})(\\d)/, '$1.$2')\r\n .replace(/^(\\d{3})\\.(\\d{3})(\\d)/, '$1.$2.$3')\r\n .replace(/\\.(\\d{3})(\\d)/, '.$1-$2');\r\n\r\n return `${withType ? `${this.getDocumentType(doc)}:` : ''} ${formated}`;\r\n }\r\n\r\n public static cutFirstLastName(value: string, tp: string = 'first') {\r\n const split = value?.trim()?.split(' ');\r\n\r\n if (tp === 'first') return split[0];\r\n return split?.splice(1, split.length)?.join(' ');\r\n }\r\n\r\n public static isCPFCNPJValid(document: any): boolean {\r\n document = document.replace(/[^\\d]/g, '');\r\n if (document.length === 11) {\r\n let base = [10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0];\r\n for (var i = 0, n = 0; i < 9; n += document[i] * base[i++]);\r\n if (document[9] != ((n %= 11) <= 1 ? 0 : 11 - n)) {\r\n return false;\r\n }\r\n base = [11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0];\r\n for (var i = 0, n = 0; i <= 9; n += document[i] * base[i++]);\r\n if (document[10] != ((n %= 11) <= 1 ? 0 : 11 - n)) {\r\n return false;\r\n }\r\n return true;\r\n } else if (document.length === 14 || /0{14}/.test(document)) {\r\n let base = [6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2];\r\n for (var i = 0, n = 0; i < 12; n += document[i] * base[++i]);\r\n if (document[12] != ((n %= 11) < 2 ? 0 : 11 - n)) {\r\n return false;\r\n }\r\n\r\n for (var i = 0, n = 0; i <= 12; n += document[i] * base[i++]);\r\n if (document[13] != ((n %= 11) < 2 ? 0 : 11 - n)) {\r\n return false;\r\n }\r\n\r\n return true;\r\n } else return false;\r\n }\r\n\r\n public static isValidUrl(txt: string): boolean {\r\n const regex = new RegExp(\r\n /^(http:\\/\\/www\\.|https:\\/\\/www\\.|http:\\/\\/|https:\\/\\/)+[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,10}(:[0-9]{1,5})?(\\/.*)?$/gm\r\n );\r\n return regex.test(txt);\r\n }\r\n\r\n public static isValidZipCode(zipCode: string): boolean {\r\n return `${this.handleOnlyNumbers(zipCode)}`.length === 8;\r\n }\r\n\r\n public static getRandomString(len: number, charSet?: string): string {\r\n charSet = charSet || 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\r\n let randomString: string = Array.apply(null, Array(len))\r\n .map(function () {\r\n return charSet.charAt(Math.floor(Math.random() * charSet.length));\r\n })\r\n .join('');\r\n return randomString;\r\n }\r\n\r\n public static handleOnlyNumbersCurrency(value: any) {\r\n if (!value) return null;\r\n return value.replace(new RegExp(/[^0-9.]/g), '');\r\n }\r\n\r\n public static handleOnlyNumbers(value: any) {\r\n if (!value) return null;\r\n return value.replace(new RegExp(/[^0-9]/g), '');\r\n }\r\n\r\n public static handleOnlyAlphaNumeric(value: any) {\r\n if (!value) return '';\r\n return value.replace(new RegExp(/[^0-9A-Za-z]/, 'g'), '');\r\n }\r\n\r\n public static capitalize(value: string) {\r\n return `${value.charAt(0).toUpperCase()}${value.slice(1)}`;\r\n }\r\n\r\n public static formatZipCode(zipCode: string): string {\r\n if (!zipCode) return zipCode;\r\n const formated: string = zipCode\r\n .replace(/^(\\d{5})(\\d)/, '$1-$2')\r\n .replace(/\\.(\\d{3})(\\d)/, '.$1-$2');\r\n\r\n return `${formated}`;\r\n }\r\n\r\n public static formatFileSize(size: number): string {\r\n let units = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\r\n let l = 0;\r\n while (size >= 1024 && ++l) {\r\n size = size / 1024;\r\n }\r\n return size.toFixed(size < 10 && l > 0 ? 1 : 0) + ' ' + units[l];\r\n }\r\n\r\n public static sufflue(data: any[]): any[] {\r\n for (let i = data.length - 1; i > 0; i--) {\r\n const j = Math.floor(Math.random() * i);\r\n const temp = data[i];\r\n data[i] = data[j];\r\n data[j] = temp;\r\n }\r\n return data;\r\n }\r\n\r\n public static handleBlobFile(theBlob: any, fileName: string, fileType: string) {\r\n function blobToFile(theBlob, fileName) {\r\n const b = theBlob;\r\n b.lastModifiedDate = new Date();\r\n b.name = fileName;\r\n return b;\r\n }\r\n\r\n let file: any;\r\n if (!(navigator as any).msSaveBlob) {\r\n file = new File([theBlob], fileName, { type: fileType });\r\n } else {\r\n file = new Blob([theBlob], { type: fileType });\r\n file = blobToFile(file, fileName);\r\n }\r\n return file;\r\n }\r\n\r\n public static truncate(text: string, maxLength: number = 25): string {\r\n const midChar = '...';\r\n if (!text) return midChar;\r\n if (text && text.length <= maxLength) return text;\r\n\r\n const left = Math.ceil(maxLength / 2);\r\n const right = text.length - left + 1;\r\n\r\n return `${text.substr(0, left)} ${midChar} ${text.substring(right)}`;\r\n }\r\n\r\n public static isLocalhost() {\r\n const { href } = window?.location;\r\n if (!href) return false;\r\n return href?.search('localhost') >= 0;\r\n }\r\n\r\n public static getPhoneRegions() {\r\n return phoneUtil\r\n .getSupportedRegions()\r\n .map((code: string) => {\r\n return phoneUtil.getCountryCodeForRegion(code);\r\n })\r\n .filter((v, i, a) => a.indexOf(v) === i)\r\n .sort((a, b) => (a < b ? -1 : 1));\r\n }\r\n\r\n public static getPhoneHandle(internationalNumber = 55) {\r\n let maxLength = 14;\r\n let mask = 'XX XXXXX-XXXX';\r\n try {\r\n const country = phoneUtil.getRegionCodeForCountryCode(internationalNumber);\r\n const exampleNumber = phoneUtil.getExampleNumber(country)['values_']['2'];\r\n\r\n const number = phoneUtil.parse(`${exampleNumber}`, country);\r\n const formated = phoneUtil.format(number, null);\r\n if (formated) {\r\n maxLength = `${formated}`.length;\r\n mask = `${formated}`.replace(new RegExp(/[^0-9]/g), '0');\r\n }\r\n } catch (e) {\r\n //not to do\r\n }\r\n return {\r\n maxLength,\r\n mask,\r\n };\r\n }\r\n\r\n public static getPhoneCountryCode(phone: string) {\r\n if (!phone) return '';\r\n let cc = `${this.handleOnlyNumbers(phone)}`?.substring(0, 2);\r\n let code;\r\n try {\r\n const number = phoneUtil.parse(phone);\r\n code = number.getCountryCodeOrDefault();\r\n } catch (e) {\r\n //not to do\r\n }\r\n return code || cc;\r\n }\r\n\r\n public static getPhoneNumberFormated(phone: string, internationalNumber = 55) {\r\n if (!phone) return '';\r\n phone = phone.replace(`+${internationalNumber}`, '');\r\n try {\r\n const country = phoneUtil.getRegionCodeForCountryCode(internationalNumber);\r\n const number = phoneUtil.parse(phone, country);\r\n if (phoneUtil.isPossibleNumber(number)) {\r\n return phoneUtil.format(number, null);\r\n }\r\n } catch (e) {\r\n //not to do\r\n }\r\n return phone;\r\n }\r\n\r\n public static isPhoneNumberValid(phone: string, internationalNumber = 55) {\r\n if (!phone) return false;\r\n try {\r\n const country = phoneUtil.getRegionCodeForCountryCode(internationalNumber);\r\n const number = phoneUtil.parse(phone, country);\r\n return phoneUtil.isValidNumberForRegion(number, country);\r\n } catch (e) {\r\n //not to do\r\n }\r\n return false;\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Location } from '@angular/common';\r\nimport { Injectable } from '@angular/core';\r\nimport { MonkeyUtils } from '../../utils';\r\n\r\nconst icons = {\r\n success: `<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <circle cx=\"8\" cy=\"8\" r=\"7\" fill=\"#00875A\"/>\r\n <path d=\"M11 5L7 11L4 8.27273\" stroke=\"white\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>`,\r\n warning: `<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.85433 2.63819L1.17957 12.0114C1.06257 12.2118 1.00066 12.4391 1.00001 12.6706C0.99935 12.9021 1.05997 13.1297 1.17583 13.3308C1.2917 13.532 1.45877 13.6995 1.66042 13.8169C1.86207 13.9343 2.09128 13.9975 2.32524 14H13.6748C13.9087 13.9975 14.1379 13.9343 14.3396 13.8169C14.5412 13.6995 14.7083 13.532 14.8242 13.3308C14.94 13.1297 15.0006 12.9021 15 12.6706C14.9993 12.4391 14.9374 12.2118 14.8204 12.0114L9.14567 2.63819C9.02623 2.44337 8.85806 2.2823 8.65738 2.17051C8.45671 2.05873 8.2303 2 8 2C7.7697 2 7.54329 2.05873 7.34262 2.17051C7.14194 2.2823 6.97377 2.44337 6.85433 2.63819Z\" fill=\"#EFA30E\"/>\r\n <path d=\"M8 6V10\" stroke=\"#000F1E\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M8 12H8.00667\" stroke=\"#000F1E\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>`,\r\n error: `<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M5.102 1H10.898L15 5.102V10.898L10.898 15H5.102L1 10.898V5.102L5.102 1Z\" fill=\"#FA3838\"/>\r\n <path d=\"M8 5.33333V7.99999\" stroke=\"#F5FAFF\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M8 10.6667H8.00667\" stroke=\"#F5FAFF\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>`,\r\n question: `<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M8.00004 14.6668C11.6819 14.6668 14.6667 11.6821 14.6667 8.00016C14.6667 4.31826 11.6819 1.3335 8.00004 1.3335C4.31814 1.3335 1.33337 4.31826 1.33337 8.00016C1.33337 11.6821 4.31814 14.6668 8.00004 14.6668Z\" stroke=\"#8D38FA\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M6.05994 5.99989C6.21667 5.55434 6.52604 5.17863 6.93324 4.93931C7.34044 4.7 7.8192 4.61252 8.28472 4.69237C8.75024 4.77222 9.17248 5.01424 9.47665 5.37558C9.78083 5.73691 9.94731 6.19424 9.9466 6.66656C9.9466 7.99989 7.9466 8.66656 7.9466 8.66656V9.49989\" stroke=\"#8D38FA\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M8 11.3335H8.00667\" stroke=\"#8D38FA\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>`,\r\n loading: `<svg class=\"circular-loader\" viewBox=\"25 25 50 50\" >\r\n <circle class=\"loader-path\" cx=\"50\" cy=\"50\" r=\"20\" fill=\"none\" stroke=\"#575757\" stroke-width=\"5\" />\r\n </svg>`,\r\n};\r\n\r\ninterface SnackbarActionConfig {\r\n confirm?: {\r\n style: 'link' | 'button';\r\n label: string;\r\n action: Function;\r\n keepOnAction?: boolean;\r\n };\r\n cancel?: {\r\n style: 'link' | 'button';\r\n label: string;\r\n action: Function;\r\n keepOnAction?: boolean;\r\n };\r\n}\r\n\r\ninterface SnackbarConfig {\r\n title?: string;\r\n message?: string;\r\n type?: 'theme' | 'warning' | 'success' | 'error' | 'question' | 'loading';\r\n duration?: number;\r\n horizontalPosition?: 'center' | 'left' | 'right';\r\n verticalPosition?: 'top' | 'bottom';\r\n action?: SnackbarActionConfig;\r\n keepOpen?: boolean;\r\n blinkTab?: boolean;\r\n keepOnUrlChange?: boolean;\r\n}\r\n\r\nclass SnackbarElements {\r\n elements: {\r\n element?: HTMLDivElement;\r\n interval?: any;\r\n }[] = [];\r\n lastScrollTop: number = 15;\r\n\r\n constructor() {}\r\n\r\n add(element: HTMLDivElement, duration: number, callback: Function, verticalPosition: string) {\r\n if (this.elements && this.elements.length === 0) {\r\n this.lastScrollTop = 15;\r\n }\r\n element.style[verticalPosition] = `${this.lastScrollTop}px`;\r\n\r\n const interval = setInterval(() => {\r\n callback();\r\n }, duration);\r\n\r\n this.elements.push({\r\n element: element,\r\n interval: interval,\r\n });\r\n document.body.appendChild(element);\r\n this.lastScrollTop = this.lastScrollTop + document.getElementById(element.id).offsetHeight + 15;\r\n }\r\n\r\n remove(removeId: string) {\r\n const element = this.elements.find(({ element: { id } }) => id === removeId);\r\n if (element) {\r\n this.elements =\r\n this.elements.filter(({ element: { id } }) => id !== element.element.id) || [];\r\n element.element.className = `${element.element.className} fade-out hide`;\r\n setTimeout(() => {\r\n this.lastScrollTop =\r\n this.lastScrollTop - (document.getElementById(removeId).offsetHeight + 15);\r\n document.body.removeChild(element.element);\r\n clearInterval(element.interval);\r\n }, 1000);\r\n }\r\n }\r\n\r\n removeAll() {\r\n this.elements.forEach((element) => {\r\n document.body.removeChild(element.element);\r\n clearInterval(element.interval);\r\n });\r\n this.lastScrollTop = 15;\r\n this.elements = [];\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class MonkeyStyleGuideSnackbarService {\r\n private config: SnackbarConfig;\r\n private snackbarElement: HTMLDivElement;\r\n private snackbarElements: SnackbarElements;\r\n private snackbarBodyElement: HTMLDivElement;\r\n private snackbarBodyMessageElement: HTMLDivElement;\r\n private oldTitle: string;\r\n private timeoutBlinkTab = null;\r\n\r\n constructor(private locationRouter: Location) {\r\n this.snackbarElements = new SnackbarElements();\r\n this.locationRouter.onUrlChange(() => {\r\n if(this.config && !this.config?.keepOnUrlChange){\r\n this.closeAll();\r\n }\r\n });\r\n }\r\n\r\n private stopBlinking() {\r\n if (this.oldTitle) {\r\n document.title = this.oldTitle;\r\n if (this.snackbarElements.elements.length <= 0) {\r\n clearInterval(this.timeoutBlinkTab);\r\n }\r\n }\r\n }\r\n\r\n private blinkTab() {\r\n this.oldTitle = this.oldTitle || document.title;\r\n\r\n const startBlinking = () => {\r\n let message = `(${this.snackbarElements.elements.length}) ${this.oldTitle}`;\r\n document.title = document.title === message ? this.oldTitle : message;\r\n };\r\n\r\n if (this.timeoutBlinkTab) clearInterval(this.timeoutBlinkTab);\r\n this.timeoutBlinkTab = setInterval(startBlinking, 1000);\r\n }\r\n\r\n private init(id: string) {\r\n const { config } = this;\r\n let { horizontalPosition, verticalPosition, type } = config;\r\n horizontalPosition = horizontalPosition || 'center';\r\n verticalPosition = verticalPosition || 'top';\r\n\r\n this.snackbarElement = document.createElement('div');\r\n this.snackbarElement.id = `${id}`;\r\n this.snackbarElement.className = `mecx-snackbar-container ${horizontalPosition}-${verticalPosition} ${type}`;\r\n }\r\n\r\n private buildBody() {\r\n this.snackbarBodyElement = document.createElement('div');\r\n this.snackbarBodyElement.className = 'mecx-snackbar-container-body';\r\n\r\n this.snackbarBodyMessageElement = document.createElement('div');\r\n this.snackbarBodyMessageElement.className = 'mecx-snackbar-container-body-content';\r\n }\r\n\r\n private buildTitleAndMessage() {\r\n let {\r\n config: { title, message, action },\r\n } = this;\r\n const titleElement = document.createElement('div');\r\n titleElement.innerText = `${title}`;\r\n titleElement.className = 'mecx-snackbar-container-body-content-title';\r\n\r\n const messageElement = document.createElement('div');\r\n messageElement.innerText = `${message}`;\r\n messageElement.className = `mecx-snackbar-container-body-content-message ${\r\n action ? 'with-action' : ''\r\n }`;\r\n\r\n this.snackbarBodyMessageElement.appendChild(titleElement);\r\n this.snackbarBodyMessageElement.appendChild(messageElement);\r\n }\r\n\r\n private buildAction(id: string) {\r\n const {\r\n config: { type, action },\r\n } = this;\r\n if (action) {\r\n const { confirm, cancel } = action;\r\n const actionElement = document.createElement('div');\r\n\r\n let actionCancelElement = null,\r\n actionConfirmElement = null;\r\n\r\n if(confirm){\r\n const { style, label } = confirm;\r\n if (style === 'link') {\r\n actionConfirmElement = document.createElement('a');\r\n actionConfirmElement.href = 'javascript:void(0)';\r\n actionConfirmElement.innerText = label;\r\n }else {\r\n actionConfirmElement = document.createElement('button');\r\n actionConfirmElement.className = `mecx-button-primary mecx-button-primary__${type}`;\r\n actionConfirmElement.innerText = label;\r\n }\r\n }\r\n\r\n if(cancel){ \r\n const { style, label } = cancel;\r\n if(style === 'link'){\r\n actionCancelElement = document.createElement('a');\r\n actionCancelElement.href = 'javascript:void(0)';\r\n actionCancelElement.innerText = label;\r\n }else{\r\n actionCancelElement = document.createElement('button');\r\n actionCancelElement.className = `mecx-button-tertiary mecx-button-tertiary__${type}`;\r\n actionCancelElement.innerText = label;\r\n }\r\n }\r\n\r\n if (actionCancelElement) {\r\n actionCancelElement.addEventListener('click', () => {\r\n if (!cancel?.keepOnAction) {\r\n this.close(id);\r\n }\r\n cancel.action();\r\n });\r\n\r\n actionElement.appendChild(actionCancelElement);\r\n }\r\n\r\n if (actionConfirmElement) {\r\n actionConfirmElement.addEventListener('click', () => {\r\n if (!confirm?.keepOnAction) {\r\n this.close(id);\r\n }\r\n confirm.action();\r\n });\r\n actionElement.appendChild(actionConfirmElement);\r\n }\r\n\r\n actionElement.className = 'mecx-snackbar-container-body-content-action';\r\n this.snackbarBodyMessageElement.appendChild(actionElement);\r\n }\r\n }\r\n\r\n private buildIcon() {\r\n let {\r\n config: { type },\r\n } = this;\r\n\r\n const snackbarBodyIconElement = document.createElement('div');\r\n snackbarBodyIconElement.className = 'mecx-snackbar-container-body-icon';\r\n snackbarBodyIconElement.innerHTML = `${icons[type]}`;\r\n this.snackbarBodyElement.appendChild(snackbarBodyIconElement);\r\n }\r\n\r\n private finish(id: string) {\r\n let {\r\n config: { duration, keepOpen, verticalPosition },\r\n } = this;\r\n duration = duration || 4000;\r\n const { snackbarBodyElement, snackbarBodyMessageElement, snackbarElement } = this;\r\n snackbarBodyElement.appendChild(snackbarBodyMessageElement);\r\n snackbarElement.appendChild(snackbarBodyElement);\r\n\r\n this.snackbarElements.add(\r\n snackbarElement,\r\n duration,\r\n () => (!keepOpen ? this.close(id) : null),\r\n verticalPosition\r\n );\r\n }\r\n\r\n public show(config: SnackbarConfig): string {\r\n this.config = config;\r\n const id = `monkey-snackbar-${MonkeyUtils.getRandomString(30)}`;\r\n this.closeAll();\r\n this.init(id);\r\n this.buildBody();\r\n this.buildTitleAndMessage();\r\n this.buildAction(id);\r\n this.buildIcon();\r\n this.finish(id);\r\n if (config?.blinkTab) {\r\n this.blinkTab();\r\n }\r\n return id;\r\n }\r\n\r\n public closeAll() {\r\n const { snackbarElements } = this;\r\n snackbarElements.removeAll();\r\n }\r\n\r\n public close(id: string) {\r\n const { snackbarElements } = this;\r\n snackbarElements.remove(id);\r\n this.stopBlinking();\r\n }\r\n}\r\n","import {\n ApplicationRef,\n ComponentFactoryResolver,\n EmbeddedViewRef,\n Injectable,\n Injector,\n} from '@angular/core';\nimport { Location } from '@angular/common';\nimport { MonkeyUtils } from '../../utils';\nimport { MonkeyModalComponent } from '../../../components/modal';\nimport { MonkeyModalConfig, MonkeyModalRefs } from '../../interfaces';\n\n@Injectable()\nexport class MonkeyStyleGuideModalService {\n private dialogComponentRef: MonkeyModalRefs<MonkeyModalComponent>[] = [];\n\n constructor(\n private resolver: ComponentFactoryResolver,\n private appRef: ApplicationRef,\n private injector: Injector,\n private locationRouter: Location\n ) {\n this.locationRouter.onUrlChange(() => {\n this.closeAll();\n });\n }\n\n open(\n component: any,\n config: MonkeyModalConfig\n ): MonkeyModalRefs<MonkeyModalComponent> {\n const componentFactory = this.resolver.resolveComponentFactory(component);\n const componentRef: any = componentFactory.create(this.injector);\n this.appRef.attachView(componentRef.hostView);\n\n const refRet = {\n id: `mecx-modal-${MonkeyUtils.getRandomString(30)}`,\n component: componentRef,\n };\n\n componentRef.instance.config = config;\n componentRef.instance.modalRef = refRet;\n\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>)\n .rootNodes[0] as HTMLElement;\n document.body.appendChild(domElem);\n document.body.classList.add('mecx-monkey-open');\n\n this.dialogComponentRef.push(refRet);\n return refRet;\n }\n\n close(ref: MonkeyModalRefs<MonkeyModalComponent>) {\n this.appRef.detachView(ref.component.hostView);\n ref.component.destroy();\n this.dialogComponentRef = this.dialogComponentRef.filter(\n ({ id }) => id !== ref.id\n );\n if (this.dialogComponentRef.length === 0) {\n document.body.classList.remove('mecx-monkey-open');\n }\n }\n\n closeAll() {\n this.dialogComponentRef.forEach(\n (val: MonkeyModalRefs<MonkeyModalComponent>) => {\n this.appRef.detachView(val.component.hostView);\n val.component.destroy();\n }\n );\n this.dialogComponentRef = [];\n document.body.classList.remove('mecx-monkey-open');\n }\n}\n","import {\n ApplicationRef,\n ComponentFactoryResolver,\n EmbeddedViewRef,\n Injectable,\n Injector,\n} from '@angular/core';\nimport { Location } from '@angular/common';\nimport { MonkeyUtils } from '../../utils';\nimport { MonkeyModalComponent } from '../../../components/modal';\nimport { MonkeyModalConfig, MonkeyModalRefs } from '../../interfaces';\n\n@Injectable()\nexport class MonkeyStyleGuideModalFixedService {\n private dialogComponentRef: MonkeyModalRefs<MonkeyModalComponent>[] = [];\n\n constructor(\n private resolver: ComponentFactoryResolver,\n private appRef: ApplicationRef,\n private injector: Injector\n ) {\n //not to do\n }\n\n open(\n component: any,\n config: MonkeyModalConfig\n ): MonkeyModalRefs<MonkeyModalComponent> {\n this.closeAll();\n const componentFactory = this.resolver.resolveComponentFactory(component);\n const componentRef: any = componentFactory.create(this.injector);\n this.appRef.attachView(componentRef.hostView);\n\n const refRet = {\n id: `mecx-modal-${MonkeyUtils.getRandomString(30)}`,\n component: componentRef,\n };\n\n componentRef.instance.config = config;\n componentRef.instance.modalRef = refRet;\n\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>)\n .rootNodes[0] as HTMLElement;\n document.body.appendChild(domElem);\n document.body.classList.add('mecx-monkey-open');\n\n this.dialogComponentRef.push(refRet);\n return refRet;\n }\n\n close(ref: MonkeyModalRefs<MonkeyModalComponent>) {\n this.appRef.detachView(ref.component.hostView);\n ref.component.destroy();\n this.dialogComponentRef = this.dialogComponentRef.filter(\n ({ id }) => id !== ref.id\n );\n if (this.dialogComponentRef.length === 0) {\n document.body.classList.remove('mecx-monkey-open');\n }\n }\n\n closeAll() {\n this.dialogComponentRef.forEach(\n (val: MonkeyModalRefs<MonkeyModalComponent>) => {\n this.appRef.detachView(val.component.hostView);\n val.component.destroy();\n }\n );\n this.dialogComponentRef = [];\n document.body.classList.remove('mecx-monkey-open');\n }\n}\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, ViewEncapsulation, Input } from '@angular/core';\r\nimport { MonkeyUtils } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-badge',\r\n template: `\r\n <mecx-monkey-badge [id]=\"_id\" [ngClass]=\"{ pulse: pulseOn }\">\r\n <div class=\"badge-count\">\r\n {{ count }}\r\n </div>\r\n </mecx-monkey-badge>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyBadgeComponent {\r\n @Input() count = 0;\r\n @Input() pulseOn = false;\r\n\r\n public _id: string = `mecx-badge-${MonkeyUtils.getRandomString(10)}`;\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { MonkeyBadgeComponent } from './badge.component';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [MonkeyBadgeComponent],\n imports: [CommonModule],\n exports: [MonkeyBadgeComponent],\n schemas: [NO_ERRORS_SCHEMA],\n})\nexport class MonkeyBadgeModule {}\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-arrows',\r\n templateUrl: `../../../../assets/icons/arrows.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyArrowsComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12.103 6.793L15 3.897L12.103 1\" stroke=\"#F04461\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M1 3.90002H15\" stroke=\"#F04461\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M3.897 9.20697L1 12.103L3.897 15\" stroke=\"#F04461\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15 12.1H1\" stroke=\"#F04461\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-arrow-down',\r\n templateUrl: `../../../../assets/icons/arrow-down.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconArrowDownComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M2 5L8 11L14 5\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-arrow-left',\r\n templateUrl: `../../../../assets/icons/arrow-left.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconArrowLeftComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M10 1.99976L4 7.99976L10 13.9998\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-arrow-right',\r\n templateUrl: `../../../../assets/icons/arrow-right.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconArrowRightComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M6.00098 13.9997L12.001 7.99974L6.00098 1.99974\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-arrow-up',\r\n templateUrl: `../../../../assets/icons/arrow-up.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconArrowUpComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M14.0005 10.9997L8.00049 4.99974L2.00049 10.9997\" stroke=\"#C3261F\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-auction',\r\n templateUrl: `../../../../assets/icons/auction.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconAuctionComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M8.63522 10.4077L8.28166 10.7612L8.98877 11.4683L9.34232 11.1148L8.63522 10.4077ZM13.1136 7.34355L13.4671 6.98999L12.76 6.28289L12.4065 6.63644L13.1136 7.34355ZM9.34232 11.1148L13.1136 7.34355L12.4065 6.63644L8.63522 10.4077L9.34232 11.1148Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M4.86471 6.63668L4.51115 6.99023L5.21826 7.69734L5.57182 7.34379L4.86471 6.63668ZM9.34305 3.57255L9.69661 3.219L8.9895 2.51189L8.63594 2.86545L9.34305 3.57255ZM5.57182 7.34379L9.34305 3.57255L8.63594 2.86545L4.86471 6.63668L5.57182 7.34379Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"3.33252\" y=\"5.10449\" width=\"5.33333\" height=\"10.6667\" rx=\"1.33333\" transform=\"rotate(-45 3.33252 5.10449)\" stroke=\"#4B4A53\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M1.31295 13.9799C1.11769 14.1752 1.11769 14.4918 1.31295 14.687C1.50821 14.8823 1.8248 14.8823 2.02006 14.687L1.31295 13.9799ZM7.02006 9.68705C7.21532 9.49179 7.21532 9.1752 7.02006 8.97994C6.8248 8.78468 6.50821 8.78468 6.31295 8.97994L7.02006 9.68705ZM2.02006 14.687L7.02006 9.68705L6.31295 8.97994L1.31295 13.9799L2.02006 14.687Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M9.3335 14.1665C9.05735 14.1665 8.8335 14.3904 8.8335 14.6665C8.8335 14.9426 9.05735 15.1665 9.3335 15.1665V14.1665ZM14.6668 15.1665C14.943 15.1665 15.1668 14.9426 15.1668 14.6665C15.1668 14.3904 14.943 14.1665 14.6668 14.1665V15.1665ZM9.3335 15.1665H14.6668V14.1665H9.3335V15.1665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-bank',\r\n templateUrl: `../../../../assets/icons/bank.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconBankComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M13.9687 7.21878C14.4515 7.21878 14.6531 6.59846 14.2609 6.31253L8.29368 1.9719C8.20847 1.90947 8.10557 1.87581 7.99993 1.87581C7.89429 1.87581 7.7914 1.90947 7.70618 1.9719L1.739 6.31253C1.34681 6.5969 1.54837 7.21878 2.03275 7.21878H2.99993V13.0625H1.87493C1.80618 13.0625 1.74993 13.1188 1.74993 13.1875V14C1.74993 14.0688 1.80618 14.125 1.87493 14.125H14.1249C14.1937 14.125 14.2499 14.0688 14.2499 14V13.1875C14.2499 13.1188 14.1937 13.0625 14.1249 13.0625H12.9999V7.21878H13.9687ZM7.99993 3.07346L12.2359 6.15471H3.764L7.99993 3.07346ZM4.12493 7.21878H5.95306V13.0625H4.12493V7.21878ZM7.07806 7.21878H8.90618V13.0625H7.07806V7.21878ZM11.8749 13.0625H10.0312V7.21878H11.8749V13.0625Z\" fill=\"#000000\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-bank-account',\r\n templateUrl: `../../../../assets/icons/bank-account.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyBankAccountComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21 10H3V6.994L12.152 3L21 6.861V10Z\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.6431 10V18\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M19 18V10\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.6431 10V18\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M19 18V10\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5 10V18\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9.35693 18V10\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5 10V18\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9.35693 18V10\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3 21H21V20L20 18H4L3 20V21Z\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-bell',\r\n templateUrl: `../../../../assets/icons/bell.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconBellComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12 5.33334C12 4.27248 11.5786 3.25506 10.8284 2.50492C10.0783 1.75477 9.06087 1.33334 8 1.33334C6.93913 1.33334 5.92172 1.75477 5.17157 2.50492C4.42143 3.25506 4 4.27248 4 5.33334C4 10 2 11.3333 2 11.3333H14C14 11.3333 12 10 12 5.33334Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9.1535 14C9.03629 14.2021 8.86806 14.3698 8.66565 14.4864C8.46324 14.6029 8.23375 14.6643 8.00017 14.6643C7.76658 14.6643 7.53709 14.6029 7.33468 14.4864C7.13227 14.3698 6.96404 14.2021 6.84683 14\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-book',\r\n templateUrl: `../../../../assets/icons/book.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconBookComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M3.99994 19.5C3.99994 18.837 4.26333 18.2011 4.73217 17.7322C5.20101 17.2634 5.8369 17 6.49994 17H19.9999\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M6.49994 2.00003H19.9999V22H6.49994C5.8369 22 5.20101 21.7366 4.73217 21.2678C4.26333 20.799 3.99994 20.1631 3.99994 19.5V4.50003C3.99994 3.83699 4.26333 3.2011 4.73217 2.73226C5.20101 2.26342 5.8369 2.00003 6.49994 2.00003V2.00003Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-box',\r\n templateUrl: `../../../../assets/icons/box.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconBoxComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"17\" height=\"18\" viewBox=\"0 0 17 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M11.9638 7.05192L4.5943 2.80615\" stroke=\"#0273E8\" stroke-width=\"0.994908\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15.6484 12.4513V5.90673C15.6482 5.61981 15.5723 5.33802 15.4286 5.08961C15.2849 4.84121 15.0783 4.63493 14.8296 4.49147L9.0978 1.2192C8.84884 1.0756 8.56644 1 8.27897 1C7.9915 1 7.70909 1.0756 7.46013 1.2192L1.72832 4.49147C1.47961 4.63493 1.27303 4.84121 1.12931 5.08961C0.985589 5.33802 0.909779 5.61981 0.909485 5.90673V12.4513C0.909779 12.7382 0.985589 13.02 1.12931 13.2684C1.27303 13.5168 1.47961 13.7231 1.72832 13.8665L7.46013 17.1388C7.70909 17.2824 7.9915 17.358 8.27897 17.358C8.56644 17.358 8.84884 17.2824 9.0978 17.1388L14.8296 13.8665C15.0783 13.7231 15.2849 13.5168 15.4286 13.2684C15.5723 13.02 15.6482 12.7382 15.6484 12.4513Z\" stroke=\"#0273E8\" stroke-width=\"0.994908\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M1.1315 5.05588L8.2799 9.18712L15.4283 5.05588\" stroke=\"#0273E8\" stroke-width=\"0.994908\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8.27893 17.4252V9.17908\" stroke=\"#0273E8\" stroke-width=\"0.994908\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-calendar',\r\n templateUrl: `../../../../assets/icons/calendar.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCalendarComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12.6667 2.66667H3.33333C2.59695 2.66667 2 3.26363 2 4.00001V13.3333C2 14.0697 2.59695 14.6667 3.33333 14.6667H12.6667C13.403 14.6667 14 14.0697 14 13.3333V4.00001C14 3.26363 13.403 2.66667 12.6667 2.66667Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M10.6665 1.33333V3.99999\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.3335 1.33333V3.99999\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M2 6.66667H14\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-camera',\r\n templateUrl: `../../../../assets/icons/camera.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCameraComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M23 19C23 19.5304 22.7893 20.0391 22.4142 20.4142C22.0391 20.7893 21.5304 21 21 21H3C2.46957 21 1.96086 20.7893 1.58579 20.4142C1.21071 20.0391 1 19.5304 1 19V8C1 7.46957 1.21071 6.96086 1.58579 6.58579C1.96086 6.21071 2.46957 6 3 6H7L9 3H15L17 6H21C21.5304 6 22.0391 6.21071 22.4142 6.58579C22.7893 6.96086 23 7.46957 23 8V19Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12 17C14.2091 17 16 15.2091 16 13C16 10.7909 14.2091 9 12 9C9.79086 9 8 10.7909 8 13C8 15.2091 9.79086 17 12 17Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-card-machine',\r\n templateUrl: `../../../../assets/icons/card-machine.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconCardMachineComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M15 9H3\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M7 4H5C3.895 4 3 4.895 3 6V20C3 21.105 3.895 22 5 22H13C14.105 22 15 21.105 15 20V6C15 4.895 14.105 4 13 4H11\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15 13.03H3\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7 2H11V6H7V2Z\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.999 15.833C5.907 15.833 5.832 15.908 5.833 16C5.833 16.092 5.908 16.167 6 16.167C6.092 16.167 6.167 16.092 6.167 16C6.167 15.908 6.092 15.833 5.999 15.833\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8.999 15.833C8.907 15.833 8.832 15.908 8.833 16C8.833 16.092 8.908 16.167 9 16.167C9.092 16.167 9.167 16.092 9.167 16C9.167 15.908 9.092 15.833 8.999 15.833\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M11.999 18.833C11.907 18.833 11.832 18.908 11.833 19C11.833 19.092 11.908 19.167 12 19.167C12.092 19.167 12.167 19.092 12.167 19C12.167 18.908 12.092 18.833 11.999 18.833\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.999 18.833C5.907 18.833 5.832 18.908 5.833 19C5.833 19.092 5.908 19.167 6 19.167C6.092 19.167 6.167 19.092 6.167 19C6.167 18.908 6.092 18.833 5.999 18.833\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8.999 18.833C8.907 18.833 8.832 18.908 8.833 19C8.833 19.092 8.908 19.167 9 19.167C9.092 19.167 9.167 19.092 9.167 19C9.167 18.908 9.092 18.833 8.999 18.833\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15 9H20C20.552 9 21 9.448 21 10V15C21 15.552 20.552 16 20 16H15\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15 12H21\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M11.999 15.833C11.907 15.833 11.832 15.908 11.833 16C11.833 16.092 11.908 16.167 12 16.167C12.092 16.167 12.167 16.092 12.167 16C12.167 15.908 12.092 15.833 11.999 15.833\" stroke=\"#545A63\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-chat',\r\n templateUrl: `../../../../assets/icons/chat.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconChatComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M20.2033 15.0281C20.1565 14.8594 20.2596 14.625 20.358 14.4562C20.3881 14.406 20.421 14.3575 20.4565 14.3109C21.2985 13.0598 21.7489 11.5862 21.7502 10.0781C21.7643 5.75625 18.1174 2.25 13.608 2.25C9.67522 2.25 6.39397 4.92656 5.62522 8.47969C5.51021 9.00632 5.45207 9.54377 5.45178 10.0828C5.45178 14.4094 8.95803 18.0094 13.4674 18.0094C14.1846 18.0094 15.1502 17.7937 15.6799 17.6484C16.2096 17.5031 16.7346 17.3109 16.8705 17.2594C17.0099 17.2068 17.1575 17.1798 17.3065 17.1797C17.469 17.1791 17.6299 17.2109 17.7799 17.2734L20.4377 18.2156C20.496 18.2403 20.5576 18.2561 20.6205 18.2625C20.72 18.2625 20.8154 18.223 20.8857 18.1527C20.956 18.0823 20.9955 17.987 20.9955 17.8875C20.9923 17.8446 20.9844 17.8022 20.9721 17.7609L20.2033 15.0281Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-miterlimit=\"10\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M3.11565 10.875C2.50085 11.9795 2.20344 13.2325 2.2563 14.4954C2.30916 15.7584 2.71023 16.9821 3.41518 18.0314C3.52346 18.195 3.5844 18.3216 3.56565 18.4064C3.5469 18.4912 3.00643 21.3065 3.00643 21.3065C2.99343 21.3724 2.99836 21.4406 3.0207 21.5039C3.04305 21.5673 3.08199 21.6234 3.13346 21.6665C3.20213 21.7213 3.28753 21.7507 3.37533 21.75C3.42226 21.7501 3.4687 21.7405 3.51174 21.7219L6.14658 20.6906C6.32793 20.6191 6.53022 20.6225 6.70908 20.7C7.5969 21.0459 8.57846 21.2625 9.56049 21.2625C10.8783 21.2639 12.1729 20.9163 13.3128 20.2551\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-miterlimit=\"10\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-check-circle-out',\r\n templateUrl: `../../../../assets/icons/check-circle-out.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCheckCircleOutComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"17\" height=\"17\" viewBox=\"0 0 17 17\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M15.0468 7.5784V8.20761C15.046 9.68243 14.5684 11.1175 13.6853 12.2987C12.8023 13.4799 11.5611 14.3441 10.1468 14.7622C8.73246 15.1804 7.22088 15.1302 5.83746 14.6191C4.45403 14.108 3.27289 13.1634 2.47017 11.9261C1.66746 10.6889 1.2862 9.22532 1.38323 7.7537C1.48027 6.28208 2.05042 4.88125 3.00864 3.76013C3.96686 2.63902 5.26181 1.85768 6.70037 1.53266C8.13893 1.20763 9.64401 1.35634 10.9912 1.95659\" stroke=\"#0273E8\" stroke-width=\"1.00638\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15.0462 2.73547L8.20703 9.5815L6.15527 7.52975\" stroke=\"#0273E8\" stroke-width=\"1.00638\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-check-circle',\r\n templateUrl: `../../../../assets/icons/check-circle.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCheckCircleComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<circle cx=\"8\" cy=\"8\" r=\"7\" fill=\"#00875A\"/>\r\n<path d=\"M11 5L7 11L4 8.27273\" stroke=\"white\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-check-grey',\r\n templateUrl: '../../../../assets/icons/check-grey.svg',\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCheckGreyComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<rect x=\"0.5\" y=\"0.5\" width=\"15\" height=\"15\" rx=\"5.5\" fill=\"#EBEBEB\" stroke=\"#C2C2C2\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-check-white',\r\n templateUrl: `../../../../assets/icons/check-white.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCheckWhiteComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<rect width=\"16\" height=\"16\" rx=\"6\" fill=\"#FAFAFA\"/>\r\n<path d=\"M11 6L6.875 10L5 8.18182\" stroke=\"#00875A\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-check',\r\n templateUrl: `../../../../assets/icons/check.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCheckComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M28 8L11.5 24L4 16.7273\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-clipboard',\r\n templateUrl: `../../../../assets/icons/clipboard.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconClipboardComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M16 4H18C18.5304 4 19.0391 4.21071 19.4142 4.58579C19.7893 4.96086 20 5.46957 20 6V20C20 20.5304 19.7893 21.0391 19.4142 21.4142C19.0391 21.7893 18.5304 22 18 22H6C5.46957 22 4.96086 21.7893 4.58579 21.4142C4.21071 21.0391 4 20.5304 4 20V6C4 5.46957 4.21071 4.96086 4.58579 4.58579C4.96086 4.21071 5.46957 4 6 4H8\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15 2H9C8.44772 2 8 2.44772 8 3V5C8 5.55228 8.44772 6 9 6H15C15.5523 6 16 5.55228 16 5V3C16 2.44772 15.5523 2 15 2Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-clock',\r\n templateUrl: `../../../../assets/icons/clock.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconClockComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C4.13401 1 1 4.13401 1 8C1 11.866 4.13401 15 8 15Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 4V8L11 10\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-close',\r\n templateUrl: `../../../../assets/icons/close.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCloseComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M26 6L6 26\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M6 6L26 26\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-cnpj',\r\n templateUrl: `../../../../assets/icons/cnpj.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCNPJComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M8 8H10V12H8V8Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M8 14H10V18H8V14Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M14 8H16V12H14V8Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M14 14H16V18H14V14Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M8 20H10V24H8V20Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M14 20H16V24H14V20Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M30 14C30 13.4696 29.7893 12.9609 29.4142 12.5858C29.0391 12.2107 28.5304 12 28 12H22V4C22 3.46957 21.7893 2.96086 21.4142 2.58579C21.0391 2.21071 20.5304 2 20 2H4C3.46957 2 2.96086 2.21071 2.58579 2.58579C2.21071 2.96086 2 3.46957 2 4V30H30V14ZM4 4H20V28H4V4ZM22 28V14H28V28H22Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-codepen',\r\n templateUrl: `../../../../assets/icons/codepen.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCodepenComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M8.00004 1.33334L14.6667 5.66668V10.3333L8.00004 14.6667L1.33337 10.3333V5.66668L8.00004 1.33334Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 14.6667V10.3333\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.6667 5.66666L8.00004 10.3333L1.33337 5.66666\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M1.33337 10.3333L8.00004 5.66666L14.6667 10.3333\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 1.33334V5.66668\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-company-name',\r\n templateUrl: `../../../../assets/icons/company-name.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconCompanyNameComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<rect x=\"3\" y=\"5\" width=\"26\" height=\"22\" rx=\"1\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<rect x=\"14\" y=\"8\" width=\"12\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"6\" y=\"8\" width=\"6\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"6\" y=\"12\" width=\"10\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"6\" y=\"16\" width=\"6\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"14\" y=\"16\" width=\"12\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"6\" y=\"20\" width=\"4\" height=\"4\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"12\" y=\"20\" width=\"10\" height=\"4\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"24\" y=\"20\" width=\"2\" height=\"4\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<rect x=\"18\" y=\"12\" width=\"8\" height=\"2\" rx=\"1\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-contract',\r\n templateUrl: `../../../../assets/icons/contract.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconContractComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"40\" viewBox=\"0 0 32 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M9.59969 28.6665H8.31969C7.96609 28.6665 7.67969 28.9648 7.67969 29.3332C7.67969 29.7015 7.96609 29.9998 8.31969 29.9998H9.59969C9.95329 29.9998 10.2397 29.7015 10.2397 29.3332C10.2397 28.9648 9.95329 28.6665 9.59969 28.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M27.5195 28.6665H12.1595C11.8059 28.6665 11.5195 28.9648 11.5195 29.3332C11.5195 29.7015 11.8059 29.9998 12.1595 29.9998H27.5195C27.8731 29.9998 28.1595 29.7015 28.1595 29.3332C28.1595 28.9648 27.8731 28.6665 27.5195 28.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M9.59969 24.6665H8.31969C7.96609 24.6665 7.67969 24.9648 7.67969 25.3332C7.67969 25.7015 7.96609 25.9998 8.31969 25.9998H9.59969C9.95329 25.9998 10.2397 25.7015 10.2397 25.3332C10.2397 24.9648 9.95329 24.6665 9.59969 24.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M27.5195 24.6665H12.1595C11.8059 24.6665 11.5195 24.9648 11.5195 25.3332C11.5195 25.7015 11.8059 25.9998 12.1595 25.9998H27.5195C27.8731 25.9998 28.1595 25.7015 28.1595 25.3332C28.1595 24.9648 27.8731 24.6665 27.5195 24.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M9.59969 20.6665H8.31969C7.96609 20.6665 7.67969 20.9648 7.67969 21.3332C7.67969 21.7015 7.96609 21.9998 8.31969 21.9998H9.59969C9.95329 21.9998 10.2397 21.7015 10.2397 21.3332C10.2397 20.9648 9.95329 20.6665 9.59969 20.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M27.5195 20.6665H12.1595C11.8059 20.6665 11.5195 20.9648 11.5195 21.3332C11.5195 21.7015 11.8059 21.9998 12.1595 21.9998H27.5195C27.8731 21.9998 28.1595 21.7015 28.1595 21.3332C28.1595 20.9648 27.8731 20.6665 27.5195 20.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M9.59969 16.6665H8.31969C7.96609 16.6665 7.67969 16.9648 7.67969 17.3332C7.67969 17.7015 7.96609 17.9998 8.31969 17.9998H9.59969C9.95329 17.9998 10.2397 17.7015 10.2397 17.3332C10.2397 16.9648 9.95329 16.6665 9.59969 16.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M27.5195 16.6665H12.1595C11.8059 16.6665 11.5195 16.9648 11.5195 17.3332C11.5195 17.7015 11.8059 17.9998 12.1595 17.9998H27.5195C27.8731 17.9998 28.1595 17.7015 28.1595 17.3332C28.1595 16.9648 27.8731 16.6665 27.5195 16.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M9.59969 12.6665H8.31969C7.96609 12.6665 7.67969 12.9648 7.67969 13.3332C7.67969 13.7015 7.96609 13.9998 8.31969 13.9998H9.59969C9.95329 13.9998 10.2397 13.7015 10.2397 13.3332C10.2397 12.9648 9.95329 12.6665 9.59969 12.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M27.5195 12.6665H12.1595C11.8059 12.6665 11.5195 12.9648 11.5195 13.3332C11.5195 13.7015 11.8059 13.9998 12.1595 13.9998H27.5195C27.8731 13.9998 28.1595 13.7015 28.1595 13.3332C28.1595 12.9648 27.8731 12.6665 27.5195 12.6665Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M31.992 9.95833C31.9888 9.9 31.9776 9.8425 31.9592 9.78667C31.952 9.765 31.9472 9.745 31.9384 9.72417C31.9072 9.65167 31.864 9.58583 31.8104 9.52917L22.8504 0.195833C22.796 0.14 22.7328 0.095 22.6632 0.0625C22.6432 0.0533333 22.6232 0.0475 22.604 0.0408333C22.5504 0.0216667 22.4944 0.01 22.4384 0.00583333C22.4264 0.0075 22.4144 0 22.4 0H4.48C4.1264 0 3.84 0.298333 3.84 0.666667V2.66667H0.64C0.2864 2.66667 0 2.965 0 3.33333V39.3333C0 39.7017 0.2864 40 0.64 40H27.52C27.8736 40 28.16 39.7017 28.16 39.3333V36H31.36C31.7136 36 32 35.7017 32 35.3333V10C32 9.985 31.9928 9.9725 31.992 9.95833ZM23.04 2.27583L29.8152 9.33333H23.04V2.27583ZM26.88 38.6667H1.28V4H3.84V35.3333C3.84 35.7017 4.1264 36 4.48 36H26.88V38.6667ZM30.72 34.6667H5.12V1.33333H21.76V10C21.76 10.3683 22.0464 10.6667 22.4 10.6667H30.72V34.6667Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M12.1597 6H8.31969C7.96609 6 7.67969 6.29833 7.67969 6.66667V10.6667C7.67969 11.035 7.96609 11.3333 8.31969 11.3333H12.1597C12.5133 11.3333 12.7997 11.035 12.7997 10.6667V6.66667C12.7997 6.29833 12.5133 6 12.1597 6ZM11.5197 10H8.95969V7.33333H11.5197V10Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-contract-pen',\r\n templateUrl: `../../../../assets/icons/contract-pen.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconContractPenComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M9.99908 22.0037H5.99742C4.89239 22.0037 3.99658 21.1079 3.99658 20.0029V5.99705C3.99658 4.89202 4.89239 3.99622 5.99742 3.99622H18.0024C19.1074 3.99622 20.0032 4.89202 20.0032 5.99705V8.9983\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M13 22.0037L15.6251 21.6796C15.8098 21.6567 15.9816 21.573 16.1133 21.4415L22.4739 15.0808C23.1785 14.3793 23.1811 13.2396 22.4799 12.5348L22.4739 12.5298V12.5298C21.7724 11.8253 20.6327 11.8226 19.9279 12.5238V12.5298L13.6253 18.8324C13.497 18.9598 13.4141 19.1256 13.3892 19.3046L13 22.0037Z\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.99867 18.0021V18.0021C8.1699 18.0021 7.49805 17.3303 7.49805 16.5015V16.5015C7.49805 15.6727 8.1699 15.0009 8.99867 15.0009V15.0009C9.82744 15.0009 10.4993 15.6727 10.4993 16.5015V16.5015C10.4993 17.3303 9.82744 18.0021 8.99867 18.0021Z\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M7.49805 7.99789H15.5014\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M7.49805 11.4994H11.4997\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-delete',\r\n templateUrl: `../../../../assets/icons/delete.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDeleteComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M14 2.66663H5.33329L0.666626 7.99996L5.33329 13.3333H14C14.3536 13.3333 14.6927 13.1928 14.9428 12.9428C15.1928 12.6927 15.3333 12.3536 15.3333 12V3.99996C15.3333 3.64634 15.1928 3.3072 14.9428 3.05715C14.6927 2.8071 14.3536 2.66663 14 2.66663V2.66663Z\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12 6L8 10\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 6L12 10\" stroke=\"#000000\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-document',\r\n templateUrl: `../../../../assets/icons/document.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDocumentComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12.9375 2.25H6.375C5.87772 2.25 5.40081 2.45545 5.04917 2.82114C4.69754 3.18684 4.5 3.68283 4.5 4.2V19.8C4.5 20.3172 4.69754 20.8132 5.04917 21.1789C5.40081 21.5446 5.87772 21.75 6.375 21.75H17.625C18.1223 21.75 18.5992 21.5446 18.9508 21.1789C19.3025 20.8132 19.5 20.3172 19.5 19.8V9.075L12.9375 2.25Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12.75 3V9.75H19.5\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 13H13.5\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 15H16\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 17H16\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-dollar-sign',\r\n templateUrl: `../../../../assets/icons/dollar-sign.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDollarSignComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M4 23V1H5H8.5H12H15.5H19H20V23H19L15.5 19L12 23L8.5 19L5 23H4Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12 5.49988V16.4999\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.5 7.50012H10.75C10.2859 7.50012 9.84075 7.6845 9.51256 8.01269C9.18437 8.34087 9 8.78599 9 9.25012C9 9.71425 9.18437 10.1594 9.51256 10.4876C9.84075 10.8157 10.2859 11.0001 10.75 11.0001H13.25C13.7141 11.0001 14.1592 11.1845 14.4874 11.5127C14.8156 11.8409 15 12.286 15 12.7501C15 13.2143 14.8156 13.6594 14.4874 13.9876C14.1592 14.3157 13.7141 14.5001 13.25 14.5001H9\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-dollar-sign-circle',\r\n templateUrl: `../../../../assets/icons/dollar-sign-circle.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDollarSignCircleComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M13.0012 9.99877V8.99835\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M13.0012 16.0012V17.0016\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M11.2653 15.2867C11.5216 15.7274 11.9914 16.0003 12.5013 16.0047H13.5977C14.3069 16.0041 14.9045 15.4751 14.9912 14.7712C15.0778 14.0673 14.6263 13.4092 13.9384 13.2367L12.0634 12.7656C11.3755 12.5931 10.924 11.935 11.0106 11.2311C11.0973 10.5272 11.6949 9.99819 12.4041 9.99762H13.5005C14.0094 10.0012 14.4787 10.2727 14.7353 10.7122\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M13.0003 3.99622C17.973 3.99622 22.0041 8.02733 22.0041 13C22.0041 17.9726 17.973 22.0037 13.0003 22.0037C8.0277 22.0037 3.99658 17.9726 3.99658 13C3.99658 8.02733 8.0277 3.99622 13.0003 3.99622\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M13.0003 3.99622C17.973 3.99622 22.0041 8.02733 22.0041 13C22.0041 17.9726 17.973 22.0037 13.0003 22.0037C8.0277 22.0037 3.99658 17.9726 3.99658 13C3.99658 8.02733 8.0277 3.99622 13.0003 3.99622\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-domain',\r\n templateUrl: `../../../../assets/icons/domain.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDomainComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"64\" height=\"64\" viewBox=\"0 0 64 64\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M16 16H20V24H16V16Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M16 28H20V36H16V28Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M28 16H32V24H28V16Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M28 28H32V36H28V28Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M16 40H20V48H16V40Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M28 40H32V48H28V40Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M60 28C60 26.9391 59.5786 25.9217 58.8284 25.1716C58.0783 24.4214 57.0609 24 56 24H44V8C44 6.93913 43.5786 5.92172 42.8284 5.17157C42.0783 4.42143 41.0609 4 40 4H8C6.93913 4 5.92172 4.42143 5.17157 5.17157C4.42143 5.92172 4 6.93913 4 8V60H60V28ZM8 8H40V56H8V8ZM44 56V28H56V56H44Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-download',\r\n templateUrl: `../../../../assets/icons/download.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconDownloadComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M14 10V12.6667C14 13.0203 13.8595 13.3594 13.6095 13.6095C13.3594 13.8595 13.0203 14 12.6667 14H3.33333C2.97971 14 2.64057 13.8595 2.39052 13.6095C2.14048 13.3594 2 13.0203 2 12.6667V10\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M4.6665 6.66667L7.99984 10L11.3332 6.66667\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 10V2\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-edit-square',\r\n templateUrl: `../../../../assets/icons/edit-square.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconEditSquareComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M7.33325 2.66675H2.66659C2.31296 2.66675 1.97382 2.80722 1.72378 3.05727C1.47373 3.30732 1.33325 3.64646 1.33325 4.00008V13.3334C1.33325 13.687 1.47373 14.0262 1.72378 14.2762C1.97382 14.5263 2.31296 14.6667 2.66659 14.6667H11.9999C12.3535 14.6667 12.6927 14.5263 12.9427 14.2762C13.1928 14.0262 13.3333 13.687 13.3333 13.3334V8.66675\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12.3333 1.66665C12.5985 1.40144 12.9582 1.25244 13.3333 1.25244C13.7083 1.25244 14.068 1.40144 14.3333 1.66665C14.5985 1.93187 14.7475 2.29158 14.7475 2.66665C14.7475 3.04173 14.5985 3.40144 14.3333 3.66665L7.99992 9.99999L5.33325 10.6667L5.99992 7.99999L12.3333 1.66665Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-edit',\r\n templateUrl: `../../../../assets/icons/edit.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconEditComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M21.1298 6.8356C21.3947 6.57068 21.7092 6.36054 22.0553 6.21716C22.4015 6.07379 22.7725 6 23.1471 6C23.5217 6 23.8927 6.07379 24.2389 6.21716C24.585 6.36054 24.8995 6.57068 25.1644 6.8356C25.4293 7.10051 25.6395 7.41501 25.7828 7.76114C25.9262 8.10727 26 8.47825 26 8.8529C26 9.22755 25.9262 9.59853 25.7828 9.94466C25.6395 10.2908 25.4293 10.6053 25.1644 10.8702L11.5476 24.487L6 26L7.51298 20.4524L21.1298 6.8356Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-email',\r\n templateUrl: `../../../../assets/icons/email.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconEmailComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M5.33366 5.33334H26.667C28.1337 5.33334 29.3337 6.53334 29.3337 8V24C29.3337 25.4667 28.1337 26.6667 26.667 26.6667H5.33366C3.86699 26.6667 2.66699 25.4667 2.66699 24V8C2.66699 6.53334 3.86699 5.33334 5.33366 5.33334Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M29.3337 8L16.0003 17.3333L2.66699 8\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-empty-doc',\r\n templateUrl: `../../../../assets/icons/empty-doc.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconEmptyDocComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"64\" height=\"64\" viewBox=\"0 0 64 64\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M34.5 6H17C15.6739 6 14.4021 6.54786 13.4645 7.52304C12.5268 8.49823 12 9.82087 12 11.2V52.8C12 54.1791 12.5268 55.5018 13.4645 56.477C14.4021 57.4521 15.6739 58 17 58H47C48.3261 58 49.5979 57.4521 50.5355 56.477C51.4732 55.5018 52 54.1791 52 52.8V24.2L34.5 6Z\" stroke=\"#0273E8\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M34 8V26H52\" stroke=\"#0273E8\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-error',\r\n templateUrl: `../../../../assets/icons/error.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconErrorComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M5.102 1H10.898L15 5.102V10.898L10.898 15H5.102L1 10.898V5.102L5.102 1Z\" fill=\"#FA3838\"/>\r\n<path d=\"M8 5.33333V7.99999\" stroke=\"#F5FAFF\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n<path d=\"M8 10.6667H8.00667\" stroke=\"#F5FAFF\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-eye-closed',\r\n templateUrl: `../../../../assets/icons/eye-closed.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconEyeClosedComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"17\" height=\"17\" viewBox=\"0 0 17 17\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<g clip-path=\"url(#clip0)\">\r\n<path d=\"M10.108 9.61859C9.9249 9.81509 9.70409 9.9727 9.45876 10.082C9.21343 10.1913 8.9486 10.2501 8.68005 10.2548C8.41151 10.2596 8.14477 10.2102 7.89573 10.1096C7.6467 10.009 7.42048 9.85928 7.23056 9.66936C7.04064 9.47945 6.89092 9.25322 6.79033 9.00419C6.68974 8.75515 6.64035 8.48841 6.64508 8.21987C6.64982 7.95133 6.7086 7.68649 6.81791 7.44116C6.92722 7.19583 7.08483 6.97503 7.28133 6.79193M12.6547 12.1653C11.5151 13.0339 10.1274 13.5152 8.69466 13.5386C4.02799 13.5386 1.36133 8.20526 1.36133 8.20526C2.19059 6.65986 3.34075 5.30967 4.73466 4.24526L12.6547 12.1653ZM7.29466 3.03193C7.75355 2.92451 8.22337 2.87082 8.69466 2.87193C13.3613 2.87193 16.028 8.20526 16.028 8.20526C15.6233 8.96233 15.1407 9.67508 14.588 10.3319L7.29466 3.03193Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n<path d=\"M1.36133 0.871927L16.028 15.5386\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</g>\r\n<defs>\r\n<clipPath id=\"clip0\">\r\n<rect width=\"16\" height=\"16\" fill=\"white\" transform=\"translate(0.694824 0.205261)\"/>\r\n</clipPath>\r\n</defs>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-eye-open',\r\n templateUrl: `../../../../assets/icons/eye-open.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconEyeOpenComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M0.666504 8C0.666504 8 3.33317 2.66667 7.99984 2.66667C12.6665 2.66667 15.3332 8 15.3332 8C15.3332 8 12.6665 13.3333 7.99984 13.3333C3.33317 13.3333 0.666504 8 0.666504 8Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M8 10C9.10457 10 10 9.10457 10 8C10 6.89543 9.10457 6 8 6C6.89543 6 6 6.89543 6 8C6 9.10457 6.89543 10 8 10Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-filter',\r\n templateUrl: `../../../../assets/icons/filter.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconFilterComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M14.6667 2H1.33337L6.66671 8.30667V12.6667L9.33337 14V8.30667L14.6667 2Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-grid',\r\n templateUrl: `../../../../assets/icons/grid.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconGridComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M6 2H3C2.44772 2 2 2.44772 2 3V6C2 6.55228 2.44772 7 3 7H6C6.55228 7 7 6.55228 7 6V3C7 2.44772 6.55228 2 6 2Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M13 2H10C9.44772 2 9 2.44772 9 3V6C9 6.55228 9.44772 7 10 7H13C13.5523 7 14 6.55228 14 6V3C14 2.44772 13.5523 2 13 2Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M13 9H10C9.44772 9 9 9.44772 9 10V13C9 13.5523 9.44772 14 10 14H13C13.5523 14 14 13.5523 14 13V10C14 9.44772 13.5523 9 13 9Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M6 9H3C2.44772 9 2 9.44772 2 10V13C2 13.5523 2.44772 14 3 14H6C6.55228 14 7 13.5523 7 13V10C7 9.44772 6.55228 9 6 9Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-help',\r\n templateUrl: `../../../../assets/icons/help.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconHelpComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M16.0003 29.3333C23.3641 29.3333 29.3337 23.3638 29.3337 16C29.3337 8.6362 23.3641 2.66666 16.0003 2.66666C8.63653 2.66666 2.66699 8.6362 2.66699 16C2.66699 23.3638 8.63653 29.3333 16.0003 29.3333Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12.1201 12C12.4336 11.1089 13.0523 10.3575 13.8667 9.87884C14.6811 9.40021 15.6386 9.22525 16.5697 9.38495C17.5007 9.54464 18.3452 10.0287 18.9536 10.7514C19.5619 11.474 19.8949 12.3887 19.8934 13.3333C19.8934 16 15.8934 17.3333 15.8934 17.3333V19\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16 22.6667H16.0133\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-hexagon',\r\n templateUrl: `../../../../assets/icons/hexagon.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconHexagonComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M14 10.6667V5.33335C13.9998 5.09953 13.938 4.86989 13.821 4.66746C13.704 4.46503 13.5358 4.29692 13.3333 4.18002L8.66667 1.51335C8.46397 1.39633 8.23405 1.33472 8 1.33472C7.76595 1.33472 7.53603 1.39633 7.33333 1.51335L2.66667 4.18002C2.46418 4.29692 2.29599 4.46503 2.17897 4.66746C2.06196 4.86989 2.00024 5.09953 2 5.33335V10.6667C2.00024 10.9005 2.06196 11.1301 2.17897 11.3326C2.29599 11.535 2.46418 11.7031 2.66667 11.82L7.33333 14.4867C7.53603 14.6037 7.76595 14.6653 8 14.6653C8.23405 14.6653 8.46397 14.6037 8.66667 14.4867L13.3333 11.82C13.5358 11.7031 13.704 11.535 13.821 11.3326C13.938 11.1301 13.9998 10.9005 14 10.6667Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-home',\r\n templateUrl: `../../../../assets/icons/home.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconHomeComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M3 9L12 2L21 9V20C21 20.5304 20.7893 21.0391 20.4142 21.4142C20.0391 21.7893 19.5304 22 19 22H5C4.46957 22 3.96086 21.7893 3.58579 21.4142C3.21071 21.0391 3 20.5304 3 20V9Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9 22V12H15V22\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-image',\r\n templateUrl: `../../../../assets/icons/image.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconImageComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M25.3333 4H6.66667C5.19391 4 4 5.19391 4 6.66667V25.3333C4 26.8061 5.19391 28 6.66667 28H25.3333C26.8061 28 28 26.8061 28 25.3333V6.66667C28 5.19391 26.8061 4 25.3333 4Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M11.334 13.3333C12.4386 13.3333 13.334 12.4379 13.334 11.3333C13.334 10.2288 12.4386 9.33334 11.334 9.33334C10.2294 9.33334 9.33398 10.2288 9.33398 11.3333C9.33398 12.4379 10.2294 13.3333 11.334 13.3333Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M27.9994 20L21.3327 13.3333L6.66602 28\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-list',\r\n templateUrl: `../../../../assets/icons/list.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconListComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M5.33325 4H13.9999\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.33325 8H13.9999\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.33325 12H13.9999\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M2 4H2.00667\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M2 8H2.00667\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M2 12H2.00667\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-location-pin',\r\n templateUrl: `../../../../assets/icons/location-pin.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconLocationPinComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"64\" height=\"64\" viewBox=\"0 0 64 64\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M56 26.666C56 45.3327 32 61.3327 32 61.3327C32 61.3327 8 45.3327 8 26.666C8 20.3008 10.5286 14.1963 15.0294 9.69545C19.5303 5.19458 25.6348 2.66602 32 2.66602C38.3652 2.66602 44.4697 5.19458 48.9706 9.69545C53.4714 14.1963 56 20.3008 56 26.666Z\" stroke=\"#0273E8\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M32 34.666C36.4183 34.666 40 31.0843 40 26.666C40 22.2477 36.4183 18.666 32 18.666C27.5817 18.666 24 22.2477 24 26.666C24 31.0843 27.5817 34.666 32 34.666Z\" stroke=\"#0273E8\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-login',\r\n templateUrl: `../../../../assets/icons/login.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconLoginComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M15 3H19C19.5304 3 20.0391 3.21071 20.4142 3.58579C20.7893 3.96086 21 4.46957 21 5V19C21 19.5304 20.7893 20.0391 20.4142 20.4142C20.0391 20.7893 19.5304 21 19 21H15\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M10 17L15 12L10 7\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15 12H3\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-logout',\r\n templateUrl: `../../../../assets/icons/logout.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconLogoutComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M6 14H3.33333C2.97971 14 2.64057 13.8595 2.39052 13.6095C2.14048 13.3594 2 13.0203 2 12.6667V3.33333C2 2.97971 2.14048 2.64057 2.39052 2.39052C2.64057 2.14048 2.97971 2 3.33333 2H6\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M10.6667 11.3333L14 7.99999L10.6667 4.66666\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14 8H6\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-medal',\r\n templateUrl: `../../../../assets/icons/medal.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconMedalComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12 22V21\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.69 20.31L6.31 19.69\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M19.5 14H20.5\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M3.5 14H4.5\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M17.69 19.69L18.31 20.31\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.9465 11.0535C16.5738 12.6808 16.5738 15.3192 14.9465 16.9465C13.3192 18.5738 10.6808 18.5738 9.05349 16.9465C7.42618 15.3192 7.42618 12.6808 9.05349 11.0535C10.6808 9.42618 13.3192 9.42618 14.9465 11.0535\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16.4298 6H7.56982\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15.676 12.078L19.492 7.8C19.819 7.434 20 6.96 20 6.469V4C20 2.9 19.1 2 18 2H6C4.895 2 4 2.895 4 4V6.469C4 6.96 4.181 7.434 4.508 7.8L8.324 12.078\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M4.56982 2.63L11.0798 9.94\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M19.4299 2.63L12.9199 9.94\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-menu',\r\n templateUrl: `../../../../assets/icons/menu.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconMenuComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M3 12H21\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M3 6H21\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M3 18H21\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-money',\r\n templateUrl: `../../../../assets/icons/money.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconMoneyComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M20 19H4C2.895 19 2 18.105 2 17V7C2 5.895 2.895 5 4 5H20C21.105 5 22 5.895 22 7V17C22 18.105 21.105 19 20 19Z\" stroke=\"#8D38FA\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M13.7678 10.2322C14.7441 11.2085 14.7441 12.7914 13.7678 13.7677C12.7915 14.744 11.2085 14.744 10.2322 13.7677C9.25592 12.7914 9.25592 11.2085 10.2322 10.2322C11.2085 9.25586 12.7915 9.25586 13.7678 10.2322\" stroke=\"#8D38FA\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M6 9.5V14.5\" stroke=\"#8D38FA\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M18 9.5V14.5\" stroke=\"#8D38FA\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-money-cedule',\r\n templateUrl: `../../../../assets/icons/money-cedule.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconMoneyCeduleComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.3335 13.91C13.4381 13.91 14.3335 13.0146 14.3335 11.91C14.3335 10.8055 13.4381 9.91003 12.3335 9.91003C11.2289 9.91003 10.3335 10.8055 10.3335 11.91C10.3335 13.0146 11.2289 13.91 12.3335 13.91Z\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M6.8335 14V11\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M17.8335 13V10\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M20.1375 18.213V18.213C17.6325 17.712 15.0485 17.774 12.5705 18.393L12.3335 18.453C9.6995 19.111 6.9525 19.177 4.2905 18.644L4.1375 18.613C3.6695 18.52 3.3335 18.109 3.3335 17.633V6.79402C3.3335 6.16302 3.9105 5.69002 4.5295 5.81302V5.81302C7.0345 6.31402 9.6185 6.25202 12.0965 5.63302L12.5695 5.51502C15.0475 4.89602 17.6325 4.83402 20.1365 5.33502L20.5285 5.41302C20.9975 5.50702 21.3335 5.91702 21.3335 6.39402V17.233C21.3335 17.864 20.7565 18.337 20.1375 18.213V18.213Z\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-money-hand',\r\n templateUrl: `../../../../assets/icons/money-hand.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconMoneyHandComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M13.982 15.0008H21.5038C22.3326 15.0008 23.0044 14.329 23.0044 13.5002V7.4977C23.0044 6.66892 22.3326 5.99707 21.5038 5.99707H11.4996C10.6709 5.99707 9.99902 6.66892 9.99902 7.4977V14.0004\" stroke=\"#00875A\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15.4404 9.43797C16.0272 8.85672 16.9733 8.85894 17.5573 9.44294C18.1414 10.0269 18.1436 10.9731 17.5623 11.5599\" stroke=\"#00875A\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9.99901 8.99835H7.70625C7.24033 8.99835 6.7808 9.10682 6.36408 9.31519L5.77862 9.60792C5.26812 9.86315 4.84099 10.2587 4.54734 10.7481L2.99609 13.3335\" stroke=\"#00875A\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M3.99658 22.0038L9.76085 19.9209C10.5654 19.6302 11.2556 19.0893 11.7302 18.3776L14.7243 13.8877C15.1598 13.2347 15.0738 12.3651 14.5188 11.81V11.81C13.8759 11.1672 12.8336 11.1671 12.1906 11.8098L9.99908 14.0004H7.99825\" stroke=\"#00875A\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-money-sign',\r\n templateUrl: `../../../../assets/icons/money-sign.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconMoneySignComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12 1V23\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M17 5H9.5C8.57174 5 7.6815 5.36875 7.02513 6.02513C6.36875 6.6815 6 7.57174 6 8.5C6 9.42826 6.36875 10.3185 7.02513 10.9749C7.6815 11.6313 8.57174 12 9.5 12H14.5C15.4283 12 16.3185 12.3688 16.9749 13.0251C17.6313 13.6815 18 14.5717 18 15.5C18 16.4283 17.6313 17.3185 16.9749 17.9749C16.3185 18.6313 15.4283 19 14.5 19H6\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-more',\r\n templateUrl: `../../../../assets/icons/more.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconMoreComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M27.9998 16H4.00018\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16 4V28\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-new-company',\r\n templateUrl: `../../../../assets/icons/new-company.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconNewCompanyComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12 21H3\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M3.92681 21L3.92671 10.9417\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9 21V10.9503\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9 16H11\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<circle cx=\"18\" cy=\"18\" r=\"4\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.27555 7.47765C1.98044 8.03345 1.92177 8.68474 2.11282 9.28433C2.44327 10.3245 3.41944 11.0228 4.51062 10.9994C5.60179 10.9761 6.54722 10.2368 6.83292 9.18341C6.85103 9.12223 6.90723 9.08025 6.97104 9.08025C7.03485 9.08025 7.09105 9.12223 7.10917 9.18341C7.40093 10.2555 8.37451 10.9995 9.48564 10.9994C10.5968 10.9993 11.5702 10.2551 11.8617 9.1829C11.8798 9.12169 11.936 9.07968 11.9998 9.07968C12.0636 9.07968 12.1199 9.12169 12.1379 9.1829C12.4296 10.2551 13.4031 10.9992 14.5143 10.9991C15.6255 10.9991 16.599 10.255 16.8906 9.18273C16.9087 9.12156 16.9649 9.0796 17.0287 9.0796C17.0925 9.0796 17.1487 9.12156 17.1668 9.18273C17.4526 10.236 18.3979 10.9752 19.489 10.9986C20.5801 11.0219 21.5562 10.3239 21.8867 9.28381C22.0779 8.68412 22.0192 8.0327 21.724 7.47681L20.0173 4.09822C19.6771 3.4247 18.9867 3 18.2321 3H5.76782C5.01325 3.00002 4.32293 3.42471 3.98271 4.09822L2.27555 7.47765Z\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16.75 18H19.25\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M18 19.25V16.75\" stroke=\"#676E79\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-offered',\r\n templateUrl: `../../../../assets/icons/offered.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconOfferedComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M15.1838 13.1061L15.0823 13.1673C14.7488 12.6998 14.1591 12.5157 13.7115 12.7693C13.7101 12.7701 13.7087 12.7709 13.7073 12.7718L13.4933 12.9006C13.2584 12.6736 12.9662 12.5338 12.6571 12.5008C12.348 12.4677 12.0373 12.543 11.7682 12.7162L10.6857 13.3741H9.24637C8.93253 13.3736 8.62281 13.2943 8.34011 13.142L8.14295 13.0355C7.58541 12.7323 6.96367 12.6074 6.34657 12.6748C5.72947 12.7421 5.14108 12.9991 4.64657 13.4171C4.64239 13.4206 4.63831 13.4242 4.63439 13.4282L4.15854 13.9018C3.98503 14.0743 2.19298 15.1264 1.10413 15.7491C1.08177 15.7618 1.06189 15.7794 1.04561 15.8008C1.02933 15.8222 1.01698 15.8469 1.00926 15.8736C1.00154 15.9003 0.998602 15.9285 1.00062 15.9565C1.00263 15.9844 1.00955 16.0117 1.02099 16.0367C1.03243 16.0617 1.04816 16.0839 1.06728 16.1021C1.08641 16.1203 1.10855 16.1341 1.13245 16.1427C1.15635 16.1513 1.18153 16.1546 1.20656 16.1524C1.23159 16.1501 1.25599 16.1424 1.27834 16.1296C1.75592 15.8565 4.1514 14.4811 4.41278 14.221L4.8828 13.7533C5.32104 13.3849 5.84179 13.1588 6.38766 13.1C6.93353 13.0413 7.48333 13.1521 7.97645 13.4202L8.17358 13.5268C8.50823 13.707 8.87486 13.8009 9.24637 13.8015H11.1583C11.4497 13.8019 11.7315 13.9177 11.9537 14.1284C12.176 14.339 12.3242 14.6308 12.3722 14.952L10.9576 14.8806C10.4553 14.8554 9.95187 14.8814 9.45373 14.9583C9.42864 14.9618 9.40444 14.9709 9.38252 14.985C9.3606 14.9991 9.3414 15.0179 9.32603 15.0404C9.31066 15.0628 9.29943 15.0884 9.29298 15.1158C9.28653 15.1431 9.28499 15.1716 9.28846 15.1996C9.29192 15.2276 9.30032 15.2545 9.31317 15.2788C9.32602 15.3032 9.34306 15.3244 9.36331 15.3414C9.38355 15.3583 9.4066 15.3706 9.43112 15.3775C9.45564 15.3844 9.48115 15.3858 9.50616 15.3816C9.98123 15.3083 10.4613 15.2835 10.9404 15.3076L12.5712 15.3901C12.597 15.3914 12.6228 15.3869 12.647 15.3767C12.6713 15.3665 12.6934 15.351 12.7121 15.331C12.7307 15.3111 12.7456 15.2871 12.7557 15.2605C12.7659 15.2339 12.7711 15.2053 12.7711 15.1764C12.7711 15.1325 12.7692 15.0892 12.7664 15.0461L13.0033 14.9065L15.3656 13.4823C15.5556 13.3673 15.7747 13.3274 15.9876 13.3689C16.2004 13.4105 16.3944 13.5311 16.5383 13.7113L11.7409 17.3925C11.1102 17.7361 10.3982 17.8468 9.70749 17.7088L6.83992 17.1187C6.52946 17.0329 6.20143 17.0828 5.92273 17.2581L3.0497 19.0934C3.02778 19.1072 3.00851 19.1258 2.99302 19.148C2.97753 19.1702 2.96612 19.1956 2.95943 19.2227C2.95275 19.2499 2.95093 19.2782 2.95408 19.3062C2.95723 19.3341 2.96529 19.3611 2.97779 19.3855C2.99029 19.4099 3.00699 19.4314 3.02693 19.4486C3.04686 19.4658 3.06964 19.4784 3.09396 19.4858C3.11828 19.4931 3.14366 19.495 3.16863 19.4914C3.19361 19.4877 3.21769 19.4786 3.2395 19.4645L6.11097 17.63C6.30617 17.5077 6.53591 17.4736 6.75291 17.5349C6.75686 17.536 6.76084 17.537 6.76486 17.5378L9.63878 18.1293C10.415 18.2844 11.2152 18.1582 11.9226 17.769C11.9307 17.7645 11.9386 17.7593 11.946 17.7536L16.917 13.9392C16.9572 13.9083 16.9853 13.8615 16.9956 13.8083C17.006 13.7551 16.9977 13.6994 16.9726 13.6527C16.7948 13.3217 16.5096 13.0801 16.1764 12.9783C15.8431 12.8765 15.4876 12.9222 15.1838 13.1061ZM11.9531 13.0904L11.9577 13.0875C12.136 12.9723 12.3394 12.9146 12.5453 12.9209C12.7512 12.9272 12.9515 12.9972 13.1239 13.1231L12.1179 13.729C11.9177 13.5627 11.6856 13.4508 11.4401 13.4023L11.9531 13.0904ZM12.8232 14.5294L12.6886 14.6088C12.6269 14.4016 12.532 14.2087 12.4085 14.0395L13.8864 13.1495C14.1516 13.0009 14.5108 13.1073 14.7377 13.3752L12.8232 14.5294Z\" fill=\"#0273E8\" stroke=\"#0273E8\" stroke-width=\"0.336574\" [attr.stroke]=\"fillColor\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M10.2178 1V10.164\" stroke=\"#0273E8\" stroke-width=\"0.897531\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M12.5833 4H9.45833C9.07156 4 8.70063 4.18437 8.42714 4.51256C8.15365 4.84075 8 5.28587 8 5.75C8 6.21413 8.15365 6.65925 8.42714 6.98744C8.70063 7.31563 9.07156 7.5 9.45833 7.5H11.5417C11.9284 7.5 12.2994 7.68437 12.5729 8.01256C12.8464 8.34075 13 8.78587 13 9.25C13 9.71413 12.8464 10.1592 12.5729 10.4874C12.2994 10.8156 11.9284 11 11.5417 11H8\" stroke=\"#0273E8\" stroke-width=\"0.897531\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-password',\r\n templateUrl: `../../../../assets/icons/password.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPasswordComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M25.3333 14H6.66667C5.19391 14 4 15.3024 4 16.9091V27.0909C4 28.6976 5.19391 30 6.66667 30H25.3333C26.8061 30 28 28.6976 28 27.0909V16.9091C28 15.3024 26.8061 14 25.3333 14Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9 14V8.66667C9 6.89856 9.7375 5.20286 11.0503 3.95262C12.363 2.70238 14.1435 2 16 2C17.8565 2 19.637 2.70238 20.9497 3.95262C22.2625 5.20286 23 6.89856 23 8.66667V14\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-people',\r\n templateUrl: `../../../../assets/icons/people.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPeopleComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M11.4175 13.0849C12.4024 13.2687 13.317 13.746 14.0355 14.4645C14.0473 14.4763 14.0591 14.4881 14.0707 14.5H19.5C20.0304 14.5 20.5391 14.7107 20.9142 15.0858C21.2893 15.4609 21.5 15.9696 21.5 16.5V18C21.5 18.5523 21.9477 19 22.5 19C23.0523 19 23.5 18.5523 23.5 18V16.5C23.5 15.4391 23.0786 14.4217 22.3284 13.6716C21.5783 12.9214 20.5609 12.5 19.5 12.5H13.5C12.7592 12.5 12.0396 12.7055 11.4175 13.0849ZM11.5 18C11.5 17.7348 11.3946 17.4804 11.2071 17.2929C11.0196 17.1054 10.7652 17 10.5 17H9.5V18C9.5 18.5523 9.94772 19 10.5 19C11.0523 19 11.5 18.5523 11.5 18Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M13.5 19.5V18C13.5 17.2044 13.1839 16.4413 12.6213 15.8787C12.0587 15.3161 11.2956 15 10.5 15H4.5C3.70435 15 2.94129 15.3161 2.37868 15.8787C1.81607 16.4413 1.5 17.2044 1.5 18V19.5\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M7.5 12C9.15685 12 10.5 10.6569 10.5 9C10.5 7.34315 9.15685 6 7.5 6C5.84315 6 4.5 7.34315 4.5 9C4.5 10.6569 5.84315 12 7.5 12Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16.5 10.5C18.1569 10.5 19.5 9.15685 19.5 7.5C19.5 5.84315 18.1569 4.5 16.5 4.5C14.8431 4.5 13.5 5.84315 13.5 7.5C13.5 9.15685 14.8431 10.5 16.5 10.5Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-percent',\r\n templateUrl: `../../../../assets/icons/percent.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPercentComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12.6666 3.33337L3.33325 12.6667\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M4.33341 5.99996C5.25389 5.99996 6.00008 5.25377 6.00008 4.33329C6.00008 3.41282 5.25389 2.66663 4.33341 2.66663C3.41294 2.66663 2.66675 3.41282 2.66675 4.33329C2.66675 5.25377 3.41294 5.99996 4.33341 5.99996Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M11.6667 13.3333C12.5871 13.3333 13.3333 12.5871 13.3333 11.6667C13.3333 10.7462 12.5871 10 11.6667 10C10.7462 10 10 10.7462 10 11.6667C10 12.5871 10.7462 13.3333 11.6667 13.3333Z\" stroke=\"#0273E8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-person-document',\r\n templateUrl: `../../../../assets/icons/person-document.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPersonDocumentComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"63\" height=\"44\" viewBox=\"0 0 63 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M19.3541 22.7148H14.6053C10.5046 22.7253 7.18263 25.9466 7.17188 29.9231V32.2315C7.17188 32.6679 7.53587 33.0208 7.98587 33.0208H25.9705C25.9736 33.0208 25.9767 33.0208 25.9797 33.0208C26.4297 33.0178 26.7906 32.6619 26.7876 32.2255V29.9231C26.7768 25.9466 23.4548 22.7253 19.3541 22.7148ZM25.1596 31.4362H8.79986V29.9231C8.81675 26.8209 11.4062 24.3099 14.6053 24.2935H19.3541C22.5533 24.3099 25.1427 26.8209 25.1596 29.9231V31.4362Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M55.0224 29.7861H33.2135C32.8035 29.81 32.4763 30.1272 32.4518 30.5248C32.4241 30.9597 32.7651 31.335 33.2135 31.3618H55.0224C55.4325 31.338 55.7596 31.0208 55.7842 30.6231C55.8118 30.1868 55.4709 29.8129 55.0224 29.7861Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M20.8075 20.1055L20.8566 20.0608L20.8581 20.0593C22.9991 17.9832 22.9976 14.6159 20.8566 12.5398C19.8307 11.5405 18.4346 10.979 16.9801 10.979C15.5472 10.979 14.1726 11.5226 13.1498 12.4951L13.1006 12.5398L13.0991 12.5413C10.9581 14.6174 10.9597 17.9847 13.1006 20.0608C15.2216 22.122 18.6604 22.1428 20.8075 20.1055ZM14.2586 13.6597L14.2986 13.621C15.8129 12.2062 18.215 12.2226 19.7078 13.6597L19.717 13.6568C21.2237 15.1193 21.2237 17.4873 19.717 18.9498L19.6771 18.9885C18.1627 20.4108 15.753 20.3944 14.2586 18.9527C12.752 17.4902 12.752 15.1222 14.2586 13.6597Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M57.5785 0H5.4215C2.43123 0.00893582 0.00767918 2.35757 0 5.25724V38.7428C0.00767918 41.6424 2.43123 43.9911 5.4215 44H57.5785C60.5688 43.9925 62.9908 41.6424 63 38.7428V5.25724C62.9908 2.35757 60.5688 0.00893582 57.5785 0ZM61.3751 38.7428C61.3689 40.7727 59.6718 42.4184 57.5785 42.4243H5.4215C3.32816 42.4184 1.63106 40.7727 1.62491 38.7428V5.25724C1.63106 3.22732 3.32816 1.58164 5.4215 1.57568H57.5785C59.6718 1.58164 61.3689 3.22732 61.3751 5.25724V38.7428Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M55.0224 12.6411H33.2135C32.8035 12.6649 32.4763 12.9822 32.4518 13.3798C32.4241 13.8147 32.7651 14.19 33.2135 14.2168H55.0224C55.4325 14.193 55.7596 13.8757 55.7842 13.4781C55.8118 13.0417 55.4709 12.6679 55.0224 12.6411Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M55.0224 21.2139H33.2135C32.8035 21.2377 32.4763 21.5549 32.4518 21.9526C32.4241 22.3874 32.7651 22.7627 33.2135 22.7896H55.0224C55.4325 22.7657 55.7596 22.4485 55.7842 22.0509C55.8118 21.6145 55.4709 21.2407 55.0224 21.2139Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M55.0224 16.9272H33.2135C32.8035 16.9511 32.4763 17.2683 32.4518 17.6659C32.4241 18.1008 32.7651 18.4761 33.2135 18.5029H55.0224C55.4325 18.4791 55.7596 18.1619 55.7842 17.7642C55.8118 17.3279 55.4709 16.9541 55.0224 16.9272Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M55.0224 25.5H33.2135C32.8035 25.5238 32.4763 25.841 32.4518 26.2387C32.4241 26.6736 32.7651 27.0489 33.2135 27.0757H55.0224C55.4325 27.0519 55.7596 26.7346 55.7842 26.337C55.8118 25.9006 55.4709 25.5268 55.0224 25.5Z\" fill=\"#4B4A53\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-person-sad',\r\n templateUrl: `../../../../assets/icons/person-sad.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPersonSadComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M27.9998 51.3333C40.8865 51.3333 51.3332 40.8866 51.3332 28C51.3332 15.1133 40.8865 4.66663 27.9998 4.66663C15.1132 4.66663 4.6665 15.1133 4.6665 28C4.6665 40.8866 15.1132 51.3333 27.9998 51.3333Z\" stroke=\"#FA3838\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M37.3332 37.3333C37.3332 37.3333 33.8332 32.6666 27.9998 32.6666C22.1665 32.6666 18.6665 37.3333 18.6665 37.3333\" stroke=\"#FA3838\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M21 21H21.0233\" stroke=\"#FA3838\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M35 21H35.0233\" stroke=\"#FA3838\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-phone',\r\n templateUrl: `../../../../assets/icons/phone.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPhoneComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M29.3339 22.56V26.56C29.3354 26.9313 29.2593 27.2989 29.1106 27.6391C28.9618 27.9793 28.7436 28.2848 28.47 28.5358C28.1964 28.7868 27.8733 28.9779 27.5216 29.0969C27.1698 29.2159 26.7971 29.2601 26.4272 29.2266C22.3243 28.7808 18.3832 27.3788 14.9206 25.1333C11.699 23.0862 8.96768 20.3549 6.92056 17.1333C4.6672 13.6549 3.26489 9.69463 2.82723 5.5733C2.79391 5.20459 2.83773 4.83298 2.9559 4.48213C3.07406 4.13128 3.26399 3.80889 3.51358 3.53546C3.76318 3.26204 4.06697 3.04358 4.40562 2.894C4.74426 2.74441 5.11035 2.66698 5.48056 2.66663H9.48056C10.1276 2.66026 10.755 2.8894 11.2456 3.31134C11.7362 3.73328 12.0567 4.31923 12.1472 4.95997C12.3161 6.24006 12.6292 7.49694 13.0806 8.70663C13.26 9.18387 13.2988 9.70252 13.1924 10.2011C13.0861 10.6998 12.839 11.1574 12.4806 11.52L10.7872 13.2133C12.6853 16.5514 15.4492 19.3152 18.7872 21.2133L20.4806 19.52C20.8431 19.1615 21.3008 18.9144 21.7994 18.8081C22.298 18.7018 22.8167 18.7406 23.2939 18.92C24.5036 19.3714 25.7605 19.6845 27.0406 19.8533C27.6883 19.9447 28.2798 20.2709 28.7026 20.77C29.1254 21.269 29.3501 21.9061 29.3339 22.56Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-pork',\r\n templateUrl: `../../../../assets/icons/pork.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconPorkComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M8.76432 4.65334C7.8261 4.47001 6.85543 4.55 5.95988 4.88445C5.91639 4.90167 5.87673 4.92728 5.84315 4.95983C5.80956 4.99238 5.78272 5.03122 5.76415 5.07414C5.72664 5.16083 5.7251 5.25886 5.75988 5.34668C5.79465 5.43449 5.86288 5.5049 5.94957 5.54241C6.03625 5.57991 6.13428 5.58145 6.2221 5.54668C6.9932 5.25512 7.82964 5.18132 8.63988 5.33334C8.68737 5.34584 8.73694 5.34837 8.78546 5.34076C8.83398 5.33315 8.8804 5.31557 8.92178 5.28913C8.96317 5.26269 8.99863 5.22796 9.02593 5.18714C9.05323 5.14631 9.07178 5.10027 9.0804 5.05192C9.08903 5.00357 9.08754 4.95396 9.07604 4.90621C9.06453 4.85847 9.04326 4.81362 9.01356 4.77451C8.98387 4.73539 8.94639 4.70285 8.90349 4.67893C8.8606 4.65502 8.81321 4.64025 8.76432 4.63556V4.65334Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M11.2802 8.03111C11.6141 8.03111 11.8847 7.76049 11.8847 7.42666C11.8847 7.09284 11.6141 6.82222 11.2802 6.82222C10.9464 6.82222 10.6758 7.09284 10.6758 7.42666C10.6758 7.76049 10.9464 8.03111 11.2802 8.03111Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M15.7822 8.27999C15.741 8.21905 15.6854 8.16928 15.6202 8.13515C15.5551 8.10102 15.4824 8.08359 15.4089 8.08443C15.0498 8.03459 14.7204 7.85805 14.48 7.58666C14.0175 7.08108 13.6244 6.51611 13.3111 5.90666L14.5911 3.90666C14.6688 3.79076 14.7164 3.65733 14.7296 3.51844C14.7427 3.37954 14.7211 3.23955 14.6667 3.1111C14.6121 2.99424 14.5297 2.89259 14.4266 2.81509C14.3235 2.73758 14.203 2.68661 14.0756 2.66666C13.2616 2.55696 12.4331 2.67224 11.68 2.99999C11.2484 3.1901 10.8423 3.43347 10.4711 3.72443C9.74417 3.39847 8.97009 3.18995 8.17778 3.10666C5.02667 2.79999 2.14667 4.84443 1.77778 7.55555C1.63401 7.49087 1.50526 7.39703 1.39968 7.27997C1.2941 7.16292 1.21399 7.0252 1.16444 6.87555C1.13275 6.77293 1.12193 6.66501 1.13262 6.55814C1.14331 6.45128 1.17528 6.34763 1.22667 6.25332C1.27274 6.17414 1.3386 6.10829 1.41778 6.06221C1.47176 6.02953 1.51879 5.98653 1.55616 5.93567C1.59353 5.88482 1.62051 5.8271 1.63558 5.76581C1.65064 5.70452 1.65349 5.64087 1.64395 5.57848C1.63441 5.5161 1.61268 5.4562 1.58 5.40221C1.54731 5.34822 1.50432 5.3012 1.45346 5.26383C1.4026 5.22646 1.34488 5.19947 1.2836 5.18441C1.22231 5.16935 1.15866 5.1665 1.09627 5.17604C1.03388 5.18557 0.973987 5.20731 0.919999 5.23999C0.704853 5.37205 0.527308 5.55724 0.404444 5.77777C0.290214 5.98473 0.218406 6.21239 0.193223 6.44744C0.168039 6.68249 0.189985 6.92019 0.257777 7.14666C0.341221 7.42108 0.479597 7.67567 0.664494 7.89495C0.849392 8.11422 1.07695 8.29361 1.33333 8.42221L1.74222 8.62666C1.7933 9.70855 2.06876 10.768 2.55111 11.7378L2.62667 11.9067C3.01215 12.7219 3.50383 13.4826 4.08889 14.1689C4.13054 14.2163 4.1818 14.2543 4.23928 14.2803C4.29675 14.3064 4.35912 14.3199 4.42222 14.32H6.43111C6.5039 14.3196 6.57549 14.3014 6.63959 14.2669C6.70368 14.2324 6.75832 14.1827 6.7987 14.1221C6.83908 14.0615 6.86396 13.992 6.87116 13.9195C6.87836 13.8471 6.86766 13.774 6.84 13.7067L6.66667 13.3067L7.19111 13.3644C7.78226 13.4229 8.37774 13.4229 8.96889 13.3644C9.13333 13.6311 9.31111 13.8978 9.50667 14.16C9.5476 14.216 9.60107 14.2617 9.66281 14.2933C9.72456 14.3249 9.79285 14.3417 9.86222 14.3422H11.7911C11.8645 14.3422 11.9367 14.3239 12.0013 14.2892C12.0659 14.2544 12.1209 14.2042 12.1614 14.1431C12.2019 14.0819 12.2266 14.0117 12.2333 13.9386C12.2401 13.8656 12.2286 13.792 12.2 13.7244C12.1244 13.5467 12.0489 13.3555 11.9911 13.1911C11.9111 12.9555 11.8489 12.7467 11.8 12.5467C12.2908 12.2817 12.7413 11.9479 13.1378 11.5555C13.5806 11.6091 14.0283 11.6091 14.4711 11.5555C14.5479 11.5439 14.6204 11.5124 14.6812 11.464C14.742 11.4157 14.7891 11.3522 14.8178 11.28L15.8222 8.69777C15.8505 8.63022 15.8616 8.55674 15.8546 8.48386C15.8477 8.41098 15.8228 8.34094 15.7822 8.27999ZM14.1022 10.6978C13.7533 10.7176 13.4033 10.7012 13.0578 10.6489C12.6643 10.5824 12.2845 10.4518 11.9333 10.2622C11.8293 10.2106 11.7093 10.2018 11.5989 10.2376C11.4885 10.2734 11.3964 10.3509 11.3425 10.4537C11.2885 10.5564 11.2768 10.6762 11.31 10.7874C11.3432 10.8987 11.4185 10.9925 11.52 11.0489C11.7057 11.1463 11.8972 11.2324 12.0933 11.3067C11.851 11.5136 11.5819 11.687 11.2933 11.8222L10.8222 12.0355C10.8222 12.0355 11.04 13.0089 11.1867 13.44H10.1289C10.0222 13.2889 9.48444 12.3911 9.48444 12.3911L9.18667 12.4311C8.56117 12.5213 7.92737 12.5392 7.29778 12.4844C7.00444 12.4578 6.51555 12.3955 6.13333 12.3289L5.44444 12.2089C5.44444 12.2089 5.72444 13.2889 5.77778 13.4267H4.63111C4.16271 12.8531 3.76573 12.2248 3.44889 11.5555L3.36889 11.3822C2.79142 10.2706 2.54756 9.01583 2.66667 7.76888C2.90667 5.46221 5.38667 3.71999 8.08444 3.97332C8.86923 4.0613 9.63299 4.28381 10.3422 4.6311L10.6178 4.75999L10.84 4.5511C11.1861 4.24185 11.5772 3.98708 12 3.79555C12.5594 3.55294 13.1704 3.45365 13.7778 3.50666L12.2756 5.85777L12.3867 6.07999C12.7748 6.86182 13.27 7.58581 13.8578 8.2311C14.1308 8.49794 14.4541 8.70792 14.8089 8.84888L14.1022 10.6978Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-radio',\r\n templateUrl: `../../../../assets/icons/radio.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconRadioComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M20.0003 23.3332C21.8413 23.3332 23.3337 21.8408 23.3337 19.9998C23.3337 18.1589 21.8413 16.6665 20.0003 16.6665C18.1594 16.6665 16.667 18.1589 16.667 19.9998C16.667 21.8408 18.1594 23.3332 20.0003 23.3332Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M27.0667 12.9335C27.9965 13.8622 28.734 14.9651 29.2373 16.1791C29.7405 17.393 29.9996 18.6943 29.9996 20.0085C29.9996 21.3226 29.7405 22.6239 29.2373 23.8379C28.734 25.0518 27.9965 26.1547 27.0667 27.0835M12.9334 27.0668C12.0036 26.1381 11.266 25.0352 10.7628 23.8212C10.2595 22.6072 10.0005 21.306 10.0005 19.9918C10.0005 18.6776 10.2595 17.3764 10.7628 16.1624C11.266 14.9484 12.0036 13.8455 12.9334 12.9168M31.7834 8.2168C34.9079 11.3423 36.6631 15.5807 36.6631 20.0001C36.6631 24.4195 34.9079 28.658 31.7834 31.7835M8.21669 31.7835C5.09217 28.658 3.33691 24.4195 3.33691 20.0001C3.33691 15.5807 5.09217 11.3423 8.21669 8.2168\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-refresh',\r\n templateUrl: `../../../../assets/icons/refresh.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconRefreshComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"18\" height=\"16\" viewBox=\"0 0 18 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M1.5 2.2207V6.55518H5.59091\" stroke=\"#0273E8\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16.5 13.7793V9.44482H12.4091\" stroke=\"#0273E8\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.7886 5.83276C14.4428 4.79739 13.8551 3.87171 13.0804 3.14208C12.3056 2.41246 11.369 1.90267 10.358 1.6603C9.34697 1.41792 8.29449 1.45086 7.29873 1.75603C6.30298 2.0612 5.39642 2.62866 4.66364 3.40546L1.5 6.55518M16.5 9.44482L13.3364 12.5945C12.6036 13.3713 11.697 13.9388 10.7013 14.244C9.70551 14.5491 8.65303 14.5821 7.64201 14.3397C6.631 14.0973 5.69441 13.5875 4.91964 12.8579C4.14486 12.1283 3.55716 11.2026 3.21136 10.1672\" stroke=\"#0273E8\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-repeat',\r\n templateUrl: `../../../../assets/icons/repeat.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconRepeatComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M5 1L2 4L5 7\" stroke=\"#747880\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M2 14H10C12.2091 14 14 12.2091 14 10V8C14 5.79086 12.2091 4 10 4H2\" stroke=\"#747880\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-search',\r\n templateUrl: `../../../../assets/icons/search.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconSearchComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M7.33333 12.6667C10.2789 12.6667 12.6667 10.2789 12.6667 7.33333C12.6667 4.38781 10.2789 2 7.33333 2C4.38781 2 2 4.38781 2 7.33333C2 10.2789 4.38781 12.6667 7.33333 12.6667Z\" stroke=\"#474747\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M14.0001 14.0001L11.1001 11.1001\" stroke=\"#474747\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-second-warning',\r\n templateUrl: `../../../../assets/icons/second-warning.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconSecondWarningComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M6.85433 2.63819L1.17957 12.0114C1.06257 12.2118 1.00066 12.4391 1.00001 12.6706C0.99935 12.9021 1.05997 13.1297 1.17583 13.3308C1.2917 13.532 1.45877 13.6995 1.66042 13.8169C1.86207 13.9343 2.09128 13.9975 2.32524 14H13.6748C13.9087 13.9975 14.1379 13.9343 14.3396 13.8169C14.5412 13.6995 14.7083 13.532 14.8242 13.3308C14.94 13.1297 15.0006 12.9021 15 12.6706C14.9993 12.4391 14.9374 12.2118 14.8204 12.0114L9.14567 2.63819C9.02623 2.44337 8.85806 2.2823 8.65738 2.17051C8.45671 2.05873 8.2303 2 8 2C7.7697 2 7.54329 2.05873 7.34262 2.17051C7.14194 2.2823 6.97377 2.44337 6.85433 2.63819Z\" fill=\"#000000\" [attr.fill]=\"fillColor\"/>\r\n<path d=\"M8 6V10\" stroke=\"#ffffff\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n<path d=\"M8 12H8.00667\" stroke=\"#ffffff\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-settings',\r\n templateUrl: `../../../../assets/icons/settings.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconSettingsComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M19.4 15C19.2669 15.3016 19.2272 15.6362 19.286 15.9606C19.3448 16.285 19.4995 16.5843 19.73 16.82L19.79 16.88C19.976 17.0657 20.1235 17.2863 20.2241 17.5291C20.3248 17.7719 20.3766 18.0322 20.3766 18.295C20.3766 18.5578 20.3248 18.8181 20.2241 19.0609C20.1235 19.3037 19.976 19.5243 19.79 19.71C19.6043 19.896 19.3837 20.0435 19.1409 20.1441C18.8981 20.2448 18.6378 20.2966 18.375 20.2966C18.1122 20.2966 17.8519 20.2448 17.6091 20.1441C17.3663 20.0435 17.1457 19.896 16.96 19.71L16.9 19.65C16.6643 19.4195 16.365 19.2648 16.0406 19.206C15.7162 19.1472 15.3816 19.1869 15.08 19.32C14.7842 19.4468 14.532 19.6572 14.3543 19.9255C14.1766 20.1938 14.0813 20.5082 14.08 20.83V21C14.08 21.5304 13.8693 22.0391 13.4942 22.4142C13.1191 22.7893 12.6104 23 12.08 23C11.5496 23 11.0409 22.7893 10.6658 22.4142C10.2907 22.0391 10.08 21.5304 10.08 21V20.91C10.0723 20.579 9.96512 20.258 9.77251 19.9887C9.5799 19.7194 9.31073 19.5143 9 19.4C8.69838 19.2669 8.36381 19.2272 8.03941 19.286C7.71502 19.3448 7.41568 19.4995 7.18 19.73L7.12 19.79C6.93425 19.976 6.71368 20.1235 6.47088 20.2241C6.22808 20.3248 5.96783 20.3766 5.705 20.3766C5.44217 20.3766 5.18192 20.3248 4.93912 20.2241C4.69632 20.1235 4.47575 19.976 4.29 19.79C4.10405 19.6043 3.95653 19.3837 3.85588 19.1409C3.75523 18.8981 3.70343 18.6378 3.70343 18.375C3.70343 18.1122 3.75523 17.8519 3.85588 17.6091C3.95653 17.3663 4.10405 17.1457 4.29 16.96L4.35 16.9C4.58054 16.6643 4.73519 16.365 4.794 16.0406C4.85282 15.7162 4.81311 15.3816 4.68 15.08C4.55324 14.7842 4.34276 14.532 4.07447 14.3543C3.80617 14.1766 3.49179 14.0813 3.17 14.08H3C2.46957 14.08 1.96086 13.8693 1.58579 13.4942C1.21071 13.1191 1 12.6104 1 12.08C1 11.5496 1.21071 11.0409 1.58579 10.6658C1.96086 10.2907 2.46957 10.08 3 10.08H3.09C3.42099 10.0723 3.742 9.96512 4.0113 9.77251C4.28059 9.5799 4.48572 9.31073 4.6 9C4.73311 8.69838 4.77282 8.36381 4.714 8.03941C4.65519 7.71502 4.50054 7.41568 4.27 7.18L4.21 7.12C4.02405 6.93425 3.87653 6.71368 3.77588 6.47088C3.67523 6.22808 3.62343 5.96783 3.62343 5.705C3.62343 5.44217 3.67523 5.18192 3.77588 4.93912C3.87653 4.69632 4.02405 4.47575 4.21 4.29C4.39575 4.10405 4.61632 3.95653 4.85912 3.85588C5.10192 3.75523 5.36217 3.70343 5.625 3.70343C5.88783 3.70343 6.14808 3.75523 6.39088 3.85588C6.63368 3.95653 6.85425 4.10405 7.04 4.29L7.1 4.35C7.33568 4.58054 7.63502 4.73519 7.95941 4.794C8.28381 4.85282 8.61838 4.81311 8.92 4.68H9C9.29577 4.55324 9.54802 4.34276 9.72569 4.07447C9.90337 3.80617 9.99872 3.49179 10 3.17V3C10 2.46957 10.2107 1.96086 10.5858 1.58579C10.9609 1.21071 11.4696 1 12 1C12.5304 1 13.0391 1.21071 13.4142 1.58579C13.7893 1.96086 14 2.46957 14 3V3.09C14.0013 3.41179 14.0966 3.72618 14.2743 3.99447C14.452 4.26276 14.7042 4.47324 15 4.6C15.3016 4.73311 15.6362 4.77282 15.9606 4.714C16.285 4.65519 16.5843 4.50054 16.82 4.27L16.88 4.21C17.0657 4.02405 17.2863 3.87653 17.5291 3.77588C17.7719 3.67523 18.0322 3.62343 18.295 3.62343C18.5578 3.62343 18.8181 3.67523 19.0609 3.77588C19.3037 3.87653 19.5243 4.02405 19.71 4.21C19.896 4.39575 20.0435 4.61632 20.1441 4.85912C20.2448 5.10192 20.2966 5.36217 20.2966 5.625C20.2966 5.88783 20.2448 6.14808 20.1441 6.39088C20.0435 6.63368 19.896 6.85425 19.71 7.04L19.65 7.1C19.4195 7.33568 19.2648 7.63502 19.206 7.95941C19.1472 8.28381 19.1869 8.61838 19.32 8.92V9C19.4468 9.29577 19.6572 9.54802 19.9255 9.72569C20.1938 9.90337 20.5082 9.99872 20.83 10H21C21.5304 10 22.0391 10.2107 22.4142 10.5858C22.7893 10.9609 23 11.4696 23 12C23 12.5304 22.7893 13.0391 22.4142 13.4142C22.0391 13.7893 21.5304 14 21 14H20.91C20.5882 14.0013 20.2738 14.0966 20.0055 14.2743C19.7372 14.452 19.5268 14.7042 19.4 15V15Z\" stroke=\"#4B4A53\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-trash',\r\n templateUrl: `../../../../assets/icons/trash.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconTrashComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M2 4H3.33333H14\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M5.33337 4.00001V2.66668C5.33337 2.31305 5.47385 1.97392 5.7239 1.72387C5.97395 1.47382 6.31309 1.33334 6.66671 1.33334H9.33337C9.687 1.33334 10.0261 1.47382 10.2762 1.72387C10.5262 1.97392 10.6667 2.31305 10.6667 2.66668V4.00001M12.6667 4.00001V13.3333C12.6667 13.687 12.5262 14.0261 12.2762 14.2762C12.0261 14.5262 11.687 14.6667 11.3334 14.6667H4.66671C4.31309 14.6667 3.97395 14.5262 3.7239 14.2762C3.47385 14.0261 3.33337 13.687 3.33337 13.3333V4.00001H12.6667Z\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M6.66663 7.33334V11.3333\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9.33337 7.33334V11.3333\" stroke=\"#4B4A53\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-trophy',\r\n templateUrl: `../../../../assets/icons/trophy.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconTrophyComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M10.5 3.72C10.5 3.5985 10.5985 3.5 10.72 3.5H29.28C29.4015 3.5 29.5 3.5985 29.5 3.72V11C29.5 16.2467 25.2467 20.5 20 20.5C14.7533 20.5 10.5 16.2467 10.5 11V3.72Z\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n<rect x=\"18.5\" y=\"20.5\" width=\"3\" height=\"5\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n<rect x=\"15.5\" y=\"25.5\" width=\"9\" height=\"3\" rx=\"0.5\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M11 5H9.54138C7.68756 5 6.27743 6.6646 6.5822 8.4932L7.44293 13.6576C7.76439 15.5863 9.43315 17 11.3885 17H12.5\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M29 5H30.4586C32.3124 5 33.7226 6.6646 33.4178 8.4932L32.5571 13.6576C32.2356 15.5863 30.5668 17 28.6115 17H27.5\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n<rect x=\"12.5\" y=\"28.5\" width=\"15\" height=\"8\" rx=\"0.5\" stroke=\"black\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-upload',\r\n templateUrl: `../../../../assets/icons/upload.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconUploadComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M28 20V25.3333C28 26.0406 27.719 26.7189 27.219 27.219C26.7189 27.719 26.0406 28 25.3333 28H6.66667C5.95942 28 5.28115 27.719 4.78105 27.219C4.28095 26.7189 4 26.0406 4 25.3333V20\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M22.6663 10.6667L15.9997 4L9.33301 10.6667\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16 4V20\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-user',\r\n templateUrl: `../../../../assets/icons/user.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconUserComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M28 28V25.3333C28 23.9188 27.3679 22.5623 26.2426 21.5621C25.1174 20.5619 23.5913 20 22 20H10C8.4087 20 6.88258 20.5619 5.75736 21.5621C4.63214 22.5623 4 23.9188 4 25.3333V28\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M16 16C19.3137 16 22 13.3137 22 10C22 6.68629 19.3137 4 16 4C12.6863 4 10 6.68629 10 10C10 13.3137 12.6863 16 16 16Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-waiting',\r\n templateUrl: `../../../../assets/icons/waiting.svg`,\r\n styleUrls: ['./icons.component.scss']\r\n})\r\nexport class MonkeyIconWaitingComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<g clip-path=\"url(#clip0_638_12213)\">\r\n<path d=\"M20 5V13\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M30.6055 9.39355L24.9486 15.0504\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M13 20L6 20\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M15.0508 15.0503L11.5152 11.5148\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M20 35L20 27\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M9.39453 30.6064L15.0514 24.9496\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M35 20L27 20\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M30.6055 30.6064L24.9486 24.9496\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" [attr.stroke]=\"fillColor\"/>\r\n</g>\r\n<defs>\r\n<clipPath id=\"clip0_638_12213\">\r\n<rect width=\"40\" height=\"40\" fill=\"white\"/>\r\n</clipPath>\r\n</defs>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-wallet',\r\n templateUrl: `../../../../assets/icons/wallet.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconWalletComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M19.5 6.75H4.5C3.25736 6.75 2.25 7.75736 2.25 9V18C2.25 19.2426 3.25736 20.25 4.5 20.25H19.5C20.7426 20.25 21.75 19.2426 21.75 18V9C21.75 7.75736 20.7426 6.75 19.5 6.75Z\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M19.2825 6.74998V5.34373C19.2824 4.99883 19.2062 4.6582 19.0592 4.34615C18.9123 4.0341 18.6984 3.75832 18.4326 3.53849C18.1668 3.31866 17.8558 3.16019 17.5217 3.0744C17.1877 2.98861 16.8388 2.9776 16.5 3.04217L4.155 5.1492C3.6189 5.25136 3.13526 5.53741 2.78749 5.958C2.43972 6.37859 2.24963 6.90736 2.25 7.4531V9.74998\" stroke=\"#0273E8\" stroke-width=\"2\" stroke-linejoin=\"round\" [attr.stroke]=\"fillColor\"/>\r\n<path d=\"M17.25 15C16.9533 15 16.6633 14.912 16.4166 14.7472C16.17 14.5824 15.9777 14.3481 15.8642 14.074C15.7506 13.7999 15.7209 13.4983 15.7788 13.2074C15.8367 12.9164 15.9796 12.6491 16.1893 12.4393C16.3991 12.2295 16.6664 12.0867 16.9574 12.0288C17.2483 11.9709 17.5499 12.0006 17.824 12.1142C18.0981 12.2277 18.3324 12.42 18.4972 12.6666C18.662 12.9133 18.75 13.2033 18.75 13.5C18.75 13.8978 18.592 14.2794 18.3107 14.5607C18.0294 14.842 17.6478 15 17.25 15Z\" fill=\"#0273E8\" [attr.fill]=\"fillColor\"/>\r\n</svg>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-icon-warning',\r\n templateUrl: `../../../../assets/icons/warning.svg`,\r\n styleUrls: ['./icons.component.scss'],\r\n})\r\nexport class MonkeyIconWarningComponent {\r\n @Input() fillColor: string;\r\n\r\n @Input() size: string;\r\n}\r\n","<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" [attr.height]=\"size\" [attr.width]=\"size\">\r\n<path d=\"M6.85433 2.63819L1.17957 12.0114C1.06257 12.2118 1.00066 12.4391 1.00001 12.6706C0.99935 12.9021 1.05997 13.1297 1.17583 13.3308C1.2917 13.532 1.45877 13.6995 1.66042 13.8169C1.86207 13.9343 2.09128 13.9975 2.32524 14H13.6748C13.9087 13.9975 14.1379 13.9343 14.3396 13.8169C14.5412 13.6995 14.7083 13.532 14.8242 13.3308C14.94 13.1297 15.0006 12.9021 15 12.6706C14.9993 12.4391 14.9374 12.2118 14.8204 12.0114L9.14567 2.63819C9.02623 2.44337 8.85806 2.2823 8.65738 2.17051C8.45671 2.05873 8.2303 2 8 2C7.7697 2 7.54329 2.05873 7.34262 2.17051C7.14194 2.2823 6.97377 2.44337 6.85433 2.63819Z\" fill=\"#EFA30E\"/>\r\n<path d=\"M8 6V10\" stroke=\"#000F1E\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n<path d=\"M8 12H8.00667\" stroke=\"#000F1E\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n OnInit,\r\n Input,\r\n OnChanges,\r\n HostListener,\r\n} from '@angular/core';\r\nimport { MonkeyStyleGuideSettingsService } from '../../core/services/settings/monkey-style-guide-settings.service';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-icon',\r\n template: `\r\n <monkey-icon-arrows\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'arrows'\"\r\n ></monkey-icon-arrows>\r\n <monkey-icon-arrow-down\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'arrow-down'\"\r\n ></monkey-icon-arrow-down>\r\n <monkey-icon-arrow-left\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'arrow-left'\"\r\n ></monkey-icon-arrow-left>\r\n <monkey-icon-arrow-right\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'arrow-right'\"\r\n ></monkey-icon-arrow-right>\r\n <monkey-icon-arrow-up\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'arrow-up'\"\r\n ></monkey-icon-arrow-up>\r\n <monkey-icon-auction\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'auction'\"\r\n ></monkey-icon-auction>\r\n <monkey-icon-bank\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'bank'\"\r\n ></monkey-icon-bank>\r\n <monkey-icon-bank-account\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'bank-account'\"\r\n ></monkey-icon-bank-account>\r\n <monkey-icon-bell\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'bell'\"\r\n ></monkey-icon-bell>\r\n <monkey-icon-book\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'book'\"\r\n ></monkey-icon-book>\r\n <monkey-icon-box\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'box'\"\r\n ></monkey-icon-box>\r\n <monkey-icon-calendar\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'calendar'\"\r\n ></monkey-icon-calendar>\r\n <monkey-icon-camera\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'camera'\"\r\n ></monkey-icon-camera>\r\n <monkey-icon-card-machine\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'card-machine'\"\r\n ></monkey-icon-card-machine>\r\n <monkey-icon-chat\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'chat'\"\r\n ></monkey-icon-chat>\r\n <monkey-icon-check-circle-out\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'check-circle-out'\"\r\n ></monkey-icon-check-circle-out>\r\n <monkey-icon-check-circle\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'check-circle'\"\r\n ></monkey-icon-check-circle>\r\n <monkey-icon-check-grey\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'check-grey'\"\r\n ></monkey-icon-check-grey>\r\n <monkey-icon-check-white\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'check-white'\"\r\n ></monkey-icon-check-white>\r\n <monkey-icon-check\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'check'\"\r\n ></monkey-icon-check>\r\n <monkey-icon-clipboard\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'clipboard'\"\r\n ></monkey-icon-clipboard>\r\n <monkey-icon-clock\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'clock'\"\r\n ></monkey-icon-clock>\r\n <monkey-icon-close\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'close'\"\r\n ></monkey-icon-close>\r\n <monkey-icon-cnpj\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'cnpj'\"\r\n ></monkey-icon-cnpj>\r\n <monkey-icon-codepen\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'codepen'\"\r\n ></monkey-icon-codepen>\r\n <monkey-icon-company-name\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'company-name'\"\r\n ></monkey-icon-company-name>\r\n <monkey-icon-contract\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'contract'\"\r\n ></monkey-icon-contract>\r\n <monkey-icon-contract-pen\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'contract-pen'\"\r\n ></monkey-icon-contract-pen>\r\n <monkey-icon-delete\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'delete'\"\r\n ></monkey-icon-delete>\r\n <monkey-icon-document\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'document'\"\r\n ></monkey-icon-document>\r\n <monkey-icon-dollar-sign\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'dollar-sign'\"\r\n ></monkey-icon-dollar-sign>\r\n <monkey-icon-dollar-sign-circle\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'dollar-sign-circle'\"\r\n ></monkey-icon-dollar-sign-circle>\r\n <monkey-icon-domain\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'domain'\"\r\n ></monkey-icon-domain>\r\n <monkey-icon-download\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'download'\"\r\n ></monkey-icon-download>\r\n <monkey-icon-edit-square\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'edit-square'\"\r\n ></monkey-icon-edit-square>\r\n <monkey-icon-edit\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'edit'\"\r\n ></monkey-icon-edit>\r\n <monkey-icon-email\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'email'\"\r\n ></monkey-icon-email>\r\n <monkey-icon-empty-doc\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'empty-doc'\"\r\n ></monkey-icon-empty-doc>\r\n <monkey-icon-error\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'error'\"\r\n ></monkey-icon-error>\r\n <monkey-icon-eye-closed\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'eye-closed'\"\r\n ></monkey-icon-eye-closed>\r\n <monkey-icon-eye-open\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'eye-open'\"\r\n ></monkey-icon-eye-open>\r\n <monkey-icon-filter\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'filter'\"\r\n ></monkey-icon-filter>\r\n <monkey-icon-grid\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'grid'\"\r\n ></monkey-icon-grid>\r\n <monkey-icon-help\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'help'\"\r\n ></monkey-icon-help>\r\n <monkey-icon-hexagon\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'hexagon'\"\r\n ></monkey-icon-hexagon>\r\n <monkey-icon-home\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'home'\"\r\n ></monkey-icon-home>\r\n <monkey-icon-image\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'image'\"\r\n ></monkey-icon-image>\r\n <monkey-icon-list\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'list'\"\r\n ></monkey-icon-list>\r\n <monkey-icon-location-pin\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'location-pin'\"\r\n ></monkey-icon-location-pin>\r\n <monkey-icon-login\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'login'\"\r\n ></monkey-icon-login>\r\n <monkey-icon-logout\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'logout'\"\r\n ></monkey-icon-logout>\r\n <monkey-icon-medal\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'medal'\"\r\n ></monkey-icon-medal>\r\n <monkey-icon-menu\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'menu'\"\r\n ></monkey-icon-menu>\r\n <monkey-icon-money\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'money'\"\r\n ></monkey-icon-money>\r\n <monkey-icon-money-cedule\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'money-cedule'\"\r\n ></monkey-icon-money-cedule>\r\n <monkey-icon-money-hand\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'money-hand'\"\r\n ></monkey-icon-money-hand>\r\n <monkey-icon-money-sign\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'money-sign'\"\r\n ></monkey-icon-money-sign>\r\n <monkey-icon-more\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'more'\"\r\n ></monkey-icon-more>\r\n <monkey-icon-new-company\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'new-company'\"\r\n ></monkey-icon-new-company>\r\n <monkey-icon-offered\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'offered'\"\r\n ></monkey-icon-offered>\r\n <monkey-icon-password\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'password'\"\r\n ></monkey-icon-password>\r\n <monkey-icon-people\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'people'\"\r\n ></monkey-icon-people>\r\n <monkey-icon-percent\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'percent'\"\r\n ></monkey-icon-percent>\r\n <monkey-icon-person-document\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'person-document'\"\r\n ></monkey-icon-person-document>\r\n <monkey-icon-person-sad\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'person-sad'\"\r\n ></monkey-icon-person-sad>\r\n <monkey-icon-phone\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'phone'\"\r\n ></monkey-icon-phone>\r\n <monkey-icon-pork\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'pork'\"\r\n ></monkey-icon-pork>\r\n <monkey-icon-radio\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'radio'\"\r\n ></monkey-icon-radio>\r\n <monkey-icon-refresh\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'refresh'\"\r\n ></monkey-icon-refresh>\r\n <monkey-icon-repeat\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'repeat'\"\r\n ></monkey-icon-repeat>\r\n <monkey-icon-search\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'search'\"\r\n ></monkey-icon-search>\r\n <monkey-icon-second-warning\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'second-warning'\"\r\n ></monkey-icon-second-warning>\r\n <monkey-icon-settings\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'settings'\"\r\n ></monkey-icon-settings>\r\n <monkey-icon-trash\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'trash'\"\r\n ></monkey-icon-trash>\r\n <monkey-icon-trophy\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'trophy'\"\r\n ></monkey-icon-trophy>\r\n <monkey-icon-upload\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'upload'\"\r\n ></monkey-icon-upload>\r\n <monkey-icon-user\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'user'\"\r\n ></monkey-icon-user>\r\n <monkey-icon-waiting\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'waiting'\"\r\n ></monkey-icon-waiting>\r\n <monkey-icon-wallet\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'wallet'\"\r\n ></monkey-icon-wallet>\r\n <monkey-icon-warning\r\n [fillColor]=\"_fillColor\"\r\n [id]=\"_id\"\r\n [size]=\"_size\"\r\n *ngIf=\"_icon === 'warning'\"\r\n ></monkey-icon-warning>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyIconComponent implements OnInit, OnChanges {\r\n @Input() icon: string;\r\n\r\n @Input() color: string = 'theme';\r\n\r\n @Input() contrast = false;\r\n\r\n @Input() disabled: boolean = false;\r\n\r\n _fillColor = '#000000';\r\n\r\n _icon = '';\r\n\r\n _id = `mecx-icon-${MonkeyUtils.getRandomString(10)}`;\r\n\r\n _size: string;\r\n\r\n private unsubscribeAll: Subject<any>;\r\n\r\n constructor(private monkeyStyleGuideSettingsService: MonkeyStyleGuideSettingsService) {\r\n this.unsubscribeAll = new Subject();\r\n }\r\n\r\n private handleIcon() {\r\n const { icon, color, contrast, monkeyStyleGuideSettingsService } = this;\r\n const handledIcon = icon?.substr(0, icon?.lastIndexOf('-'));\r\n this._icon = handledIcon;\r\n this._size = icon?.substr(icon?.lastIndexOf('-') + 1, icon?.length);\r\n\r\n monkeyStyleGuideSettingsService\r\n .settings()\r\n .pipe(takeUntil(this.unsubscribeAll))\r\n .subscribe((settings: any) => {\r\n if (settings && JSON.stringify(settings) !== '{}') {\r\n const { colors } = settings;\r\n\r\n let handledColor = '';\r\n if ((color || '').search('#') < 0) {\r\n let handledMainColor = '',\r\n handledSecondColor = '';\r\n handledMainColor = color.split('-')[0];\r\n if (!handledMainColor) handledMainColor = 'theme';\r\n handledSecondColor = color.split('-')[1];\r\n if (!handledSecondColor) handledSecondColor = 'main';\r\n\r\n handledColor = colors[handledMainColor][handledSecondColor];\r\n if (contrast) {\r\n handledColor = colors[handledMainColor]['contrast'][handledSecondColor];\r\n }\r\n } else {\r\n handledColor = color;\r\n }\r\n\r\n this._fillColor = handledColor;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.handleIcon();\r\n }\r\n\r\n ngOnChanges() {\r\n this.handleIcon();\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n if (this.disabled) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n event.stopImmediatePropagation();\r\n }\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, ViewEncapsulation, Input, OnInit, HostListener } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-button',\r\n template: `\r\n <button\r\n [ngClass]=\"\r\n 'mecx-button-' +\r\n type +\r\n ' mecx-button-' +\r\n type +\r\n '__' +\r\n color +\r\n (icon ? ' with-icon' : ' no-icon') +\r\n ' ' +\r\n size\r\n \"\r\n type=\"button\"\r\n [disabled]=\"disabled\"\r\n >\r\n <monkey-icon\r\n [icon]=\"icon\"\r\n [color]=\"\r\n disabled\r\n ? '#999999'\r\n : type === 'filter'\r\n ? '#4b4a53'\r\n : type === 'nav-active'\r\n ? 'theme'\r\n : 'theme-800'\r\n \"\r\n [contrast]=\"_useContrast\"\r\n [disabled]=\"disabled\"\r\n *ngIf=\"iconPosition === 'left' && icon\"\r\n ></monkey-icon>\r\n {{ label }}\r\n <ng-content></ng-content>\r\n <monkey-icon\r\n [icon]=\"icon\"\r\n [color]=\"\r\n disabled\r\n ? '#999999'\r\n : type === 'filter'\r\n ? '#4b4a53'\r\n : type === 'nav-active'\r\n ? 'theme'\r\n : 'theme-800'\r\n \"\r\n [disabled]=\"disabled\"\r\n *ngIf=\"iconPosition === 'right' && icon\"\r\n ></monkey-icon>\r\n </button>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyButtonComponent implements OnInit {\r\n @Input() label: string;\r\n @Input() icon: string;\r\n @Input() iconPosition: string = 'left';\r\n @Input() type: string;\r\n @Input() color: string;\r\n @Input() disabled: boolean = false;\r\n @Input() size: 'sm' | 'md' | 'lg' = 'md';\r\n\r\n _useContrast = false;\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n const { type } = this;\r\n if (type === 'primary') {\r\n this._useContrast = true;\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n if (this.disabled) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n event.stopImmediatePropagation();\r\n }\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n HostListener,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-button-dropdown',\r\n template: `\r\n <mecx-button-dropdown\r\n [ngClass]=\"{\r\n trigger: type === 'filled',\r\n open: _opened\r\n }\"\r\n >\r\n <mecx-button-dropdown__trigger>\r\n <ng-container *ngTemplateOutlet=\"label\"></ng-container>\r\n <monkey-icon\r\n icon=\"arrow-down-16\"\r\n [color]=\"'#4B4A53'\"\r\n *ngIf=\"!_opened && type === 'filled'\"\r\n ></monkey-icon>\r\n <monkey-icon\r\n icon=\"arrow-up-16\"\r\n [color]=\"'#4B4A53'\"\r\n *ngIf=\"_opened && type === 'filled'\"\r\n ></monkey-icon>\r\n </mecx-button-dropdown__trigger>\r\n </mecx-button-dropdown>\r\n <mecx-button-dropdown-backdrop *ngIf=\"_opened\" (click)=\"close()\">\r\n </mecx-button-dropdown-backdrop>\r\n <mecx-button-dropdown [ngClass]=\"{ open: _opened }\">\r\n <mecx-button-dropdown-options>\r\n <ng-content></ng-content>\r\n </mecx-button-dropdown-options>\r\n </mecx-button-dropdown>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyButtonDropdownComponent {\r\n @Input() label: any;\r\n @Input() type: 'unfilled' | 'filled' = 'filled';\r\n @Input() listenClicks = true;\r\n\r\n public _customClass = 'trigger';\r\n public _opened: boolean = false;\r\n public _id: string = `mecx-button-dropdown-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor(private cdr: ChangeDetectorRef) {\r\n //not to do\r\n }\r\n\r\n @HostListener('document:click', ['$event'])\r\n clickout(event: any) {\r\n this.close();\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n clickon(event: any) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n if (this._opened && this.listenClicks) {\r\n this.close();\r\n } else {\r\n this._opened = true;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n close() {\r\n setTimeout(() => {\r\n this._opened = false;\r\n this.cdr.detectChanges();\r\n }, 20);\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, ViewEncapsulation, Input, OnInit } from '@angular/core';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-button-avatar',\r\n template: `\r\n <div\r\n [ngClass]=\"'mecx-button-avatar mecx-button-avatar__' + type + ' mecx-button-avatar__' + size\"\r\n >\r\n <img [src]=\"img\" *ngIf=\"img\" />\r\n <span *ngIf=\"!img && _handledValue\">{{ _handledValue }}</span>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyButtonAvatarComponent implements OnInit {\r\n @Input() label: string;\r\n @Input() type: string;\r\n @Input() size: string;\r\n @Input() img: string;\r\n\r\n public _id = `mecx-button-avatar-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled = false;\r\n public _handledValue = '';\r\n\r\n ngOnInit() {\r\n const { label } = this;\r\n this._handledValue = label?.charAt(0);\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MonkeyIconArrowDownComponent } from './icon-arrow-down.component';\r\nimport { MonkeyIconArrowLeftComponent } from './icon-arrow-left.component';\r\nimport { MonkeyIconArrowRightComponent } from './icon-arrow-right.component';\r\nimport { MonkeyIconArrowUpComponent } from './icon-arrow-up.component';\r\nimport { MonkeyIconAuctionComponent } from './icon-auction.component';\r\nimport { MonkeyIconBankComponent } from './icon-bank.component';\r\nimport { MonkeyIconBellComponent } from './icon-bell.component';\r\nimport { MonkeyIconBookComponent } from './icon-book.component';\r\nimport { MonkeyIconBoxComponent } from './icon-box.component';\r\nimport { MonkeyIconCalendarComponent } from './icon-calendar.component';\r\nimport { MonkeyIconCameraComponent } from './icon-camera.component';\r\nimport { MonkeyIconChatComponent } from './icon-chat.component';\r\nimport { MonkeyIconCheckCircleComponent } from './icon-check-circle.component';\r\nimport { MonkeyIconCheckCircleOutComponent } from './icon-check-circle-out.component';\r\nimport { MonkeyIconCheckComponent } from './icon-check.component';\r\nimport { MonkeyIconCheckGreyComponent } from './icon-check-grey.component';\r\nimport { MonkeyIconCheckWhiteComponent } from './icon-check-white.component';\r\nimport { MonkeyIconClipboardComponent } from './icon-clipboard.component';\r\nimport { MonkeyIconClockComponent } from './icon-clock.component';\r\nimport { MonkeyIconCloseComponent } from './icon-close.component';\r\nimport { MonkeyIconCNPJComponent } from './icon-cnpj.component';\r\nimport { MonkeyIconCodepenComponent } from './icon-codepen.component';\r\nimport { MonkeyIconCompanyNameComponent } from './icon-company-name.component';\r\nimport { MonkeyIconComponent } from './icon.component';\r\nimport { MonkeyIconContractComponent } from './icon-contract.component';\r\nimport { MonkeyIconDeleteComponent } from './icon-delete.component';\r\nimport { MonkeyIconDocumentComponent } from './icon-document.component';\r\nimport { MonkeyIconDollarSignComponent } from './icon-dollar-sign.component';\r\nimport { MonkeyIconDomainComponent } from './icon-domain.component';\r\nimport { MonkeyIconDownloadComponent } from './icon-download.component';\r\nimport { MonkeyIconEditComponent } from './icon-edit.component';\r\nimport { MonkeyIconEditSquareComponent } from './icon-edit-square.component';\r\nimport { MonkeyIconEmailComponent } from './icon-email.component';\r\nimport { MonkeyIconEmptyDocComponent } from './icon-empty-doc.component';\r\nimport { MonkeyIconErrorComponent } from './icon-error.component';\r\nimport { MonkeyIconEyeClosedComponent } from './icon-eye-closed.component';\r\nimport { MonkeyIconEyeOpenComponent } from './icon-eye-open.component';\r\nimport { MonkeyIconFilterComponent } from './icon-filter.component';\r\nimport { MonkeyIconGridComponent } from './icon-grid.component';\r\nimport { MonkeyIconHelpComponent } from './icon-help.component';\r\nimport { MonkeyIconHexagonComponent } from './icon-hexagon.component';\r\nimport { MonkeyIconHomeComponent } from './icon-home.component';\r\nimport { MonkeyIconImageComponent } from './icon-image.component';\r\nimport { MonkeyIconListComponent } from './icon-list.component';\r\nimport { MonkeyIconLocationPinComponent } from './icon-location-pin.component';\r\nimport { MonkeyIconLoginComponent } from './icon-login.component';\r\nimport { MonkeyIconLogoutComponent } from './icon-logout.component';\r\nimport { MonkeyIconMoneyComponent } from './icon-money.component';\r\nimport { MonkeyIconMenuComponent } from './icon-menu.component';\r\nimport { MonkeyIconMoneyCeduleComponent } from './icon-money-cedule.component';\r\nimport { MonkeyIconMoneySignComponent } from './icon-money-sign.component';\r\nimport { MonkeyIconMoreComponent } from './icon-more.component';\r\nimport { MonkeyIconOfferedComponent } from './icon-offered.component';\r\nimport { MonkeyIconPasswordComponent } from './icon-password.component';\r\nimport { MonkeyIconPeopleComponent } from './icon-people.component';\r\nimport { MonkeyIconPercentComponent } from './icon-percent.component';\r\nimport { MonkeyIconPersonDocumentComponent } from './icon-person-document.component';\r\nimport { MonkeyIconPersonSadComponent } from './icon-person-sad.component';\r\nimport { MonkeyIconPhoneComponent } from './icon-phone.component';\r\nimport { MonkeyIconPorkComponent } from './icon-pork.component';\r\nimport { MonkeyIconRadioComponent } from './icon-radio.component';\r\nimport { MonkeyIconRefreshComponent } from './icon-refresh.component';\r\nimport { MonkeyIconRepeatComponent } from './icon-repeat.component';\r\nimport { MonkeyIconSearchComponent } from './icon-search.component';\r\nimport { MonkeyIconSecondWarningComponent } from './icon-second-warning.component';\r\nimport { MonkeyIconSettingsComponent } from './icon-settings.component';\r\nimport { MonkeyIconTrashComponent } from './icon-trash.component';\r\nimport { MonkeyIconTrophyComponent } from './icon-trophy.component';\r\nimport { MonkeyIconUploadComponent } from './icon-upload.component';\r\nimport { MonkeyIconUserComponent } from './icon-user.component';\r\nimport { MonkeyIconWaitingComponent } from './icon-waiting.component';\r\nimport { MonkeyIconWalletComponent } from './icon-wallet.component';\r\nimport { MonkeyIconWarningComponent } from './icon-warning.component';\r\nimport { MonkeyIconMedalComponent } from './icon-medal.component';\r\nimport { MonkeyIconContractPenComponent } from './icon-contract-pen.component';\r\nimport { MonkeyIconDollarSignCircleComponent } from './icon-dollar-sign-circle.component';\r\nimport { MonkeyIconMoneyHandComponent } from './icon-money-hand.component';\r\nimport { MonkeyIconNewCompanyComponent } from './icon-new-company.component';\r\nimport { MonkeyArrowsComponent } from './icon-arrows.component';\r\nimport { MonkeyIconCardMachineComponent } from './icon-card-machine.component';\r\nimport { MonkeyBankAccountComponent } from './icon-bank-account.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonkeyArrowsComponent,\r\n MonkeyIconArrowDownComponent,\r\n MonkeyIconArrowLeftComponent,\r\n MonkeyIconArrowRightComponent,\r\n MonkeyIconArrowUpComponent,\r\n MonkeyIconAuctionComponent,\r\n MonkeyIconBankComponent,\r\n MonkeyBankAccountComponent,\r\n MonkeyIconBellComponent,\r\n MonkeyIconBookComponent,\r\n MonkeyIconBoxComponent,\r\n MonkeyIconCalendarComponent,\r\n MonkeyIconCameraComponent,\r\n MonkeyIconCardMachineComponent,\r\n MonkeyIconChatComponent,\r\n MonkeyIconCheckCircleComponent,\r\n MonkeyIconCheckCircleOutComponent,\r\n MonkeyIconCheckComponent,\r\n MonkeyIconCheckGreyComponent,\r\n MonkeyIconCheckWhiteComponent,\r\n MonkeyIconClipboardComponent,\r\n MonkeyIconClockComponent,\r\n MonkeyIconCloseComponent,\r\n MonkeyIconCNPJComponent,\r\n MonkeyIconCodepenComponent,\r\n MonkeyIconCompanyNameComponent,\r\n MonkeyIconComponent,\r\n MonkeyIconContractComponent,\r\n MonkeyIconContractPenComponent,\r\n MonkeyIconDeleteComponent,\r\n MonkeyIconDocumentComponent,\r\n MonkeyIconDollarSignComponent,\r\n MonkeyIconDollarSignCircleComponent,\r\n MonkeyIconDomainComponent,\r\n MonkeyIconDownloadComponent,\r\n MonkeyIconEditComponent,\r\n MonkeyIconEditSquareComponent,\r\n MonkeyIconEmailComponent,\r\n MonkeyIconEmptyDocComponent,\r\n MonkeyIconErrorComponent,\r\n MonkeyIconEyeClosedComponent,\r\n MonkeyIconEyeOpenComponent,\r\n MonkeyIconFilterComponent,\r\n MonkeyIconGridComponent,\r\n MonkeyIconHelpComponent,\r\n MonkeyIconHexagonComponent,\r\n MonkeyIconHomeComponent,\r\n MonkeyIconImageComponent,\r\n MonkeyIconListComponent,\r\n MonkeyIconLocationPinComponent,\r\n MonkeyIconLoginComponent,\r\n MonkeyIconLogoutComponent,\r\n MonkeyIconMedalComponent,\r\n MonkeyIconMenuComponent,\r\n MonkeyIconMoneyComponent,\r\n MonkeyIconMoneyCeduleComponent,\r\n MonkeyIconMoneyHandComponent,\r\n MonkeyIconMoneySignComponent,\r\n MonkeyIconMoreComponent,\r\n MonkeyIconNewCompanyComponent,\r\n MonkeyIconOfferedComponent,\r\n MonkeyIconPasswordComponent,\r\n MonkeyIconPeopleComponent,\r\n MonkeyIconPercentComponent,\r\n MonkeyIconPersonDocumentComponent,\r\n MonkeyIconPersonSadComponent,\r\n MonkeyIconPhoneComponent,\r\n MonkeyIconPorkComponent,\r\n MonkeyIconRadioComponent,\r\n MonkeyIconRefreshComponent,\r\n MonkeyIconRepeatComponent,\r\n MonkeyIconSearchComponent,\r\n MonkeyIconSecondWarningComponent,\r\n MonkeyIconSettingsComponent,\r\n MonkeyIconTrashComponent,\r\n MonkeyIconTrophyComponent,\r\n MonkeyIconUploadComponent,\r\n MonkeyIconUserComponent,\r\n MonkeyIconWaitingComponent,\r\n MonkeyIconWalletComponent,\r\n MonkeyIconWarningComponent\r\n ],\r\n imports: [CommonModule],\r\n exports: [MonkeyIconComponent],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n})\r\nexport class MonkeyIconModule {}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyButtonComponent } from './button.component';\r\nimport { MonkeyButtonDropdownComponent } from './button-dropdown.component';\r\nimport { MonkeyButtonAvatarComponent } from './button-avatar.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MonkeyIconModule } from '../icon/icon.module';\r\n\r\n@NgModule({\r\n declarations: [MonkeyButtonComponent, MonkeyButtonDropdownComponent, MonkeyButtonAvatarComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, MonkeyIconModule],\r\n exports: [MonkeyButtonComponent, MonkeyButtonDropdownComponent, MonkeyButtonAvatarComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyButtonModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { CurrencyPipe } from '@angular/common';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n forwardRef,\r\n OnInit,\r\n Output,\r\n EventEmitter,\r\n Input,\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormBuilder,\r\n FormGroup,\r\n NG_VALUE_ACCESSOR,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { MonkeyUtils } from '../../core/utils';\r\nimport * as moment_ from 'moment';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nconst moment: any = moment_;\r\n\r\n@Component({\r\n selector: 'monkey-date-range-picker',\r\n template: `\r\n <mecx-date-range-picker-group [ngClass]=\"{ disabled: _disabled }\" [id]=\"_id\">\r\n <mecx-date-range-picker-group-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-date-range-picker-group-header>\r\n <mecx-date-range-picker-selected-dates>\r\n <div class=\"from\"\r\n [class.actual]=\"!_startDate\">\r\n <span class=\"title\">\r\n {{ i18n?.from }}\r\n </span>\r\n <span class=\"data\">\r\n <ng-container *ngIf=\"_startDate; else select\">\r\n {{ _startDate?.format('DD') }}\r\n {{ i18n?.of }}\r\n {{ i18n?.months?.[_startDate.format('M')] }},\r\n {{ _startDate.format('YYYY') }}\r\n </ng-container>\r\n </span>\r\n </div>\r\n <div class=\"to\" [class.actual]=\"_startDate\">\r\n <span class=\"title\">\r\n {{ i18n?.to }}\r\n </span>\r\n <span class=\"data\">\r\n <ng-container *ngIf=\"_endDate; else select\">\r\n {{ _endDate.format('DD') }}\r\n {{ i18n?.of }}\r\n {{ i18n?.months?.[_endDate.format('M')] }},\r\n {{ _endDate.format('YYYY') }}\r\n </ng-container>\r\n </span>\r\n </div>\r\n <ng-template #select>\r\n {{ i18n?.select }}\r\n </ng-template>\r\n </mecx-date-range-picker-selected-dates>\r\n <mecx-date-range-picker-group-body>\r\n <mecx-date-range-picker class=\"first-date-range\">\r\n <mecx-date-range-picker-header>\r\n <div class=\"calendar-title\">\r\n <monkey-button\r\n class=\"calendar-previous\"\r\n color=\"theme\"\r\n icon=\"arrow-left-16\"\r\n type=\"tertiary\"\r\n (click)=\"previousMonth()\"\r\n size=\"sm\"\r\n [disabled]=\"_disabled\"\r\n >\r\n </monkey-button>\r\n <div class=\"month-year-title\">\r\n {{ i18n?.months?.[_dateFirst.format('M')] }}\r\n {{ _dateFirst.format('YYYY') }}\r\n </div>\r\n <monkey-button\r\n class=\"calendar-next\"\r\n color=\"theme\"\r\n icon=\"arrow-right-16\"\r\n type=\"tertiary\"\r\n (click)=\"nextMonth()\"\r\n size=\"sm\"\r\n [disabled]=\"_disabled\"\r\n >\r\n </monkey-button>\r\n </div>\r\n <div class=\"week\">\r\n <span class=\"week-day\" *ngFor=\"let day of [1, 2, 3, 4, 5, 6, 7]\">\r\n {{ i18n?.days?.[day]}}\r\n </span>\r\n </div>\r\n </mecx-date-range-picker-header>\r\n <mecx-date-range-picker-body>\r\n <div class=\"month-week\" *ngFor=\"let week of _daysArrFirst\">\r\n <div\r\n class=\"month-day\"\r\n (click)=\"selectedDate(day)\"\r\n [ngClass]=\"{\r\n inactive: !day || isDisabled(day),\r\n selected: isSelected(day),\r\n today: todayCheck(day),\r\n 'first-selected': isFirstSelected(day),\r\n 'last-selected': isLastSelected(day)\r\n }\"\r\n *ngFor=\"let day of week\"\r\n #divOne\r\n >\r\n {{ day?.date() }}\r\n </div>\r\n </div>\r\n </mecx-date-range-picker-body>\r\n </mecx-date-range-picker>\r\n\r\n <mecx-date-range-picker class=\"second-date-range\">\r\n <mecx-date-range-picker-header>\r\n <div class=\"calendar-title\">\r\n <div class=\"month-year-title\">\r\n {{ i18n?.months?.[_dateSecond.format('M')] }}\r\n {{ _dateSecond.format('YYYY') }}\r\n </div>\r\n <monkey-button\r\n class=\"calendar-previous\"\r\n color=\"theme\"\r\n icon=\"arrow-right-16\"\r\n type=\"tertiary\"\r\n (click)=\"nextMonth()\"\r\n size=\"sm\"\r\n [disabled]=\"_disabled\"\r\n >\r\n </monkey-button>\r\n </div>\r\n <div class=\"week\">\r\n <span class=\"week-day\" *ngFor=\"let day of [1, 2, 3, 4, 5, 6, 7]\">\r\n {{ i18n?.days?.[day]}}\r\n </span>\r\n </div>\r\n </mecx-date-range-picker-header>\r\n <mecx-date-range-picker-body>\r\n <div class=\"month-week\" *ngFor=\"let week of _daysArrSecond\">\r\n <div\r\n class=\"month-day\"\r\n (click)=\"selectedDate(day)\"\r\n [ngClass]=\"{\r\n inactive: !day || isDisabled(day),\r\n selected: isSelected(day),\r\n today: todayCheck(day),\r\n 'first-selected': isFirstSelected(day),\r\n 'last-selected': isLastSelected(day)\r\n }\"\r\n *ngFor=\"let day of week\"\r\n >\r\n {{ day?.date() }}\r\n </div>\r\n </div>\r\n </mecx-date-range-picker-body>\r\n </mecx-date-range-picker>\r\n </mecx-date-range-picker-group-body>\r\n <mecx-date-range-picker-group-info>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-date-range-picker-group-info>\r\n <mecx-date-range-picker-group-action [class.error]=\"errorMessage?.trim()\">\r\n <div class=\"action-days\">\r\n <monkey-button\r\n color=\"theme\"\r\n type=\"secondary\"\r\n (click)=\"selectRangeOfDays(30)\"\r\n [disabled]=\"_disabled\"\r\n >\r\n {{ i18n?.actions?.['30'] }}\r\n </monkey-button>\r\n <monkey-button\r\n color=\"theme\"\r\n type=\"secondary\"\r\n (click)=\"selectRangeOfDays(60)\"\r\n [disabled]=\"_disabled\"\r\n >\r\n {{ i18n?.actions?.['60'] }}\r\n </monkey-button>\r\n <monkey-button\r\n color=\"theme\"\r\n type=\"secondary\"\r\n (click)=\"selectRangeOfDays(90)\"\r\n [disabled]=\"_disabled\"\r\n >\r\n {{ i18n?.actions?.['90'] }}\r\n </monkey-button>\r\n </div>\r\n <monkey-button\r\n color=\"theme\"\r\n type=\"primary\"\r\n (click)=\"navigateToToday()\"\r\n [disabled]=\"_disabled\"\r\n >\r\n {{ i18n?.today }}\r\n </monkey-button>\r\n </mecx-date-range-picker-group-action>\r\n </mecx-date-range-picker-group>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyDateRangePickerComponent),\r\n multi: true,\r\n },\r\n CurrencyPipe,\r\n ],\r\n})\r\nexport class MonkeyDateRangePickerComponent implements ControlValueAccessor, OnInit, OnDestroy {\r\n @Input() label: string;\r\n @Input() helperMessage: string = '';\r\n @Input() i18n: {\r\n months: {\r\n [s: string]: string;\r\n };\r\n days: {\r\n [s: string]: string;\r\n };\r\n actions: {\r\n [s: string]: string;\r\n };\r\n from: string;\r\n to: string;\r\n of: string;\r\n today: string;\r\n select: string;\r\n };\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() moveDaysForward = true;\r\n @Input()\r\n set minDate(value: any) {\r\n this._minDate = !this.moveDaysForward ? null : value;\r\n }\r\n\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private today = moment.default().format('YYYY-MM-DD');\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n private unsubscribeAll: Subject<any>;\r\n\r\n public _dateFirst = moment.default();\r\n public _dateSecond = moment.default().add(1, 'M');\r\n public _id: string = `mecx-date-range-picker-${MonkeyUtils.getRandomString(10)}`;\r\n public _daysArrFirst = [];\r\n public _daysArrSecond = [];\r\n public _dateForm: FormGroup;\r\n public _disabled: boolean = false;\r\n public _minDate = null;\r\n public _startDate = null;\r\n public _endDate = null;\r\n\r\n constructor(private fb: FormBuilder, private cdr: ChangeDetectorRef) {\r\n this.unsubscribeAll = new Subject();\r\n this.initDateRange();\r\n }\r\n\r\n private initDateRange() {\r\n this._dateForm = this.fb.group({\r\n startDate: [null, Validators.required],\r\n endDate: [null, Validators.required],\r\n });\r\n this._dateForm?.valueChanges?.pipe(takeUntil(this.unsubscribeAll))?.subscribe((values: any) => {\r\n const { startDate, endDate } = values;\r\n this._startDate = startDate && moment.default(startDate)\r\n this._endDate = endDate && moment.default(endDate)\r\n });\r\n }\r\n\r\n private createCalendar(month: any) {\r\n let firstDay = moment.default(month).startOf('M');\r\n let lastDay = moment.default(month).endOf('M');\r\n let days = Array.apply(null, { length: month.daysInMonth() })\r\n .map(Number.call, Number)\r\n .map((n: number) => {\r\n return moment.default(firstDay).add(n, 'd');\r\n });\r\n\r\n let n = 0;\r\n while (n < firstDay.weekday()) {\r\n days.unshift(null);\r\n n++;\r\n }\r\n n = 0;\r\n while (n < 7 - lastDay.weekday()) {\r\n days.push(null);\r\n n++;\r\n }\r\n\r\n let index = 1;\r\n let group = [];\r\n let grouped = [];\r\n\r\n Object.entries(days).map(([key, value]: [string, any]) => {\r\n if (index > 7) {\r\n index = 1;\r\n grouped.push(group);\r\n group = [];\r\n }\r\n\r\n group.push(value);\r\n index++;\r\n });\r\n grouped.push(group);\r\n\r\n return grouped;\r\n }\r\n\r\n private build() {\r\n this._daysArrFirst = this.createCalendar(this._dateFirst);\r\n this._daysArrSecond = this.createCalendar(this._dateSecond);\r\n }\r\n\r\n private clearDates() {\r\n if (this._disabled) return;\r\n this._dateForm.setValue({ startDate: null, endDate: null });\r\n this.writeValue(this._dateForm.value);\r\n }\r\n\r\n navigateToToday() {\r\n this._dateFirst = moment.default();\r\n this._dateSecond = moment.default().add(1, 'M');\r\n this.build();\r\n }\r\n\r\n ngOnInit() {\r\n this.build();\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (\r\n value &&\r\n Object.prototype.hasOwnProperty.call(value, 'startDate') &&\r\n Object.prototype.hasOwnProperty.call(value, 'endDate')\r\n ) {\r\n this._dateForm.setValue(value);\r\n this.cdr.detectChanges();\r\n this.onModelChange(this._dateForm.value);\r\n this.onModelTouched(this._dateForm.value);\r\n } else {\r\n this.clearDates();\r\n }\r\n }\r\n\r\n get value(): any {\r\n return this._dateForm.value;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n this.onChange.next(value);\r\n }\r\n\r\n nextMonth() {\r\n if (this._disabled) return;\r\n this._dateFirst.add(1, 'M');\r\n this._dateSecond.add(1, 'M');\r\n\r\n this._daysArrFirst = this.createCalendar(this._dateFirst);\r\n this._daysArrSecond = this.createCalendar(this._dateSecond);\r\n }\r\n\r\n previousMonth() {\r\n if (this._disabled) return;\r\n this._dateFirst.subtract(1, 'M');\r\n this._dateSecond.subtract(1, 'M');\r\n\r\n this._daysArrFirst = this.createCalendar(this._dateFirst);\r\n this._daysArrSecond = this.createCalendar(this._dateSecond);\r\n }\r\n\r\n todayCheck(day: any) {\r\n if (!day) {\r\n return false;\r\n }\r\n\r\n return moment.default().format('L') === day.format('L');\r\n }\r\n\r\n isSelected(day: any) {\r\n if (!day) {\r\n return false;\r\n }\r\n\r\n let startDateMoment = moment.default(this._dateForm.value.startDate, 'YYYY-MM-DD');\r\n let endDateMoment = moment.default(this._dateForm.value.endDate, 'YYYY-MM-DD');\r\n\r\n if (this._dateForm.valid) {\r\n return startDateMoment.isSameOrBefore(day) && endDateMoment.isSameOrAfter(day);\r\n }\r\n\r\n if (this._dateForm.get('startDate').valid) {\r\n return startDateMoment.isSame(day);\r\n }\r\n }\r\n\r\n isDisabled(day) {\r\n const { _minDate } = this;\r\n if (_minDate) {\r\n const firstDay = moment.default(_minDate);\r\n return day.isBefore(firstDay.subtract(1, 'day'));\r\n }\r\n return false;\r\n }\r\n\r\n isFirstSelected(day) {\r\n const { _dateForm } = this;\r\n const { startDate } = _dateForm.value;\r\n return day?.isSame(startDate);\r\n }\r\n\r\n isLastSelected(day: any) {\r\n const { _dateForm } = this;\r\n const { endDate } = _dateForm.value;\r\n return day?.isSame(endDate);\r\n }\r\n\r\n selectedDate(day: any) {\r\n if (this._disabled) return;\r\n const { _dateForm, _minDate } = this;\r\n let dayFormatted = day.format('YYYY-MM-DD');\r\n\r\n if (_minDate) {\r\n const firstDay = moment.default(_minDate);\r\n if (day.isBefore(firstDay.subtract(1, 'day'))) return;\r\n }\r\n\r\n if (_dateForm.valid) {\r\n this.clearDates();\r\n }\r\n\r\n let { startDate, endDate } = _dateForm.value;\r\n if (startDate) {\r\n if (moment.default(startDate).isAfter(moment.default(dayFormatted))) {\r\n endDate = startDate;\r\n startDate = dayFormatted;\r\n } else {\r\n endDate = dayFormatted;\r\n }\r\n } else startDate = dayFormatted;\r\n\r\n if (startDate) {\r\n _dateForm.get('startDate').patchValue(startDate);\r\n }\r\n\r\n if (endDate) {\r\n _dateForm.get('endDate').patchValue(endDate);\r\n }\r\n\r\n this.writeValue(_dateForm.value);\r\n }\r\n\r\n selectRangeOfDays(days: number) {\r\n if (this._disabled) return;\r\n const { _dateForm, _minDate, today, moveDaysForward } = this;\r\n const { startDate } = _dateForm.value;\r\n\r\n const firstDay = moment.default(startDate || _minDate || today).format('YYYY-MM-DD');\r\n const method = moveDaysForward ? 'add' : 'subtract';\r\n const lastDay = moment.default(firstDay)[method](days, 'day').format('YYYY-MM-DD');\r\n \r\n if(moveDaysForward){\r\n _dateForm.get('startDate').patchValue(firstDay);\r\n _dateForm.get('endDate').patchValue(lastDay);\r\n } else {\r\n _dateForm.get('startDate').patchValue(lastDay);\r\n _dateForm.get('endDate').patchValue(firstDay);\r\n }\r\n this.writeValue(_dateForm.value);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.unsubscribeAll.next();\r\n this.unsubscribeAll.complete();\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyDateRangePickerComponent } from './date-range-picker.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MonkeyIconModule } from '../icon/icon.module';\r\nimport { MonkeyButtonModule } from '../button/button.module';\r\n\r\n@NgModule({\r\n declarations: [MonkeyDateRangePickerComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, MonkeyButtonModule, MonkeyIconModule],\r\n exports: [MonkeyDateRangePickerComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyDateRangePickerModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { CurrencyPipe } from '@angular/common';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n OnInit,\r\n ElementRef,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyStyleGuideSettingsService, MonkeyStyleSettings } from '../../core';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-input',\r\n template: `\r\n <mecx-form-field [ngClass]=\"{ disabled: _disabled }\" [id]=\"_id\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body [class.error]=\"errorMessage?.trim()\">\r\n <monkey-icon\r\n [icon]=\"icon\"\r\n [color]=\"errorMessage?.trim() ? '#fa3838' : '#4B4A53'\"\r\n *ngIf=\"icon\"\r\n ></monkey-icon>\r\n <symbol>\r\n {{ _symbol }}\r\n </symbol>\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n (input)=\"onChangeValue($event)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"_formatedValue\"\r\n [disabled]=\"_disabled\"\r\n [mask]=\"mask\"\r\n [prefix]=\"prefix\"\r\n *ngIf=\"mask && prefix\"\r\n #monkeyInput\r\n />\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n (input)=\"onChangeValue($event)\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"_formatedValue\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"_disabled\"\r\n [mask]=\"mask\"\r\n *ngIf=\"mask && !prefix\"\r\n #monkeyInput\r\n />\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n (input)=\"onChangeValue($event)\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"_formatedValue\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"_disabled\"\r\n [maxLength]=\"maxLength\"\r\n *ngIf=\"!mask && !prefix\"\r\n [max]=\"maxDateToday ? _maxDateToday : null\"\r\n #monkeyInput\r\n />\r\n <monkey-icon\r\n icon=\"eye-open-16\"\r\n [color]=\"errorMessage?.trim() ? '#fa3838' : '#4B4A53'\"\r\n *ngIf=\"_oldType === 'password' && type === 'text'\"\r\n (click)=\"onShowAndHidePassword()\"\r\n ></monkey-icon>\r\n <monkey-icon\r\n icon=\"eye-closed-16\"\r\n [color]=\"errorMessage?.trim() ? '#fa3838' : '#4B4A53'\"\r\n *ngIf=\"_oldType === 'password' && type === 'password'\"\r\n (click)=\"onShowAndHidePassword()\"\r\n ></monkey-icon>\r\n </mecx-form-field-body>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyInputComponent),\r\n multi: true,\r\n },\r\n CurrencyPipe,\r\n ],\r\n})\r\nexport class MonkeyInputComponent implements ControlValueAccessor, OnInit {\r\n @Input() name: string = `mecx-input-${MonkeyUtils.getRandomString(10)}`;\r\n @Input() label: string;\r\n @Input() helperMessage: string = '';\r\n @Input() placeholder: string = '';\r\n @Input() icon: string;\r\n @Input() type: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() mask: string;\r\n @Input() prefix: string;\r\n @Input() maxLength: number = 255;\r\n @Input() onlyNumber: any;\r\n @Input() onlyAlphaNumeric: any;\r\n @Input() upperCase: any;\r\n @Input() lowerCase: any;\r\n @Input() capitalize: any;\r\n @Input() currency: any;\r\n @Input() percent: any;\r\n @Input() maxDateToday = false;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private settings: MonkeyStyleSettings;\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n\r\n public _id: string = `mecx-input-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n public _oldType: string;\r\n public _formatedValue: any;\r\n public _maxDateToday = new Date().toISOString().split('T')[0];\r\n public _symbol = '';\r\n\r\n @ViewChild('monkeyInput', {\r\n static: true,\r\n })\r\n monkeyInput: ElementRef;\r\n\r\n constructor(\r\n private currencyPipe: CurrencyPipe,\r\n private settingsService: MonkeyStyleGuideSettingsService,\r\n private cdr: ChangeDetectorRef\r\n ) {}\r\n\r\n private handleValue(value: any, apply = false): any {\r\n if (this.onlyNumber) {\r\n return MonkeyUtils.handleOnlyNumbers(`${value}`);\r\n } else if (this.onlyAlphaNumeric) return MonkeyUtils.handleOnlyAlphaNumeric(`${value}`);\r\n else if (this.upperCase) return `${value}`.toUpperCase();\r\n else if (this.lowerCase) return `${value}`.toLowerCase();\r\n else if (this.capitalize) return MonkeyUtils.capitalize(`${value}`.toUpperCase());\r\n else if (this.currency || this.percent) {\r\n const handled = MonkeyUtils.handleOnlyNumbers(`${value}`);\r\n const result = handled / 100;\r\n if(!result) return '';\r\n return result.toFixed(2);\r\n }\r\n\r\n return value;\r\n }\r\n\r\n private replaceZero(value: any) {\r\n return `${value}`.replace(new RegExp(/0/, 'g'), '');\r\n }\r\n\r\n private formatValue(value: any): any {\r\n const { settings } = this;\r\n if (this.currency) {\r\n if (!value || !this.replaceZero(value)) return '';\r\n return this.currencyPipe.transform(\r\n value,\r\n settings?.currency?.code || 'BRL',\r\n '',\r\n '1.2-2',\r\n settings?.currency?.locale || 'pt-BR'\r\n );\r\n } else if (this.percent) {\r\n return `${value}`;\r\n }\r\n\r\n return value;\r\n }\r\n\r\n private handleSymbol() {\r\n const { settings } = this;\r\n if (this.currency) {\r\n this._symbol = {\r\n BRL: 'R$',\r\n CLP: 'CLP',\r\n }[settings?.currency?.code || 'BRL'];\r\n } else if (this.percent) {\r\n this._symbol = '%';\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n const { settingsService } = this;\r\n this._oldType = this.type;\r\n settingsService.settings().subscribe((val: MonkeyStyleSettings) => {\r\n this.settings = val;\r\n this.handleSymbol();\r\n });\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n this.handledValue = value;\r\n this._formatedValue = this.formatValue(value);\r\n this.cdr.detectChanges();\r\n this.onModelChange(this.handledValue);\r\n this.onModelTouched(this.handledValue);\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any) {\r\n const value = this._formatedValue;\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n const handled = this.handleValue(value, true);\r\n this.writeValue(handled);\r\n this.onChange.next(handled);\r\n }\r\n\r\n onShowAndHidePassword() {\r\n this.type = this.type === 'password' ? 'text' : 'password';\r\n }\r\n\r\n @HostListener('click')\r\n onClick() {\r\n document?.getElementById(this._id)?.getElementsByTagName('input')?.[0]?.focus();\r\n }\r\n\r\n onKeyPress(event: any) {\r\n let pattern = null;\r\n const cmp = event?.target?.value;\r\n const inputChar = String.fromCharCode(event.charCode);\r\n if (this.currency || this.onlyNumber || this.percent) {\r\n pattern = /[0-9]/;\r\n if (!this.onlyNumber && inputChar === '0' && !this.replaceZero(cmp)) {\r\n event.preventDefault();\r\n return;\r\n }\r\n } else if (this.onlyAlphaNumeric) {\r\n pattern = /[^0-9A-Za-z]/;\r\n }\r\n\r\n if (pattern && !pattern.test(inputChar)) {\r\n event.preventDefault();\r\n }\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { CurrencyPipe } from '@angular/common';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n OnInit,\r\n ElementRef,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyStyleGuideSettingsService, MonkeyStyleSettings } from '../../core';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-input-filter',\r\n template: `\r\n <mecx-form-field-filter [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header *ngIf=\"label\">\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body>\r\n <monkey-icon [icon]=\"icon\" [color]=\"'#4B4A53'\"\r\n *ngIf=\"iconPosition === 'left' && icon\"></monkey-icon>\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"value\"\r\n (input)=\"onChangeInput($event)\"\r\n [id]=\"_id\"\r\n [disabled]=\"_disabled\"\r\n [mask]=\"mask\"\r\n [prefix]=\"prefix\"\r\n *ngIf=\"mask && prefix\"\r\n />\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"value\"\r\n (input)=\"onChangeInput($event)\"\r\n [id]=\"_id\"\r\n [disabled]=\"_disabled\"\r\n [mask]=\"mask\"\r\n *ngIf=\"mask && !prefix\"\r\n />\r\n <input\r\n [name]=\"name\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"value\"\r\n (input)=\"onChangeInput($event)\"\r\n [id]=\"_id\"\r\n [disabled]=\"_disabled\"\r\n *ngIf=\"!mask && !prefix\"\r\n />\r\n <monkey-icon [icon]=\"icon\" [color]=\"'#4B4A53'\"\r\n *ngIf=\"iconPosition === 'right' && icon\"></monkey-icon>\r\n <monkey-icon\r\n icon=\"eyes-16\"\r\n [color]=\"'#4B4A53'\"\r\n *ngIf=\"_oldType === 'password' && type === 'text'\"\r\n (click)=\"onShowAndHidePassword()\"\r\n ></monkey-icon>\r\n <monkey-icon\r\n icon=\"eyes-off-16\"\r\n [color]=\"'#4B4A53'\"\r\n *ngIf=\"_oldType === 'password' && type === 'password'\"\r\n (click)=\"onShowAndHidePassword()\"\r\n ></monkey-icon>\r\n </mecx-form-field-body>\r\n </mecx-form-field-filter>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyInputFilterComponent),\r\n multi: true,\r\n },\r\n CurrencyPipe,\r\n ],\r\n})\r\nexport class MonkeyInputFilterComponent implements ControlValueAccessor, OnInit {\r\n @Input() name: string;\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() type: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() mask: string;\r\n @Input() prefix: string;\r\n @Input() onlyNumber: any;\r\n @Input() onlyAlphaNumeric: any;\r\n @Input() upperCase: any;\r\n @Input() lowerCase: any;\r\n @Input() capitalize: any;\r\n @Input() currency: any;\r\n @Input() iconPosition: string = 'right';\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private settings: MonkeyStyleSettings;\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n private timer: any;\r\n\r\n public _id: string = `mecx-input-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n public _oldType: string;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private currencyPipe: CurrencyPipe,\r\n private settingsService: MonkeyStyleGuideSettingsService\r\n ) {}\r\n\r\n private handleValue(value: any): any {\r\n const { settings } = this;\r\n if (this.onlyNumber !== undefined) {\r\n return MonkeyUtils.handleOnlyNumbers(`${value}`);\r\n } else if (this.onlyAlphaNumeric !== undefined)\r\n return MonkeyUtils.handleOnlyAlphaNumeric(`${value}`);\r\n else if (this.upperCase !== undefined) return `${value}`.toUpperCase();\r\n else if (this.lowerCase !== undefined) return `${value}`.toLowerCase();\r\n else if (this.capitalize !== undefined) return MonkeyUtils.capitalize(`${value}`.toUpperCase());\r\n else if (this.currency !== undefined) {\r\n const newValue = MonkeyUtils.handleOnlyNumbers(value);\r\n return this.currencyPipe.transform(\r\n newValue / 100,\r\n settings?.currency?.code || 'BRL',\r\n 'symbol',\r\n '',\r\n settings?.currency?.locale || 'pt-BR'\r\n );\r\n }\r\n\r\n return value;\r\n }\r\n\r\n ngOnInit() {\r\n const { settingsService } = this;\r\n this._oldType = this.type;\r\n settingsService.settings().subscribe((val: MonkeyStyleSettings) => {\r\n this.settings = val;\r\n });\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeInput(event: any) {\r\n const { value } = event?.target;\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n const handled = this.handleValue(value);\r\n event.target.value = handled;\r\n this.writeValue(handled);\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n this.timer = setTimeout(() => {\r\n this.onChange.next(value);\r\n }, 400);\r\n }\r\n\r\n onShowAndHidePassword() {\r\n this.type = this.type === 'password' ? 'text' : 'password';\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n const { _id } = this;\r\n document.getElementById(_id).focus();\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyInputComponent } from './input.component';\r\nimport { MonkeyInputFilterComponent } from './input-filter.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { MonkeyIconModule } from '../icon';\r\n\r\n@NgModule({\r\n declarations: [MonkeyInputComponent, MonkeyInputFilterComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxMaskModule.forRoot(),\r\n MonkeyIconModule,\r\n ],\r\n exports: [MonkeyInputComponent, MonkeyInputFilterComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyInputModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n Output,\r\n HostListener,\r\n ElementRef,\r\n} from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-option',\r\n template: `\r\n <div class=\"mecx-option\" *ngIf=\"type === 'select-multiple'\">\r\n <!--<input type=\"checkbox\" [checked]=\"value === selected?.value\" />\r\n <span\r\n [id]=\"_id\"\r\n >\r\n {{ label }}\r\n </span>-->\r\n <label class=\"mecx-check-container\">\r\n <input type=\"checkbox\" [checked]=\"value === selected?.value\" />\r\n {{ label }}\r\n <p class=\"mecx-check-mark\"></p>\r\n </label>\r\n </div>\r\n <span\r\n class=\"mecx-option\"\r\n [ngClass]=\"{ selected: value === selected?.value }\"\r\n *ngIf=\"type === 'select'\"\r\n [id]=\"_id\"\r\n >\r\n {{ label }}\r\n </span>\r\n <label class=\"mecx-radio-container\" *ngIf=\"type === 'radio'\">\r\n <input\r\n type=\"radio\"\r\n [value]=\"selected?.value\"\r\n [checked]=\"value === selected?.value\"\r\n [id]=\"_id\"\r\n />\r\n {{ label }}\r\n <p class=\"mecx-radio-mark\"></p>\r\n </label>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyOptionComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeyOptionComponent {\r\n @Input() type: string = 'select';\r\n @Input() label: string;\r\n @Input() value: any;\r\n @Input() selectAll: boolean;\r\n @Input() selected: MonkeyOptionComponent;\r\n @Input() enableClick = true;\r\n @Output() onSelectOption: Function;\r\n\r\n public _id: string = `mecx-option-${MonkeyUtils.getRandomString(10)}`;\r\n\r\n constructor(public elRef: ElementRef) {\r\n //not to do\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n if (this.enableClick) {\r\n this.onSelectOption(this);\r\n }\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyOptionComponent } from './option.component';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonkeyOptionComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n MonkeyOptionComponent\r\n ],\r\n schemas: [\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class MonkeyOptionModule { }","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n QueryList,\r\n ContentChildren,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n OnInit,\r\n OnChanges,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyOptionComponent } from '../option';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-select',\r\n template: `\r\n <mecx-form-field [id]=\"_id\" [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body (click)=\"open()\" [class.error]=\"errorMessage?.trim()\">\r\n <monkey-icon [icon]=\"icon\" [color]=\"'#4B4A53'\"></monkey-icon>\r\n <mecx-select class=\"trigger\" [ngClass]=\"{ open: _opened }\">\r\n <mecx-select__trigger>\r\n <span>\r\n {{ _selected?.label || labelSelect }}\r\n </span>\r\n <monkey-icon\r\n [icon]=\"!_opened ? 'arrow-down-16' : 'arrow-up-16'\"\r\n [color]=\"'#4B4A53'\"\r\n ></monkey-icon>\r\n </mecx-select__trigger>\r\n </mecx-select>\r\n </mecx-form-field-body>\r\n <mecx-select-inside [ngClass]=\"{ open: _opened }\">\r\n <mecx-select-options #selectOptions>\r\n <ng-content> </ng-content>\r\n </mecx-select-options>\r\n </mecx-select-inside>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeySelectComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeySelectComponent implements OnInit, OnChanges, ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() labelSelect = 'Selecione';\r\n @Input() onHandleOptions = new EventEmitter<any>();\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n @ViewChild('selectOptions', { static: true })\r\n selectOptions: ElementRef;\r\n\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n @ContentChildren(MonkeyOptionComponent)\r\n private options!: QueryList<MonkeyOptionComponent>;\r\n\r\n public _selected: MonkeyOptionComponent;\r\n public _opened: boolean = false;\r\n public _id: string = `mecx-select-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor(private cdRef: ChangeDetectorRef) {}\r\n\r\n private onHandleSelected() {\r\n const { _opened, _selected } = this;\r\n this.options.forEach((op) => {\r\n op.selected = _selected;\r\n });\r\n if (_opened) {\r\n let scrollValue = 0;\r\n if (_selected) {\r\n const { _id } = this._selected;\r\n scrollValue = document.getElementById(_id).offsetTop;\r\n }\r\n this.selectOptions.nativeElement.scrollTo(0, scrollValue);\r\n this.selectOptions.nativeElement.focus();\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n private validateOptions() {\r\n if (!this.options) return;\r\n this.options.forEach((op) => {\r\n op.onSelectOption = this.onSelectOption.bind(this);\r\n op.type = 'select';\r\n op.selected = null;\r\n if (`${op.value}`.toLowerCase() === `${this.handledValue}`.toLowerCase()) {\r\n this._selected = op;\r\n op.selected = op;\r\n }\r\n });\r\n }\r\n\r\n private init() {\r\n setTimeout(() => {\r\n this._selected = null;\r\n this.validateOptions();\r\n }, 0);\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n this.validateOptions();\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n this.onChange.next(value);\r\n }\r\n\r\n @HostListener('document:click')\r\n clickout() {\r\n this._opened = false;\r\n }\r\n\r\n open() {\r\n if (!this._opened) {\r\n setTimeout(() => {\r\n this._opened = true;\r\n this.onHandleSelected();\r\n }, 50);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.init();\r\n this.onHandleOptions.subscribe(() => {\r\n this.init();\r\n });\r\n }\r\n\r\n ngOnChanges() {\r\n this.init();\r\n }\r\n\r\n onSelectOption(select: MonkeyOptionComponent) {\r\n this._selected = select;\r\n const { value } = select;\r\n this._opened = false;\r\n this.onChangeValue(null, value);\r\n this.onHandleSelected();\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n HostListener,\r\n OnInit,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n Directive,\r\n OnChanges,\r\n OnDestroy,\r\n SimpleChanges,\r\n Self,\r\n Optional,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, FormControl, FormControlName, NgControl } from '@angular/forms';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Directive({\r\n selector: '[phoneNumberValidate]',\r\n})\r\nexport class PhoneNumberValidDirective implements OnChanges, OnDestroy {\r\n @Input() phoneNumber: string;\r\n @Input() internationalNumber: number;\r\n @Input() ctrl: FormControl;\r\n\r\n private destroyed: boolean;\r\n\r\n private onValidate() {\r\n const { ctrl, destroyed, phoneNumber, internationalNumber } = this;\r\n if (destroyed || !phoneNumber || !ctrl) return;\r\n let isValid = false;\r\n try {\r\n isValid = MonkeyUtils.isPhoneNumberValid(phoneNumber, internationalNumber);\r\n } catch (e) {\r\n //not to do\r\n }\r\n if (!isValid) {\r\n setTimeout(() => {\r\n ctrl.markAsDirty();\r\n ctrl.markAsTouched();\r\n ctrl.setErrors({ phone: true });\r\n }, 0);\r\n }\r\n }\r\n\r\n ngOnChanges({ ctrl, phoneNumber, internationalNumber }: SimpleChanges): void {\r\n if (\r\n (phoneNumber && !phoneNumber.firstChange) ||\r\n (internationalNumber && !internationalNumber.firstChange) ||\r\n (ctrl && !ctrl.firstChange)\r\n ) {\r\n this.onValidate();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroyed = true;\r\n this.onValidate();\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'monkey-input-phone',\r\n template: `\r\n <mecx-form-field [ngClass]=\"{ disabled: _disabled }\" [id]=\"_id\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body [class.error]=\"errorMessage?.trim()\">\r\n <monkey-icon\r\n [icon]=\"icon\"\r\n [color]=\"errorMessage?.trim() ? '#fa3838' : '#4B4A53'\"\r\n *ngIf=\"icon\"\r\n ></monkey-icon>\r\n <monkey-select\r\n [(ngModel)]=\"internationalNumber\"\r\n [labelSelect]=\"onHandleInternationalNumberFormated()\"\r\n (onChange)=\"onHandleCountryCode($event)\"\r\n >\r\n <monkey-option *ngFor=\"let cc of _countryCodes\" [label]=\"'+' + cc\" [value]=\"cc\">\r\n </monkey-option>\r\n </monkey-select>\r\n <input\r\n [name]=\"name\"\r\n type=\"string\"\r\n [placeholder]=\"placeholder\"\r\n (input)=\"onChangeValue($event)\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"_formatedValue\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"_disabled\"\r\n [maxLength]=\"maxLength\"\r\n phoneNumberValidate\r\n [ctrl]=\"_formControl\"\r\n [phoneNumber]=\"_handledValue\"\r\n [internationalNumber]=\"internationalNumber\"\r\n #monkeyInput\r\n />\r\n </mecx-form-field-body>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyInputPhoneComponent implements ControlValueAccessor, OnInit {\r\n @Input() name: string = `mecx-input-phone-${MonkeyUtils.getRandomString(10)}`;\r\n @Input() label: string;\r\n @Input() helperMessage: string = '';\r\n @Input() placeholder: string = '';\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() maxLength: number = 255;\r\n @Input() internationalNumber = 55;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n\r\n public _handledValue: any;\r\n public _id: string = `mecx-input-phone-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n public _formatedValue: any;\r\n public _regionCodes = [];\r\n public _countryCodes = [];\r\n public _formControl = null;\r\n\r\n constructor(@Optional() @Self() public ngControl: NgControl, private cdr: ChangeDetectorRef) {\r\n if (this.ngControl != null) {\r\n this.ngControl.valueAccessor = this;\r\n }\r\n }\r\n\r\n private handleValue(value: any): any {\r\n return MonkeyUtils.handleOnlyNumbers(`${value}`);\r\n }\r\n\r\n private replaceZero(value: any) {\r\n return `${value}`.replace(new RegExp(/0/, 'g'), '');\r\n }\r\n\r\n private formatValue(value: any): any {\r\n return MonkeyUtils.getPhoneNumberFormated(value, this.internationalNumber);\r\n }\r\n\r\n private getValue() {\r\n const { internationalNumber, _handledValue } = this;\r\n if (_handledValue) return `+${internationalNumber}${_handledValue}`;\r\n\r\n return '';\r\n }\r\n\r\n ngOnInit() {\r\n this._countryCodes = MonkeyUtils.getPhoneRegions();\r\n this.onHandleInternationalNumber();\r\n this.onHandleCountryCode(this.internationalNumber);\r\n this._formControl =\r\n this.ngControl && ((this.ngControl as any)?.form || (this.ngControl as any)?.control);\r\n }\r\n\r\n onHandleInternationalNumber(value?: string) {\r\n this.internationalNumber =\r\n MonkeyUtils.getPhoneCountryCode(value || this._handledValue) || this.internationalNumber;\r\n }\r\n\r\n onHandleInternationalNumberFormated() {\r\n const { internationalNumber } = this;\r\n return `+${internationalNumber}`;\r\n }\r\n\r\n onHandleCountryCode(event: number) {\r\n const { maxLength } = MonkeyUtils.getPhoneHandle(event);\r\n if (maxLength) {\r\n this.maxLength = maxLength;\r\n this.onChangeValue();\r\n }\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n this._handledValue = value;\r\n this._formatedValue = this.formatValue(value);\r\n this.cdr.detectChanges();\r\n this.onModelChange(this.getValue());\r\n this.onModelTouched(this.getValue());\r\n }\r\n\r\n get value(): any {\r\n return this.getValue();\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event?: any) {\r\n const value = this._formatedValue;\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n const handled = this.handleValue(value);\r\n this.writeValue(handled);\r\n this.onChange.next(handled);\r\n }\r\n\r\n @HostListener('click')\r\n onClick() {\r\n document?.getElementById(this._id)?.getElementsByTagName('input')?.[0]?.focus();\r\n }\r\n\r\n onKeyPress(event: any) {\r\n let pattern = null;\r\n const cmp = event?.target?.value;\r\n const inputChar = String.fromCharCode(event.charCode);\r\n\r\n pattern = /[0-9]/;\r\n if (inputChar === '0' && !this.replaceZero(cmp)) {\r\n event.preventDefault();\r\n return;\r\n }\r\n\r\n if (pattern && !pattern.test(inputChar)) {\r\n event.preventDefault();\r\n }\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n QueryList,\r\n ContentChildren,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n OnInit,\r\n OnChanges,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyOptionComponent } from '../option';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-select-multiple',\r\n template: `\r\n <mecx-form-field [id]=\"_id\" [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body (click)=\"open()\" [class.error]=\"errorMessage?.trim()\">\r\n <monkey-icon [icon]=\"icon\" [color]=\"'#4B4A53'\"></monkey-icon>\r\n\r\n <mecx-select class=\"trigger\" [ngClass]=\"{ open: _opened }\">\r\n <mecx-select__trigger>\r\n <span>\r\n {{ _selectedValues || 'Selecione' }}\r\n </span>\r\n <monkey-icon\r\n [icon]=\"!_opened ? 'arrow-down-16' : 'arrow-up-16'\"\r\n [color]=\"'#4B4A53'\"\r\n ></monkey-icon>\r\n </mecx-select__trigger>\r\n </mecx-select>\r\n </mecx-form-field-body>\r\n <mecx-select-inside [ngClass]=\"{ open: _opened }\">\r\n <mecx-select-options #selectOptions>\r\n <ng-content> </ng-content>\r\n </mecx-select-options>\r\n </mecx-select-inside>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeySelectMultipleComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeySelectMultipleComponent implements AfterViewInit, ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() labelMoreValues: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n @ViewChild('selectOptions', { static: true })\r\n selectOptions: ElementRef;\r\n\r\n private handledValue: any[] = [];\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n @ContentChildren(MonkeyOptionComponent)\r\n private options!: QueryList<MonkeyOptionComponent>;\r\n private selectedAll = false;\r\n\r\n public _selected: MonkeyOptionComponent[] = [];\r\n public _opened: boolean = false;\r\n public _id: string = `mecx-select-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n public _selectedValues = '';\r\n\r\n constructor(private cdRef: ChangeDetectorRef) {}\r\n\r\n private onHandleSelectedValues() {\r\n const { _selected, labelMoreValues } = this;\r\n let selectedValues = '';\r\n const handled = _selected.filter((_) => !_.selectAll);\r\n if (_selected.length > 0) {\r\n selectedValues = `${handled[0].label}`;\r\n if (_selected.length >= 2) {\r\n selectedValues = `${handled[0].label} ${labelMoreValues} ${handled.length - 1}`;\r\n }\r\n }\r\n this._selectedValues = selectedValues;\r\n }\r\n\r\n private onHandleSelected() {\r\n const { _opened, _selected } = this;\r\n let selectedLength = 0;\r\n let selectAll = null;\r\n this.options?.forEach((op) => {\r\n const found = _selected.findIndex((val: any) => {\r\n return val.value === op.value;\r\n });\r\n op.selected = null;\r\n if (op.selectAll) selectAll = op;\r\n if (found >= 0) {\r\n op.selected = op;\r\n selectedLength += 1;\r\n }\r\n });\r\n if (this.options?.length - 1 === selectedLength && selectAll) {\r\n this.selectedAll = true;\r\n selectAll.selected = selectAll;\r\n }\r\n this.onHandleSelectedValues();\r\n\r\n if (_opened) {\r\n this.selectOptions.nativeElement.focus();\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n private validateOptions() {\r\n if (!this.options) return;\r\n this._selected = [];\r\n let selectedLength = 0;\r\n let selectAll = null;\r\n this.options?.forEach((op) => {\r\n op.onSelectOption = this.onSelectOption.bind(this);\r\n op.type = 'select-multiple';\r\n op.selected = null;\r\n if (op.selectAll) selectAll = op;\r\n const found = this.handledValue.findIndex((val: any) => {\r\n return `${val}`.trim().toLowerCase() === `${op.value}`.trim().toLowerCase();\r\n });\r\n if (found >= 0) {\r\n op.selected = op;\r\n this._selected.push(op);\r\n selectedLength += 1;\r\n }\r\n });\r\n if (this.options?.length - 1 === selectedLength && selectAll) {\r\n this.selectedAll = true;\r\n selectAll.selected = selectAll;\r\n }\r\n this.onHandleSelectedValues();\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined) {\r\n if (this.handledValue.join(',') !== value) {\r\n value?.split(',')?.forEach((op: any) => {\r\n this.handledValue.push(op);\r\n });\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n }\r\n this.onHandleSelected();\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue.join(',');\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n }\r\n\r\n @HostListener('document:click')\r\n clickout() {\r\n this._opened = false;\r\n }\r\n\r\n open() {\r\n if (!this._opened) {\r\n setTimeout(() => {\r\n this._opened = true;\r\n this.onHandleSelected();\r\n }, 50);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.validateOptions();\r\n }, 0);\r\n\r\n this.options.changes.subscribe(() => {\r\n setTimeout(() => {\r\n this.validateOptions();\r\n }, 0);\r\n });\r\n }\r\n\r\n onSelectOption(selected: MonkeyOptionComponent) {\r\n if (selected.selectAll) {\r\n this.selectedAll = !this.selectedAll;\r\n this._selected = [];\r\n if (this.selectedAll) {\r\n this.options?.forEach((op) => {\r\n this._selected.push(op);\r\n });\r\n }\r\n } else {\r\n const index = this._selected.findIndex((val: any) => val.value === selected.value);\r\n if (index >= 0) {\r\n this._selected = this._selected.filter((op: MonkeyOptionComponent) => {\r\n return (\r\n `${op.value}`.trim().toLowerCase() !== `${selected.value}`.trim().toLowerCase() &&\r\n !op.selectAll\r\n );\r\n });\r\n } else this._selected.push(selected);\r\n }\r\n const value = this._selected\r\n .filter((val) => !val.selectAll)\r\n .map((val: any) => {\r\n return val.value;\r\n });\r\n\r\n this.onChange.next(value);\r\n this.onChangeValue(null, value.join(','));\r\n this.onHandleSelected();\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n QueryList,\r\n ContentChildren,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n OnChanges,\r\n AfterViewInit,\r\n Renderer2,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyOptionComponent } from '../option';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-select-search',\r\n template: `\r\n <mecx-form-field [id]=\"_id\" [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body (click)=\"open()\" [class.error]=\"errorMessage?.trim()\">\r\n <monkey-icon [icon]=\"icon\" [color]=\"'#aaaaaa'\"></monkey-icon>\r\n <mecx-select class=\"trigger\" [ngClass]=\"{ open: _opened }\">\r\n <mecx-select__trigger>\r\n <input\r\n [placeholder]=\"labelSelect || placeholder\"\r\n (input)=\"onChangeInput($event)\"\r\n #inputFilter\r\n [ngModel]=\"_selected?.label || ''\"\r\n />\r\n <monkey-icon\r\n [icon]=\"!_opened ? 'arrow-down-16' : 'arrow-up-16'\"\r\n [color]=\"'#4B4A53'\"\r\n ></monkey-icon>\r\n </mecx-select__trigger>\r\n </mecx-select>\r\n </mecx-form-field-body>\r\n <mecx-select-inside [ngClass]=\"{ open: _opened }\">\r\n <mecx-select-options #selectOptions>\r\n <ng-content> </ng-content>\r\n </mecx-select-options>\r\n </mecx-select-inside>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeySelectSearchComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeySelectSearchComponent implements AfterViewInit, OnChanges, ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() labelSelect = 'Selecione';\r\n @Input() fieldToCompare: string;\r\n @Input() onHandleOptions = new EventEmitter<any>();\r\n @Output() onChange = new EventEmitter<any>();\r\n @Output() onSearch = new EventEmitter<any>(null);\r\n\r\n @ViewChild('selectOptions', { static: true })\r\n selectOptions: ElementRef;\r\n\r\n @ViewChild('inputFilter', { static: true })\r\n inputFilter: ElementRef;\r\n\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n @ContentChildren(MonkeyOptionComponent)\r\n private options!: QueryList<MonkeyOptionComponent>;\r\n private timer: any;\r\n\r\n public _selected: MonkeyOptionComponent;\r\n public _opened: boolean = false;\r\n public _id: string = `mecx-select-search-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor(private cdRef: ChangeDetectorRef, private renderer: Renderer2) {\r\n //not to do\r\n }\r\n\r\n private onHandleSearch(search: any) {\r\n this.options.forEach((op) => {\r\n const source = `${op.label}`.toLowerCase();\r\n const destination = `${search}`.toLowerCase();\r\n if (source.indexOf(destination) > -1) {\r\n this.renderer.setStyle(op.elRef.nativeElement, 'display', 'inline');\r\n } else {\r\n this.renderer.setStyle(op.elRef.nativeElement, 'display', 'inline');\r\n }\r\n let display = 'inline';\r\n if (source.indexOf(destination) === -1) {\r\n display = 'none';\r\n }\r\n this.renderer.setStyle(op.elRef.nativeElement, 'display', display);\r\n });\r\n }\r\n\r\n private onHandleSelected() {\r\n const { _opened, _selected } = this;\r\n this.options.forEach((op) => {\r\n op.selected = _selected;\r\n });\r\n if (_opened) {\r\n let scrollValue = 0;\r\n if (_selected) {\r\n const { _id } = this._selected;\r\n scrollValue = document.getElementById(_id).offsetTop - 10;\r\n }\r\n this.selectOptions.nativeElement.scrollTo(0, scrollValue);\r\n this.selectOptions.nativeElement.focus();\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n private validateOptions() {\r\n const { fieldToCompare } = this;\r\n if (!this.options) return;\r\n this.options.forEach((op) => {\r\n op.onSelectOption = this.onSelectOption.bind(this);\r\n op.type = op?.type || 'select';\r\n op.selected = null;\r\n let source = '';\r\n let destination = '';\r\n if (fieldToCompare) {\r\n source = `${op.value[fieldToCompare]}`.toLowerCase();\r\n destination = `${this.handledValue?.[fieldToCompare]}`.toLowerCase();\r\n } else {\r\n source = `${op.value}`.toLowerCase();\r\n destination = `${this.handledValue}`.toLowerCase();\r\n }\r\n if (source === destination) {\r\n this._selected = op;\r\n op.selected = op;\r\n }\r\n });\r\n }\r\n\r\n private doSearch(search: string) {\r\n this.onSearch.next(search);\r\n this.onHandleSearch(search);\r\n this._opened = true;\r\n this.onHandleSelected();\r\n }\r\n\r\n private init() {\r\n setTimeout(() => {\r\n this._selected = null;\r\n this.validateOptions();\r\n }, 0);\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n this.validateOptions();\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n this.onChange.next(value);\r\n }\r\n\r\n @HostListener('document:click')\r\n clickout() {\r\n this._opened = false;\r\n }\r\n\r\n open() {\r\n if (!this._opened) {\r\n setTimeout(() => {\r\n this._opened = true;\r\n this.onHandleSelected();\r\n (this.inputFilter?.nativeElement as HTMLInputElement).focus();\r\n }, 50);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.init();\r\n this.onHandleOptions.subscribe(() => {\r\n this.init();\r\n });\r\n }\r\n\r\n ngOnChanges() {\r\n this.init();\r\n }\r\n\r\n onSelectOption(select: MonkeyOptionComponent) {\r\n this._selected = select;\r\n const { value } = select;\r\n this._opened = false;\r\n this.onChangeValue(null, value);\r\n this.onHandleSelected();\r\n }\r\n\r\n onChangeInput(event: any) {\r\n const { value } = event?.target;\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n this.timer = setTimeout(() => {\r\n this.doSearch(value);\r\n }, 400);\r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n QueryList,\r\n ContentChildren,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyOptionComponent } from '../option';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-select-filter',\r\n template: `\r\n <mecx-select-filter\r\n class=\"trigger\"\r\n [ngClass]=\"{\r\n open: _opened,\r\n none: type === 'none',\r\n border: type === 'border'\r\n }\"\r\n (click)=\"open()\"\r\n >\r\n <mecx-select__trigger>\r\n <span>\r\n {{ _selected?.label || placeholder }}\r\n </span>\r\n <monkey-icon\r\n [icon]=\"!_opened ? 'arrow-down-16' : 'arrow-up-16'\"\r\n [color]=\"'#4B4A53'\"\r\n ></monkey-icon>\r\n </mecx-select__trigger>\r\n </mecx-select-filter>\r\n <mecx-select-inside [ngClass]=\"{ open: _opened }\">\r\n <mecx-select-options #selectOptions>\r\n <ng-content> </ng-content>\r\n </mecx-select-options>\r\n </mecx-select-inside>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeySelectFilterComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeySelectFilterComponent implements OnInit, ControlValueAccessor {\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() type: string;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n @ViewChild('selectOptions', { static: true })\r\n selectOptions: ElementRef;\r\n\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n @ContentChildren(MonkeyOptionComponent)\r\n private options!: QueryList<MonkeyOptionComponent>;\r\n\r\n public _selected: MonkeyOptionComponent;\r\n public _opened: boolean = false;\r\n public _id: string = `mecx-select-filter-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor(private cdRef: ChangeDetectorRef) {}\r\n\r\n private onHandleSelected() {\r\n const { _opened, _selected } = this;\r\n this.options.forEach((op) => {\r\n op.selected = _selected;\r\n });\r\n if (_opened) {\r\n let scrollValue = 0;\r\n if (_selected) {\r\n const { _id } = this._selected;\r\n scrollValue = document.getElementById(_id).offsetTop;\r\n }\r\n this.selectOptions.nativeElement.scrollTo(0, scrollValue);\r\n this.selectOptions.nativeElement.focus();\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n private validateOptions() {\r\n if (!this.options) return;\r\n this.options.forEach((op) => {\r\n op.onSelectOption = this.onSelectOption.bind(this);\r\n op.type = 'select';\r\n op.selected = null;\r\n if (`${op.value}`.toLowerCase() === `${this.handledValue}`.toLowerCase()) {\r\n this._selected = op;\r\n op.selected = op;\r\n }\r\n });\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n this.validateOptions();\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n this.onChange.next(value);\r\n }\r\n\r\n @HostListener('document:click')\r\n clickout() {\r\n this._opened = false;\r\n }\r\n\r\n open() {\r\n if (!this._opened) {\r\n setTimeout(() => {\r\n this._opened = true;\r\n this.onHandleSelected();\r\n }, 50);\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n setTimeout(() => {\r\n this.validateOptions();\r\n }, 0);\r\n }\r\n\r\n onSelectOption(select: MonkeyOptionComponent) {\r\n this._selected = select;\r\n const { value } = select;\r\n this._opened = false;\r\n this.onChangeValue(null, value);\r\n this.onHandleSelected();\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeySelectComponent } from './select.component';\r\nimport { MonkeySelectMultipleComponent } from './select-multiple.component';\r\nimport { MonkeySelectSearchComponent } from './select-search.component';\r\nimport { MonkeySelectFilterComponent } from './select-filter.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MonkeyOptionModule } from '../option';\r\nimport { MonkeyIconModule } from '../icon';\r\nimport { MonkeyInputModule } from '../input';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonkeySelectComponent,\r\n MonkeySelectMultipleComponent,\r\n MonkeySelectSearchComponent,\r\n MonkeySelectFilterComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MonkeyInputModule,\r\n MonkeyOptionModule,\r\n MonkeyIconModule,\r\n ],\r\n exports: [\r\n MonkeySelectComponent,\r\n MonkeySelectMultipleComponent,\r\n MonkeySelectSearchComponent,\r\n MonkeySelectFilterComponent,\r\n ],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeySelectModule {}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { MonkeyIconModule } from '../icon';\r\nimport { MonkeyInputPhoneComponent, PhoneNumberValidDirective } from './input-phone.component';\r\nimport { MonkeySelectModule } from '../select';\r\nimport { MonkeyOptionModule } from '../option';\r\n\r\n@NgModule({\r\n declarations: [MonkeyInputPhoneComponent, PhoneNumberValidDirective],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxMaskModule.forRoot(),\r\n MonkeyIconModule,\r\n MonkeySelectModule,\r\n MonkeyOptionModule,\r\n ],\r\n exports: [MonkeyInputPhoneComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyInputPhoneModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-checkbox',\r\n template: `\r\n <mecx-form-field *ngIf=\"type === 'single'; else multiple\" [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body class=\"checkbox\">\r\n <label class=\"mecx-check-container\">\r\n <input type=\"checkbox\" [(ngModel)]=\"value\" [id]=\"_id\" [disabled]=\"_disabled\" />\r\n {{ description }}\r\n <ng-content> </ng-content>\r\n <p class=\"mecx-check-mark\"></p>\r\n </label>\r\n </mecx-form-field-body>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n <ng-template #multiple>\r\n <mecx-form-field [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-body class=\"checkbox\">\r\n <label class=\"mecx-check-container\">\r\n <input type=\"checkbox\" [(ngModel)]=\"value\" [id]=\"_id\" [disabled]=\"_disabled\" />\r\n {{ description }}\r\n <p class=\"mecx-check-mark\"></p>\r\n </label>\r\n </mecx-form-field-body>\r\n </mecx-form-field>\r\n </ng-template>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyCheckboxComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeyCheckboxComponent implements ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() type: string = 'single';\r\n @Input() helperMessage: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() description: any;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n\r\n public _id: string = `mecx-checkbox-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor() {}\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n this.onChange.next(value);\r\n }\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyCheckboxComponent } from './checkbox.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@NgModule({\r\n declarations: [MonkeyCheckboxComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule],\r\n exports: [MonkeyCheckboxComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyCheckboxModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n ContentChildren,\r\n QueryList,\r\n AfterViewInit,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyOptionComponent } from '../option';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-radiobutton',\r\n template: `\r\n <mecx-form-field [id]=\"_id\" [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body class=\"radiobutton\">\r\n <ng-content> </ng-content>\r\n </mecx-form-field-body>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyRadioButtonComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeyRadioButtonComponent\r\n implements AfterViewInit, ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() errorMessage: string;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n @ContentChildren(MonkeyOptionComponent)\r\n private options!: QueryList<MonkeyOptionComponent>;\r\n\r\n public _selected: MonkeyOptionComponent;\r\n public _id: string = `mecx-radiobutton-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n\r\n constructor() {}\r\n\r\n private onHandleSelected() {\r\n this.options.forEach((op) => {\r\n op.selected = this._selected;\r\n });\r\n }\r\n\r\n private validateOptions() {\r\n if (!this.options) return;\r\n this.options.forEach((op) => {\r\n op.onSelectOption = this.onSelectOption.bind(this);\r\n op.type = 'radio';\r\n op.selected = null;\r\n if (\r\n `${op.value}`.toLowerCase() === `${this.handledValue}`.toLowerCase()\r\n ) {\r\n this._selected = op;\r\n op.selected = op;\r\n }\r\n });\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n this.validateOptions();\r\n }\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any, value: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.writeValue(value);\r\n this.onChange.next(value);\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.validateOptions();\r\n }, 0);\r\n }\r\n\r\n onSelectOption(select: MonkeyOptionComponent) {\r\n this._selected = select;\r\n const { value } = select;\r\n this.onChangeValue(null, value);\r\n this.onHandleSelected();\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyRadioButtonComponent } from './radiobutton.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonkeyRadioButtonComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule\r\n ],\r\n exports: [\r\n MonkeyRadioButtonComponent\r\n ],\r\n schemas: [\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class MonkeyRadioButtonModule { }","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence \r\n**************************/\r\nimport { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-wizard',\r\n template: `\r\n <div [ngClass]=\"position\">\r\n <div class=\"mecx-wizard-body\"\r\n *ngFor=\"let step of _totalSteps\">\r\n <div class=\"mecx-wizard-option mecx-wizard-option__theme\"\r\n [ngClass]=\"{'selected': step === selectedStep, 'completed': step < selectedStep}\">\r\n {{ step }}\r\n </div>\r\n <div class=\"mecx-wizard-option-separator\"></div>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyWizardComponent implements OnInit{\r\n\r\n @Input() totalSteps: number = 0;\r\n @Input() selectedStep: number = 0;\r\n @Input() position: string = 'horizontal';\r\n\r\n public _totalSteps: number[];\r\n public _selectedStep: number;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(){\r\n const { totalSteps, selectedStep } = this;\r\n this._totalSteps = new Array(Number(totalSteps)).fill(1).map((step: number, index: number) => {\r\n return step + index;\r\n });\r\n this._selectedStep = Number(selectedStep);\r\n }\r\n}","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyWizardComponent } from './wizard.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MonkeyIconModule } from '../icon';\r\n\r\n@NgModule({\r\n declarations: [\r\n MonkeyWizardComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MonkeyIconModule\r\n ],\r\n exports: [\r\n MonkeyWizardComponent\r\n ],\r\n schemas: [\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class MonkeyWizardModule { }","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n forwardRef,\r\n HostListener,\r\n Output,\r\n EventEmitter,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { MonkeyUtils } from '../../core/utils';\r\n\r\n@Component({\r\n selector: 'monkey-file-upload',\r\n template: `\r\n <mecx-form-field [ngClass]=\"{ disabled: _disabled }\">\r\n <mecx-form-field-header>\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n </mecx-form-field-header>\r\n <mecx-form-field-body>\r\n <input\r\n #fileInput\r\n hidden\r\n [name]=\"name\"\r\n type=\"file\"\r\n (change)=\"onChangeValue($event.target.files)\"\r\n [id]=\"_id\"\r\n [disabled]=\"_disabled\"\r\n />\r\n <span>{{\r\n value?.fileName\r\n ? value.fileName\r\n : uploadOngoingMessage\r\n ? uploadOngoingMessage\r\n : placeholder\r\n }}</span>\r\n <monkey-icon\r\n icon=\"upload-16\"\r\n [color]=\"'#4B4A53'\"\r\n *ngIf=\"!value?.fileName\"\r\n ></monkey-icon>\r\n <monkey-icon\r\n icon=\"close-16\"\r\n *ngIf=\"value?.fileName\"\r\n (click)=\"onClear($event)\"\r\n ></monkey-icon>\r\n </mecx-form-field-body>\r\n <mecx-form-field-upload-info *ngIf=\"_progress\">\r\n <span [style.width.%]=\"_progress\"> {{ _progress }}%</span>\r\n </mecx-form-field-upload-info>\r\n <mecx-form-field-footer>\r\n <info>\r\n {{ infoMessage }}\r\n </info>\r\n <error>\r\n {{ errorMessage }}\r\n {{ _uploadErrorMessage }}\r\n {{ _maxSizeErrorMessage ? maxSizeErrorMessage : null }}\r\n {{\r\n _allowedExtensionErrorMessage ? allowedExtensionErrorMessage : null\r\n }}\r\n </error>\r\n </mecx-form-field-footer>\r\n </mecx-form-field>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyFileUploadComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeyFileUploadComponent implements ControlValueAccessor, OnInit {\r\n @Input() name: string;\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() icon: string;\r\n @Input() infoMessage: string;\r\n @Input() uploadOngoingMessage: string;\r\n @Input() errorMessage: string;\r\n @Input() listenFiles: boolean;\r\n @Input() maxSize: number;\r\n @Input() allowedExtensions: string[];\r\n @Input() maxSizeErrorMessage: string;\r\n @Input() allowedExtensionErrorMessage: string;\r\n @Input() fileUpload: Function;\r\n @Output() onChange = new EventEmitter<any>();\r\n @Output() onHandleFilesReady = new EventEmitter<File>();\r\n\r\n private configFiles: ConfigFiles;\r\n private handledValue: any;\r\n private onModelChange = (value: any) => {};\r\n private onModelTouched = (value: any) => {};\r\n\r\n public _id: string = `mecx-file-upload-${MonkeyUtils.getRandomString(10)}`;\r\n public _disabled: boolean = false;\r\n public _progress: number = null;\r\n public _maxSizeErrorMessage: boolean = false;\r\n public _allowedExtensionErrorMessage: boolean = false;\r\n public _uploadErrorMessage: string = '';\r\n\r\n constructor() {}\r\n\r\n private validateFile(file: File): boolean {\r\n const { configFiles } = this;\r\n const { name, size } = file;\r\n\r\n if (configFiles.allowedExtensions) {\r\n const hasAllowedExtensions =\r\n configFiles.allowedExtensions.filter((allow) => {\r\n const extension = name.substr(name.indexOf('.', -name.length));\r\n return (\r\n allow.extension.toLowerCase() === extension.toLowerCase() ||\r\n !MonkeyUtils.persistNullEmptyUndefined(extension)\r\n );\r\n }).length > 0;\r\n if (!hasAllowedExtensions) {\r\n this._allowedExtensionErrorMessage = true;\r\n return false;\r\n }\r\n }\r\n\r\n if (configFiles.maxSize) {\r\n if (size > configFiles.maxSize) {\r\n this._maxSizeErrorMessage = true;\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n private handleCallback(\r\n progress: number,\r\n respUploaded: any,\r\n uploadError: string\r\n ) {\r\n this._progress = progress;\r\n this.value = respUploaded;\r\n this._uploadErrorMessage = uploadError;\r\n this.onChange.next(this.value);\r\n }\r\n\r\n ngOnInit() {\r\n this.allowedExtensions = this.allowedExtensions || [\r\n '.jpg',\r\n '.jpeg',\r\n '.png',\r\n '.pdf',\r\n '.txt',\r\n '.xls',\r\n '.xlsx',\r\n ];\r\n let allow: AllowedFile[] = null;\r\n if (this.allowedExtensions.length > 0) {\r\n allow = this.allowedExtensions.map((val) => {\r\n return { extension: val };\r\n });\r\n }\r\n\r\n this.configFiles = {\r\n maxSize: this.maxSize || 5 * 1024 * 1024,\r\n allowedExtensions: allow,\r\n };\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onModelChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onModelTouched = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n this._disabled = isDisabled;\r\n }\r\n\r\n @Input()\r\n set value(value: any) {\r\n if (value !== undefined && this.handledValue !== value) {\r\n this.handledValue = value;\r\n this.onModelChange(value);\r\n this.onModelTouched(value);\r\n }\r\n }\r\n\r\n get value(): any {\r\n return this.handledValue;\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n onChangeValue(event: any) {\r\n const { listenFiles } = this;\r\n this._allowedExtensionErrorMessage = false;\r\n this._maxSizeErrorMessage = false;\r\n for (let index = 0; index < event.length; index++) {\r\n const file: File = event[index];\r\n if (this.validateFile(file)) {\r\n if (listenFiles) {\r\n this.onHandleFilesReady.next(file);\r\n } else {\r\n this.fileUpload(file, this.handleCallback.bind(this));\r\n }\r\n }\r\n }\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n const { _id } = this;\r\n (<HTMLInputElement>document.getElementById(_id)).value = null;\r\n document.getElementById(_id).click();\r\n }\r\n\r\n onClear(event: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n this.value = null;\r\n this.onChange.next(this.value);\r\n }\r\n}\r\n\r\ninterface AllowedFile {\r\n extension: string;\r\n}\r\n\r\ninterface ConfigFiles {\r\n maxSize: number;\r\n allowedExtensions: AllowedFile[];\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyFileUploadComponent } from './file-upload.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { MonkeyIconModule } from '../icon/icon.module';\r\n\r\n@NgModule({\r\n declarations: [MonkeyFileUploadComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxMaskModule.forRoot(),\r\n MonkeyIconModule,\r\n ],\r\n exports: [MonkeyFileUploadComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyFileUploadModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n OnInit,\r\n HostListener,\r\n ChangeDetectorRef,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n} from '@angular/core';\r\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\r\nimport { MonkeyUtils } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-image-crop',\r\n template: `\r\n <monkey-file-upload\r\n [label]=\"label\"\r\n [helperMessage]=\"helperMessage\"\r\n icon=\"upload-16\"\r\n [placeholder]=\"placeholder\"\r\n [maxSize]=\"maxSize\"\r\n [maxSizeErrorMessage]=\"maxSizeErrorMessage\"\r\n [allowedExtensionErrorMessage]=\"allowedExtensionErrorMessage\"\r\n (onHandleFilesReady)=\"onHandleFileUploadFilesReady($event)\"\r\n listenFiles=\"true\"\r\n [maxFiles]=\"1\"\r\n [allowedExtensions]=\"['.jpg', '.jpeg', '.png']\"\r\n *ngIf=\"!_loadCompleted\"\r\n >\r\n </monkey-file-upload>\r\n <div *ngIf=\"_loadPreview\">\r\n <progress class=\"monkey-progress monkey-progress__grey\"></progress>\r\n </div>\r\n <div class=\"box-cut-title\" *ngIf=\"_loadCompleted\">\r\n {{ cropTitle }} {{ _fileNameToCut }}\r\n </div>\r\n <div\r\n id=\"imageCropSource\"\r\n name=\"imageCropSource\"\r\n #imageCropSource\r\n class=\"box-cut\"\r\n *ngIf=\"_loadCompleted\"\r\n >\r\n <div class=\"edit-resize-cut\">\r\n <img class=\"source-image\" [src]=\"_safeImgDataUrl\" />\r\n <div\r\n class=\"cut\"\r\n [style.top.px]=\"_cutCoords.y1\"\r\n [style.left.px]=\"_cutCoords.x1\"\r\n [style.width.px]=\"_cutCoords.x2 - _cutCoords.x1\"\r\n [style.height.px]=\"_cutCoords.y2 - _cutCoords.y1\"\r\n *ngIf=\"_loadCompleted\"\r\n >\r\n <div\r\n (mousedown)=\"startMove($event, 'move')\"\r\n (touchstart)=\"startMove($event, 'move')\"\r\n class=\"move\"\r\n ></div>\r\n <span\r\n class=\"resize top-left\"\r\n (mousedown)=\"startMove($event, 'resize', 'topleft')\"\r\n (touchstart)=\"startMove($event, 'resize', 'topleft')\"\r\n >\r\n </span>\r\n <span class=\"resize top\"></span>\r\n <span\r\n class=\"resize top-right\"\r\n (mousedown)=\"startMove($event, 'resize', 'topright')\"\r\n (touchstart)=\"startMove($event, 'resize', 'topright')\"\r\n >\r\n </span>\r\n <span class=\"resize right\"></span>\r\n <span\r\n class=\"resize bottom-right\"\r\n (mousedown)=\"startMove($event, 'resize', 'bottomright')\"\r\n (touchstart)=\"startMove($event, 'resize', 'bottomright')\"\r\n >\r\n </span>\r\n <span class=\"resize bottom\"> </span>\r\n <span\r\n class=\"resize bottom-left\"\r\n (mousedown)=\"startMove($event, 'resize', 'bottomleft')\"\r\n (touchstart)=\"startMove($event, 'resize', 'bottomleft')\"\r\n >\r\n </span>\r\n <span class=\"resize left\"> </span>\r\n <span\r\n class=\"resize-bar top\"\r\n (mousedown)=\"startMove($event, 'resize', 'top')\"\r\n (touchstart)=\"startMove($event, 'resize', 'top')\"\r\n >\r\n </span>\r\n <span\r\n class=\"resize-bar right\"\r\n (mousedown)=\"startMove($event, 'resize', 'right')\"\r\n (touchstart)=\"startMove($event, 'resize', 'right')\"\r\n >\r\n </span>\r\n <span\r\n class=\"resize-bar bottom\"\r\n (mousedown)=\"startMove($event, 'resize', 'bottom')\"\r\n (touchstart)=\"startMove($event, 'resize', 'bottom')\"\r\n >\r\n </span>\r\n <span\r\n class=\"resize-bar left\"\r\n (mousedown)=\"startMove($event, 'resize', 'left')\"\r\n (touchstart)=\"startMove($event, 'resize', 'left')\"\r\n >\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <mecx-image-crop-upload-info *ngIf=\"_progress\">\r\n <span [style.width.%]=\"_progress\"> {{ _progress }}%</span>\r\n </mecx-image-crop-upload-info>\r\n <monkey-button\r\n type=\"tertiary\"\r\n color=\"theme\"\r\n (click)=\"onHandleImageChange()\"\r\n *ngIf=\"_loadCompleted\"\r\n >\r\n {{ labelChangeImage }}\r\n </monkey-button>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyImageCropComponent implements OnInit {\r\n @Input() label: string;\r\n @Input() cropTitle: string;\r\n @Input() labelChangeImage: string;\r\n @Input() labelPreviewImage: string;\r\n @Input() helperMessage: string;\r\n @Input() placeholder: string;\r\n @Input() maxSize: number;\r\n @Input() maxSizeErrorMessage: string;\r\n @Input() allowedExtensionErrorMessage: string;\r\n @Input() fileUpload: Function;\r\n @Input() onHandleGetFilesReady = new EventEmitter<any>();\r\n @Output() onHandleFilesReady = new EventEmitter<any>();\r\n @Output() onHandlePreviewReady = new EventEmitter<any>();\r\n\r\n public _cutCoords: CutCoords = { y1: 0, y2: 0, x1: 0, x2: 0 };\r\n public _fileTypeToCut: string = '';\r\n public _fileNameToCut: string = '';\r\n public _progressingCut: boolean;\r\n public _loadCompleted: boolean;\r\n public _loadPreview: boolean;\r\n public _safeImgDataUrl: SafeUrl | string;\r\n public _disabled: boolean = false;\r\n public _progress: number = null;\r\n public _uploadErrorMessage: string = '';\r\n\r\n private mouseMoves: MouseMoves;\r\n private areMaxSize: Dimensions = { width: 150, height: 150 };\r\n private cutScaledMinWidth = 100;\r\n private cutScaledMinHeight = 100;\r\n private originalSize: Dimensions = { width: 0, height: 0 };\r\n private fileReader: FileReader = new FileReader();\r\n private originalImage = new Image();\r\n private imageCutReady: Blob = null;\r\n private savedCallback: Function;\r\n\r\n constructor(\r\n private cdr: ChangeDetectorRef,\r\n private sanitizer: DomSanitizer\r\n ) {}\r\n\r\n private initCut() {\r\n this.areMaxSize = {\r\n width: document.getElementById('imageCropSource').offsetWidth || 150,\r\n height: document.getElementById('imageCropSource').offsetHeight || 150,\r\n };\r\n this._cutCoords = {\r\n x1: this.areMaxSize.width / 2 - this.cutScaledMinWidth,\r\n y1: this.areMaxSize.height / 2 - this.cutScaledMinHeight,\r\n x2: this.areMaxSize.width / 2 + this.cutScaledMinWidth,\r\n y2: this.areMaxSize.height / 2 + this.cutScaledMinHeight,\r\n };\r\n this.cut();\r\n }\r\n\r\n private setProgressingCut(tp: boolean) {\r\n this._progressingCut = tp;\r\n }\r\n\r\n private setProgressLoadCompleted(tp: boolean) {\r\n this._loadCompleted = tp;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private setProgressLoadPreview(tp: boolean) {\r\n this._loadPreview = tp;\r\n }\r\n\r\n private cut() {\r\n this.setProgressingCut(true);\r\n const imagePosition = this.getImagePosition();\r\n let width = imagePosition.x2 - imagePosition.x1;\r\n let height = imagePosition.y2 - imagePosition.y1;\r\n const canvas = document.createElement('canvas') as HTMLCanvasElement;\r\n canvas.width = width;\r\n canvas.height = height;\r\n\r\n const ctx = canvas.getContext('2d');\r\n ctx.drawImage(\r\n this.originalImage,\r\n imagePosition.x1,\r\n imagePosition.y1,\r\n width,\r\n height,\r\n 0,\r\n 0,\r\n width,\r\n height\r\n );\r\n this.getCanvasBlob(canvas);\r\n }\r\n\r\n private getImagePosition(): CutCoords {\r\n const ratiow =\r\n this.originalSize.width /\r\n document.getElementById('imageCropSource').offsetWidth;\r\n const ratioh =\r\n this.originalSize.height /\r\n document.getElementById('imageCropSource').offsetHeight;\r\n return {\r\n x1: Math.round(this._cutCoords.x1 * ratiow),\r\n y1: Math.round(this._cutCoords.y1 * ratioh),\r\n x2: Math.min(\r\n Math.round(this._cutCoords.x2 * ratiow),\r\n this.originalSize.width\r\n ),\r\n y2: Math.min(\r\n Math.round(this._cutCoords.y2 * ratioh),\r\n this.originalSize.height\r\n ),\r\n };\r\n }\r\n\r\n private getCanvasBlob(cropCanvas: HTMLCanvasElement) {\r\n cropCanvas.toBlob(\r\n (val: Blob) => {\r\n this.imageCutReady = val;\r\n this.setProgressingCut(false);\r\n },\r\n 'image/jpeg',\r\n 0.95\r\n );\r\n }\r\n\r\n private getClientX(event: any): number {\r\n return (\r\n event.clientX ||\r\n (event.touches && event.touches[0] && event.touches[0].clientX)\r\n );\r\n }\r\n\r\n private getClientY(event: any): number {\r\n return (\r\n event.clientY ||\r\n (event.touches && event.touches[0] && event.touches[0].clientY)\r\n );\r\n }\r\n\r\n private resize(event: any): void {\r\n const diffX = this.getClientX(event) - this.mouseMoves.clientX;\r\n const diffY = this.getClientY(event) - this.mouseMoves.clientY;\r\n switch (this.mouseMoves.position) {\r\n case 'left':\r\n this._cutCoords.x1 = Math.min(\r\n this.mouseMoves.x1 + diffX,\r\n this._cutCoords.x2 - this.cutScaledMinWidth\r\n );\r\n break;\r\n case 'topleft':\r\n this._cutCoords.x1 = Math.min(\r\n this.mouseMoves.x1 + diffX,\r\n this._cutCoords.x2 - this.cutScaledMinWidth\r\n );\r\n this._cutCoords.y1 = Math.min(\r\n this.mouseMoves.y1 + diffY,\r\n this._cutCoords.y2 - this.cutScaledMinHeight\r\n );\r\n break;\r\n case 'top':\r\n this._cutCoords.y1 = Math.min(\r\n this.mouseMoves.y1 + diffY,\r\n this._cutCoords.y2 - this.cutScaledMinHeight\r\n );\r\n break;\r\n case 'topright':\r\n this._cutCoords.x2 = Math.max(\r\n this.mouseMoves.x2 + diffX,\r\n this._cutCoords.x1 + this.cutScaledMinWidth\r\n );\r\n this._cutCoords.y1 = Math.min(\r\n this.mouseMoves.y1 + diffY,\r\n this._cutCoords.y2 - this.cutScaledMinHeight\r\n );\r\n break;\r\n case 'right':\r\n this._cutCoords.x2 = Math.max(\r\n this.mouseMoves.x2 + diffX,\r\n this._cutCoords.x1 + this.cutScaledMinWidth\r\n );\r\n break;\r\n case 'bottomright':\r\n this._cutCoords.x2 = Math.max(\r\n this.mouseMoves.x2 + diffX,\r\n this._cutCoords.x1 + this.cutScaledMinWidth\r\n );\r\n this._cutCoords.y2 = Math.max(\r\n this.mouseMoves.y2 + diffY,\r\n this._cutCoords.y1 + this.cutScaledMinHeight\r\n );\r\n break;\r\n case 'bottom':\r\n this._cutCoords.y2 = Math.max(\r\n this.mouseMoves.y2 + diffY,\r\n this._cutCoords.y1 + this.cutScaledMinHeight\r\n );\r\n break;\r\n case 'bottomleft':\r\n this._cutCoords.x1 = Math.min(\r\n this.mouseMoves.x1 + diffX,\r\n this._cutCoords.x2 - this.cutScaledMinWidth\r\n );\r\n this._cutCoords.y2 = Math.max(\r\n this.mouseMoves.y2 + diffY,\r\n this._cutCoords.y1 + this.cutScaledMinHeight\r\n );\r\n break;\r\n }\r\n }\r\n\r\n private move(event: any) {\r\n const diffX = this.getClientX(event) - this.mouseMoves.clientX;\r\n const diffY = this.getClientY(event) - this.mouseMoves.clientY;\r\n\r\n this._cutCoords.x1 = this.mouseMoves.x1 + diffX;\r\n this._cutCoords.y1 = this.mouseMoves.y1 + diffY;\r\n this._cutCoords.x2 = this.mouseMoves.x2 + diffX;\r\n this._cutCoords.y2 = this.mouseMoves.y2 + diffY;\r\n }\r\n\r\n private checkMovesPosition(maintainSize = false): void {\r\n if (this._cutCoords.x1 < 0) {\r\n this._cutCoords.x2 -= maintainSize ? this._cutCoords.x1 : 0;\r\n this._cutCoords.x1 = 0;\r\n }\r\n if (this._cutCoords.y1 < 0) {\r\n this._cutCoords.y2 -= maintainSize ? this._cutCoords.y1 : 0;\r\n this._cutCoords.y1 = 0;\r\n }\r\n if (this._cutCoords.x2 > this.areMaxSize.width) {\r\n this._cutCoords.x1 -= maintainSize\r\n ? this._cutCoords.x2 - this.areMaxSize.width\r\n : 0;\r\n this._cutCoords.x2 = this.areMaxSize.width;\r\n }\r\n if (this._cutCoords.y2 > this.areMaxSize.height) {\r\n this._cutCoords.y1 -= maintainSize\r\n ? this._cutCoords.y2 - this.areMaxSize.height\r\n : 0;\r\n this._cutCoords.y2 = this.areMaxSize.height;\r\n }\r\n }\r\n\r\n private onLoadBeginPreview = (_event) => {\r\n this.setProgressLoadCompleted(false);\r\n this.setProgressLoadPreview(true);\r\n };\r\n\r\n private onLoadEndPreview = (_event) => {\r\n this.originalImage.src = this.fileReader.result.toString();\r\n this.originalImage.onload = () => {\r\n setTimeout(() => {\r\n this.originalSize.width = this.originalImage.width;\r\n this.originalSize.height = this.originalImage.height;\r\n this.setProgressLoadCompleted(true);\r\n this.setProgressLoadPreview(false);\r\n this.initCut();\r\n }, 1000);\r\n };\r\n this._safeImgDataUrl = this.sanitizer.bypassSecurityTrustResourceUrl(\r\n this.fileReader.result.toString()\r\n );\r\n };\r\n\r\n private imagePreview(file: any) {\r\n const { name, type } = file;\r\n this._fileNameToCut = MonkeyUtils.truncate(name);\r\n this._fileTypeToCut = type;\r\n this.fileReader.readAsDataURL(file);\r\n }\r\n\r\n private handleCallback(\r\n progress: number,\r\n respUploaded: any,\r\n uploadError: string\r\n ) {\r\n this._progress = progress;\r\n this._uploadErrorMessage = uploadError;\r\n if (respUploaded) {\r\n this.savedCallback(respUploaded);\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n const { onHandleGetFilesReady } = this;\r\n this.fileReader.onloadstart = this.onLoadBeginPreview;\r\n this.fileReader.onload = this.onLoadEndPreview;\r\n\r\n onHandleGetFilesReady.subscribe((val: Function) => {\r\n this.savedCallback = val;\r\n const file = this.imageCutReady\r\n ? MonkeyUtils.handleBlobFile(\r\n this.imageCutReady,\r\n this._fileNameToCut,\r\n this._fileTypeToCut\r\n )\r\n : null;\r\n this.fileUpload(file, this.handleCallback.bind(this));\r\n });\r\n }\r\n\r\n startMove(\r\n event: any,\r\n moveType: string,\r\n position: string | null = null\r\n ): void {\r\n event.preventDefault();\r\n this.mouseMoves = {\r\n active: true,\r\n type: moveType,\r\n position,\r\n clientX: this.getClientX(event),\r\n clientY: this.getClientY(event),\r\n ...this._cutCoords,\r\n };\r\n }\r\n\r\n @HostListener('mousemove', ['$event'])\r\n @HostListener('touchmove', ['$event'])\r\n moveImg(event: any): void {\r\n if (this.mouseMoves && this.mouseMoves.active) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n if (this.mouseMoves.type === 'move') {\r\n this.move(event);\r\n this.checkMovesPosition(true);\r\n } else if (this.mouseMoves.type === 'resize') {\r\n this.resize(event);\r\n this.checkMovesPosition(false);\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n @HostListener('document:mouseup')\r\n @HostListener('document:touchend')\r\n moveStop(): void {\r\n if (this.mouseMoves && this.mouseMoves.active) {\r\n this.mouseMoves.active = false;\r\n this.cut();\r\n }\r\n }\r\n\r\n onHandleFileUploadFilesReady(files: any) {\r\n this.imagePreview(files);\r\n }\r\n\r\n onHandleImageChange() {\r\n this.imageCutReady = null;\r\n this._loadCompleted = false;\r\n this._loadPreview = false;\r\n this._fileNameToCut = '';\r\n this._fileTypeToCut = '';\r\n }\r\n\r\n onHandleImagePreview() {\r\n const file = MonkeyUtils.handleBlobFile(\r\n this.imageCutReady,\r\n this._fileNameToCut,\r\n this._fileTypeToCut\r\n );\r\n this.onHandlePreviewReady.next(file);\r\n }\r\n}\r\n\r\ninterface Dimensions {\r\n width: number;\r\n height: number;\r\n}\r\n\r\ninterface CutCoords {\r\n x1?: number;\r\n y1?: number;\r\n x2?: number;\r\n y2?: number;\r\n}\r\n\r\ninterface MouseMoves {\r\n active: boolean;\r\n type: string | null;\r\n position: string | null;\r\n x1?: number;\r\n y1?: number;\r\n x2?: number;\r\n y2?: number;\r\n clientX: number;\r\n clientY: number;\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyImageCropComponent } from './image-crop.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { MonkeyFileUploadModule } from '../file-upload';\r\nimport { MonkeyButtonModule } from '../button';\r\n\r\n@NgModule({\r\n declarations: [MonkeyImageCropComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxMaskModule.forRoot(),\r\n MonkeyButtonModule,\r\n MonkeyFileUploadModule,\r\n ],\r\n exports: [MonkeyImageCropComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyImageCropModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, EventEmitter, Input, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { MonkeyModalConfig, MonkeyModalRefs, MonkeyStyleGuideModalService } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-modal',\r\n template: `\r\n <mecx-monkey-modal\r\n [ngClass]=\"\r\n 'mecx-monkey-modal mecx-monkey-modal__' +\r\n (config?.color || 'theme') +\r\n ' mecx-monkey-modal__size-' +\r\n config?.size || 'md'\r\n \"\r\n >\r\n <div class=\"header\" *ngIf=\"config?.title\">\r\n <span class=\"h4\">\r\n {{ config?.title }}\r\n </span>\r\n <span class=\"close\" (click)=\"onClose()\" *ngIf=\"!config?.hideClose\"> x </span>\r\n </div>\r\n <div class=\"body\">\r\n <ng-content></ng-content>\r\n </div>\r\n <mecx-monkey-modal-footer\r\n [ngClass]=\"\r\n 'mecx-monkey-modal-footer mecx-monkey-modal-footer__' +\r\n (config?.color || 'theme') +\r\n ' mecx-monkey-modal-footer__size-' +\r\n (config?.size || 'md') +\r\n ' mecx-monkey-modal-footer__' +\r\n ((config?.size || 'md') === 'sm' ? 'column' : 'row')\r\n \"\r\n *ngIf=\"!config?.hideActions\"\r\n >\r\n <monkey-button\r\n [type]=\"config?.action?.cancel?.actionType || 'primary'\"\r\n [color]=\"config?.action?.cancel?.actionColor || config?.color || 'theme'\"\r\n (click)=\"_actionCancel()\"\r\n *ngIf=\"config?.action?.cancel\"\r\n >\r\n {{ config?.action?.cancel?.label }}\r\n </monkey-button>\r\n <monkey-button\r\n [type]=\"config?.action?.confirm?.actionType || 'primary'\"\r\n [color]=\"config?.action?.confirm?.actionColor || config?.color || 'theme'\"\r\n (click)=\"_actionConfirm()\"\r\n *ngIf=\"config?.action?.confirm\"\r\n >\r\n {{ config?.action?.confirm?.label }}\r\n </monkey-button>\r\n <monkey-button\r\n [type]=\"config?.action?.firstAction?.actionType || 'primary'\"\r\n [color]=\"config?.action?.firstAction?.actionColor || 'theme'\"\r\n [icon]=\"config?.action?.firstAction?.icon\"\r\n [iconPosition]=\"config?.action?.firstAction?.iconPosition\"\r\n (click)=\"_firstAction()\"\r\n *ngIf=\"config?.action?.firstAction\"\r\n >\r\n {{ config?.action?.firstAction?.label }}\r\n </monkey-button>\r\n <monkey-button\r\n [type]=\"config?.action?.secondAction?.actionType || 'primary'\"\r\n [color]=\"config?.action?.secondAction?.actionColor || 'theme'\"\r\n [icon]=\"config?.action?.secondAction?.icon\"\r\n [iconPosition]=\"config?.action?.secondAction?.iconPosition\"\r\n (click)=\"_secondAction()\"\r\n *ngIf=\"config?.action?.secondAction\"\r\n >\r\n {{ config?.action?.secondAction?.label }}\r\n </monkey-button>\r\n <monkey-button\r\n [type]=\"config?.action?.thirdAction?.actionType || 'primary'\"\r\n [color]=\"config?.action?.thirdAction?.actionColor || 'theme'\"\r\n [icon]=\"config?.action?.thirdAction?.icon\"\r\n [iconPosition]=\"config?.action?.thirdAction?.iconPosition\"\r\n (click)=\"_thirdAction()\"\r\n *ngIf=\"config?.action?.thirdAction\"\r\n >\r\n {{ config?.action?.thirdAction?.label }}\r\n </monkey-button>\r\n </mecx-monkey-modal-footer>\r\n </mecx-monkey-modal>\r\n <mecx-monkey-modal-background></mecx-monkey-modal-background>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyModalComponent implements OnInit {\r\n @Input() config: MonkeyModalConfig;\r\n @Input() modalRef: MonkeyModalRefs<this>;\r\n @Input() onHandleConfirm = new EventEmitter<any>();\r\n\r\n _actionCancel: Function;\r\n _actionConfirm: Function;\r\n _firstAction: Function;\r\n _secondAction: Function;\r\n _thirdAction: Function;\r\n\r\n constructor(private modalService: MonkeyStyleGuideModalService) {}\r\n\r\n ngOnInit() {\r\n this._actionCancel = () => {\r\n if (this.config?.action?.cancel?.action) {\r\n this.config?.action?.cancel?.action();\r\n }\r\n if (!this.config?.action?.cancel?.keepOnAction) {\r\n this.modalService.close(this.modalRef);\r\n }\r\n };\r\n this._actionConfirm = () => {\r\n if (this.config?.action?.confirm?.action) {\r\n this.config?.action?.confirm?.action();\r\n if (!this.config?.action?.confirm?.keepOnAction) {\r\n this.modalService.close(this.modalRef);\r\n }\r\n } else this.onHandleConfirm.next(null);\r\n };\r\n this._firstAction = () => {\r\n if (this.config?.action?.firstAction?.action) {\r\n this.config?.action?.firstAction?.action();\r\n if (!this.config?.action?.firstAction?.keepOnAction) {\r\n this.modalService.close(this.modalRef);\r\n }\r\n }\r\n };\r\n this._secondAction = () => {\r\n if (this.config?.action?.secondAction?.action) {\r\n this.config?.action?.secondAction?.action();\r\n if (!this.config?.action?.secondAction?.keepOnAction) {\r\n this.modalService.close(this.modalRef);\r\n }\r\n }\r\n };\r\n this._thirdAction = () => {\r\n if (this.config?.action?.thirdAction?.action) {\r\n this.config?.action?.thirdAction?.action();\r\n if (!this.config?.action?.thirdAction?.keepOnAction) {\r\n this.modalService.close(this.modalRef);\r\n }\r\n }\r\n };\r\n }\r\n\r\n onClose() {\r\n this.modalService.close(this.modalRef);\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyModalComponent } from './modal.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MonkeyButtonModule } from '../button/button.module';\r\n\r\n@NgModule({\r\n declarations: [MonkeyModalComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, MonkeyButtonModule],\r\n exports: [MonkeyModalComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyModalModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, ViewEncapsulation, Input, Output, EventEmitter } from '@angular/core';\r\nimport { MonkeyUtils } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-expansion',\r\n template: `\r\n <mecx-monkey-expansion\r\n [id]=\"_id\"\r\n [ngClass]=\"\r\n ('mecx-monkey-expansion mecx-monkey-expansion__' + color || 'theme') +\r\n (disabled ? ' disabled' : '')\r\n \"\r\n >\r\n <mecx-monkey-expansion-header *ngIf=\"!open\" (click)=\"onToggleExpand()\">\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n <monkey-icon icon=\"arrow-down-16\" [color]=\"'#4B4A53'\"></monkey-icon>\r\n </mecx-monkey-expansion-header>\r\n <mecx-monkey-expansion-header\r\n class=\"open\"\r\n *ngIf=\"open\"\r\n (click)=\"onToggleExpand()\"\r\n >\r\n <label>\r\n {{ label }}\r\n </label>\r\n <helper>\r\n {{ helperMessage }}\r\n </helper>\r\n <monkey-icon icon=\"arrow-up-16\" [color]=\"'#4B4A53'\"></monkey-icon>\r\n </mecx-monkey-expansion-header>\r\n <mecx-monkey-expansion-body [class.open]=\"open\">\r\n <ng-content></ng-content>\r\n </mecx-monkey-expansion-body>\r\n </mecx-monkey-expansion>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class MonkeyExpansionComponent {\r\n @Input() label: string;\r\n @Input() helperMessage: string;\r\n @Input() color: string;\r\n @Input() disabled: boolean = false;\r\n @Input() open: boolean = false;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n public _id: string = `mecx-expansion-${MonkeyUtils.getRandomString(10)}`;\r\n\r\n constructor() {}\r\n\r\n onToggleExpand() {\r\n if (!this.disabled) {\r\n this.open = !this.open;\r\n this.onChange.next(this.open);\r\n }\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { MonkeyExpansionComponent } from './expansion.component';\nimport { CommonModule } from '@angular/common';\nimport { MonkeyIconModule } from '../icon/icon.module';\n\n@NgModule({\n declarations: [MonkeyExpansionComponent],\n imports: [CommonModule, MonkeyIconModule],\n exports: [MonkeyExpansionComponent],\n schemas: [NO_ERRORS_SCHEMA],\n})\nexport class MonkeyExpansionModule {}\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { MonkeyUtils } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-table',\r\n template: `\r\n <mecx-monkey-table>\r\n <mecx-monkey-table-header>\r\n <monkey-checkbox\r\n [value]=\"onHandleSelectedAll()\"\r\n (click)=\"onHandleSelectAll($event)\"\r\n *ngIf=\"selectable && showSelectAll\"\r\n ></monkey-checkbox>\r\n <div class=\"select-all-disabled\" *ngIf=\"selectable && !showSelectAll\"></div>\r\n <span *ngFor=\"let header of headers\" [style.width]=\"_maxWidth + '%'\">\r\n {{ header }}\r\n </span>\r\n </mecx-monkey-table-header>\r\n <mecx-monkey-table-body>\r\n <mecx-monkey-table-body-row\r\n [class.selected]=\"onHandleSelected(row)\"\r\n *ngFor=\"let row of newDataSource\"\r\n (click)=\"onHandleClicked(row)\"\r\n >\r\n <monkey-checkbox\r\n [value]=\"onHandleSelected(row)\"\r\n (click)=\"onHandleSelect($event, row)\"\r\n *ngIf=\"selectable\"\r\n ></monkey-checkbox>\r\n <ng-container *ngTemplateOutlet=\"rowTemplate; context: { row: row.data }\"></ng-container>\r\n </mecx-monkey-table-body-row>\r\n </mecx-monkey-table-body>\r\n <mecx-monkey-table-body *ngIf=\"loading\">\r\n <mecx-monkey-table-body-row *ngFor=\"let loading of [1, 2, 3]\">\r\n <progress class=\"monkey-progress monkey-progress__grey-white\"></progress>\r\n </mecx-monkey-table-body-row>\r\n </mecx-monkey-table-body>\r\n </mecx-monkey-table>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyTableComponent implements OnInit, OnChanges {\r\n @Input() headers: string[];\r\n\r\n @Input() dataSource: any[];\r\n\r\n @Input() loading = false;\r\n\r\n @Input() rowTemplate: TemplateRef<any>;\r\n\r\n @Input() selectable = false;\r\n\r\n @Input() showSelectAll = true;\r\n\r\n @Input() callbackValidation = null;\r\n\r\n @Input() callbackValidationAll = null;\r\n\r\n @Input() selectedList = null;\r\n \r\n @Input() functionId: Function;\r\n\r\n @Output() selection = new EventEmitter<any>();\r\n\r\n @Output() selected = new EventEmitter<any>();\r\n\r\n @Output() clicked = new EventEmitter<any>();\r\n\r\n newDataSource: any[];\r\n\r\n private list = [];\r\n\r\n _maxWidth = 100;\r\n\r\n constructor(public elRef: ElementRef) {\r\n //not to do\r\n }\r\n\r\n private emitSelection() {\r\n this.selection.next(this.list);\r\n }\r\n\r\n private handleDataSource() {\r\n this.newDataSource = this.dataSource.map((data) => {\r\n let id = null;\r\n if(this.functionId){\r\n id = this.functionId(data);\r\n }else{\r\n id = MonkeyUtils.getRandomString(20);\r\n }\r\n return { id, data };\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n setTimeout(() => {\r\n this._maxWidth = 100 / this.headers?.length;\r\n this.elRef.nativeElement.style.setProperty('--mecx-table-column-width', `${this._maxWidth}%`);\r\n }, 0);\r\n this.handleDataSource();\r\n if (this.selectedList) {\r\n this.list = this.selectedList;\r\n this.emitSelection();\r\n }\r\n }\r\n\r\n ngOnChanges() {\r\n this.handleDataSource();\r\n if (this.selectedList) {\r\n this.list = this.selectedList;\r\n }\r\n }\r\n\r\n onHandleSelect(event: MouseEvent, row: any) {\r\n const { callbackValidation } = this;\r\n event.preventDefault();\r\n\r\n const continueValidation = () => {\r\n this.emitSelection();\r\n this.selected.next({ row, selected: this.onHandleSelected(row) });\r\n };\r\n\r\n if (this.onHandleSelected(row)) {\r\n this.list.splice(this.list.indexOf(row), 1);\r\n continueValidation();\r\n } else {\r\n if (callbackValidation) {\r\n callbackValidation(row, () => {\r\n this.list.push(row);\r\n continueValidation();\r\n });\r\n } else {\r\n continueValidation();\r\n }\r\n }\r\n }\r\n\r\n onHandleSelectAll(event: MouseEvent) {\r\n const { callbackValidationAll } = this;\r\n event.preventDefault();\r\n\r\n const continueValidation = () => {\r\n this.emitSelection();\r\n this.selected.next({ row: this.list });\r\n };\r\n\r\n if (!this.list.length) {\r\n if (callbackValidationAll) {\r\n callbackValidationAll(this.newDataSource, (newData = null) => {\r\n if (newData) {\r\n this.list = [...newData];\r\n } else {\r\n this.list = [...this.newDataSource];\r\n }\r\n continueValidation();\r\n });\r\n }\r\n } else {\r\n this.list = [];\r\n continueValidation();\r\n }\r\n }\r\n\r\n onHandleSelected(row: any) {\r\n return !!this.list.find((value) => value.id === row.id);\r\n }\r\n \r\n onHandleSelectedAll() {\r\n return this.list.length === this.newDataSource.length;\r\n }\r\n\r\n onHandleClicked(row: any) {\r\n this.clicked.next(row); \r\n }\r\n}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, ViewEncapsulation, forwardRef } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'monkey-table-column',\r\n template: ` <ng-content> </ng-content> `,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => MonkeyTableColumnComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MonkeyTableColumnComponent {}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MonkeyIconModule } from '../icon';\r\nimport { MonkeyCheckboxModule } from '../checkbox';\r\nimport { MonkeyTableComponent } from './table.component';\r\nimport { MonkeyTableColumnComponent } from './table-column.component';\r\n\r\n@NgModule({\r\n declarations: [MonkeyTableComponent, MonkeyTableColumnComponent],\r\n imports: [CommonModule, MonkeyIconModule, MonkeyCheckboxModule],\r\n exports: [MonkeyTableComponent, MonkeyTableColumnComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyTableModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n Input,\r\n HostListener,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { MonkeyUtils } from '../../core';\r\n\r\n@Component({\r\n selector: 'monkey-toggle',\r\n template: `\r\n <mecx-monkey-toggle [id]=\"_id\" [ngClass]=\"{ disabled: disabled }\">\r\n <input type=\"checkbox\" [checked]=\"value\" />\r\n <div [ngClass]=\"'slider-' + value.toString()\"></div>\r\n </mecx-monkey-toggle>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyToggleComponent {\r\n @Input() value: boolean = false;\r\n @Input() disabled: boolean = false;\r\n @Output() onChange = new EventEmitter<any>();\r\n\r\n public _id: string = `mecx-toggle-${MonkeyUtils.getRandomString(10)}`;\r\n public _open = false;\r\n\r\n constructor() {}\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: any) {\r\n event?.preventDefault();\r\n event?.stopPropagation();\r\n if (!this.disabled) {\r\n this.value = !this.value;\r\n this.onChange.next(this.value);\r\n }\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { MonkeyToggleComponent } from './toggle.component';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [MonkeyToggleComponent],\n imports: [CommonModule],\n exports: [MonkeyToggleComponent],\n schemas: [NO_ERRORS_SCHEMA],\n})\nexport class MonkeyToggleModule {}\n","/**************************\n * Copyright Monkey Exchange. All Rights Reserved\n * This style guide was developed by Monkey Exchange Team\n * MIT Licence\n **************************/\nimport {\n ChangeDetectorRef,\n Component,\n ContentChildren,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport { MonkeyOptionComponent } from '../option';\nimport { MonkeyUtils } from '../../core/utils';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'monkey-tab',\n template: `\n <mecx-tab-body [ngClass]=\"position\">\n <ng-content></ng-content>\n </mecx-tab-body>\n `,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MonkeyTabComponent),\n multi: true,\n },\n ],\n})\nexport class MonkeyTabComponent implements OnInit {\n @Input() position: string = 'horizontal';\n @Output() onChange = new EventEmitter<any>();\n @Input() selected: any;\n\n @ContentChildren(MonkeyOptionComponent, { descendants: true })\n private options!: QueryList<MonkeyOptionComponent>;\n\n public _selected: MonkeyOptionComponent;\n public _id: string = `mecx-tab-${MonkeyUtils.getRandomString(10)}`;\n\n constructor(private cdRef: ChangeDetectorRef) {}\n\n private onHandleSelected() {\n const { _selected } = this;\n this.options.forEach((op) => {\n op.selected = _selected;\n });\n\n let scrollValue = 0;\n if (_selected) {\n const { _id } = this._selected;\n scrollValue = document.getElementById(_id).offsetTop;\n }\n this.cdRef.detectChanges();\n this.onChange.next({\n label: _selected.label,\n value: _selected.value,\n });\n }\n\n private validateOptions() {\n if (!this.options) return;\n this.options.forEach((op) => {\n op.onSelectOption = this.onSelectOption.bind(this);\n op.type = 'select';\n op.selected = null;\n if (`${op.value}`.toLowerCase() === `${this.selected}`.toLowerCase()) {\n this._selected = op;\n op.selected = op;\n }\n });\n }\n\n ngOnInit() {\n setTimeout(() => {\n this.validateOptions();\n }, 0);\n }\n\n onSelectOption(select: MonkeyOptionComponent) {\n this._selected = select;\n const { value } = select;\n this.selected = value;\n this.onHandleSelected();\n }\n}\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\nimport { MonkeyTabComponent } from './tab.component';\nimport { CommonModule } from '@angular/common';\nimport { MonkeyIconModule } from '../icon';\nimport { MonkeyOptionModule } from '../option';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\n@NgModule({\n declarations: [MonkeyTabComponent],\n imports: [CommonModule, FormsModule, ReactiveFormsModule, MonkeyOptionModule],\n exports: [MonkeyTabComponent],\n schemas: [NO_ERRORS_SCHEMA],\n})\nexport class MonkeyTabModule {}\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence\r\n **************************/\r\nimport { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'monkey-stepper',\r\n template: `\r\n <div [ngClass]=\"position\">\r\n <div class=\"mecx-stepper-body\" *ngFor=\"let step of _totalSteps\">\r\n <div\r\n class=\"mecx-stepper-option mecx-stepper-option__theme\"\r\n [ngClass]=\"{ selected: step === selectedStep, completed: step < selectedStep }\"\r\n ></div>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MonkeyStepperComponent implements OnInit {\r\n @Input() totalSteps: number = 0;\r\n @Input() selectedStep: number = 0;\r\n @Input() position: string = 'horizontal';\r\n\r\n public _totalSteps: number[];\r\n public _selectedStep: number;\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n const { totalSteps, selectedStep } = this;\r\n this._totalSteps = new Array(Number(totalSteps)).fill(1).map((step: number, index: number) => {\r\n return step + index;\r\n });\r\n this._selectedStep = Number(selectedStep);\r\n }\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { MonkeyStepperComponent } from './stepper.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MonkeyIconModule } from '../icon';\r\n\r\n@NgModule({\r\n declarations: [MonkeyStepperComponent],\r\n imports: [CommonModule, MonkeyIconModule],\r\n exports: [MonkeyStepperComponent],\r\n schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class MonkeyStepperModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { MonkeyStyleGuideService } from './core/services/monkey-style-guide.service';\r\nimport { MonkeyStyleGuideSettingsService } from './core/services/settings';\r\nimport { MonkeyStyleGuideThemeSettingsService } from './core/services/settings/monkey-style-guide-theme-settings.service';\r\nimport { MonkeyStyleGuideSnackbarService } from './core/services/snackbar';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n imports: [HttpClientModule, CommonModule],\r\n providers: [\r\n MonkeyStyleGuideService,\r\n MonkeyStyleGuideSettingsService,\r\n MonkeyStyleGuideThemeSettingsService,\r\n MonkeyStyleGuideSnackbarService,\r\n ],\r\n})\r\nexport class MonkeyStyleGuideModule {}\r\n","/**************************\r\n * Copyright Monkey Exchange. All Rights Reserved\r\n * This style guide was developed by Monkey Exchange Team\r\n * MIT Licence \r\n**************************/\r\nexport * from './lib/components';\r\nexport * from './lib/core';\r\nexport * from './lib/monkey-style-guide.module';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;MAKa,uBAAuB;IAClC,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;KAAI;IAEjC,GAAG,CAAI,GAAW,EAAE,OAAW;QACpC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAI,GAAG,EAAE,OAAO,CAAC,CAAC;KACvC;;oHALU,uBAAuB;wHAAvB,uBAAuB;2FAAvB,uBAAuB;kBADnC,UAAU;;;ACJX;;;;;MAUa,oCAAoC;IAC/C,YAAsC,GAAQ;QAAR,QAAG,GAAH,GAAG,CAAK;KAAI;IAE1C,WAAW,CAAC,QAA6B;QAC/C,MAAM,MAAM,GAAQ,QAAQ,CAAC,MAAM,CAAC;QAEpC,IAAI,YAAY,GAAG,IAAI,CAAC;QAExB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK;YACjE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAQ,CAAC,CAAC,OAAO,CAC1C,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC;gBACzB,IAAI,UAAU,KAAK,UAAU,EAAE;oBAC7B,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAClC,CAAC,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;wBACzC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,CACxC,gBAAgB,KAAK,aAAa,kBAAkB,EAAE,EACtD,GAAG,oBAAoB,EAAE,CAC1B,CAAC;wBACF,YAAY,mCACP,YAAY,KACf,CAAC,gBAAgB,KAAK,aAAa,kBAAkB,EAAE,GAAG,GAAG,oBAAoB,EAAE,GACpF,CAAC;qBACH,CACF,CAAC;iBACH;qBAAM;oBACL,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,CACxC,gBAAgB,KAAK,IAAI,UAAU,EAAE,EACrC,GAAG,YAAY,EAAE,CAClB,CAAC;oBACF,YAAY,mCACP,YAAY,KACf,CAAC,gBAAgB,KAAK,IAAI,UAAU,EAAE,GAAG,GAAG,YAAY,EAAE,GAC3D,CAAC;iBACH;aACF,CACF,CAAC;SACH,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC;KACrB;IAEO,UAAU,CAAC,QAA6B;QAC9C,MAAM,IAAI,mBACR,GAAG,EACD,+JAA+J,EACjK,IAAI,EAAE,WAAW,IACd,QAAQ,CAAC,IAAI,CACjB,CAAC;QAEF,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,CACxC,kBAAkB,EAClB,GAAG,IAAI,CAAC,IAAI,EAAE,CACf,CAAC;QAEF,IAAI,IAAI,GAAoB,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;KACjC;IAEO,UAAU,CAAC,QAA6B;QAC9C,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC;QAC3B,QAAQ,CAAC,KAAK,GAAG,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAElC,IAAI,IAAI,GAAoB,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;KACjC;IAEM,KAAK,CAAC,MAA2B,EAAE,QAAmB;QAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxB,UAAU,CAAC;YACT,IAAI,QAAQ;gBACV,QAAQ,CAAC;oBACP,YAAY;iBACb,CAAC,CAAC;SACN,EAAE,GAAG,CAAC,CAAC;KACT;;iIAlFU,oCAAoC,kBAC3B,QAAQ;qIADjB,oCAAoC;2FAApC,oCAAoC;kBADhD,UAAU;;;8BAEI,MAAM;+BAAC,QAAQ;;;;ACX9B;;;;;MAaa,+BAA+B;IAG1C,YACU,eAAwC,EACxC,0BAAgE;QADhE,oBAAe,GAAf,eAAe,CAAyB;QACxC,+BAA0B,GAA1B,0BAA0B,CAAsC;QAJzD,qBAAgB,GAAyC,IAAI,eAAe,CAAC,EAAE,CAAC,CAAC;KAK9F;IAEG,QAAQ,CAAC,WAAmB,EAAE,QAAmB;QACtD,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,GAAG,IAAI,CAAC;QAE/E,eAAe,CAAC,GAAG,CAAM,WAAW,IAAI,yCAAyC,CAAC,CAAC,SAAS,CAC1F,CAAC,CAAsB;YACrB,0BAA0B,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC9C,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC1B,EACD,CAAC,GAAsB;YACrB,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;YACxD,UAAU,CAAC,GAAG,CAAC,CAAC;SACjB,CACF,CAAC;KACH;IAEM,gBAAgB,CAAC,IAAS,EAAE,QAAmB;QACpD,MAAM,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,GAAG,IAAI,CAAC;QAC9D,0BAA0B,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACjD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC7B;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;KAC7C;;4HA/BU,+BAA+B;gIAA/B,+BAA+B;2FAA/B,+BAA+B;kBAD3C,UAAU;;;ACVX,MAAM,SAAS,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;MAEnC,WAAW;IACf,OAAO,yBAAyB,CAAC,EAAO;QAC7C,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC;KACrD;IAEM,OAAO,eAAe,CAAC,GAAW;QACvC,IAAI,CAAC,GAAG;YAAE,OAAO,EAAE,CAAC;QACpB,OAAO,GAAG,CAAC,MAAM,IAAI,EAAE,GAAG,KAAK,GAAG,MAAM,CAAC;KAC1C;IAEM,OAAO,eAAe,CAAC,IAAY;QACxC,IAAI,IAAI,KAAK,KAAK;YAAE,OAAO,gBAAgB,CAAC;QAC5C,OAAO,oBAAoB,CAAC;KAC7B;IAEM,OAAO,sBAAsB,CAAC,GAAW,EAAE,QAAkB;QAClE,IAAI,CAAC,GAAG;YAAE,OAAO,GAAG,CAAC;QACrB,IAAI,QAAQ,GAAW,EAAE,CAAC;QAC1B,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE;YACnB,QAAQ,GAAG,GAAG;iBACX,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC;iBAChC,OAAO,CAAC,uBAAuB,EAAE,UAAU,CAAC;iBAC5C,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC;iBAClC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;;YAEnC,QAAQ,GAAG,GAAG;iBACX,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC;iBAChC,OAAO,CAAC,uBAAuB,EAAE,UAAU,CAAC;iBAC5C,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAExC,OAAO,GAAG,QAAQ,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;KACzE;IAEM,OAAO,gBAAgB,CAAC,KAAa,EAAE,KAAa,OAAO;;QAChE,MAAM,KAAK,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,0CAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAExC,IAAI,EAAE,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;QACpC,OAAO,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAAC,GAAG,CAAC,CAAC;KAClD;IAEM,OAAO,cAAc,CAAC,QAAa;QACxC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC1C,IAAI,QAAQ,CAAC,MAAM,KAAK,EAAE,EAAE;YAC1B,IAAI,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC;gBAAC,CAAC;YAC5D,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE;gBAChD,OAAO,KAAK,CAAC;aACd;YACD,IAAI,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC;gBAAC,CAAC;YAC7D,IAAI,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE;gBACjD,OAAO,KAAK,CAAC;aACd;YACD,OAAO,IAAI,CAAC;SACb;aAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC3D,IAAI,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;gBAAC,CAAC;YAC7D,IAAI,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE;gBAChD,OAAO,KAAK,CAAC;aACd;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC;gBAAC,CAAC;YAC9D,IAAI,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE;gBAChD,OAAO,KAAK,CAAC;aACd;YAED,OAAO,IAAI,CAAC;SACb;;YAAM,OAAO,KAAK,CAAC;KACrB;IAEM,OAAO,UAAU,CAAC,GAAW;QAClC,MAAM,KAAK,GAAG,IAAI,MAAM,CACtB,4HAA4H,CAC7H,CAAC;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACxB;IAEM,OAAO,cAAc,CAAC,OAAe;QAC1C,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC;KAC1D;IAEM,OAAO,eAAe,CAAC,GAAW,EAAE,OAAgB;QACzD,OAAO,GAAG,OAAO,IAAI,gEAAgE,CAAC;QACtF,IAAI,YAAY,GAAW,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;aACrD,GAAG,CAAC;YACH,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;SACnE,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAC;QACZ,OAAO,YAAY,CAAC;KACrB;IAEM,OAAO,yBAAyB,CAAC,KAAU;QAChD,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACxB,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;KAClD;IAEM,OAAO,iBAAiB,CAAC,KAAU;QACxC,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACxB,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;KACjD;IAEM,OAAO,sBAAsB,CAAC,KAAU;QAC7C,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;KAC3D;IAEM,OAAO,UAAU,CAAC,KAAa;QACpC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5D;IAEM,OAAO,aAAa,CAAC,OAAe;QACzC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC;QAC7B,MAAM,QAAQ,GAAW,OAAO;aAC7B,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC;aAChC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAEtC,OAAO,GAAG,QAAQ,EAAE,CAAC;KACtB;IAEM,OAAO,cAAc,CAAC,IAAY;QACvC,IAAI,KAAK,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC,EAAE;YAC1B,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;SACpB;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;KAClE;IAEM,OAAO,OAAO,CAAC,IAAW;QAC/B,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACxC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;YACxC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;SAChB;QACD,OAAO,IAAI,CAAC;KACb;IAEM,OAAO,cAAc,CAAC,OAAY,EAAE,QAAgB,EAAE,QAAgB;QAC3E,SAAS,UAAU,CAAC,OAAO,EAAE,QAAQ;YACnC,MAAM,CAAC,GAAG,OAAO,CAAC;YAClB,CAAC,CAAC,gBAAgB,GAAG,IAAI,IAAI,EAAE,CAAC;YAChC,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC;YAClB,OAAO,CAAC,CAAC;SACV;QAED,IAAI,IAAS,CAAC;QACd,IAAI,CAAE,SAAiB,CAAC,UAAU,EAAE;YAClC,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;SAC1D;aAAM;YACL,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC/C,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;SACnC;QACD,OAAO,IAAI,CAAC;KACb;IAEM,OAAO,QAAQ,CAAC,IAAY,EAAE,YAAoB,EAAE;QACzD,MAAM,OAAO,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC;QAC1B,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS;YAAE,OAAO,IAAI,CAAC;QAElD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC;QAErC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;KACtE;IAEM,OAAO,WAAW;QACvB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,CAAC;QAClC,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACxB,OAAO,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,WAAW,CAAC,KAAI,CAAC,CAAC;KACvC;IAEM,OAAO,eAAe;QAC3B,OAAO,SAAS;aACb,mBAAmB,EAAE;aACrB,GAAG,CAAC,CAAC,IAAY;YAChB,OAAO,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;SAChD,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;aACvC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACrC;IAEM,OAAO,cAAc,CAAC,mBAAmB,GAAG,EAAE;QACnD,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,IAAI,GAAG,eAAe,CAAC;QAC3B,IAAI;YACF,MAAM,OAAO,GAAG,SAAS,CAAC,2BAA2B,CAAC,mBAAmB,CAAC,CAAC;YAC3E,MAAM,aAAa,GAAG,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC;YAE1E,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,aAAa,EAAE,EAAE,OAAO,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAChD,IAAI,QAAQ,EAAE;gBACZ,SAAS,GAAG,GAAG,QAAQ,EAAE,CAAC,MAAM,CAAC;gBACjC,IAAI,GAAG,GAAG,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC;aAC1D;SACF;QAAC,OAAO,CAAC,EAAE;;SAEX;QACD,OAAO;YACL,SAAS;YACT,IAAI;SACL,CAAC;KACH;IAEM,OAAO,mBAAmB,CAAC,KAAa;;QAC7C,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAC;QACtB,IAAI,EAAE,GAAG,MAAA,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,0CAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7D,IAAI,IAAI,CAAC;QACT,IAAI;YACF,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACtC,IAAI,GAAG,MAAM,CAAC,uBAAuB,EAAE,CAAC;SACzC;QAAC,OAAO,CAAC,EAAE;;SAEX;QACD,OAAO,IAAI,IAAI,EAAE,CAAC;KACnB;IAEM,OAAO,sBAAsB,CAAC,KAAa,EAAE,mBAAmB,GAAG,EAAE;QAC1E,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAC;QACtB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,mBAAmB,EAAE,EAAE,EAAE,CAAC,CAAC;QACrD,IAAI;YACF,MAAM,OAAO,GAAG,SAAS,CAAC,2BAA2B,CAAC,mBAAmB,CAAC,CAAC;YAC3E,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC/C,IAAI,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE;gBACtC,OAAO,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;aACvC;SACF;QAAC,OAAO,CAAC,EAAE;;SAEX;QACD,OAAO,KAAK,CAAC;KACd;IAEM,OAAO,kBAAkB,CAAC,KAAa,EAAE,mBAAmB,GAAG,EAAE;QACtE,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC;QACzB,IAAI;YACF,MAAM,OAAO,GAAG,SAAS,CAAC,2BAA2B,CAAC,mBAAmB,CAAC,CAAC;YAC3E,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC/C,OAAO,SAAS,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAC1D;QAAC,OAAO,CAAC,EAAE;;SAEX;QACD,OAAO,KAAK,CAAC;KACd;;;AC9OH,MAAM,KAAK,GAAG;IACZ,OAAO,EAAE;;;WAGA;IACT,OAAO,EAAE;;;;WAIA;IACT,KAAK,EAAE;;;;WAIE;IACT,QAAQ,EAAE;;;;WAID;IACT,OAAO,EAAE;;SAEF;CACR,CAAC;AA8BF,MAAM,gBAAgB;IAOpB;QANA,aAAQ,GAGF,EAAE,CAAC;QACT,kBAAa,GAAW,EAAE,CAAC;KAEX;IAEhB,GAAG,CAAC,OAAuB,EAAE,QAAgB,EAAE,QAAkB,EAAE,gBAAwB;QACzF,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/C,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;SACzB;QACD,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,IAAI,CAAC;QAE5D,MAAM,QAAQ,GAAG,WAAW,CAAC;YAC3B,QAAQ,EAAE,CAAC;SACZ,EAAE,QAAQ,CAAC,CAAC;QAEb,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAC;QACH,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,YAAY,GAAG,EAAE,CAAC;KACjG;IAED,MAAM,CAAC,QAAgB;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,QAAQ,CAAC,CAAC;QAC7E,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,QAAQ;gBACX,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACjF,OAAO,CAAC,OAAO,CAAC,SAAS,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,gBAAgB,CAAC;YACzE,UAAU,CAAC;gBACT,IAAI,CAAC,aAAa;oBAChB,IAAI,CAAC,aAAa,IAAI,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;gBAC7E,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC3C,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;aACjC,EAAE,IAAI,CAAC,CAAC;SACV;KACF;IAED,SAAS;QACP,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO;YAC5B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3C,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SACjC,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;KACpB;CACF;MAGY,+BAA+B;IAS1C,YAAoB,cAAwB;QAAxB,mBAAc,GAAd,cAAc,CAAU;QAFpC,oBAAe,GAAG,IAAI,CAAC;QAG7B,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAC/C,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;;YAC9B,IAAG,IAAI,CAAC,MAAM,IAAI,EAAC,MAAA,IAAI,CAAC,MAAM,0CAAE,eAAe,CAAA,EAAC;gBAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;aACjB;SACF,CAAC,CAAC;KACJ;IAEO,YAAY;QAClB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE;gBAC9C,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aACrC;SACF;KACF;IAEO,QAAQ;QACd,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC;QAEhD,MAAM,aAAa,GAAG;YACpB,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5E,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,KAAK,OAAO,GAAG,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;SACvE,CAAC;QAEF,IAAI,IAAI,CAAC,eAAe;YAAE,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9D,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;KACzD;IAEO,IAAI,CAAC,EAAU;QACrB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,IAAI,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;QAC5D,kBAAkB,GAAG,kBAAkB,IAAI,QAAQ,CAAC;QACpD,gBAAgB,GAAG,gBAAgB,IAAI,KAAK,CAAC;QAE7C,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,EAAE,GAAG,GAAG,EAAE,EAAE,CAAC;QAClC,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,2BAA2B,kBAAkB,IAAI,gBAAgB,IAAI,IAAI,EAAE,CAAC;KAC9G;IAEO,SAAS;QACf,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACzD,IAAI,CAAC,mBAAmB,CAAC,SAAS,GAAG,8BAA8B,CAAC;QAEpE,IAAI,CAAC,0BAA0B,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAChE,IAAI,CAAC,0BAA0B,CAAC,SAAS,GAAG,sCAAsC,CAAC;KACpF;IAEO,oBAAoB;QAC1B,IAAI,EACF,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,GACnC,GAAG,IAAI,CAAC;QACT,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACnD,YAAY,CAAC,SAAS,GAAG,GAAG,KAAK,EAAE,CAAC;QACpC,YAAY,CAAC,SAAS,GAAG,4CAA4C,CAAC;QAEtE,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACrD,cAAc,CAAC,SAAS,GAAG,GAAG,OAAO,EAAE,CAAC;QACxC,cAAc,CAAC,SAAS,GAAG,gDACzB,MAAM,GAAG,aAAa,GAAG,EAC3B,EAAE,CAAC;QAEH,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;KAC7D;IAEO,WAAW,CAAC,EAAU;QAC5B,MAAM,EACJ,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GACzB,GAAG,IAAI,CAAC;QACT,IAAI,MAAM,EAAE;YACV,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;YACnC,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAEpD,IAAI,mBAAmB,GAAG,IAAI,EAC5B,oBAAoB,GAAG,IAAI,CAAC;YAE9B,IAAG,OAAO,EAAC;gBACT,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;gBACjC,IAAI,KAAK,KAAK,MAAM,EAAE;oBACpB,oBAAoB,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;oBACnD,oBAAoB,CAAC,IAAI,GAAG,oBAAoB,CAAC;oBACjD,oBAAoB,CAAC,SAAS,GAAG,KAAK,CAAC;iBACxC;qBAAK;oBACJ,oBAAoB,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;oBACxD,oBAAoB,CAAC,SAAS,GAAG,4CAA4C,IAAI,EAAE,CAAC;oBACpF,oBAAoB,CAAC,SAAS,GAAG,KAAK,CAAC;iBACxC;aACF;YAED,IAAG,MAAM,EAAC;gBACR,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;gBAChC,IAAG,KAAK,KAAK,MAAM,EAAC;oBAClB,mBAAmB,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;oBAClD,mBAAmB,CAAC,IAAI,GAAG,oBAAoB,CAAC;oBAChD,mBAAmB,CAAC,SAAS,GAAG,KAAK,CAAC;iBACvC;qBAAI;oBACH,mBAAmB,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;oBACvD,mBAAmB,CAAC,SAAS,GAAG,8CAA8C,IAAI,EAAE,CAAC;oBACrF,mBAAmB,CAAC,SAAS,GAAG,KAAK,CAAC;iBACvC;aACF;YAED,IAAI,mBAAmB,EAAE;gBACvB,mBAAmB,CAAC,gBAAgB,CAAC,OAAO,EAAE;oBAC5C,IAAI,EAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,CAAA,EAAE;wBACzB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;qBAChB;oBACD,MAAM,CAAC,MAAM,EAAE,CAAC;iBACjB,CAAC,CAAC;gBAEH,aAAa,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;aAChD;YAED,IAAI,oBAAoB,EAAE;gBACxB,oBAAoB,CAAC,gBAAgB,CAAC,OAAO,EAAE;oBAC7C,IAAI,EAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAA,EAAE;wBAC1B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;qBAChB;oBACD,OAAO,CAAC,MAAM,EAAE,CAAC;iBAClB,CAAC,CAAC;gBACH,aAAa,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;aACjD;YAED,aAAa,CAAC,SAAS,GAAG,6CAA6C,CAAC;YACxE,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;SAC5D;KACF;IAEO,SAAS;QACf,IAAI,EACF,MAAM,EAAE,EAAE,IAAI,EAAE,GACjB,GAAG,IAAI,CAAC;QAET,MAAM,uBAAuB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9D,uBAAuB,CAAC,SAAS,GAAG,mCAAmC,CAAC;QACxE,uBAAuB,CAAC,SAAS,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACrD,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;KAC/D;IAEO,MAAM,CAAC,EAAU;QACvB,IAAI,EACF,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GACjD,GAAG,IAAI,CAAC;QACT,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC;QAC5B,MAAM,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;QAClF,mBAAmB,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;QAC5D,eAAe,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;QAEjD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CACvB,eAAe,EACf,QAAQ,EACR,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EACzC,gBAAgB,CACjB,CAAC;KACH;IAEM,IAAI,CAAC,MAAsB;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,EAAE,GAAG,mBAAmB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACd,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACrB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAChB,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,EAAE;YACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;QACD,OAAO,EAAE,CAAC;KACX;IAEM,QAAQ;QACb,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;QAClC,gBAAgB,CAAC,SAAS,EAAE,CAAC;KAC9B;IAEM,KAAK,CAAC,EAAU;QACrB,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;QAClC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB;;4HAhMU,+BAA+B;gIAA/B,+BAA+B;2FAA/B,+BAA+B;kBAD3C,UAAU;;;MCrGE,4BAA4B;IAGvC,YACU,QAAkC,EAClC,MAAsB,EACtB,QAAkB,EAClB,cAAwB;QAHxB,aAAQ,GAAR,QAAQ,CAA0B;QAClC,WAAM,GAAN,MAAM,CAAgB;QACtB,aAAQ,GAAR,QAAQ,CAAU;QAClB,mBAAc,GAAd,cAAc,CAAU;QAN1B,uBAAkB,GAA4C,EAAE,CAAC;QAQvE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;YAC9B,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB,CAAC,CAAC;KACJ;IAED,IAAI,CACF,SAAc,EACd,MAAyB;QAEzB,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAC1E,MAAM,YAAY,GAAQ,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,MAAM,GAAG;YACb,EAAE,EAAE,cAAc,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE;YACnD,SAAS,EAAE,YAAY;SACxB,CAAC;QAEF,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;QACtC,YAAY,CAAC,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC;QAExC,MAAM,OAAO,GAAI,YAAY,CAAC,QAAiC;aAC5D,SAAS,CAAC,CAAC,CAAgB,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACnC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAEhD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrC,OAAO,MAAM,CAAC;KACf;IAED,KAAK,CAAC,GAA0C;QAC9C,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC/C,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CACtD,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,CAC1B,CAAC;QACF,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;SACpD;KACF;IAED,QAAQ;QACN,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAC7B,CAAC,GAA0C;YACzC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC/C,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;SACzB,CACF,CAAC;QACF,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;KACpD;;yHA3DU,4BAA4B;6HAA5B,4BAA4B;2FAA5B,4BAA4B;kBADxC,UAAU;;;MCCE,iCAAiC;IAG5C,YACU,QAAkC,EAClC,MAAsB,EACtB,QAAkB;QAFlB,aAAQ,GAAR,QAAQ,CAA0B;QAClC,WAAM,GAAN,MAAM,CAAgB;QACtB,aAAQ,GAAR,QAAQ,CAAU;QALpB,uBAAkB,GAA4C,EAAE,CAAC;;KAQxE;IAED,IAAI,CACF,SAAc,EACd,MAAyB;QAEzB,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAC1E,MAAM,YAAY,GAAQ,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,MAAM,GAAG;YACb,EAAE,EAAE,cAAc,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE;YACnD,SAAS,EAAE,YAAY;SACxB,CAAC;QAEF,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;QACtC,YAAY,CAAC,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC;QAExC,MAAM,OAAO,GAAI,YAAY,CAAC,QAAiC;aAC5D,SAAS,CAAC,CAAC,CAAgB,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACnC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAEhD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrC,OAAO,MAAM,CAAC;KACf;IAED,KAAK,CAAC,GAA0C;QAC9C,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC/C,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CACtD,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,CAC1B,CAAC;QACF,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;SACpD;KACF;IAED,QAAQ;QACN,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAC7B,CAAC,GAA0C;YACzC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC/C,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;SACzB,CACF,CAAC;QACF,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;KACpD;;8HAzDU,iCAAiC;kIAAjC,iCAAiC;2FAAjC,iCAAiC;kBAD7C,UAAU;;;ACZX;;;;;MAmBa,oBAAoB;IAXjC;QAYW,UAAK,GAAG,CAAC,CAAC;QACV,YAAO,GAAG,KAAK,CAAC;QAElB,QAAG,GAAW,cAAc,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;KACtE;;iHALY,oBAAoB;qGAApB,oBAAoB,oGATrB;;;;;;GAMT;2FAGU,oBAAoB;kBAXhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,QAAQ,EAAE;;;;;;GAMT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;8BAEU,KAAK;sBAAb,KAAK;gBACG,OAAO;sBAAf,KAAK;;;MCXK,iBAAiB;;8GAAjB,iBAAiB;+GAAjB,iBAAiB,iBALb,oBAAoB,aACzB,YAAY,aACZ,oBAAoB;+GAGnB,iBAAiB,YAJnB,CAAC,YAAY,CAAC;2FAIZ,iBAAiB;kBAN7B,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,oBAAoB,CAAC;oBACpC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,oBAAoB,CAAC;oBAC/B,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;MCFY,qBAAqB;;kHAArB,qBAAqB;sGAArB,qBAAqB,4GCPlC,gyBAMA;2FDCa,qBAAqB;kBALjC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,4BAA4B;;yHAA5B,4BAA4B;6GAA5B,4BAA4B,gHCPzC,wSAGA;2FDIa,4BAA4B;kBALxC,SAAS;+BACE,wBAAwB;8BAKzB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,4BAA4B;;yHAA5B,4BAA4B;6GAA5B,4BAA4B,gHCPzC,0TAGA;2FDIa,4BAA4B;kBALxC,SAAS;+BACE,wBAAwB;8BAKzB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,6BAA6B;;0HAA7B,6BAA6B;8GAA7B,6BAA6B,iHCP1C,yUAGA;2FDIa,6BAA6B;kBALzC,SAAS;+BACE,yBAAyB;8BAK1B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,8GCPvC,0UAGA;2FDIa,0BAA0B;kBALtC,SAAS;+BACE,sBAAsB;8BAKvB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,6GCPvC,qpDAOA;2FDAa,0BAA0B;kBALtC,SAAS;+BACE,qBAAqB;8BAKtB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,m5BAGA;2FDIa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,kHCPvC,kvDAYA;2FDLa,0BAA0B;kBALtC,SAAS;+BACE,0BAA0B;8BAK3B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,g0BAIA;2FDGa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,qwBAIA;2FDGa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,sBAAsB;;mHAAtB,sBAAsB;uGAAtB,sBAAsB,yGCPnC,w8CAMA;2FDCa,sBAAsB;kBALlC,SAAS;+BACE,iBAAiB;8BAKlB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,2BAA2B;;wHAA3B,2BAA2B;4GAA3B,2BAA2B,8GCPxC,g4BAMA;2FDCa,2BAA2B;kBALvC,SAAS;+BACE,sBAAsB;8BAKvB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,42BAIA;2FDGa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,8BAA8B;;2HAA9B,8BAA8B;+GAA9B,8BAA8B,kHCP3C,49FAcA;2FDPa,8BAA8B;kBAL1C,SAAS;+BACE,0BAA0B;8BAK3B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,isDAIA;2FDGa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,iCAAiC;;8HAAjC,iCAAiC;kHAAjC,iCAAiC,sHCP9C,k4BAIA;2FDGa,iCAAiC;kBAL7C,SAAS;+BACE,8BAA8B;8BAK/B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,8BAA8B;;2HAA9B,8BAA8B;+GAA9B,8BAA8B,kHCP3C,wUAIA;2FDGa,8BAA8B;kBAL1C,SAAS;+BACE,0BAA0B;8BAK3B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,4BAA4B;;yHAA5B,4BAA4B;6GAA5B,4BAA4B,gHCPzC,+QAGA;2FDIa,4BAA4B;kBALxC,SAAS;+BACE,wBAAwB;8BAKzB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,6BAA6B;;0HAA7B,6BAA6B;8GAA7B,6BAA6B,iHCP1C,sVAIA;2FDGa,6BAA6B;kBALzC,SAAS;+BACE,yBAAyB;8BAK1B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,oUAGA;2FDIa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,4BAA4B;;yHAA5B,4BAA4B;6GAA5B,4BAA4B,+GCPzC,g2BAIA;2FDGa,4BAA4B;kBALxC,SAAS;+BACE,uBAAuB;8BAKxB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,kgBAIA;2FDGa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,wcAIA;2FDGa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,g9BASA;2FDFa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,6GCPvC,+8BAOA;2FDAa,0BAA0B;kBALtC,SAAS;+BACE,qBAAqB;8BAKtB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,8BAA8B;;2HAA9B,8BAA8B;+GAA9B,8BAA8B,kHCP3C,yvCAYA;2FDLa,8BAA8B;kBAL1C,SAAS;+BACE,0BAA0B;8BAK3B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,2BAA2B;;wHAA3B,2BAA2B;4GAA3B,2BAA2B,8GCPxC,qnIAcA;2FDPa,2BAA2B;kBALvC,SAAS;+BACE,sBAAsB;8BAKvB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,8BAA8B;;2HAA9B,8BAA8B;+GAA9B,8BAA8B,kHCP3C,8qDAOA;2FDAa,8BAA8B;kBAL1C,SAAS;+BACE,0BAA0B;8BAK3B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,kxBAKA;2FDEa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,2BAA2B;;wHAA3B,2BAA2B;4GAA3B,2BAA2B,8GCPxC,2mCAOA;2FDAa,2BAA2B;kBALvC,SAAS;+BACE,sBAAsB;8BAKvB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,6BAA6B;;0HAA7B,6BAA6B;8GAA7B,6BAA6B,iHCP1C,09BAKA;2FDEa,6BAA6B;kBALzC,SAAS;+BACE,yBAAyB;8BAK1B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,mCAAmC;;gIAAnC,mCAAmC;oHAAnC,mCAAmC,wHCPhD,qlDAOA;2FDAa,mCAAmC;kBAL/C,SAAS;+BACE,gCAAgC;8BAKjC,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,09BASA;2FDFa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,2BAA2B;;wHAA3B,2BAA2B;4GAA3B,2BAA2B,8GCPxC,4uBAKA;2FDEa,2BAA2B;kBALvC,SAAS;+BACE,sBAAsB;8BAKvB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,6BAA6B;;0HAA7B,6BAA6B;8GAA7B,6BAA6B,iHCP1C,4+BAIA;2FDGa,6BAA6B;kBALzC,SAAS;+BACE,yBAAyB;8BAK1B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,4sBAGA;2FDIa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,irBAIA;2FDGa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,2BAA2B;;wHAA3B,2BAA2B;4GAA3B,2BAA2B,+GCPxC,msBAIA;2FDGa,2BAA2B;kBALvC,SAAS;+BACE,uBAAuB;8BAKxB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,oeAKA;2FDEa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,4BAA4B;;yHAA5B,4BAA4B;6GAA5B,4BAA4B,gHCPzC,qyCAWA;2FDJa,4BAA4B;kBALxC,SAAS;+BACE,wBAAwB;8BAKzB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,8GCPvC,qqBAIA;2FDGa,0BAA0B;kBALtC,SAAS;+BACE,sBAAsB;8BAKvB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,kWAGA;2FDIa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,42BAMA;2FDCa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,2gCAKA;2FDEa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,6GCPvC,m5BAGA;2FDIa,0BAA0B;kBALtC,SAAS;+BACE,qBAAqB;8BAKtB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,8mBAIA;2FDGa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,q9BAKA;2FDEa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,4iCAQA;2FDDa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,8BAA8B;;2HAA9B,8BAA8B;+GAA9B,8BAA8B,kHCP3C,m0BAIA;2FDGa,8BAA8B;kBAL1C,SAAS;+BACE,0BAA0B;8BAK3B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,wvBAKA;2FDEa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,wuBAKA;2FDEa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,u/DAYA;2FDLa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,klBAKA;2FDEa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,wkCAMA;2FDCa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,8BAA8B;;2HAA9B,8BAA8B;+GAA9B,8BAA8B,kHCP3C,49CAMA;2FDCa,8BAA8B;kBAL1C,SAAS;+BACE,0BAA0B;8BAK3B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,4BAA4B;;yHAA5B,4BAA4B;6GAA5B,4BAA4B,gHCPzC,y2CAMA;2FDCa,4BAA4B;kBALxC,SAAS;+BACE,wBAAwB;8BAKzB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,4BAA4B;;yHAA5B,4BAA4B;6GAA5B,4BAA4B,gHCPzC,2vBAIA;2FDGa,4BAA4B;kBALxC,SAAS;+BACE,wBAAwB;8BAKzB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,+cAIA;2FDGa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,6BAA6B;;0HAA7B,6BAA6B;8GAA7B,6BAA6B,iHCP1C,uwEAUA;2FDHa,6BAA6B;kBALzC,SAAS;+BACE,yBAAyB;8BAK1B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,6GCPvC,ixIAKA;2FDEa,0BAA0B;kBALtC,SAAS;+BACE,qBAAqB;8BAKtB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,2BAA2B;;wHAA3B,2BAA2B;4GAA3B,2BAA2B,8GCPxC,uwBAIA;2FDGa,2BAA2B;kBALvC,SAAS;+BACE,sBAAsB;8BAKvB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,8pDAMA;2FDCa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,6GCPvC,s6BAKA;2FDEa,0BAA0B;kBALtC,SAAS;+BACE,qBAAqB;8BAKtB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,iCAAiC;;8HAAjC,iCAAiC;kHAAjC,iCAAiC,qHCP9C,2pGAUA;2FDHa,iCAAiC;kBAL7C,SAAS;+BACE,6BAA6B;8BAK9B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,4BAA4B;;yHAA5B,4BAA4B;6GAA5B,4BAA4B,gHCPzC,khCAMA;2FDCa,4BAA4B;kBALxC,SAAS;+BACE,wBAAwB;8BAKzB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,i3CAGA;2FDIa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,shKAKA;2FDEa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,wvCAIA;2FDGa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,6GCPvC,0iCAKA;2FDEa,0BAA0B;kBALtC,SAAS;+BACE,qBAAqB;8BAKtB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,4dAIA;2FDGa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,2lBAIA;2FDGa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,gCAAgC;;6HAAhC,gCAAgC;iHAAhC,gCAAgC,oHCP7C,q/BAKA;2FDEa,gCAAgC;kBAL5C,SAAS;+BACE,4BAA4B;8BAK7B,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,2BAA2B;;wHAA3B,2BAA2B;4GAA3B,2BAA2B,8GCPxC,8lIAIA;2FDGa,2BAA2B;kBALvC,SAAS;+BACE,sBAAsB;8BAKvB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,wBAAwB;;qHAAxB,wBAAwB;yGAAxB,wBAAwB,2GCPrC,uoCAMA;2FDCa,wBAAwB;kBALpC,SAAS;+BACE,mBAAmB;8BAKpB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,+iCAQA;2FDDa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,gyBAKA;2FDEa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,uBAAuB;;oHAAvB,uBAAuB;wGAAvB,uBAAuB,0GCPpC,stBAIA;2FDGa,uBAAuB;kBALnC,SAAS;+BACE,kBAAkB;8BAKnB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,6GCPvC,01CAiBA;2FDVa,0BAA0B;kBALtC,SAAS;+BACE,qBAAqB;8BAKtB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,yBAAyB;;sHAAzB,yBAAyB;0GAAzB,yBAAyB,4GCPtC,62CAKA;2FDEa,yBAAyB;kBALrC,SAAS;+BACE,oBAAoB;8BAKrB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;MEHK,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,6GCPvC,29BAKA;2FDEa,0BAA0B;kBALtC,SAAS;+BACE,qBAAqB;8BAKtB,SAAS;sBAAjB,KAAK;gBAEG,IAAI;sBAAZ,KAAK;;;AEVR;;;;;MAwfa,mBAAmB;IAmB9B,YAAoB,+BAAgE;QAAhE,oCAA+B,GAA/B,+BAA+B,CAAiC;QAhB3E,UAAK,GAAW,OAAO,CAAC;QAExB,aAAQ,GAAG,KAAK,CAAC;QAEjB,aAAQ,GAAY,KAAK,CAAC;QAEnC,eAAU,GAAG,SAAS,CAAC;QAEvB,UAAK,GAAG,EAAE,CAAC;QAEX,QAAG,GAAG,aAAa,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAOnD,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;KACrC;IAEO,UAAU;QAChB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,+BAA+B,EAAE,GAAG,IAAI,CAAC;QACxE,MAAM,WAAW,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,CAAC,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5D,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,GAAG,CAAC,IAAG,CAAC,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,CAAC;QAEpE,+BAA+B;aAC5B,QAAQ,EAAE;aACV,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aACpC,SAAS,CAAC,CAAC,QAAa;YACvB,IAAI,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;gBACjD,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;gBAE5B,IAAI,YAAY,GAAG,EAAE,CAAC;gBACtB,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;oBACjC,IAAI,gBAAgB,GAAG,EAAE,EACvB,kBAAkB,GAAG,EAAE,CAAC;oBAC1B,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBACvC,IAAI,CAAC,gBAAgB;wBAAE,gBAAgB,GAAG,OAAO,CAAC;oBAClD,kBAAkB,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzC,IAAI,CAAC,kBAAkB;wBAAE,kBAAkB,GAAG,MAAM,CAAC;oBAErD,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,kBAAkB,CAAC,CAAC;oBAC5D,IAAI,QAAQ,EAAE;wBACZ,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,kBAAkB,CAAC,CAAC;qBACzE;iBACF;qBAAM;oBACL,YAAY,GAAG,KAAK,CAAC;iBACtB;gBAED,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC;aAChC;SACF,CAAC,CAAC;KACN;IAED,QAAQ;QACN,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAED,WAAW;QACT,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAGD,OAAO,CAAC,KAAU;QAChB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,KAAK,CAAC,wBAAwB,EAAE,CAAC;SAClC;KACF;;gHAzEU,mBAAmB;oGAAnB,mBAAmB,mNApepB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAieT;2FAGU,mBAAmB;kBAte/B,SAAS;mBAAC;oBACT,QAAQ,EAAE,aAAa;oBACvB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAieT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;mHAEU,IAAI;sBAAZ,KAAK;gBAEG,KAAK;sBAAb,KAAK;gBAEG,QAAQ;sBAAhB,KAAK;gBAEG,QAAQ;sBAAhB,KAAK;gBA4DN,OAAO;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;AC1jBnC;;;;;MA4Da,qBAAqB;IAUhC;QAPS,iBAAY,GAAW,MAAM,CAAC;QAG9B,aAAQ,GAAY,KAAK,CAAC;QAC1B,SAAI,GAAuB,IAAI,CAAC;QAEzC,iBAAY,GAAG,KAAK,CAAC;KACL;IAEhB,QAAQ;QACN,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SAC1B;KACF;IAGD,OAAO,CAAC,KAAU;QAChB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,KAAK,CAAC,wBAAwB,EAAE,CAAC;SAClC;KACF;;kHA1BU,qBAAqB;sGAArB,qBAAqB,oPAnDtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDT;2FAGU,qBAAqB;kBArDjC,SAAS;mBAAC;oBACT,QAAQ,EAAE,eAAe;oBACzB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;0EAEU,KAAK;sBAAb,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACG,QAAQ;sBAAhB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBAaN,OAAO;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;AC/EnC;;;;;MA+Ca,6BAA6B;IAUxC,YAAoB,GAAsB;QAAtB,QAAG,GAAH,GAAG,CAAmB;QARjC,SAAI,GAA0B,QAAQ,CAAC;QACvC,iBAAY,GAAG,IAAI,CAAC;QAEtB,iBAAY,GAAG,SAAS,CAAC;QACzB,YAAO,GAAY,KAAK,CAAC;QACzB,QAAG,GAAW,wBAAwB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QACxE,cAAS,GAAY,KAAK,CAAC;;KAIjC;IAGD,QAAQ,CAAC,KAAU;QACjB,IAAI,CAAC,KAAK,EAAE,CAAC;KACd;IAGD,OAAO,CAAC,KAAU;QAChB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE;YACrC,IAAI,CAAC,KAAK,EAAE,CAAC;SACd;aAAM;YACL,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B;KACF;IAED,KAAK;QACH,UAAU,CAAC;YACT,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B,EAAE,EAAE,CAAC,CAAC;KACR;;0HApCU,6BAA6B;8GAA7B,6BAA6B,iOA/B9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BT;2FAGU,6BAA6B;kBAjCzC,SAAS;mBAAC;oBACT,QAAQ,EAAE,wBAAwB;oBAClC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;wGAEU,KAAK;sBAAb,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,YAAY;sBAApB,KAAK;gBAYN,QAAQ;sBADP,YAAY;uBAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;gBAM1C,OAAO;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;AClEnC;;;;;MAoBa,2BAA2B;IAZxC;QAkBS,QAAG,GAAG,sBAAsB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9D,cAAS,GAAG,KAAK,CAAC;QAClB,kBAAa,GAAG,EAAE,CAAC;KAM3B;IAJC,QAAQ;QACN,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC,CAAC,CAAC,CAAC;KACvC;;wHAbU,2BAA2B;4GAA3B,2BAA2B,gIAV5B;;;;;;;GAOT;2FAGU,2BAA2B;kBAZvC,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,QAAQ,EAAE;;;;;;;GAOT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;8BAEU,KAAK;sBAAb,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,GAAG;sBAAX,KAAK;;;MCoJK,gBAAgB;;6GAAhB,gBAAgB;8GAAhB,gBAAgB,iBAtFzB,qBAAqB;QACrB,4BAA4B;QAC5B,4BAA4B;QAC5B,6BAA6B;QAC7B,0BAA0B;QAC1B,0BAA0B;QAC1B,uBAAuB;QACvB,0BAA0B;QAC1B,uBAAuB;QACvB,uBAAuB;QACvB,sBAAsB;QACtB,2BAA2B;QAC3B,yBAAyB;QACzB,8BAA8B;QAC9B,uBAAuB;QACvB,8BAA8B;QAC9B,iCAAiC;QACjC,wBAAwB;QACxB,4BAA4B;QAC5B,6BAA6B;QAC7B,4BAA4B;QAC5B,wBAAwB;QACxB,wBAAwB;QACxB,uBAAuB;QACvB,0BAA0B;QAC1B,8BAA8B;QAC9B,mBAAmB;QACnB,2BAA2B;QAC3B,8BAA8B;QAC9B,yBAAyB;QACzB,2BAA2B;QAC3B,6BAA6B;QAC7B,mCAAmC;QACnC,yBAAyB;QACzB,2BAA2B;QAC3B,uBAAuB;QACvB,6BAA6B;QAC7B,wBAAwB;QACxB,2BAA2B;QAC3B,wBAAwB;QACxB,4BAA4B;QAC5B,0BAA0B;QAC1B,yBAAyB;QACzB,uBAAuB;QACvB,uBAAuB;QACvB,0BAA0B;QAC1B,uBAAuB;QACvB,wBAAwB;QACxB,uBAAuB;QACvB,8BAA8B;QAC9B,wBAAwB;QACxB,yBAAyB;QACzB,wBAAwB;QACxB,uBAAuB;QACvB,wBAAwB;QACxB,8BAA8B;QAC9B,4BAA4B;QAC5B,4BAA4B;QAC5B,uBAAuB;QACvB,6BAA6B;QAC7B,0BAA0B;QAC1B,2BAA2B;QAC3B,yBAAyB;QACzB,0BAA0B;QAC1B,iCAAiC;QACjC,4BAA4B;QAC5B,wBAAwB;QACxB,uBAAuB;QACvB,wBAAwB;QACxB,0BAA0B;QAC1B,yBAAyB;QACzB,yBAAyB;QACzB,gCAAgC;QAChC,2BAA2B;QAC3B,wBAAwB;QACxB,yBAAyB;QACzB,yBAAyB;QACzB,uBAAuB;QACvB,0BAA0B;QAC1B,yBAAyB;QACzB,0BAA0B,aAElB,YAAY,aACZ,mBAAmB;8GAGlB,gBAAgB,YAJlB,CAAC,YAAY,CAAC;2FAIZ,gBAAgB;kBAxF5B,QAAQ;mBAAC;oBACR,YAAY,EAAE;wBACZ,qBAAqB;wBACrB,4BAA4B;wBAC5B,4BAA4B;wBAC5B,6BAA6B;wBAC7B,0BAA0B;wBAC1B,0BAA0B;wBAC1B,uBAAuB;wBACvB,0BAA0B;wBAC1B,uBAAuB;wBACvB,uBAAuB;wBACvB,sBAAsB;wBACtB,2BAA2B;wBAC3B,yBAAyB;wBACzB,8BAA8B;wBAC9B,uBAAuB;wBACvB,8BAA8B;wBAC9B,iCAAiC;wBACjC,wBAAwB;wBACxB,4BAA4B;wBAC5B,6BAA6B;wBAC7B,4BAA4B;wBAC5B,wBAAwB;wBACxB,wBAAwB;wBACxB,uBAAuB;wBACvB,0BAA0B;wBAC1B,8BAA8B;wBAC9B,mBAAmB;wBACnB,2BAA2B;wBAC3B,8BAA8B;wBAC9B,yBAAyB;wBACzB,2BAA2B;wBAC3B,6BAA6B;wBAC7B,mCAAmC;wBACnC,yBAAyB;wBACzB,2BAA2B;wBAC3B,uBAAuB;wBACvB,6BAA6B;wBAC7B,wBAAwB;wBACxB,2BAA2B;wBAC3B,wBAAwB;wBACxB,4BAA4B;wBAC5B,0BAA0B;wBAC1B,yBAAyB;wBACzB,uBAAuB;wBACvB,uBAAuB;wBACvB,0BAA0B;wBAC1B,uBAAuB;wBACvB,wBAAwB;wBACxB,uBAAuB;wBACvB,8BAA8B;wBAC9B,wBAAwB;wBACxB,yBAAyB;wBACzB,wBAAwB;wBACxB,uBAAuB;wBACvB,wBAAwB;wBACxB,8BAA8B;wBAC9B,4BAA4B;wBAC5B,4BAA4B;wBAC5B,uBAAuB;wBACvB,6BAA6B;wBAC7B,0BAA0B;wBAC1B,2BAA2B;wBAC3B,yBAAyB;wBACzB,0BAA0B;wBAC1B,iCAAiC;wBACjC,4BAA4B;wBAC5B,wBAAwB;wBACxB,uBAAuB;wBACvB,wBAAwB;wBACxB,0BAA0B;wBAC1B,yBAAyB;wBACzB,yBAAyB;wBACzB,gCAAgC;wBAChC,2BAA2B;wBAC3B,wBAAwB;wBACxB,yBAAyB;wBACzB,yBAAyB;wBACzB,uBAAuB;wBACvB,0BAA0B;wBAC1B,yBAAyB;wBACzB,0BAA0B;qBAC3B;oBACD,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,mBAAmB,CAAC;oBAC9B,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;MC7JY,kBAAkB;;+GAAlB,kBAAkB;gHAAlB,kBAAkB,iBALd,qBAAqB,EAAE,6BAA6B,EAAE,2BAA2B,aACtF,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,gBAAgB,aAChE,qBAAqB,EAAE,6BAA6B,EAAE,2BAA2B;gHAGhF,kBAAkB,YAJpB,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,gBAAgB,CAAC;2FAIhE,kBAAkB;kBAN9B,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,qBAAqB,EAAE,6BAA6B,EAAE,2BAA2B,CAAC;oBACjG,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,gBAAgB,CAAC;oBAC3E,OAAO,EAAE,CAAC,qBAAqB,EAAE,6BAA6B,EAAE,2BAA2B,CAAC;oBAC5F,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACbD;;;;;AA6BA,MAAM,MAAM,GAAQ,OAAO,CAAC;MA0Mf,8BAA8B;IA6CzC,YAAoB,EAAe,EAAU,GAAsB;QAA/C,OAAE,GAAF,EAAE,CAAa;QAAU,QAAG,GAAH,GAAG,CAAmB;QA3C1D,kBAAa,GAAW,EAAE,CAAC;QAmB3B,oBAAe,GAAG,IAAI,CAAC;QAMtB,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAErC,UAAK,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC9C,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAGrC,eAAU,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,gBAAW,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3C,QAAG,GAAW,0BAA0B,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAC1E,kBAAa,GAAG,EAAE,CAAC;QACnB,mBAAc,GAAG,EAAE,CAAC;QAEpB,cAAS,GAAY,KAAK,CAAC;QAC3B,aAAQ,GAAG,IAAI,CAAC;QAChB,eAAU,GAAG,IAAI,CAAC;QAClB,aAAQ,GAAG,IAAI,CAAC;QAGrB,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;IA1BD,IACI,OAAO,CAAC,KAAU;QACpB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,KAAK,CAAC;KACtD;IAyBO,aAAa;;QACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YAC7B,SAAS,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;YACtC,OAAO,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;SACrC,CAAC,CAAC;QACH,MAAA,MAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,YAAY,0CAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,0CAAE,SAAS,CAAC,CAAC,MAAW;YACxF,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YACtC,IAAI,CAAC,UAAU,GAAG,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;YACxD,IAAI,CAAC,QAAQ,GAAG,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;SACnD,CAAC,CAAC;KACJ;IAEO,cAAc,CAAC,KAAU;QAC/B,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;aAC1D,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;aACxB,GAAG,CAAC,CAAC,CAAS;YACb,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SAC7C,CAAC,CAAC;QAEL,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE;YAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC,EAAE,CAAC;SACL;QACD,CAAC,GAAG,CAAC,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,EAAE,CAAC;SACL;QAED,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,IAAI,OAAO,GAAG,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAgB;YACnD,IAAI,KAAK,GAAG,CAAC,EAAE;gBACb,KAAK,GAAG,CAAC,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACpB,KAAK,GAAG,EAAE,CAAC;aACZ;YAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClB,KAAK,EAAE,CAAC;SACT,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEpB,OAAO,OAAO,CAAC;KAChB;IAEO,KAAK;QACX,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KAC7D;IAEO,UAAU;QAChB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;KACvC;IAED,eAAe;QACb,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,EAAE,CAAC;KACd;IAED,QAAQ;QACN,IAAI,CAAC,KAAK,EAAE,CAAC;KACd;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;QAClB,IACE,KAAK;YACL,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC;YACxD,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,EACtD;YACA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACzB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACzC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SAC3C;aAAM;YACL,IAAI,CAAC,UAAU,EAAE,CAAC;SACnB;KACF;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;KAC7B;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3B;IAED,SAAS;QACP,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAE7B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KAC7D;IAED,aAAa;QACX,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAElC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KAC7D;IAED,UAAU,CAAC,GAAQ;QACjB,IAAI,CAAC,GAAG,EAAE;YACR,OAAO,KAAK,CAAC;SACd;QAED,OAAO,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;KACzD;IAED,UAAU,CAAC,GAAQ;QACjB,IAAI,CAAC,GAAG,EAAE;YACR,OAAO,KAAK,CAAC;SACd;QAED,IAAI,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACnF,IAAI,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAE/E,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;YACxB,OAAO,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;SAChF;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE;YACzC,OAAO,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SACpC;KACF;IAED,UAAU,CAAC,GAAG;QACZ,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAC1B,IAAI,QAAQ,EAAE;YACZ,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC1C,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;SAClD;QACD,OAAO,KAAK,CAAC;KACd;IAED,eAAe,CAAC,GAAG;QACjB,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAC3B,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC;QACtC,OAAO,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,CAAC,SAAS,CAAC,CAAC;KAC/B;IAED,cAAc,CAAC,GAAQ;QACrB,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAC3B,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC;QACpC,OAAO,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,CAAC,OAAO,CAAC,CAAC;KAC7B;IAED,YAAY,CAAC,GAAQ;QACnB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QACrC,IAAI,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAE5C,IAAI,QAAQ,EAAE;YACZ,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC1C,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBAAE,OAAO;SACvD;QAED,IAAI,SAAS,CAAC,KAAK,EAAE;YACnB,IAAI,CAAC,UAAU,EAAE,CAAC;SACnB;QAED,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC;QAC7C,IAAI,SAAS,EAAE;YACb,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE;gBACnE,OAAO,GAAG,SAAS,CAAC;gBACpB,SAAS,GAAG,YAAY,CAAC;aAC1B;iBAAM;gBACL,OAAO,GAAG,YAAY,CAAC;aACxB;SACF;;YAAM,SAAS,GAAG,YAAY,CAAC;QAEhC,IAAI,SAAS,EAAE;YACb,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;SAClD;QAED,IAAI,OAAO,EAAE;YACX,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SAC9C;QAED,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;KAClC;IAED,iBAAiB,CAAC,IAAY;QAC5B,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;QAC7D,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC;QAEtC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,IAAI,QAAQ,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACrF,MAAM,MAAM,GAAG,eAAe,GAAG,KAAK,GAAG,UAAU,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAEnF,IAAG,eAAe,EAAC;YACjB,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAChD,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SAC9C;aAAM;YACL,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC/C,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;SAC/C;QACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;KAClC;IAED,WAAW;QACT,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAC3B,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;KAChC;;2HAxRU,8BAA8B;+GAA9B,8BAA8B,kSAT9B;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,8BAA8B,CAAC;YAC7D,KAAK,EAAE,IAAI;SACZ;QACD,YAAY;KACb,0BApMS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2LT;2FAWU,8BAA8B;kBAxM1C,SAAS;mBAAC;oBACT,QAAQ,EAAE,0BAA0B;oBACpC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2LT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,oCAAoC,CAAC;4BAC7D,KAAK,EAAE,IAAI;yBACZ;wBACD,YAAY;qBACb;iBACF;oIAEU,KAAK;sBAAb,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBAgBG,WAAW;sBAAnB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,eAAe;sBAAvB,KAAK;gBAEF,OAAO;sBADV,KAAK;gBAKI,QAAQ;sBAAjB,MAAM;gBA4GH,KAAK;sBADR,KAAK;;;MChWK,2BAA2B;;wHAA3B,2BAA2B;yHAA3B,2BAA2B,iBALvB,8BAA8B,aACnC,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,aACpF,8BAA8B;yHAG7B,2BAA2B,YAJ7B,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,CAAC;2FAIpF,2BAA2B;kBANvC,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,8BAA8B,CAAC;oBAC9C,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,CAAC;oBAC/F,OAAO,EAAE,CAAC,8BAA8B,CAAC;oBACzC,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACZD;;;;;MAsHa,oBAAoB;IAuC/B,YACU,YAA0B,EAC1B,eAAgD,EAChD,GAAsB;QAFtB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,oBAAe,GAAf,eAAe,CAAiC;QAChD,QAAG,GAAH,GAAG,CAAmB;QAzCvB,SAAI,GAAW,cAAc,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAE/D,kBAAa,GAAW,EAAE,CAAC;QAC3B,gBAAW,GAAW,EAAE,CAAC;QAOzB,cAAS,GAAW,GAAG,CAAC;QAQxB,iBAAY,GAAG,KAAK,CAAC;QACpB,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAIrC,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAErC,QAAG,GAAW,cAAc,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9D,cAAS,GAAY,KAAK,CAAC;QAG3B,kBAAa,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACvD,YAAO,GAAG,EAAE,CAAC;KAWhB;IAEI,WAAW,CAAC,KAAU,EAAE,KAAK,GAAG,KAAK;QAC3C,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,OAAO,WAAW,CAAC,iBAAiB,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;SAClD;aAAM,IAAI,IAAI,CAAC,gBAAgB;YAAE,OAAO,WAAW,CAAC,sBAAsB,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;aACnF,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,GAAG,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC;aACpD,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,GAAG,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC;aACpD,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,WAAW,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;aAC7E,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;YACtC,MAAM,OAAO,GAAG,WAAW,CAAC,iBAAiB,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,OAAO,GAAG,GAAG,CAAC;YAC7B,IAAG,CAAC,MAAM;gBAAE,OAAO,EAAE,CAAC;YACtB,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SAC1B;QAED,OAAO,KAAK,CAAC;KACd;IAEO,WAAW,CAAC,KAAU;QAC5B,OAAO,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;KACrD;IAEO,WAAW,CAAC,KAAU;;QAC5B,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAC1B,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAClD,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAChC,KAAK,EACL,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,0CAAE,IAAI,KAAI,KAAK,EACjC,EAAE,EACF,OAAO,EACP,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,0CAAE,MAAM,KAAI,OAAO,CACtC,CAAC;SACH;aAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YACvB,OAAO,GAAG,KAAK,EAAE,CAAC;SACnB;QAED,OAAO,KAAK,CAAC;KACd;IAEO,YAAY;;QAClB,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAC1B,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG;gBACb,GAAG,EAAE,IAAI;gBACT,GAAG,EAAE,KAAK;aACX,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,0CAAE,IAAI,KAAI,KAAK,CAAC,CAAC;SACtC;aAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YACvB,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;SACpB;KACF;IAED,QAAQ;QACN,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAC1B,eAAe,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,GAAwB;YAC5D,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;YACpB,IAAI,CAAC,YAAY,EAAE,CAAC;SACrB,CAAC,CAAC;KACJ;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;QAClB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACtC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KACxC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAED,aAAa,CAAC,KAAU;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC;QAClC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC7B;IAED,qBAAqB;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;KAC5D;IAGD,OAAO;;QACL,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,0CAAE,oBAAoB,CAAC,OAAO,CAAC,0CAAG,CAAC,CAAC,0CAAE,KAAK,EAAE,CAAC;KACjF;IAED,UAAU,CAAC,KAAU;;QACnB,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,MAAM,GAAG,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,KAAK,CAAC;QACjC,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,EAAE;YACpD,OAAO,GAAG,OAAO,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,SAAS,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE;gBACnE,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,OAAO;aACR;SACF;aAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE;YAChC,OAAO,GAAG,cAAc,CAAC;SAC1B;QAED,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACvC,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;KACF;;iHAzKU,oBAAoB;qGAApB,oBAAoB,+kBATpB;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,oBAAoB,CAAC;YACnD,KAAK,EAAE,IAAI;SACZ;QACD,YAAY;KACb,oJA3FS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkFT;2FAWU,oBAAoB;kBA/FhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkFT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,0BAA0B,CAAC;4BACnD,KAAK,EAAE,IAAI;yBACZ;wBACD,YAAY;qBACb;iBACF;gLAEU,IAAI;sBAAZ,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,MAAM;sBAAd,KAAK;gBACG,SAAS;sBAAjB,KAAK;gBACG,UAAU;sBAAlB,KAAK;gBACG,gBAAgB;sBAAxB,KAAK;gBACG,SAAS;sBAAjB,KAAK;gBACG,SAAS;sBAAjB,KAAK;gBACG,UAAU;sBAAlB,KAAK;gBACG,QAAQ;sBAAhB,KAAK;gBACG,OAAO;sBAAf,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBAiBP,WAAW;sBAHV,SAAS;uBAAC,aAAa,EAAE;wBACxB,MAAM,EAAE,IAAI;qBACb;gBAkFG,KAAK;sBADR,KAAK;gBA+BN,OAAO;sBADN,YAAY;uBAAC,OAAO;;;ACzQvB;;;;;MAgGa,0BAA0B;IA8BrC,YACU,UAAsB,EACtB,YAA0B,EAC1B,eAAgD;QAFhD,eAAU,GAAV,UAAU,CAAY;QACtB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,oBAAe,GAAf,eAAe,CAAiC;QAhBjD,iBAAY,GAAW,OAAO,CAAC;QAC9B,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAIrC,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAGrC,QAAG,GAAW,cAAc,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9D,cAAS,GAAY,KAAK,CAAC;KAO9B;IAEI,WAAW,CAAC,KAAU;;QAC5B,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAC1B,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE;YACjC,OAAO,WAAW,CAAC,iBAAiB,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;SAClD;aAAM,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;YAC5C,OAAO,WAAW,CAAC,sBAAsB,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;aACnD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;YAAE,OAAO,GAAG,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC;aAClE,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;YAAE,OAAO,GAAG,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC;aAClE,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;YAAE,OAAO,WAAW,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;aAC3F,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;YACpC,MAAM,QAAQ,GAAG,WAAW,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAChC,QAAQ,GAAG,GAAG,EACd,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,0CAAE,IAAI,KAAI,KAAK,EACjC,QAAQ,EACR,EAAE,EACF,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,0CAAE,MAAM,KAAI,OAAO,CACtC,CAAC;SACH;QAED,OAAO,KAAK,CAAC;KACd;IAED,QAAQ;QACN,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAC1B,eAAe,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,GAAwB;YAC5D,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;SACrB,CAAC,CAAC;KACJ;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;QAClB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;KAC5B;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAED,aAAa,CAAC,KAAU;QACtB,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC;QAChC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACxC,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1B;QACD,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3B,EAAE,GAAG,CAAC,CAAC;KACT;IAED,qBAAqB;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;KAC5D;IAGD,OAAO,CAAC,KAAU;QAChB,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACrB,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;KACtC;;uHArHU,0BAA0B;2GAA1B,0BAA0B,gjBAT1B;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,0BAA0B,CAAC;YACzD,KAAK,EAAE,IAAI;SACZ;QACD,YAAY;KACb,0BAvES;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DT;2FAWU,0BAA0B;kBA3EtC,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,gCAAgC,CAAC;4BACzD,KAAK,EAAE,IAAI;yBACZ;wBACD,YAAY;qBACb;iBACF;yKAEU,IAAI;sBAAZ,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,MAAM;sBAAd,KAAK;gBACG,UAAU;sBAAlB,KAAK;gBACG,gBAAgB;sBAAxB,KAAK;gBACG,SAAS;sBAAjB,KAAK;gBACG,SAAS;sBAAjB,KAAK;gBACG,UAAU;sBAAlB,KAAK;gBACG,QAAQ;sBAAhB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBA8DH,KAAK;sBADR,KAAK;gBAmCN,OAAO;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;MC7LtB,iBAAiB;;8GAAjB,iBAAiB;+GAAjB,iBAAiB,iBAXb,oBAAoB,EAAE,0BAA0B,aAE7D,YAAY;QACZ,WAAW;QACX,mBAAmB,sBAEnB,gBAAgB,aAER,oBAAoB,EAAE,0BAA0B;+GAG/C,iBAAiB,YAVnB;YACP,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,aAAa,CAAC,OAAO,EAAE;YACvB,gBAAgB;SACjB;2FAIU,iBAAiB;kBAZ7B,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,oBAAoB,EAAE,0BAA0B,CAAC;oBAChE,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,aAAa,CAAC,OAAO,EAAE;wBACvB,gBAAgB;qBACjB;oBACD,OAAO,EAAE,CAAC,oBAAoB,EAAE,0BAA0B,CAAC;oBAC3D,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACnBD;;;;;MA6Da,qBAAqB;IAWhC,YAAmB,KAAiB;QAAjB,UAAK,GAAL,KAAK,CAAY;QAV3B,SAAI,GAAW,QAAQ,CAAC;QAKxB,gBAAW,GAAG,IAAI,CAAC;QAGrB,QAAG,GAAW,eAAe,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;;KAIrE;IAGD,OAAO,CAAC,KAAU;QAChB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;SAC3B;KACF;;kHAtBU,qBAAqB;sGAArB,qBAAqB,gRARrB;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,qBAAqB,CAAC;YACpD,KAAK,EAAE,IAAI;SACZ;KACF,0BAxCS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCT;2FAUU,qBAAqB;kBA5CjC,SAAS;mBAAC;oBACT,QAAQ,EAAE,eAAe;oBACzB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,2BAA2B,CAAC;4BACpD,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF;iGAEU,IAAI;sBAAZ,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACG,SAAS;sBAAjB,KAAK;gBACG,QAAQ;sBAAhB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACI,cAAc;sBAAvB,MAAM;gBASP,OAAO;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;MC1DtB,kBAAkB;;+GAAlB,kBAAkB;gHAAlB,kBAAkB,iBAZ3B,qBAAqB,aAGrB,YAAY,aAGZ,qBAAqB;gHAMZ,kBAAkB,YAVpB;YACP,YAAY;SACb;2FAQU,kBAAkB;kBAd9B,QAAQ;mBAAC;oBACR,YAAY,EAAE;wBACZ,qBAAqB;qBACtB;oBACD,OAAO,EAAE;wBACP,YAAY;qBACb;oBACD,OAAO,EAAE;wBACP,qBAAqB;qBACtB;oBACD,OAAO,EAAE;wBACP,gBAAgB;qBACjB;iBACF;;;ACjBD;;;;;MA2Ea,qBAAqB;IAyBhC,YAAoB,KAAwB;QAAxB,UAAK,GAAL,KAAK,CAAmB;QAlBnC,gBAAW,GAAG,WAAW,CAAC;QAC1B,oBAAe,GAAG,IAAI,YAAY,EAAO,CAAC;QACzC,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAMrC,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAKrC,YAAO,GAAY,KAAK,CAAC;QACzB,QAAG,GAAW,eAAe,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAC/D,cAAS,GAAY,KAAK,CAAC;KAEc;IAExC,gBAAgB;QACtB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YACtB,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC;SACzB,CAAC,CAAC;QACH,IAAI,OAAO,EAAE;YACX,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,IAAI,SAAS,EAAE;gBACb,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC/B,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;aACtD;YACD,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;YAC1D,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;SAC5B;KACF;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YACtB,EAAE,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnD,EAAE,CAAC,IAAI,GAAG,QAAQ,CAAC;YACnB,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;YACnB,IAAI,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,EAAE;gBACxE,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;gBACpB,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC;aAClB;SACF,CAAC,CAAC;KACJ;IAEO,IAAI;QACV,UAAU,CAAC;YACT,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB,EAAE,CAAC,CAAC,CAAC;KACP;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;QAClB,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE;YACtD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;SAC5B;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAED,aAAa,CAAC,KAAU,EAAE,KAAU;QAClC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3B;IAGD,QAAQ;QACN,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACtB;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,UAAU,CAAC;gBACT,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,gBAAgB,EAAE,CAAC;aACzB,EAAE,EAAE,CAAC,CAAC;SACR;KACF;IAED,QAAQ;QACN,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;YAC7B,IAAI,CAAC,IAAI,EAAE,CAAC;SACb,CAAC,CAAC;KACJ;IAED,WAAW;QACT,IAAI,CAAC,IAAI,EAAE,CAAC;KACb;IAED,cAAc,CAAC,MAA6B;QAC1C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;;kHApIU,qBAAqB;sGAArB,qBAAqB,oXARrB;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,qBAAqB,CAAC;YACpD,KAAK,EAAE,IAAI;SACZ;KACF,kDAmBgB,qBAAqB,gLAjE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCT;2FAUU,qBAAqB;kBAlDjC,SAAS;mBAAC;oBACT,QAAQ,EAAE,eAAe;oBACzB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,2BAA2B,CAAC;4BACpD,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF;wGAEU,KAAK;sBAAb,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,eAAe;sBAAvB,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBAGP,aAAa;sBADZ,SAAS;uBAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAOpC,OAAO;sBADd,eAAe;uBAAC,qBAAqB;gBA4DlC,KAAK;sBADR,KAAK;gBA0BN,QAAQ;sBADP,YAAY;uBAAC,gBAAgB;;;AChLhC;;;;;MA2Ba,yBAAyB;IAO5B,UAAU;QAChB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC;QACnE,IAAI,SAAS,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI;YAAE,OAAO;QAC/C,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI;YACF,OAAO,GAAG,WAAW,CAAC,kBAAkB,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;SAC5E;QAAC,OAAO,CAAC,EAAE;;SAEX;QACD,IAAI,CAAC,OAAO,EAAE;YACZ,UAAU,CAAC;gBACT,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;aACjC,EAAE,CAAC,CAAC,CAAC;SACP;KACF;IAED,WAAW,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,mBAAmB,EAAiB;QACnE,IACE,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,WAAW;aACvC,mBAAmB,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC;aACxD,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAC3B;YACA,IAAI,CAAC,UAAU,EAAE,CAAC;SACnB;KACF;IAED,WAAW;QACT,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;;sHAtCU,yBAAyB;0GAAzB,yBAAyB;2FAAzB,yBAAyB;kBAHrC,SAAS;mBAAC;oBACT,QAAQ,EAAE,uBAAuB;iBAClC;8BAEU,WAAW;sBAAnB,KAAK;gBACG,mBAAmB;sBAA3B,KAAK;gBACG,IAAI;sBAAZ,KAAK;;MA6FK,yBAAyB;IAuBpC,YAAuC,SAAoB,EAAU,GAAsB;QAApD,cAAS,GAAT,SAAS,CAAW;QAAU,QAAG,GAAH,GAAG,CAAmB;QAtBlF,SAAI,GAAW,oBAAoB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAErE,kBAAa,GAAW,EAAE,CAAC;QAC3B,gBAAW,GAAW,EAAE,CAAC;QAIzB,cAAS,GAAW,GAAG,CAAC;QACxB,wBAAmB,GAAG,EAAE,CAAC;QACxB,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAErC,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAGrC,QAAG,GAAW,oBAAoB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QACpE,cAAS,GAAY,KAAK,CAAC;QAE3B,iBAAY,GAAG,EAAE,CAAC;QAClB,kBAAa,GAAG,EAAE,CAAC;QACnB,iBAAY,GAAG,IAAI,CAAC;QAGzB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE;YAC1B,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC;SACrC;KACF;IAEO,WAAW,CAAC,KAAU;QAC5B,OAAO,WAAW,CAAC,iBAAiB,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;KAClD;IAEO,WAAW,CAAC,KAAU;QAC5B,OAAO,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;KACrD;IAEO,WAAW,CAAC,KAAU;QAC5B,OAAO,WAAW,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;KAC5E;IAEO,QAAQ;QACd,MAAM,EAAE,mBAAmB,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;QACpD,IAAI,aAAa;YAAE,OAAO,IAAI,mBAAmB,GAAG,aAAa,EAAE,CAAC;QAEpE,OAAO,EAAE,CAAC;KACX;IAED,QAAQ;;QACN,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,eAAe,EAAE,CAAC;QACnD,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY;YACf,IAAI,CAAC,SAAS,KAAM,CAAA,MAAA,IAAI,CAAC,SAAiB,0CAAE,IAAI,MAAK,MAAA,IAAI,CAAC,SAAiB,0CAAE,OAAO,CAAA,CAAC,CAAC;KACzF;IAED,2BAA2B,CAAC,KAAc;QACxC,IAAI,CAAC,mBAAmB;YACtB,WAAW,CAAC,mBAAmB,CAAC,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC;KAC5F;IAED,mCAAmC;QACjC,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC;QACrC,OAAO,IAAI,mBAAmB,EAAE,CAAC;KAClC;IAED,mBAAmB,CAAC,KAAa;QAC/B,MAAM,EAAE,SAAS,EAAE,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACxD,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;KACF;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;QAClB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;KACtC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;KACxB;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAED,aAAa,CAAC,KAAW;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC;QAClC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC7B;IAGD,OAAO;;QACL,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,0CAAE,oBAAoB,CAAC,OAAO,CAAC,0CAAG,CAAC,CAAC,0CAAE,KAAK,EAAE,CAAC;KACjF;IAED,UAAU,CAAC,KAAU;;QACnB,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,MAAM,GAAG,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,KAAK,CAAC;QACjC,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEtD,OAAO,GAAG,OAAO,CAAC;QAClB,IAAI,SAAS,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE;YAC/C,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,OAAO;SACR;QAED,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACvC,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;KACF;;sHAnIU,yBAAyB;0GAAzB,yBAAyB,8YArD1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDT,s0CA7FU,yBAAyB;2FAgGzB,yBAAyB;kBAvDrC,SAAS;mBAAC;oBACT,QAAQ,EAAE,oBAAoB;oBAC9B,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;;;8BAwBc,QAAQ;;8BAAI,IAAI;;yBAtBpB,IAAI;sBAAZ,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,SAAS;sBAAjB,KAAK;gBACG,mBAAmB;sBAA3B,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBA6EH,KAAK;sBADR,KAAK;gBA2BN,OAAO;sBADN,YAAY;uBAAC,OAAO;;;AC3OvB;;;;;MA6Ea,6BAA6B;IA0BxC,YAAoB,KAAwB;QAAxB,UAAK,GAAL,KAAK,CAAmB;QAlBlC,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAKrC,iBAAY,GAAU,EAAE,CAAC;QACzB,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAGpC,gBAAW,GAAG,KAAK,CAAC;QAErB,cAAS,GAA4B,EAAE,CAAC;QACxC,YAAO,GAAY,KAAK,CAAC;QACzB,QAAG,GAAW,eAAe,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAC/D,cAAS,GAAY,KAAK,CAAC;QAC3B,oBAAe,GAAG,EAAE,CAAC;KAEoB;IAExC,sBAAsB;QAC5B,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;QAC5C,IAAI,cAAc,GAAG,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACtD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YACxB,cAAc,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;YACvC,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE;gBACzB,cAAc,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,eAAe,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;aACjF;SACF;QACD,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;KACvC;IAEO,gBAAgB;;QACtB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACpC,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,CAAC,CAAC,EAAE;YACvB,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,GAAQ;gBACzC,OAAO,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC;aAC/B,CAAC,CAAC;YACH,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;YACnB,IAAI,EAAE,CAAC,SAAS;gBAAE,SAAS,GAAG,EAAE,CAAC;YACjC,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACjB,cAAc,IAAI,CAAC,CAAC;aACrB;SACF,CAAC,CAAC;QACH,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,IAAG,CAAC,KAAK,cAAc,IAAI,SAAS,EAAE;YAC5D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC;SAChC;QACD,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAE9B,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;SAC5B;KACF;IAEO,eAAe;;QACrB,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,CAAC,CAAC,EAAE;YACvB,EAAE,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnD,EAAE,CAAC,IAAI,GAAG,iBAAiB,CAAC;YAC5B,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;YACnB,IAAI,EAAE,CAAC,SAAS;gBAAE,SAAS,GAAG,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,GAAQ;gBACjD,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;aAC7E,CAAC,CAAC;YACH,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACxB,cAAc,IAAI,CAAC,CAAC;aACrB;SACF,CAAC,CAAC;QACH,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,IAAG,CAAC,KAAK,cAAc,IAAI,SAAS,EAAE;YAC5D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC;SAChC;QACD,IAAI,CAAC,sBAAsB,EAAE,CAAC;KAC/B;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;;QAClB,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;gBACzC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,GAAG,CAAC,0CAAE,OAAO,CAAC,CAAC,EAAO;oBACjC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBAC5B,CAAC,CAAC;gBACH,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAC1B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;aAC5B;SACF;QACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACpC;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAED,aAAa,CAAC,KAAU,EAAE,KAAU;QAClC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;KACxB;IAGD,QAAQ;QACN,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACtB;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,UAAU,CAAC;gBACT,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,gBAAgB,EAAE,CAAC;aACzB,EAAE,EAAE,CAAC,CAAC;SACR;KACF;IAED,eAAe;QACb,UAAU,CAAC;YACT,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB,EAAE,CAAC,CAAC,CAAC;QAEN,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;YAC7B,UAAU,CAAC;gBACT,IAAI,CAAC,eAAe,EAAE,CAAC;aACxB,EAAE,CAAC,CAAC,CAAC;SACP,CAAC,CAAC;KACJ;IAED,cAAc,CAAC,QAA+B;;QAC5C,IAAI,QAAQ,CAAC,SAAS,EAAE;YACtB,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;YACrC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,CAAC,CAAC,EAAE;oBACvB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBACzB,CAAC,CAAC;aACJ;SACF;aAAM;YACL,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,GAAQ,KAAK,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;YACnF,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAyB;oBAC/D,QACE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;wBAC/E,CAAC,EAAE,CAAC,SAAS,EACb;iBACH,CAAC,CAAC;aACJ;;gBAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACtC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS;aACzB,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;aAC/B,GAAG,CAAC,CAAC,GAAQ;YACZ,OAAO,GAAG,CAAC,KAAK,CAAC;SAClB,CAAC,CAAC;QAEL,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;;0HA7LU,6BAA6B;8GAA7B,6BAA6B,iWAR7B;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,6BAA6B,CAAC;YAC5D,KAAK,EAAE,IAAI;SACZ;KACF,kDAkBgB,qBAAqB,2JAjE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCT;2FAUU,6BAA6B;kBAnDzC,SAAS;mBAAC;oBACT,QAAQ,EAAE,wBAAwB;oBAClC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,mCAAmC,CAAC;4BAC5D,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF;wGAEU,KAAK;sBAAb,KAAK;gBACG,eAAe;sBAAvB,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBAGP,aAAa;sBADZ,SAAS;uBAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAOpC,OAAO;sBADd,eAAe;uBAAC,qBAAqB;gBA2FlC,KAAK;sBADR,KAAK;gBA6BN,QAAQ;sBADP,YAAY;uBAAC,gBAAgB;;;ACnNhC;;;;;MA+Ea,2BAA2B;IA+BtC,YAAoB,KAAwB,EAAU,QAAmB;QAArD,UAAK,GAAL,KAAK,CAAmB;QAAU,aAAQ,GAAR,QAAQ,CAAW;QAxBhE,gBAAW,GAAG,WAAW,CAAC;QAE1B,oBAAe,GAAG,IAAI,YAAY,EAAO,CAAC;QACzC,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QACnC,aAAQ,GAAG,IAAI,YAAY,CAAM,IAAI,CAAC,CAAC;QASzC,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAMrC,YAAO,GAAY,KAAK,CAAC;QACzB,QAAG,GAAW,sBAAsB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QACtE,cAAS,GAAY,KAAK,CAAC;;KAIjC;IAEO,cAAc,CAAC,MAAW;QAChC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YACtB,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC;YAC3C,MAAM,WAAW,GAAG,GAAG,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;YAC9C,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE;gBACpC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;aACrE;iBAAM;gBACL,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;aACrE;YACD,IAAI,OAAO,GAAG,QAAQ,CAAC;YACvB,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE;gBACtC,OAAO,GAAG,MAAM,CAAC;aAClB;YACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;SACpE,CAAC,CAAC;KACJ;IAEO,gBAAgB;QACtB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YACtB,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC;SACzB,CAAC,CAAC;QACH,IAAI,OAAO,EAAE;YACX,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,IAAI,SAAS,EAAE;gBACb,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC/B,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC;aAC3D;YACD,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;YAC1D,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;SAC5B;KACF;IAEO,eAAe;QACrB,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;;YACtB,EAAE,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnD,EAAE,CAAC,IAAI,GAAG,CAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,IAAI,KAAI,QAAQ,CAAC;YAC/B,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;YACnB,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,WAAW,GAAG,EAAE,CAAC;YACrB,IAAI,cAAc,EAAE;gBAClB,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;gBACrD,WAAW,GAAG,GAAG,MAAA,IAAI,CAAC,YAAY,0CAAG,cAAc,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;aACtE;iBAAM;gBACL,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC;gBACrC,WAAW,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,CAAC;aACpD;YACD,IAAI,MAAM,KAAK,WAAW,EAAE;gBAC1B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;gBACpB,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC;aAClB;SACF,CAAC,CAAC;KACJ;IAEO,QAAQ,CAAC,MAAc;QAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;IAEO,IAAI;QACV,UAAU,CAAC;YACT,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB,EAAE,CAAC,CAAC,CAAC;KACP;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;QAClB,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE;YACtD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;SAC5B;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAED,aAAa,CAAC,KAAU,EAAE,KAAU;QAClC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3B;IAGD,QAAQ;QACN,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACtB;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,UAAU,CAAC;;gBACT,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACvB,MAAA,IAAI,CAAC,WAAW,0CAAE,aAAkC,CAAC,KAAK,EAAE,CAAC;aAC/D,EAAE,EAAE,CAAC,CAAC;SACR;KACF;IAED,eAAe;QACb,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;YAC7B,IAAI,CAAC,IAAI,EAAE,CAAC;SACb,CAAC,CAAC;KACJ;IAED,WAAW;QACT,IAAI,CAAC,IAAI,EAAE,CAAC;KACb;IAED,cAAc,CAAC,MAA6B;QAC1C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;IAED,aAAa,CAAC,KAAU;QACtB,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC;QAChC,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1B;QACD,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACtB,EAAE,GAAG,CAAC,CAAC;KACT;;wHAzLU,2BAA2B;4GAA3B,2BAA2B,mbAR3B;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,2BAA2B,CAAC;YAC1D,KAAK,EAAE,IAAI;SACZ;KACF,kDAwBgB,qBAAqB,2RAzE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCT;2FAUU,2BAA2B;kBArDvC,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,iCAAiC,CAAC;4BAC1D,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF;gIAEU,KAAK;sBAAb,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,cAAc;sBAAtB,KAAK;gBACG,eAAe;sBAAvB,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBACG,QAAQ;sBAAjB,MAAM;gBAGP,aAAa;sBADZ,SAAS;uBAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAI5C,WAAW;sBADV,SAAS;uBAAC,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAOlC,OAAO;sBADd,eAAe;uBAAC,qBAAqB;gBAiGlC,KAAK;sBADR,KAAK;gBA0BN,QAAQ;sBADP,YAAY;uBAAC,gBAAgB;;;AC9NhC;;;;;MA6Da,2BAA2B;IAoBtC,YAAoB,KAAwB;QAAxB,UAAK,GAAL,KAAK,CAAmB;QAhBlC,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAMrC,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAKrC,YAAO,GAAY,KAAK,CAAC;QACzB,QAAG,GAAW,sBAAsB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QACtE,cAAS,GAAY,KAAK,CAAC;KAEc;IAExC,gBAAgB;QACtB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YACtB,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC;SACzB,CAAC,CAAC;QACH,IAAI,OAAO,EAAE;YACX,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,IAAI,SAAS,EAAE;gBACb,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC/B,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;aACtD;YACD,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;YAC1D,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;SAC5B;KACF;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YACtB,EAAE,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnD,EAAE,CAAC,IAAI,GAAG,QAAQ,CAAC;YACnB,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;YACnB,IAAI,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,EAAE;gBACxE,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;gBACpB,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC;aAClB;SACF,CAAC,CAAC;KACJ;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;QAClB,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE;YACtD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;SAC5B;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAED,aAAa,CAAC,KAAU,EAAE,KAAU;QAClC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3B;IAGD,QAAQ;QACN,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACtB;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,UAAU,CAAC;gBACT,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,gBAAgB,EAAE,CAAC;aACzB,EAAE,EAAE,CAAC,CAAC;SACR;KACF;IAED,QAAQ;QACN,UAAU,CAAC;YACT,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB,EAAE,CAAC,CAAC,CAAC;KACP;IAED,cAAc,CAAC,MAA6B;QAC1C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;;wHAnHU,2BAA2B;4GAA3B,2BAA2B,+NAR3B;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,2BAA2B,CAAC;YAC1D,KAAK,EAAE,IAAI;SACZ;KACF,kDAcgB,qBAAqB,2JA/C5B;;;;;;;;;;;;;;;;;;;;;;;;;GAyBT;2FAUU,2BAA2B;kBArCvC,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,iCAAiC,CAAC;4BAC1D,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF;wGAEU,WAAW;sBAAnB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBAGP,aAAa;sBADZ,SAAS;uBAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAOpC,OAAO;sBADd,eAAe;uBAAC,qBAAqB;gBAqDlC,KAAK;sBADR,KAAK;gBA0BN,QAAQ;sBADP,YAAY;uBAAC,gBAAgB;;;MCpHnB,kBAAkB;;+GAAlB,kBAAkB;gHAAlB,kBAAkB,iBArB3B,qBAAqB;QACrB,6BAA6B;QAC7B,2BAA2B;QAC3B,2BAA2B,aAG3B,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,iBAAiB;QACjB,kBAAkB;QAClB,gBAAgB,aAGhB,qBAAqB;QACrB,6BAA6B;QAC7B,2BAA2B;QAC3B,2BAA2B;gHAIlB,kBAAkB,YAhBpB;YACP,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,iBAAiB;YACjB,kBAAkB;YAClB,gBAAgB;SACjB;2FASU,kBAAkB;kBAvB9B,QAAQ;mBAAC;oBACR,YAAY,EAAE;wBACZ,qBAAqB;wBACrB,6BAA6B;wBAC7B,2BAA2B;wBAC3B,2BAA2B;qBAC5B;oBACD,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,iBAAiB;wBACjB,kBAAkB;wBAClB,gBAAgB;qBACjB;oBACD,OAAO,EAAE;wBACP,qBAAqB;wBACrB,6BAA6B;wBAC7B,2BAA2B;wBAC3B,2BAA2B;qBAC5B;oBACD,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;MCVY,sBAAsB;;mHAAtB,sBAAsB;oHAAtB,sBAAsB,iBAblB,yBAAyB,EAAE,yBAAyB,aAEjE,YAAY;QACZ,WAAW;QACX,mBAAmB,sBAEnB,gBAAgB;QAChB,kBAAkB;QAClB,kBAAkB,aAEV,yBAAyB;oHAGxB,sBAAsB,YAZxB;YACP,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,aAAa,CAAC,OAAO,EAAE;YACvB,gBAAgB;YAChB,kBAAkB;YAClB,kBAAkB;SACnB;2FAIU,sBAAsB;kBAdlC,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,yBAAyB,EAAE,yBAAyB,CAAC;oBACpE,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,aAAa,CAAC,OAAO,EAAE;wBACvB,gBAAgB;wBAChB,kBAAkB;wBAClB,kBAAkB;qBACnB;oBACD,OAAO,EAAE,CAAC,yBAAyB,CAAC;oBACpC,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACtBD;;;;;MAkEa,uBAAuB;IAgBlC;QAdS,SAAI,GAAW,QAAQ,CAAC;QAKvB,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAGrC,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAErC,QAAG,GAAW,iBAAiB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QACjE,cAAS,GAAY,KAAK,CAAC;KAElB;IAEhB,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;QAClB,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE;YACtD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3B;KACF;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAED,aAAa,CAAC,KAAU,EAAE,KAAU;QAClC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;KACxB;;oHApDU,uBAAuB;wGAAvB,uBAAuB,6PARvB;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,uBAAuB,CAAC;YACtD,KAAK,EAAE,IAAI;SACZ;KACF,0BA9CS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCT;2FAUU,uBAAuB;kBAlDnC,SAAS;mBAAC;oBACT,QAAQ,EAAE,iBAAiB;oBAC3B,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,6BAA6B,CAAC;4BACtD,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF;0EAEU,KAAK;sBAAb,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBAwBH,KAAK;sBADR,KAAK;;;MCrFK,oBAAoB;;iHAApB,oBAAoB;kHAApB,oBAAoB,iBALhB,uBAAuB,aAC5B,YAAY,EAAE,WAAW,EAAE,mBAAmB,aAC9C,uBAAuB;kHAGtB,oBAAoB,YAJtB,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,CAAC;2FAI9C,oBAAoB;kBANhC,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,uBAAuB,CAAC;oBACvC,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,CAAC;oBACzD,OAAO,EAAE,CAAC,uBAAuB,CAAC;oBAClC,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACVD;;;;;MAsDa,0BAA0B;IAoBrC;QAZU,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAGrC,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAKrC,QAAG,GAAW,oBAAoB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QACpE,cAAS,GAAY,KAAK,CAAC;KAElB;IAER,gBAAgB;QACtB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YACtB,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;SAC9B,CAAC,CAAC;KACJ;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YACtB,EAAE,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnD,EAAE,CAAC,IAAI,GAAG,OAAO,CAAC;YAClB,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;YACnB,IACE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,EACpE;gBACA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;gBACpB,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC;aAClB;SACF,CAAC,CAAC;KACJ;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;QAClB,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE;YACtD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAC3B,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;KACF;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAED,aAAa,CAAC,KAAU,EAAE,KAAU;QAClC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3B;IAED,eAAe;QACb,UAAU,CAAC;YACT,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB,EAAE,CAAC,CAAC,CAAC;KACP;IAED,cAAc,CAAC,MAA6B;QAC1C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;;uHA3FU,0BAA0B;2GAA1B,0BAA0B,gQAR1B;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,0BAA0B,CAAC;YACzD,KAAK,EAAE,IAAI;SACZ;KACF,kDAegB,qBAAqB,6BA7C5B;;;;;;;;;;;;;;;;;;;;;;GAsBT;2FAUU,0BAA0B;kBAlCtC,SAAS;mBAAC;oBACT,QAAQ,EAAE,oBAAoB;oBAC9B,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;GAsBT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,gCAAgC,CAAC;4BACzD,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF;0EAGU,KAAK;sBAAb,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBAMC,OAAO;sBADd,eAAe;uBAAC,qBAAqB;gBA2ClC,KAAK;sBADR,KAAK;;;MCxFK,uBAAuB;;oHAAvB,uBAAuB;qHAAvB,uBAAuB,iBAdhC,0BAA0B,aAG1B,YAAY;QACZ,WAAW;QACX,mBAAmB,aAGnB,0BAA0B;qHAMjB,uBAAuB,YAZzB;YACP,YAAY;YACZ,WAAW;YACX,mBAAmB;SACpB;2FAQU,uBAAuB;kBAhBnC,QAAQ;mBAAC;oBACR,YAAY,EAAE;wBACZ,0BAA0B;qBAC3B;oBACD,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;qBACpB;oBACD,OAAO,EAAE;wBACP,0BAA0B;qBAC3B;oBACD,OAAO,EAAE;wBACP,gBAAgB;qBACjB;iBACF;;;ACpBD;;;;;MAuBa,qBAAqB;IAShC;QAPS,eAAU,GAAW,CAAC,CAAC;QACvB,iBAAY,GAAW,CAAC,CAAC;QACzB,aAAQ,GAAW,YAAY,CAAC;KAKxB;IAEjB,QAAQ;QACN,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,KAAa;YACvF,OAAO,IAAI,GAAG,KAAK,CAAC;SACrB,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;KAC3C;;kHAjBU,qBAAqB;sGAArB,qBAAqB,+IAdtB;;;;;;;;;;;GAWT;2FAGU,qBAAqB;kBAhBjC,SAAS;mBAAC;oBACT,QAAQ,EAAE,eAAe;oBACzB,QAAQ,EAAE;;;;;;;;;;;GAWT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;0EAGU,UAAU;sBAAlB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,QAAQ;sBAAhB,KAAK;;;MCPK,kBAAkB;;+GAAlB,kBAAkB;gHAAlB,kBAAkB,iBAb3B,qBAAqB,aAGrB,YAAY;QACZ,gBAAgB,aAGhB,qBAAqB;gHAMZ,kBAAkB,YAXpB;YACP,YAAY;YACZ,gBAAgB;SACjB;2FAQU,kBAAkB;kBAf9B,QAAQ;mBAAC;oBACR,YAAY,EAAE;wBACZ,qBAAqB;qBACtB;oBACD,OAAO,EAAE;wBACP,YAAY;wBACZ,gBAAgB;qBACjB;oBACD,OAAO,EAAE;wBACP,qBAAqB;qBACtB;oBACD,OAAO,EAAE;wBACP,gBAAgB;qBACjB;iBACF;;;ACnBD;;;;;MAqFa,yBAAyB;IA8BpC;QAfU,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QACnC,uBAAkB,GAAG,IAAI,YAAY,EAAQ,CAAC;QAIhD,kBAAa,GAAG,CAAC,KAAU,QAAO,CAAC;QACnC,mBAAc,GAAG,CAAC,KAAU,QAAO,CAAC;QAErC,QAAG,GAAW,oBAAoB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QACpE,cAAS,GAAY,KAAK,CAAC;QAC3B,cAAS,GAAW,IAAI,CAAC;QACzB,yBAAoB,GAAY,KAAK,CAAC;QACtC,kCAA6B,GAAY,KAAK,CAAC;QAC/C,wBAAmB,GAAW,EAAE,CAAC;KAExB;IAER,YAAY,CAAC,IAAU;QAC7B,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;QAC7B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QAE5B,IAAI,WAAW,CAAC,iBAAiB,EAAE;YACjC,MAAM,oBAAoB,GACxB,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,KAAK;gBACzC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC/D,QACE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE;oBACzD,CAAC,WAAW,CAAC,yBAAyB,CAAC,SAAS,CAAC,EACjD;aACH,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YAChB,IAAI,CAAC,oBAAoB,EAAE;gBACzB,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC;gBAC1C,OAAO,KAAK,CAAC;aACd;SACF;QAED,IAAI,WAAW,CAAC,OAAO,EAAE;YACvB,IAAI,IAAI,GAAG,WAAW,CAAC,OAAO,EAAE;gBAC9B,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;gBACjC,OAAO,KAAK,CAAC;aACd;SACF;QAED,OAAO,IAAI,CAAC;KACb;IAEO,cAAc,CACpB,QAAgB,EAChB,YAAiB,EACjB,WAAmB;QAEnB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC;QAC1B,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC;QACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;IAED,QAAQ;QACN,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,IAAI;YACjD,MAAM;YACN,OAAO;YACP,MAAM;YACN,MAAM;YACN,MAAM;YACN,MAAM;YACN,OAAO;SACR,CAAC;QACF,IAAI,KAAK,GAAkB,IAAI,CAAC;QAChC,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;YACrC,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,GAAG;gBACrC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;aAC3B,CAAC,CAAC;SACJ;QAED,IAAI,CAAC,WAAW,GAAG;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;YACxC,iBAAiB,EAAE,KAAK;SACzB,CAAC;KACH;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KACzB;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAE,UAAmB;QACnC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;KAC7B;IAED,IACI,KAAK,CAAC,KAAU;QAClB,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE;YACtD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;SAC5B;KACF;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAED,UAAU,CAAC,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAED,aAAa,CAAC,KAAU;QACtB,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,6BAA6B,GAAG,KAAK,CAAC;QAC3C,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAClC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACjD,MAAM,IAAI,GAAS,KAAK,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;gBAC3B,IAAI,WAAW,EAAE;oBACf,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACpC;qBAAM;oBACL,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;iBACvD;aACF;SACF;KACF;IAGD,OAAO,CAAC,KAAU;QAChB,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACF,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAE,CAAC,KAAK,GAAG,IAAI,CAAC;QAC9D,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;KACtC;IAED,OAAO,CAAC,KAAU;QAChB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;;sHAxJU,yBAAyB;0GAAzB,yBAAyB,unBARzB;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,yBAAyB,CAAC;YACxD,KAAK,EAAE,IAAI;SACZ;KACF,0BA/DS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDT;2FAUU,yBAAyB;kBAnErC,SAAS;mBAAC;oBACT,QAAQ,EAAE,oBAAoB;oBAC9B,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,+BAA+B,CAAC;4BACxD,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF;0EAEU,IAAI;sBAAZ,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,oBAAoB;sBAA5B,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,OAAO;sBAAf,KAAK;gBACG,iBAAiB;sBAAzB,KAAK;gBACG,mBAAmB;sBAA3B,KAAK;gBACG,4BAA4B;sBAApC,KAAK;gBACG,UAAU;sBAAlB,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBACG,kBAAkB;sBAA3B,MAAM;gBA4FH,KAAK;sBADR,KAAK;gBAkCN,OAAO;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;MC9MtB,sBAAsB;;mHAAtB,sBAAsB;oHAAtB,sBAAsB,iBAXlB,yBAAyB,aAEtC,YAAY;QACZ,WAAW;QACX,mBAAmB,sBAEnB,gBAAgB,aAER,yBAAyB;oHAGxB,sBAAsB,YAVxB;YACP,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,aAAa,CAAC,OAAO,EAAE;YACvB,gBAAgB;SACjB;2FAIU,sBAAsB;kBAZlC,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,yBAAyB,CAAC;oBACzC,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,aAAa,CAAC,OAAO,EAAE;wBACvB,gBAAgB;qBACjB;oBACD,OAAO,EAAE,CAAC,yBAAyB,CAAC;oBACpC,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;AClBD;;;;;MAqIa,wBAAwB;IAoCnC,YACU,GAAsB,EACtB,SAAuB;QADvB,QAAG,GAAH,GAAG,CAAmB;QACtB,cAAS,GAAT,SAAS,CAAc;QA3BxB,0BAAqB,GAAG,IAAI,YAAY,EAAO,CAAC;QAC/C,uBAAkB,GAAG,IAAI,YAAY,EAAO,CAAC;QAC7C,yBAAoB,GAAG,IAAI,YAAY,EAAO,CAAC;QAElD,eAAU,GAAc,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QACvD,mBAAc,GAAW,EAAE,CAAC;QAC5B,mBAAc,GAAW,EAAE,CAAC;QAK5B,cAAS,GAAY,KAAK,CAAC;QAC3B,cAAS,GAAW,IAAI,CAAC;QACzB,wBAAmB,GAAW,EAAE,CAAC;QAGhC,eAAU,GAAe,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QACrD,sBAAiB,GAAG,GAAG,CAAC;QACxB,uBAAkB,GAAG,GAAG,CAAC;QACzB,iBAAY,GAAe,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACnD,eAAU,GAAe,IAAI,UAAU,EAAE,CAAC;QAC1C,kBAAa,GAAG,IAAI,KAAK,EAAE,CAAC;QAC5B,kBAAa,GAAS,IAAI,CAAC;QAiN3B,uBAAkB,GAAG,CAAC,MAAM;YAClC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;SACnC,CAAC;QAEM,qBAAgB,GAAG,CAAC,MAAM;YAChC,IAAI,CAAC,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC3D,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG;gBAC1B,UAAU,CAAC;oBACT,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;oBACnD,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;oBACrD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;oBACpC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;oBACnC,IAAI,CAAC,OAAO,EAAE,CAAC;iBAChB,EAAE,IAAI,CAAC,CAAC;aACV,CAAC;YACF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAClE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,CAClC,CAAC;SACH,CAAC;KA9NE;IAEI,OAAO;QACb,IAAI,CAAC,UAAU,GAAG;YAChB,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,WAAW,IAAI,GAAG;YACpE,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,YAAY,IAAI,GAAG;SACvE,CAAC;QACF,IAAI,CAAC,UAAU,GAAG;YAChB,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB;YACtD,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,kBAAkB;YACxD,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB;YACtD,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,kBAAkB;SACzD,CAAC;QACF,IAAI,CAAC,GAAG,EAAE,CAAC;KACZ;IAEO,iBAAiB,CAAC,EAAW;QACnC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;KAC3B;IAEO,wBAAwB,CAAC,EAAW;QAC1C,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAEO,sBAAsB,CAAC,EAAW;QACxC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;KACxB;IAEO,GAAG;QACT,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,KAAK,GAAG,aAAa,CAAC,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;QAChD,IAAI,MAAM,GAAG,aAAa,CAAC,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAsB,CAAC;QACrE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QAEvB,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACpC,GAAG,CAAC,SAAS,CACX,IAAI,CAAC,aAAa,EAClB,aAAa,CAAC,EAAE,EAChB,aAAa,CAAC,EAAE,EAChB,KAAK,EACL,MAAM,EACN,CAAC,EACD,CAAC,EACD,KAAK,EACL,MAAM,CACP,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;KAC5B;IAEO,gBAAgB;QACtB,MAAM,MAAM,GACV,IAAI,CAAC,YAAY,CAAC,KAAK;YACvB,QAAQ,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,WAAW,CAAC;QACzD,MAAM,MAAM,GACV,IAAI,CAAC,YAAY,CAAC,MAAM;YACxB,QAAQ,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,YAAY,CAAC;QAC1D,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC;YAC3C,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC;YAC3C,EAAE,EAAE,IAAI,CAAC,GAAG,CACV,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,EACvC,IAAI,CAAC,YAAY,CAAC,KAAK,CACxB;YACD,EAAE,EAAE,IAAI,CAAC,GAAG,CACV,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,EACvC,IAAI,CAAC,YAAY,CAAC,MAAM,CACzB;SACF,CAAC;KACH;IAEO,aAAa,CAAC,UAA6B;QACjD,UAAU,CAAC,MAAM,CACf,CAAC,GAAS;YACR,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;YACzB,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;SAC/B,EACD,YAAY,EACZ,IAAI,CACL,CAAC;KACH;IAEO,UAAU,CAAC,KAAU;QAC3B,QACE,KAAK,CAAC,OAAO;aACZ,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAC/D;KACH;IAEO,UAAU,CAAC,KAAU;QAC3B,QACE,KAAK,CAAC,OAAO;aACZ,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAC/D;KACH;IAEO,MAAM,CAAC,KAAU;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAC/D,QAAQ,IAAI,CAAC,UAAU,CAAC,QAAQ;YAC9B,KAAK,MAAM;gBACT,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAC5C,CAAC;gBACF,MAAM;YACR,KAAK,SAAS;gBACZ,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAC5C,CAAC;gBACF,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAC7C,CAAC;gBACF,MAAM;YACR,KAAK,KAAK;gBACR,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAC7C,CAAC;gBACF,MAAM;YACR,KAAK,UAAU;gBACb,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAC5C,CAAC;gBACF,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAC7C,CAAC;gBACF,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAC5C,CAAC;gBACF,MAAM;YACR,KAAK,aAAa;gBAChB,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAC5C,CAAC;gBACF,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAC7C,CAAC;gBACF,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAC7C,CAAC;gBACF,MAAM;YACR,KAAK,YAAY;gBACf,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAC5C,CAAC;gBACF,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAC7C,CAAC;gBACF,MAAM;SACT;KACF;IAEO,IAAI,CAAC,KAAU;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAE/D,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,CAAC;KACjD;IAEO,kBAAkB,CAAC,YAAY,GAAG,KAAK;QAC7C,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,EAAE;YAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,EAAE;YAC1B,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;YAC9C,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,YAAY;kBAC9B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK;kBAC1C,CAAC,CAAC;YACN,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;SAC5C;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAC/C,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,YAAY;kBAC9B,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM;kBAC3C,CAAC,CAAC;YACN,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;SAC7C;KACF;IAuBO,YAAY,CAAC,IAAS;QAC5B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;KACrC;IAEO,cAAc,CACpB,QAAgB,EAChB,YAAiB,EACjB,WAAmB;QAEnB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC;QACvC,IAAI,YAAY,EAAE;YAChB,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;SAClC;KACF;IAED,QAAQ;QACN,MAAM,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAC;QACvC,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACtD,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAE/C,qBAAqB,CAAC,SAAS,CAAC,CAAC,GAAa;YAC5C,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa;kBAC3B,WAAW,CAAC,cAAc,CACxB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,cAAc,CACpB;kBACD,IAAI,CAAC;YACT,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SACvD,CAAC,CAAC;KACJ;IAED,SAAS,CACP,KAAU,EACV,QAAgB,EAChB,WAA0B,IAAI;QAE9B,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,mBACb,MAAM,EAAE,IAAI,EACZ,IAAI,EAAE,QAAQ,EACd,QAAQ,EACR,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAC/B,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAC5B,IAAI,CAAC,UAAU,CACnB,CAAC;KACH;IAID,OAAO,CAAC,KAAU;QAChB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAC7C,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE;gBACnC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;aAC/B;iBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnB,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;aAChC;YACD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B;KACF;IAID,QAAQ;QACN,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAC7C,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;KACF;IAED,4BAA4B,CAAC,KAAU;QACrC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;KAC1B;IAED,mBAAmB;QACjB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC1B;IAED,oBAAoB;QAClB,MAAM,IAAI,GAAG,WAAW,CAAC,cAAc,CACrC,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,cAAc,CACpB,CAAC;QACF,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtC;;qHAzWU,wBAAwB;yGAAxB,wBAAwB,ksBAjHzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8GT;2FAGU,wBAAwB;kBAnHpC,SAAS;mBAAC;oBACT,QAAQ,EAAE,mBAAmB;oBAC7B,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8GT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;qIAEU,KAAK;sBAAb,KAAK;gBACG,SAAS;sBAAjB,KAAK;gBACG,gBAAgB;sBAAxB,KAAK;gBACG,iBAAiB;sBAAzB,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,OAAO;sBAAf,KAAK;gBACG,mBAAmB;sBAA3B,KAAK;gBACG,4BAA4B;sBAApC,KAAK;gBACG,UAAU;sBAAlB,KAAK;gBACG,qBAAqB;sBAA7B,KAAK;gBACI,kBAAkB;sBAA3B,MAAM;gBACG,oBAAoB;sBAA7B,MAAM;gBAiTP,OAAO;sBAFN,YAAY;uBAAC,WAAW,EAAE,CAAC,QAAQ,CAAC;;sBACpC,YAAY;uBAAC,WAAW,EAAE,CAAC,QAAQ,CAAC;gBAkBrC,QAAQ;sBAFP,YAAY;uBAAC,kBAAkB;;sBAC/B,YAAY;uBAAC,mBAAmB;;;MC9btB,qBAAqB;;kHAArB,qBAAqB;mHAArB,qBAAqB,iBAZjB,wBAAwB,aAErC,YAAY;QACZ,WAAW;QACX,mBAAmB,sBAEnB,kBAAkB;QAClB,sBAAsB,aAEd,wBAAwB;mHAGvB,qBAAqB,YAXvB;YACP,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,aAAa,CAAC,OAAO,EAAE;YACvB,kBAAkB;YAClB,sBAAsB;SACvB;2FAIU,qBAAqB;kBAbjC,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,wBAAwB,CAAC;oBACxC,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,aAAa,CAAC,OAAO,EAAE;wBACvB,kBAAkB;wBAClB,sBAAsB;qBACvB;oBACD,OAAO,EAAE,CAAC,wBAAwB,CAAC;oBACnC,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACpBD;;;;;MA2Fa,oBAAoB;IAW/B,YAAoB,YAA0C;QAA1C,iBAAY,GAAZ,YAAY,CAA8B;QARrD,oBAAe,GAAG,IAAI,YAAY,EAAO,CAAC;KAQe;IAElE,QAAQ;QACN,IAAI,CAAC,aAAa,GAAG;;YACnB,IAAI,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,MAAM,0CAAE,MAAM,EAAE;gBACvC,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,MAAM,0CAAE,MAAM,EAAE,CAAC;aACvC;YACD,IAAI,EAAC,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,MAAM,0CAAE,YAAY,CAAA,EAAE;gBAC9C,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACxC;SACF,CAAC;QACF,IAAI,CAAC,cAAc,GAAG;;YACpB,IAAI,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,OAAO,0CAAE,MAAM,EAAE;gBACxC,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,OAAO,0CAAE,MAAM,EAAE,CAAC;gBACvC,IAAI,EAAC,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,OAAO,0CAAE,YAAY,CAAA,EAAE;oBAC/C,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACxC;aACF;;gBAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACxC,CAAC;QACF,IAAI,CAAC,YAAY,GAAG;;YAClB,IAAI,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,WAAW,0CAAE,MAAM,EAAE;gBAC5C,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,WAAW,0CAAE,MAAM,EAAE,CAAC;gBAC3C,IAAI,EAAC,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,WAAW,0CAAE,YAAY,CAAA,EAAE;oBACnD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACxC;aACF;SACF,CAAC;QACF,IAAI,CAAC,aAAa,GAAG;;YACnB,IAAI,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,YAAY,0CAAE,MAAM,EAAE;gBAC7C,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,YAAY,0CAAE,MAAM,EAAE,CAAC;gBAC5C,IAAI,EAAC,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,YAAY,0CAAE,YAAY,CAAA,EAAE;oBACpD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACxC;aACF;SACF,CAAC;QACF,IAAI,CAAC,YAAY,GAAG;;YAClB,IAAI,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,WAAW,0CAAE,MAAM,EAAE;gBAC5C,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,WAAW,0CAAE,MAAM,EAAE,CAAC;gBAC3C,IAAI,EAAC,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,0CAAE,WAAW,0CAAE,YAAY,CAAA,EAAE;oBACnD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACxC;aACF;SACF,CAAC;KACH;IAED,OAAO;QACL,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACxC;;iHA1DU,oBAAoB;qGAApB,oBAAoB,4IAjFrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8ET;2FAGU,oBAAoB;kBAnFhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8ET;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;gHAEU,MAAM;sBAAd,KAAK;gBACG,QAAQ;sBAAhB,KAAK;gBACG,eAAe;sBAAvB,KAAK;;;MClFK,iBAAiB;;8GAAjB,iBAAiB;+GAAjB,iBAAiB,iBALb,oBAAoB,aACzB,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,aAClE,oBAAoB;+GAGnB,iBAAiB,YAJnB,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;2FAIlE,iBAAiB;kBAN7B,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,oBAAoB,CAAC;oBACpC,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;oBAC7E,OAAO,EAAE,CAAC,oBAAoB,CAAC;oBAC/B,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACXD;;;;;MA+Ca,wBAAwB;IAUnC;QANS,aAAQ,GAAY,KAAK,CAAC;QAC1B,SAAI,GAAY,KAAK,CAAC;QACrB,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAEtC,QAAG,GAAW,kBAAkB,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;KAEzD;IAEhB,cAAc;QACZ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC/B;KACF;;qHAjBU,wBAAwB;yGAAxB,wBAAwB,2MArCzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCT;2FAGU,wBAAwB;kBAvCpC,SAAS;mBAAC;oBACT,QAAQ,EAAE,kBAAkB;oBAC5B,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;0EAEU,KAAK;sBAAb,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACG,QAAQ;sBAAhB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACI,QAAQ;sBAAjB,MAAM;;;MC1CI,qBAAqB;;kHAArB,qBAAqB;mHAArB,qBAAqB,iBALjB,wBAAwB,aAC7B,YAAY,EAAE,gBAAgB,aAC9B,wBAAwB;mHAGvB,qBAAqB,YAJvB,CAAC,YAAY,EAAE,gBAAgB,CAAC;2FAI9B,qBAAqB;kBANjC,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,wBAAwB,CAAC;oBACxC,OAAO,EAAE,CAAC,YAAY,EAAE,gBAAgB,CAAC;oBACzC,OAAO,EAAE,CAAC,wBAAwB,CAAC;oBACnC,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACVD;;;;;MAwDa,oBAAoB;IAiC/B,YAAmB,KAAiB;QAAjB,UAAK,GAAL,KAAK,CAAY;QA5B3B,YAAO,GAAG,KAAK,CAAC;QAIhB,eAAU,GAAG,KAAK,CAAC;QAEnB,kBAAa,GAAG,IAAI,CAAC;QAErB,uBAAkB,GAAG,IAAI,CAAC;QAE1B,0BAAqB,GAAG,IAAI,CAAC;QAE7B,iBAAY,GAAG,IAAI,CAAC;QAInB,cAAS,GAAG,IAAI,YAAY,EAAO,CAAC;QAEpC,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAEnC,YAAO,GAAG,IAAI,YAAY,EAAO,CAAC;QAIpC,SAAI,GAAG,EAAE,CAAC;QAElB,cAAS,GAAG,GAAG,CAAC;;KAIf;IAEO,aAAa;QACnB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAChC;IAEO,gBAAgB;QACtB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI;YAC5C,IAAI,EAAE,GAAG,IAAI,CAAC;YACd,IAAG,IAAI,CAAC,UAAU,EAAC;gBACjB,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;aAC5B;iBAAI;gBACH,EAAE,GAAG,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;aACtC;YACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;SACrB,CAAC,CAAC;KACJ;IAED,QAAQ;QACN,UAAU,CAAC;;YACT,IAAI,CAAC,SAAS,GAAG,GAAG,IAAG,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,CAAA,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,2BAA2B,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;SAC/F,EAAE,CAAC,CAAC,CAAC;QACN,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;KACF;IAED,WAAW;QACT,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;SAC/B;KACF;IAED,cAAc,CAAC,KAAiB,EAAE,GAAQ;QACxC,MAAM,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC;QACpC,KAAK,CAAC,cAAc,EAAE,CAAC;QAEvB,MAAM,kBAAkB,GAAG;YACzB,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACnE,CAAC;QAEF,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE;YAC9B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5C,kBAAkB,EAAE,CAAC;SACtB;aAAM;YACL,IAAI,kBAAkB,EAAE;gBACtB,kBAAkB,CAAC,GAAG,EAAE;oBACtB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACpB,kBAAkB,EAAE,CAAC;iBACtB,CAAC,CAAC;aACJ;iBAAM;gBACL,kBAAkB,EAAE,CAAC;aACtB;SACF;KACF;IAED,iBAAiB,CAAC,KAAiB;QACjC,MAAM,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAC;QACvC,KAAK,CAAC,cAAc,EAAE,CAAC;QAEvB,MAAM,kBAAkB,GAAG;YACzB,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;SACxC,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACrB,IAAI,qBAAqB,EAAE;gBACzB,qBAAqB,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,GAAG,IAAI;oBACvD,IAAI,OAAO,EAAE;wBACX,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;qBAC1B;yBAAM;wBACL,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;qBACrC;oBACD,kBAAkB,EAAE,CAAC;iBACtB,CAAC,CAAC;aACJ;SACF;aAAM;YACL,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACf,kBAAkB,EAAE,CAAC;SACtB;KACF;IAED,gBAAgB,CAAC,GAAQ;QACvB,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;KACzD;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;KACvD;IAED,eAAe,CAAC,GAAQ;QACtB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACxB;;iHApIU,oBAAoB;qGAApB,oBAAoB,8cApCrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCT;2FAGU,oBAAoB;kBAtChC,SAAS;mBAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;iGAEU,OAAO;sBAAf,KAAK;gBAEG,UAAU;sBAAlB,KAAK;gBAEG,OAAO;sBAAf,KAAK;gBAEG,WAAW;sBAAnB,KAAK;gBAEG,UAAU;sBAAlB,KAAK;gBAEG,aAAa;sBAArB,KAAK;gBAEG,kBAAkB;sBAA1B,KAAK;gBAEG,qBAAqB;sBAA7B,KAAK;gBAEG,YAAY;sBAApB,KAAK;gBAEG,UAAU;sBAAlB,KAAK;gBAEI,SAAS;sBAAlB,MAAM;gBAEG,QAAQ;sBAAjB,MAAM;gBAEG,OAAO;sBAAhB,MAAM;;;ACjFT;;;;;MAoBa,0BAA0B;;uHAA1B,0BAA0B;2GAA1B,0BAA0B,8CAR1B;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,0BAA0B,CAAC;YACzD,KAAK,EAAE,IAAI;SACZ;KACF,0BARS,8BAA8B;2FAU7B,0BAA0B;kBAZtC,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,QAAQ,EAAE,8BAA8B;oBACxC,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,gCAAgC,CAAC;4BACzD,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF;;;MCNY,iBAAiB;;8GAAjB,iBAAiB;+GAAjB,iBAAiB,iBALb,oBAAoB,EAAE,0BAA0B,aACrD,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,aACpD,oBAAoB,EAAE,0BAA0B;+GAG/C,iBAAiB,YAJnB,CAAC,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,CAAC;2FAIpD,iBAAiB;kBAN7B,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,oBAAoB,EAAE,0BAA0B,CAAC;oBAChE,OAAO,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,CAAC;oBAC/D,OAAO,EAAE,CAAC,oBAAoB,EAAE,0BAA0B,CAAC;oBAC3D,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACZD;;;;;MAyBa,qBAAqB;IAQhC;QAPS,UAAK,GAAY,KAAK,CAAC;QACvB,aAAQ,GAAY,KAAK,CAAC;QACzB,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAEtC,QAAG,GAAW,eAAe,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;QAC/D,UAAK,GAAG,KAAK,CAAC;KAEL;IAGhB,OAAO,CAAC,KAAU;QAChB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,EAAE,CAAC;QACxB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;YACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAChC;KACF;;kHAlBU,qBAAqB;sGAArB,qBAAqB,+LARtB;;;;;GAKT;2FAGU,qBAAqB;kBAVjC,SAAS;mBAAC;oBACT,QAAQ,EAAE,eAAe;oBACzB,QAAQ,EAAE;;;;;GAKT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;0EAEU,KAAK;sBAAb,KAAK;gBACG,QAAQ;sBAAhB,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBAQP,OAAO;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;MCzBtB,kBAAkB;;+GAAlB,kBAAkB;gHAAlB,kBAAkB,iBALd,qBAAqB,aAC1B,YAAY,aACZ,qBAAqB;gHAGpB,kBAAkB,YAJpB,CAAC,YAAY,CAAC;2FAIZ,kBAAkB;kBAN9B,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,qBAAqB,CAAC;oBACrC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,qBAAqB,CAAC;oBAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACTD;;;;;MAqCa,kBAAkB;IAW7B,YAAoB,KAAwB;QAAxB,UAAK,GAAL,KAAK,CAAmB;QAVnC,aAAQ,GAAW,YAAY,CAAC;QAC/B,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAOtC,QAAG,GAAW,YAAY,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;KAEnB;IAExC,gBAAgB;QACtB,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YACtB,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC;SACzB,CAAC,CAAC;QAEH,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,SAAS,EAAE;YACb,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;YAC/B,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;SACtD;QACD,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,KAAK,EAAE,SAAS,CAAC,KAAK;SACvB,CAAC,CAAC;KACJ;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YACtB,EAAE,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnD,EAAE,CAAC,IAAI,GAAG,QAAQ,CAAC;YACnB,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;YACnB,IAAI,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,EAAE;gBACpE,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;gBACpB,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC;aAClB;SACF,CAAC,CAAC;KACJ;IAED,QAAQ;QACN,UAAU,CAAC;YACT,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB,EAAE,CAAC,CAAC,CAAC;KACP;IAED,cAAc,CAAC,MAA6B;QAC1C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;;+GAvDU,kBAAkB;mGAAlB,kBAAkB,gIARlB;QACT;YACE,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,kBAAkB,CAAC;YACjD,KAAK,EAAE,IAAI;SACZ;KACF,kDAOgB,qBAAqB,gDAnB5B;;;;GAIT;2FAUU,kBAAkB;kBAhB9B,SAAS;mBAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,QAAQ,EAAE;;;;GAIT;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,wBAAwB,CAAC;4BACjD,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF;wGAEU,QAAQ;sBAAhB,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBACE,QAAQ;sBAAhB,KAAK;gBAGE,OAAO;sBADd,eAAe;uBAAC,qBAAqB,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;;;MC7BlD,eAAe;;4GAAf,eAAe;6GAAf,eAAe,iBALX,kBAAkB,aACvB,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,aAClE,kBAAkB;6GAGjB,eAAe,YAJjB,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;2FAIlE,eAAe;kBAN3B,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,kBAAkB,CAAC;oBAClC,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;oBAC7E,OAAO,EAAE,CAAC,kBAAkB,CAAC;oBAC7B,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;ACZD;;;;;MAqBa,sBAAsB;IAQjC;QAPS,eAAU,GAAW,CAAC,CAAC;QACvB,iBAAY,GAAW,CAAC,CAAC;QACzB,aAAQ,GAAW,YAAY,CAAC;KAKzB;IAEhB,QAAQ;QACN,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,KAAa;YACvF,OAAO,IAAI,GAAG,KAAK,CAAC;SACrB,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;KAC3C;;mHAhBU,sBAAsB;uGAAtB,sBAAsB,gJAZvB;;;;;;;;;GAST;2FAGU,sBAAsB;kBAdlC,SAAS;mBAAC;oBACT,QAAQ,EAAE,gBAAgB;oBAC1B,QAAQ,EAAE;;;;;;;;;GAST;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;0EAEU,UAAU;sBAAlB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,QAAQ;sBAAhB,KAAK;;;MCbK,mBAAmB;;gHAAnB,mBAAmB;iHAAnB,mBAAmB,iBALf,sBAAsB,aAC3B,YAAY,EAAE,gBAAgB,aAC9B,sBAAsB;iHAGrB,mBAAmB,YAJrB,CAAC,YAAY,EAAE,gBAAgB,CAAC;2FAI9B,mBAAmB;kBAN/B,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,sBAAsB,CAAC;oBACtC,OAAO,EAAE,CAAC,YAAY,EAAE,gBAAgB,CAAC;oBACzC,OAAO,EAAE,CAAC,sBAAsB,CAAC;oBACjC,OAAO,EAAE,CAAC,gBAAgB,CAAC;iBAC5B;;;MCOY,sBAAsB;;mHAAtB,sBAAsB;oHAAtB,sBAAsB,YARvB,gBAAgB,EAAE,YAAY;oHAQ7B,sBAAsB,aAPtB;QACT,uBAAuB;QACvB,+BAA+B;QAC/B,oCAAoC;QACpC,+BAA+B;KAChC,YANQ,CAAC,gBAAgB,EAAE,YAAY,CAAC;2FAQ9B,sBAAsB;kBATlC,QAAQ;mBAAC;oBACR,OAAO,EAAE,CAAC,gBAAgB,EAAE,YAAY,CAAC;oBACzC,SAAS,EAAE;wBACT,uBAAuB;wBACvB,+BAA+B;wBAC/B,oCAAoC;wBACpC,+BAA+B;qBAChC;iBACF;;;AChBD;;;;;;ACAA;;;;;;"}
|