commit 57e22aaf589fcded6f7eb508330c0ebfb35d6124 Author: Andrey Date: Wed Jan 24 22:56:54 2024 +0300 initial project diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..6537ca4 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,15 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +insert_final_newline = true +indent_style = space +indent_size = 4 +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false + +[*.{yml,yaml}] +indent_size = 2 diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..51bc4d1 --- /dev/null +++ b/.env.example @@ -0,0 +1,52 @@ +APP_NAME='Krayin CRM' +APP_ENV=local +APP_VERSION=1.2.4 +APP_KEY= +APP_DEBUG=true +APP_URL=http://localhost +APP_TIMEZONE=Asia/Kolkata + +LOG_CHANNEL=stack +LOG_LEVEL=debug + +DB_CONNECTION=mysql +DB_HOST=127.0.0.1 +DB_PORT=3306 +DB_DATABASE=laravel-crm +DB_USERNAME=root +DB_PASSWORD= + +BROADCAST_DRIVER=log +CACHE_DRIVER=file +QUEUE_CONNECTION=sync +SESSION_DRIVER=file +SESSION_LIFETIME=120 + +MEMCACHED_HOST=127.0.0.1 + +REDIS_HOST=127.0.0.1 +REDIS_PASSWORD=null +REDIS_PORT=6379 + +MAIL_MAILER=smtp +MAIL_HOST=mailhog +MAIL_PORT=1025 +MAIL_USERNAME=null +MAIL_PASSWORD=null +MAIL_ENCRYPTION=null +MAIL_FROM_ADDRESS=laravel@krayincrm.com +MAIL_FROM_NAME="${APP_NAME}" +MAIL_DOMAIN=webkul.com + +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +AWS_DEFAULT_REGION=us-east-1 +AWS_BUCKET= + +PUSHER_APP_ID= +PUSHER_APP_KEY= +PUSHER_APP_SECRET= +PUSHER_APP_CLUSTER=mt1 + +MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" +MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..967315d --- /dev/null +++ b/.gitattributes @@ -0,0 +1,5 @@ +* text=auto +*.css linguist-vendored +*.scss linguist-vendored +*.js linguist-vendored +CHANGELOG.md export-ignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0d412d7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,31 @@ +.env +.env.testing +.env.backup +.DS_Store +.phpunit.result.cache +docker-compose.override.yml +.idea +.php_cs.cache +.vscode +todo.txt +.vagrant +composer.lock +/data +/docker-compose-collection +Homestead.json +Homestead.yaml +/ignorables/* +/node_modules +npm-debug.log +package-lock.json +/public/css +/public/fonts +/public/js +/public/hot +/public/storage +/public/themes +/public/vendor +/storage/*.key +/storage/dcc-data/ +/stubs +/vendor diff --git a/.htaccess b/.htaccess new file mode 100644 index 0000000..8282e37 --- /dev/null +++ b/.htaccess @@ -0,0 +1,18 @@ + + + Options -MultiViews + + +RewriteEngine On + +RewriteCond %{REQUEST_FILENAME} -d [OR] +RewriteCond %{REQUEST_FILENAME} -f +RewriteRule ^ ^$1 [N] + +RewriteCond %{REQUEST_URI} (\.\w+$) [NC] +RewriteRule ^(.*)$ public/$1 + +RewriteCond %{REQUEST_FILENAME} !-d +RewriteCond %{REQUEST_FILENAME} !-f +RewriteRule ^ server.php + \ No newline at end of file diff --git a/.styleci.yml b/.styleci.yml new file mode 100644 index 0000000..9231873 --- /dev/null +++ b/.styleci.yml @@ -0,0 +1,13 @@ +php: + preset: laravel + disabled: + - no_unused_imports + finder: + not-name: + - index.php + - server.php +js: + finder: + not-name: + - webpack.mix.js +css: true diff --git a/CHANGELOG for v1.x.x.md b/CHANGELOG for v1.x.x.md new file mode 100644 index 0000000..56c5d80 --- /dev/null +++ b/CHANGELOG for v1.x.x.md @@ -0,0 +1,832 @@ +## **v1.2.4 (15th of September 2022)** - *Release* + +* #816[feature] - There should be an option to filter the expired quotes + +* #374[feature] - Add Drag and Drop functionality to attach files. + +* #1073[enhancement] - The section should be removed from the dashboard for which the user has no permission. + +* #1013[enhancement] - Add support to php 8.1 + +* #974[enhancement] - There should be an option for copy the Embed in web form + +* #947[enhancement] - There is no option for update leads stages using workflow + +* #847[enhancement] - There should be a loader before success message when the user is trying to submit the web-form + +* #821[enhancement] - There is no option to filter the system/custom attributes.. + +* #802[enhancement] - Only the filtered data should be exported if the user is trying to export data after applying the + filter. + +* #764[enhancement] - There should be an option to filter all rotten leads + +* #663[enhancement] - There should be an option to print quotes in the quote table if the user is trying to print + multiple quotes at a time. + +* #435[enhancement] - There should be an option for a "move to trash" when a customer trying to delete the inbox mail. + +* #1091[fixed] - The date filter is not working if the admin is selecting the same date on from and to fields. + +* #1088[fixed] - The user should not be able to view the leads by link leads option, if the user has no permission, to + view leads. + +* #1087[fixed] - The filter label should be visible if the admin is trying to filter the attributes. + +* #1085[fixed] - There should be a astricts icon for the required field when the admin is creating the roles. + +* #1071[fixed] - The user should be login with a message screen if the user has no permission to access any tab + +* #1063[fixed] - The date filter's should be on the left side of the calendar. if the admin is trying to filter the + dashboard data. + +* #1008[fixed] - The admin is not able to send the email by using the compose option. + +* #885[fixed] - There should not be any translation issue on the person table. + +* #792[fixed] - The custom tab should be active when the user is trying to filter activity by custom date. + +## **v1.2.3 (25th of August 2022)** - *Release* + +* #991[feature] - Export option for Leads Table + +* #[feature] - Webform Feature Added + +* #951[enhancement] - The Web form should be open in the next tab + +* #924[enhancement] - by default the cursor should remain on the email textbox + +* #895[enhancement] - There should be a dropdown instead of inputbox in the lead source filter. + +* #893[enhancement] - There should be an option to view the web form in the webform table. + +* #840[enhancement] - There is no option if the admin is trying to filter the leads from the web form. + +* #830[enhancement] - There should be the logo of krayin CRM in the web form + +* #826[enhancement] - There should be a logo for the webform + +* #799[enhancement] - The page should be redirected to the organization page if the user is clicking on the organization + name. + +* #900 [fixed] - There is a translation issue on the compose section inside the mails. + +* #885 [fixed] - There should not be any translation issue on the person table + +* #867 [fixed] -There should not be any translation issue on the mails. + +* #950 [fixed] - WebForm check unique email and phone number from users instead of contacts. + +* #852 [fixed] -There should not be any translation issue in the dashboard + +* #801 [fixed] -The user should not be able to view the leads in the dashboard without permisson. + +* #732 [fixed] -The user should not be able to view the admin's leads if the user has individual permission. + +* #1055 [fixed] -The admin should be able to change the app locale from the configuration. + +* #1036 [fixed] -The required functionality is not working if the admin is creating an attribute with required property + +* #1032 [fixed] -Issue with action attribute input field in workflow form + +* #1021 [fixed] -The admin is not able to create and edit any role. + +* #1020 [fixed] -Intermittent 500 error when admin is adding an activity + +* #1014 [fixed] -Problems with Spanish translation of the calendar and form alerts. + +* #1008 [fixed] -The admin is not able to send the email by using the compose option. + +* #984 [fixed] -There is a translation issue in the header section. + +* #979 [fixed] -There is an exception. if the admin is trying to edit the user's account. + +* #965 [fixed] -There is a translation issue when the user is trying to delete the mail. + +* #943 [fixed] -There is a UI issue on side bar. + +* #942 [fixed] -There should be an option of give permission for view web form. + +* #936 [fixed] -The warning message also should should be translate. + +* #931 [fixed] -If a user is changing the locale of his panel, then the locale is being changed for all the users. + +* #928 [fixed] -Translation is missing for Web form package + +* #926 [fixed] -sidebar must be scrollable + +* #919 [fixed] -There is a translation issue if user is trying to delete any quote from lead. + +* #918 [fixed] -The placeholder value is not showing, when the user is trying to edit the web form. + +* #916 [fixed] -There should not translation issue in the pipeline. + +* #911 [fixed] -The user should not be able to update the lead if there is any warning in input field + +* #910 [fixed] -There should be a asterisk icon for required field in web form. + +* #909 [fixed] -All lead related tabs are missing inside lead view page. + +* #908 [fixed] -There should not translation issue in the leads section. + +* #899 [fixed] -The downloaded data is not in a proper format if the user is trying to download the persons table + +* #896 [fixed] -There is an UI issue in the Activity table + +* #887 [fixed] -There is a translation issue on the Attributes table. + +* #884 [fixed] -There is a translation issue on the leads filter + +* #883 [fixed] -There should not any UI issue on Users list + +* #878 [fixed] -There should not be any Translation issue on quotes + +* #877 [fixed] -There is a UI issue inside the quote + +* #874 [fixed] -The user should be able to update the Customize Web Form. + +* #868 [fixed] -The warning message should be correct in the web form. + +* #866 [fixed] -There should not be any translation issue on the leads page. + +* #865 [fixed] -There should not be any UI issue on the leads page. + +* #859 [fixed] -The warning message should be in the correct format + +* #858 [fixed] -There is a translation issue in the user profile section. + +* #856 [fixed] -There should not be any translation issue in the leads + +* #855 [fixed] -There is a UI issue on the leads table. + +* #853 [fixed] -here should not be any translation issue in the webform. + +* #848 [fixed] -There should be a placeholder in the web form if the placeholder is provided by the admin. + +* #846 [fixed] -Translation issue on Dashboard + +* #845 [fixed] -Translation issue on activity + +* #844 [fixed] -There is a UI issue on the leads table + +* #843 [fixed] -UI issue on the activity table + +* #842 [fixed] -There should be a 404 error page if the user is trying to open the deleted web form. + +* #841 [fixed] -The Sales Person should be shown in the leads table. + +* #834 [fixed] -The webform page should also be translated according to the selected language. + +* #825 [fixed] -The checkbox should not be disabled for the custom attributes + +* #824 [fixed] -The success message is not correct if the user is updating the webform + +* #823 [fixed] -There is not a good UI if the user is trying to preview the webform. + +* #822 [fixed] -There is an exception when the user is trying to create a new webform + +* #817 [fixed] -missing translation for Image upload section + +* #815 [fixed] -The Person image should be uploaded. + +* #810 [fixed] -There is not proper translation on the contact tab. + +* #809 [fixed] -There is no success/warning message on any operation when the user changing locale into Arabic + fixedpage should be redirected to the organization page if the user is clicking on the organization name. + +* #797 [fixed] -There should not any exception when the user is creating a new person. + +* #794 [fixed] -There should not be an exception when the user is trying to edit the person. + +* #788 [fixed] -The Expected Close Date can not be less than the created date. + +* #787 [fixed] -The success and warning message should be clickable. + +* #785 [fixed] -The user should be able to edit the Activity. + +* #777 [fixed] -The page should not be crash. if the user is trying to enter the blade value into the input field. + +* #774 [fixed] -There should not be an exception If the user is trying to delete the person's image. + +* #170 [fixed] -If admin Inactive any user who is logged in on CRM then the user should automatically logged out + +## **v1.2.2 (3rd of December 2021)** + +* #435 [fixed] - There should be an option for a "move to trash" when a customer trying to delete the inbox mail. + +* #692 [fixed] - The page should be redirected to the leads of the same pipeline for which the user is creating/editing + the lead. + +* #698 [fixed] - There should be an option to remove the profile picture. + +* #699 [fixed] - The color of rotten leads should be the same on the kanban view and list view. + +* #700 [fixed] - There should be an option for lead id on the leads table. + +* #701 [fixed] - There should be a warning message if the user is trying to create a new person with the same details. + +* #704 [fixed] - The top leads and the top customers should be visible in the dashboard. + +* #709 [fixed] - The user should not be able to update activity without permission. + +* #710 [fixed] - There is no option for the lead when the user is trying to edit any activity. + +* #712 [fixed] - The success message is showing repeatedly. + +* #714 [fixed] - The probability of new stage should not disabled for any pipeline + +* #719 [fixed] - Dashboard data is not showing according to login use + +* #720 [fixed] - Option for location is not present inside Activity placeholder + +* #722 [fixed] - There should be a warning message if the user is typing the wrong number format. + +* #723 [fixed] - The warning message should not be visible if the user is trying to edit the attribute. + +* #724 [fixed] - There is no option to view the lost reason for the lost lead + +* #727 [fixed] - Sales pipeline not showing properly + +* #735 [fixed] - Input validation's dropdown should be according to attribute type. + +* #737 [fixed] - The UI design of the contact person. the section should be correct. + +* #741 [fixed] - The format of the Activity table should be correct. + +* #742 [fixed] - The model box should be closed automatically after exporting the data. + +* #748 [fixed] - The format of a person's data should be correct after exporting to excel + +* #761 [fixed] - There should not be an error if the user is trying to edit the attributes. + +* #762 [fixed] - There is no option to give permission to download data + +* #763 [fixed] - The page should be redirected to the leads when the user is clicking on any lead + +* #721 [fixed] - Link mails are not showing inside the mail tab. + +* #755 [fixed] - There is no option to apply validation for image attributes + +## **v1.2.1 (12st of November 2021)** + +* [feature] Calendar view added for activities + +* [feature] Admin profile picture feature implemented + + +* #308 [fixed] - There should be a warning message if the user creating multiple persons with the same details. + +* #315 [fixed] - The participants should not be added to multiple activities at the same time. + +* #323 [fixed] - There should be an option to upload user profile picture + +* #343 [fixed] - There should be an option to view lead on dashboard. + +* #373 [fixed] - The color of quote should be red which is expired. + +* #453 [fixed] - The warning message should be removed after fill data in the Reply section. + +* #463 [fixed] - When SKU was made not compulsory, and when we add the product, it shows a junk code in the screen + +* #496 [fixed] - There should be a dropdown according to the default pipeline instead of an input box when the user + trying to filter leads by stage. + +* #501 [fixed] - There should be an option to change activity status in activity table. + +* #504 [fixed] - There should be a warning message if the user is adding the same email and contact number multiple time + +* #511 [fixed] - There should not be print the JSON data when the user clicking on the back arrow. + +* #535 [fixed] - There should be an option of created date, when user trying to view the lead. + +* #572 [fixed] - There should be an option for searching the "Tag" in global search bar and in Filter also. + +* #582 [fixed] - There should be a loader before the success message When the user trying to mark as done any activity. + +* #596 [fixed] - There should be an option to give permission to download a quote + +* #634 [fixed] - The color of Won lead should be green in the dashboard. + +* #635 [fixed] - The filters should work properly when the user is trying to filter the lead by the contact person. + +* #636 [fixed] - The number of activities should be correct in the dashboard. + +* #637 [fixed] - There should not be any warning message when the user is trying to filter organization by Person count + +* #638 [fixed] - The attached file should be visible in the reply section if any. + +* #639 [fixed] - The name of the filter should be correct. + +* #647 [fixed] - The Expected close date should be correct when the user is selecting the current date for the expected + closed date. + +* #648 [fixed] - The name of the leads filter should be correct. + +* #653 [fixed] - There should be a warning message when the user is trying to add multiple "Types" with the same name. + +* #661 [fixed] - There should be a loader before the success message When the user trying to update activity status. + +* #668 [fixed] - The name of the filter should be correct when the user is trying to filter activity by the type. + +* #671 [fixed] - There should be one more option of 'select status' when the user is trying to filter activity by 'Is + Done' filter. + +* #672 [fixed] - The 'Expired At' time should be correct when the user is selecting the current date for 'Expired At'. + +* #679 [fixed] - When the user is clicking on 'Sales Person', then the page should be redirected to the person's page. + +* #678 [fixed] - The stage we are deleting from the pipeline, the leads of that stage should not be deleted. + +* #685 [fixed] - There should not be any warning when the user is trying to delete that lead for which the workflow was + created + +* #692 [fixed] - The page should be redirected to the leads of the same pipeline for which the user is creating the + lead. + +* #691 [fixed] - There should not be an exception when the user is trying to create a new lead. + +## **v1.2.0 (1st of November 2021)** + +* [feature] Pipeline feature implemented + +* [feature] Quick create option implemented + +* [feature] Brand new setting page implemented + + +* #138 [fixed] - fix column spacing in quotes inside the respective leads + +* #170 [fixed] - If admin Inactive any user who is logged in on CRM then the user should automatically logged out + +* #171 [fixed] - When admin/user logged in to their panel then the name of logged in user should be mention to the top + right corner + +* #192 [fixed] - When we appying the filters to search leads . then the end date input should not take the date which is + less then start date. + +* #196 [fixed] - When we creating Attributes after choosing select from type dropdown and options from options + dropdown . Then Input Validation field should be disabled. + +* #204 [fixed] - When we creating activity and selecting date in 'To' input box which is less then 'From' date. Inside + schedule label. then it should give an error. + +* #255 [fixed] - When the user trying to create/edit Activity. then there should be a suggestion in placeholder of + Participants input field for search Participants. + +* #265 [fixed] - The user or person should not be add into participants which is already added as a participants. + +* #277 [fixed] - When we trying to delete any lead. then There should be a confirm box before delete lead. + +* #280 [fixed] - Filters should be visible to filter the leads. + +* #281 [fixed] - When we are creating Note. Then ' Note created successfully ' should be show in message box. + +* #282 [fixed] - There should be a scrollbar to scroll the leads inside lead tab. + +* #283 [fixed] - The date filter should work properly in leads section + +* #285 [fixed] - When we are deleting any Note. then there should be a confirm box before delete Note + +* #286 [fixed] - When we are removing the search keyword from the search box inside lead. then there should be visible + all leads + +* #287 [fixed] - When we are adding a person, then there should be a suggestion in organization input field + +* #288 [fixed] - When we are trying to delete multiple persons at a time, then there should be a confirm box before + delete person + +* #289 [fixed] - When we are trying to delete multiple Leads at a time, then there should be a confirm box before delete + the Lead. + +* #296 [fixed] - When we are deleting any Note. Then ' Note deleted successfully ' should be show in message box + +* #297 [fixed] - Search box should be work properly. when we are searching any attribute + +* #298 [fixed] - The status is not updating of login user and showing 'User updated successfully'. + +* #299 [fixed] - Search box should be work properly. when we are searching any user + +* #300 [fixed] - When we are creating the lead then The color should be change of the tab after filled all the required + fields + +* #301 [fixed] - Search box should be work properly. when we are searching any Quote + +* #305 [fixed] - The Warning message should be show, if the user adding same product again and again in quote items. + +* #306 [fixed] - There should be a option to select date in created at' input field, if user want to filter activities. + +* #309 [fixed] - When we applying filters to search activities . then filters should be work properly to search + activities + +* #313 [fixed] - There should be a option to delete multiple activites at a time + +* #318 [fixed] - There should be a option to select date in created date input field, if user want to filter the inbox + mails. + +* #319 [fixed] - There should be a warning message, if user creating activities for less then current schedule time + +* #321 [fixed] - The filter should be work properly, when user filter activity by lead name. + 67 +* #338 [fixed] - HTML code should not be visible in attachment place. + +* #341 [fixed] - Search box should be work properly. when we are searching any Lead + +* #351 [fixed] - Fix column spacing in Inbox inside the mail tab + +* #352 [fixed] - There should not be any exception. if user want to filter inbox mail. + +* #354 [fixed] - The date filter should be work properly in Activity tab. + +* #361 [fixed] - There should be a submit button if we want to filter dashboard data using date + +* #363 [fixed] - Search box should be work properly. when we are searching any Organizations + +* #364 [fixed] - There should not be any error if we are adding new organization. + +* #367 [fixed] - The filter should be work properly, when user trying to filter Attributes by type + +* #368 [fixed] - There should be a option to edit the tag + +* #369 [fixed] - The filters should be work properly, if user trying to filter tags. + +* #372 [fixed] - There should be a option to delete the multiple tags at a time. + +* #377 [fixed] - Date input fields should be cleared, after click on cross icon. + +* #378 [fixed] - The details of contact person should be fill automatically. + +* #380 [fixed] - The person should be received mail , after delete person. if we have create a workflow for the same. + +* #381 [fixed] - The Created by field should be visible only one time in activity table. + +* #384 [fixed] - The default image should be show in product section. + +* #386 [fixed] - There should be asterisk icon in Quote item. + +* #396 [fixed] - The contact number field should not take the blank value. + +* #397 [fixed] - The input fields should be shown to add product + +* #398 [fixed] - Filters should be work properly in quote. + +* #399 [fixed] - There should not be an exception when we are trying to view inbox mail. + +* #400 [fixed] - The mails should be deleted when the user trying to delete multiple emails at a time. + +* #402 [fixed] - The user should have the option to compose mail. + +* #403 [fixed] - The person attributes should be shown inside the placeholder. + +* #404 [fixed] - The filters should be work properly in the activity section. + +* #407 [fixed] - The filters should work properly in the activity section. + +* #410 [fixed] - Filters should be work properly in the activity section + +* #411 [fixed] - There should not be an exception when the user trying to edit any role. + +* #412 [fixed] - The page should not be asked to choose file when we are trying to view draft mails + +* #413 [fixed] - There should not be an exception when user trying to create a lead. + +* #415 [fixed] - There should not be a blank option in the activity type dropdown when the user is trying to create an + activity. + +* #416 [fixed] - There should be a dropdown instead of an input box when the user trying to filter activities by type. + +* #419 [fixed] - There should be a suggestion for users to search for products. + +* #420 [fixed] - There should be a warning message if the user trying to delete the leads when the user has no + permission to delete the leads. + +* #422 [fixed] - There should be an option to create tags if the user has permission to create a tag. + +* #426 [fixed] - The mails should be visible in the inbox. + +* #427 [fixed] - The ' To ' field should not take a blank value when the user trying to compose a mail. + +* #432 [fixed] - The search box should not take the blank value. + +* #433 [fixed] - There should be a dropdown instead of the input box when the user trying to filter the pipeline by " is + Default" . + +* #434 [fixed] - The person id should be visible in the person table. + +* #436 [fixed] - Filters should work properly in the Attributes section. + +* #441 [fixed] - The calculation should be correct when the user trying to create the quote. + +* #447 [fixed] - The delete icon should not be visible when the user is adding only one product in the quote item. + +* #448 [fixed] - The Leads should be visible in the lead's table. + +* #452 [fixed] - There should be a field of created date in the quote table. + +* #459 [fixed] - At least one pipeline should be the default pipeline. + +* #460 [fixed] - When we are trying to create a new user, then it should not give a warning message. + +* #465 [fixed] - There should be ' Select user ' instead of 'User' in the Leads filter. + +* #471 [fixed] - There should be an error if the user trying to create multiple sources with the same name. + +* #479 [fixed] - There should a warning message when the user trying to enter the character in the quantity input field + +* #481 [fixed] - There should a warning message when the user trying to enter the character in the Price and discount + input field. + +* #482 [fixed] - Date inputs should be blank when the user is removing the date filters. + +* #484 [fixed] - When the user trying to see **Leads Over Time** leads from the dashboard, then only **Leads Over Time** + leads should be visible on the leads table. + +* #485 [fixed] - When the user trying to add multiple-stage with the same name in the pipeline, then there should a + warning message instead of an exception. + +* #488 [fixed] - When the user trying to click on submit button without selecting any action, then there should be a + warning for select any action to perform. + +* #489 [fixed] - There should be a warning message if the user trying to add the same tag multiple times in a lead. + +* #492 [fixed] - There should be a warning message if the user trying to edit leads [by drag and drop] without + permission. + +* #495 [fixed] - The user should not be able to edit leads without permission. + +* #498 [fixed] - There should be a success message after reply on mail. + +* #499 [fixed] - There should be an option to give permissions-related quotes to a role. + +* #500 [fixed] - The user should log out automatically if the user has no permission for any tab. + +* #504 [fixed] - There should be a warning message if the user is adding the same email and contact number multiple time + +* #505 [fixed] - The user should be redirected to the login page after deleting the self account. + +* #512 [fixed] - There should not be any exception when the user trying to view the lead. + +* #514 [fixed] - The user should not be able to select the date greater than today in the created date input field. + +* #530 [fixed] - The user should not be able to delete tags if the user has no permission for the same. + +* #531 [fixed] - The Add stage and Save as pipeline buttons should not be disabled when the user removing the duplicate + stage + +* #534 [fixed] - The user should not be able to add a tag on a lead if the user has no permission for edit the lead. + +* #541 [fixed] - 'Expected Close Date' should not be less than Created date + +* #542 [fixed] - There should not be any exception when the user tries to filter quotes by created date. + +* #543 [fixed] - The numerator should not be greater than the denominator in the dashboard. + +* #544 [fixed] - There should be Yes or No' in 'Is Done dropdown' when the user trying to filter activity by 'is done' + filter. + +* #545 [fixed] - There should be an option to select date instead of input type text. + +* #568 [fixed] - When the admin trying to delete self account the message should be correct + +* #569 [fixed] - There should be a success message, When the admin tries to delete any other user. + +* #571 [fixed] - The user should not be able to edit another user without permission. + +* #577 [fixed] - The user should not be able to access the 'sent, trash, inbox' pages without permission. + +* #585 [fixed] - The Setting option should be visible if the user has permission for the same. + +* #586 [fixed] - There should not be any exception when the user is trying to compose mail. + +* #589 [fixed] - When the user is trying to delete default attributes, then the message should be correct. + +* #590 [fixed] - The user should not be able to view the quotes if the user has no permission for the same. + +* #592 [fixed] - The user should not be able to view the leads if the user has no permission for the same. + +* #599 [fixed] - There should be an option to filter quotes 'by is expired' + +* #600 [fixed] - The date filter should work properly when the user is trying to filter the leads. + +* #601 [fixed] - The rotting date should be correct when the user is trying to view any lead. + +* #606 [fixed] - Filters should work properly. when the user is trying to filter the activity. + +* #607 [fixed] - There should a warning message if the user is trying to add the same stage multiple times. + +* #619 [fixed] - The user should not be able to view the admin's data if the user has group permission. + +* #620 [fixed] - The Link Lead option should work properly on mail section. + +## **v1.1.3 (23rd of September 2021)** + +* [feature] Refactored data grid code + +* [feature] Add app version in admin ui + + +* #244 [fixed] - The modal box should be open if we click on add lead button of the leads page. + +* #251 [fixed] - While Adding a new attribute Entity Type field should be come only one time. + +* #255 [fixed] - When we creating Activity. then there should be a suggestion in placeholder of Participants input field + for search Participants. + +* #257 [fixed] - [BUG] SKU Validation Bug + +* #260 [fixed] - When we changing the lead stage to Won/Lost. then date icon should be visible in Closed Date input + field. + +* #263 [fixed] - When we are creating a activity and selecting persons for participants. then persons name should be + visible below Participants input box. + +* #269 [fixed] - [BUG] Add Lead Buttons Do Nothing + +* #270 [fixed] - When we are creating multiple group with the same details. then there should be a warning message + +* #272 [fixed] - When we are creating multiple Organizations with the same details. then there should be a warning + message + +## **v1.1.2 (17th of September 2021)** + +* #217 [fixed] - When we adding a new organization then it should not give an exception. + +* #221 [fixed] - if the user has no permission to add a role and the user is trying to add a role. then it should be + shown a warning + +* #225 [fixed] - When we creating a person then after creating person it is not redirecting to persons list page + +* #226 [fixed] - When we creating a user then the the 'asterisk icon' should visible on Confirm password label + +* #218 [fixed] - When we creating a new lead, Then after create lead it should be redirect to leads page + +* #230 [fixed] - Automatic publish should be done at the time of installation + +## **v1.1.0 (16th of September 2021)** + +* [feature] Workflow (CRM Automation) feature implemented + + +* #132 [fixed] - filter option for mails are not working + +* #162 [fixed] - Issue with seeder during installation + +* #163 [fixed] - Lookup field is showing 2 times while creating the attribute + +* #164 [fixed] - No option is coming to update lead status in grid view + +* #165 [fixed] - Image type Attribute is not working + +* #166 [fixed] - Getting exception when new user Login + +* #172 [fixed] - If user have not Permission to delete the Roles and the user is trying to delete the Roles then the + warning message should be present inside the error box + +* #174 [fixed] - If the user Applying multiple filter to search sources then data should be searched. + +* #175 [fixed] - After Added a new product the page should be redirect to product list page. + +* #177 [fixed] - result: When admin/user adding new Person after deleting email input field. then required validation of + email should be work + +* #178 [fixed] - Getting Error " Class "Webklex\PHPIMAP\IMAP" not found" while integration of Google calender in Krayin + +* #180 [fixed] - admin/user adding new Lead after deleting email input field inside Contact Person tab. then required + validation of email should be work. + +* #181 [fixed] - When admin/user run the **php artisan krayin-crm:version** command on root directory to check their + Krayin version. then krayin version is there in the place of V + +* #182 [fixed] - While Adding a new attribute Lookup field should be come only one time + +* #184 [fixed] - When Customer running " composer create-project krayin/laravel-crm " and " php artisan krayin-crm: + install ". command to install the laravel-crm. Then the project should be setup successfully . + +* #186 [fixed] - When we creating person and selecting the value from the Attributes dropdown which is unique then the + it should be give warning to user/admin + +* #189 [fixed] - When we creating Lead and selecting the value from the Attributes dropdown which is unique then the it + should be give warning to user/admin + +* #193 [fixed] - When we clicking on locale dropdown inside configuration tab. there should be multiple options of + languages + +* #197 [fixed] - When we creating Quote. then the Quote should be show in dashboard + +* #199 [fixed] - When we changing timezone from timezone dropdown inside Configuration tab . then time should be convert + according to timezone + +* #202 [fixed] - When we creating an activity, then the date icon should be shown in the schedule input box. + +* #203 [fixed] - When we creating an activity, the schedule input box should not take date before today + +* #204 [fixed] - When we creating activity and selecting date in 'To' input box which is less then 'From' date. Inside + schedule label. then it should give an error. + +* #208 [fixed] - When we applying filters to search activities . then filters should be work properly to search + activities + +## **v1.0.1 (2nd of September 2021)** + +* [feature] Activity participants + + +* #117 [fixed] - Implement Pest PHP For Testing + +* #120 [fixed] - getting error when run migrate and seed database + +* #122 [fixed] - missing translation for alert message when deleting types and sources + +* #123 [fixed] - add more option is not working while edit person details + +* #134 [fixed] - update alert when delete groups + +* #133 [fixed] - exception when save new user roles + +* #135 [fixed] - default placeholder should be selected in quotes billing address + +* #136 [fixed] - buying leads stages are not assigned on mass action + +* #137 [fixed] - show names instead of id for search term at activities section + +* #139 [fixed] - filter is not working in quotes + +* #147 [fixed] - Getting exception while creating product with same sku + +* #148 [fixed] - Description field not visible while adding the products + +* #152 [fixed] - Automatically curly bracket is getting added in description while editing Role + +## **v1.0.0 (21th of July 2021)** - *First Release* + +* [feature] Descriptive and Simple Admin Panel. + +* [feature] Admin Dashboard. + +* [feature] Custom Attributes. + +* [feature] Built on Modular Approach. + +* [feature] Email parsing via Sendgrid. + + +* #26 [fixed] - VAT number is missing for organization + +* #28 [fixed] - Organization is not found while adding person to organization + +* #29 [fixed] - Users to teams + +* #31 [fixed] - Add Phone to source & type to the new lead form + +* #32 [fixed] - Error on installation + +* #33 [fixed] - update favicon + +* #34 [fixed] - product is not listed even success alert is visible + +* #35 [fixed] - Dashboard widgets are not draggable + +* #38 [fixed] - Lead stages + +* #39 [fixed] - unable to save the lead + +* #40 [fixed] - Move icon is missing + +* #41 [fixed] - unable to open the lead in kanban view + +* #42 [fixed] - Lead without product + +* #43 [fixed] - dashboard move icon is not working + +* #54 [fixed] - Compose email is not working + +* #55 [fixed] - Filter at kanban view does not work + +* #56 [fixed] - Unable to back from single view to outbox or any email grid + +* #57 [fixed] - wrong button name + +* #60 [fixed] - date picker gets removed while selecting date on activity section + +* #61 [fixed] - No validation on product SKU field + +* #62 [fixed] - Getting exception when filter organization/products/admin roles + +* #63 [fixed] - missing translation for compose mail + +* #65 [fixed] - can't enter Email & Contact details for person + +* #71 [fixed] - Menus are not visible + +* #72 [fixed] - Alignment problem + +* #79 [fixed] - Reset Password Mail is not sent and error is shown + +* #81 [fixed] - Issue with Leads Filter in Layout + +* #82 [fixed] - Exception issue in Organisation + +* #83 [fixed] - Issue with Actions Alignment on Organisation page + +* #84 [fixed] - Issue with user access + +* #111 [fixed] - Fetch custom attribute types from config file diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..9012a62 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,76 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, sex characteristics, gender identity and expression, +level of experience, education, socio-economic status, nationality, personal +appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or + advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at support@krayincrm.com. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see +https://www.contributor-covenant.org/faq diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ad86d41 --- /dev/null +++ b/LICENSE @@ -0,0 +1,20 @@ +MIT License + +Copyright 2010-2018, Webkul Software + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..c8786dc --- /dev/null +++ b/README.md @@ -0,0 +1,131 @@ +

+Total Downloads +

+ +

+Total Downloads +Latest Stable Version +License +

+ +## Topics + +1. [Introduction](#introduction) +2. [Documentation](#documentation) +3. [Requirements](#requirements) +4. [Installation & Configuration](#installation-and-configuration) +5. [License](#license) +6. [Security Vulnerabilities](#security-vulnerabilities) + +### Introduction + +[Krayin CRM](https://krayincrm.com) is a hand tailored CRM framework built on some of the hottest opensource +technologies +such as [Laravel](https://laravel.com) (a [PHP](https://secure.php.net/) framework) and [Vue.js](https://vuejs.org) +a progressive Javascript framework. + +**Free & Opensource Laravel CRM solution for SMEs and Enterprises for complete customer lifecycle management.** + +**Read our documentation: [Krayin CRM Docs](https://devdocs.krayincrm.com/)** + +**We also have a forum for any type of concerns, feature requests, or discussions. Please +visit: [Krayin CRM Forums](https://forums.krayincrm.com/)** + +# Visit our live [Demo](https://demo.krayincrm.com) + +It packs in lots of features that will allow your E-Commerce business to scale in no time: + +- Descriptive and Simple Admin Panel. +- Admin Dashboard. +- Custom Attributes. +- Built on Modular Approach. +- Email parsing via Sendgrid. +- Check out [these features and more](https://krayincrm.com/features/). + +**For Developers**: +Take advantage of two of the hottest frameworks used in this project -- Laravel and Vue.js -- both of which have been +used in Krayin CRM. + +### Documentation + +#### Krayin Documentation [https://devdocs.krayincrm.com](https://devdocs.krayincrm.com) + +### Requirements + +- **SERVER**: Apache 2 or NGINX. +- **RAM**: 3 GB or higher. +- **PHP**: 7.4 or higher. +- **For MySQL users**: 5.7.23 or higher. +- **For MariaDB users**: 10.2.7 or Higher. +- **Node**: 8.11.3 LTS or higher. +- **Composer**: 1.6.5 or higher. + +### Installation and Configuration with Git + +``` +git clone https://github.com/techalgo/laravel-crm.git +cd laravel-crm +composer install +php artisan krayin-crm:install +``` + +### Installation and Configuration + +##### Execute these commands below, in order + +``` +composer create-project krayin/laravel-crm +``` + +``` +cd laravel-crm +rm composer.lock +composer install +``` + +- Find **.env** file in root directory and change the **APP_URL** param to your **domain**. + +- Also, Configure the **Mail** and **Database** parameters inside **.env** file. + +``` +php artisan krayin-crm:install +``` + +**To execute Krayin**: + +##### On server: + +Warning: Before going into production mode we recommend you uninstall developer dependencies. +In order to do that, run the command below: + +> composer install --no-dev + +``` +Open the specified entry point in your hosts file in your browser or make an entry in hosts file if not done. +``` + +##### On local: + +``` +php artisan route:clear +php artisan serve +``` + +**How to log in as admin:** + +> _http(s)://example.com/admin/login_ + +``` +email:admin@example.com +password:admin123 +``` + +### License + +Krayin CRM is a truly opensource CRM framework which will always be free under +the [MIT License](https://github.com/krayin/laravel-crm/blob/master/LICENSE). + +### Security Vulnerabilities + +Please don't disclose security vulnerabilities publicly. If you find any security vulnerability in Krayin CRM then +please email us: mailto:sales@krayincrm.com. diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php new file mode 100644 index 0000000..9a0cbd3 --- /dev/null +++ b/app/Console/Kernel.php @@ -0,0 +1,42 @@ +command('inspire')->hourly(); + } + + /** + * Register the commands for the application. + * + * @return void + */ + protected function commands() + { + $this->load(__DIR__ . '/Commands'); + $this->load(__DIR__ . '/../../packages/Webkul/Core/src/Console/Commands'); + + require base_path('routes/console.php'); + } +} diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php new file mode 100644 index 0000000..c18c43c --- /dev/null +++ b/app/Exceptions/Handler.php @@ -0,0 +1,41 @@ +reportable(function (Throwable $e) { + // + }); + } +} diff --git a/app/Http/Controllers/Controller.php b/app/Http/Controllers/Controller.php new file mode 100644 index 0000000..a0a2a8a --- /dev/null +++ b/app/Http/Controllers/Controller.php @@ -0,0 +1,13 @@ + [ + \App\Http\Middleware\EncryptCookies::class, + \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, + \Illuminate\Session\Middleware\StartSession::class, + // \Illuminate\Session\Middleware\AuthenticateSession::class, + \Illuminate\View\Middleware\ShareErrorsFromSession::class, + \App\Http\Middleware\VerifyCsrfToken::class, + \Illuminate\Routing\Middleware\SubstituteBindings::class, + ], + + 'api' => [ + \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class, + 'throttle:api', + \Illuminate\Routing\Middleware\SubstituteBindings::class, + ], + ]; + + /** + * The application's route middleware. + * + * These middleware may be assigned to groups or used individually. + * + * @var array + */ + protected $routeMiddleware = [ + 'auth' => \App\Http\Middleware\Authenticate::class, + 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, + 'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class, + 'can' => \Illuminate\Auth\Middleware\Authorize::class, + 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, + 'password.confirm' => \Illuminate\Auth\Middleware\RequirePassword::class, + 'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class, + 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, + 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class, + ]; +} diff --git a/app/Http/Middleware/Authenticate.php b/app/Http/Middleware/Authenticate.php new file mode 100644 index 0000000..bcfb255 --- /dev/null +++ b/app/Http/Middleware/Authenticate.php @@ -0,0 +1,21 @@ +expectsJson()) { + return route('login'); + } + } +} diff --git a/app/Http/Middleware/EncryptCookies.php b/app/Http/Middleware/EncryptCookies.php new file mode 100644 index 0000000..033136a --- /dev/null +++ b/app/Http/Middleware/EncryptCookies.php @@ -0,0 +1,17 @@ +check()) { + return redirect(RouteServiceProvider::HOME); + } + } + + return $next($request); + } +} diff --git a/app/Http/Middleware/TrimStrings.php b/app/Http/Middleware/TrimStrings.php new file mode 100644 index 0000000..a8a252d --- /dev/null +++ b/app/Http/Middleware/TrimStrings.php @@ -0,0 +1,19 @@ +allSubdomainsOfApplicationUrl(), + ]; + } +} diff --git a/app/Http/Middleware/TrustProxies.php b/app/Http/Middleware/TrustProxies.php new file mode 100644 index 0000000..0c7d3b6 --- /dev/null +++ b/app/Http/Middleware/TrustProxies.php @@ -0,0 +1,28 @@ + 'datetime', + ]; +} diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php new file mode 100644 index 0000000..ee8ca5b --- /dev/null +++ b/app/Providers/AppServiceProvider.php @@ -0,0 +1,28 @@ + 'App\Policies\ModelPolicy', + ]; + + /** + * Register any authentication / authorization services. + * + * @return void + */ + public function boot() + { + // + } +} diff --git a/app/Providers/BroadcastServiceProvider.php b/app/Providers/BroadcastServiceProvider.php new file mode 100644 index 0000000..395c518 --- /dev/null +++ b/app/Providers/BroadcastServiceProvider.php @@ -0,0 +1,21 @@ + [ + SendEmailVerificationNotification::class, + ], + ]; + + /** + * Register any events for your application. + * + * @return void + */ + public function boot() + { + // + } +} diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php new file mode 100644 index 0000000..3bd3c81 --- /dev/null +++ b/app/Providers/RouteServiceProvider.php @@ -0,0 +1,63 @@ +configureRateLimiting(); + + $this->routes(function () { + Route::prefix('api') + ->middleware('api') + ->namespace($this->namespace) + ->group(base_path('routes/api.php')); + + Route::middleware('web') + ->namespace($this->namespace) + ->group(base_path('routes/web.php')); + }); + } + + /** + * Configure the rate limiters for the application. + * + * @return void + */ + protected function configureRateLimiting() + { + RateLimiter::for('api', function (Request $request) { + return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip()); + }); + } +} diff --git a/artisan b/artisan new file mode 100644 index 0000000..f82e421 --- /dev/null +++ b/artisan @@ -0,0 +1,53 @@ +#!/usr/bin/env php +make(Illuminate\Contracts\Console\Kernel::class); + +$status = $kernel->handle( + $input = new Symfony\Component\Console\Input\ArgvInput, + new Symfony\Component\Console\Output\ConsoleOutput +); + +/* +|-------------------------------------------------------------------------- +| Shutdown The Application +|-------------------------------------------------------------------------- +| +| Once Artisan has finished running, we will fire off the shutdown events +| so that any final work may be done by the application before we shut +| down the process. This is the last thing to happen to the request. +| +*/ + +$kernel->terminate($input, $status); + +exit($status); diff --git a/bootstrap/app.php b/bootstrap/app.php new file mode 100644 index 0000000..037e17d --- /dev/null +++ b/bootstrap/app.php @@ -0,0 +1,55 @@ +singleton( + Illuminate\Contracts\Http\Kernel::class, + App\Http\Kernel::class +); + +$app->singleton( + Illuminate\Contracts\Console\Kernel::class, + App\Console\Kernel::class +); + +$app->singleton( + Illuminate\Contracts\Debug\ExceptionHandler::class, + App\Exceptions\Handler::class +); + +/* +|-------------------------------------------------------------------------- +| Return The Application +|-------------------------------------------------------------------------- +| +| This script returns the application instance. The instance is given to +| the calling script so we can separate the building of the instances +| from the actual running of the application and sending responses. +| +*/ + +return $app; diff --git a/bootstrap/cache/.gitignore b/bootstrap/cache/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/bootstrap/cache/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..9ed9af8 --- /dev/null +++ b/composer.json @@ -0,0 +1,91 @@ +{ + "name": "krayin/laravel-crm", + "type": "project", + "description": "Krayin CRM", + "keywords": [ + "framework", + "laravel" + ], + "license": "MIT", + "require": { + "php": "^8.1", + "barryvdh/laravel-dompdf": "^2.0.1", + "diglactic/laravel-breadcrumbs": "^8.1.1", + "doctrine/dbal": "^3.1", + "guzzlehttp/guzzle": "^7.0.1", + "konekt/concord": "^1.10", + "krayin/rest-api": "dev-master", + "laravel/framework": "^10.0", + "laravel/sanctum": "^3.2", + "laravel/tinker": "^2.5", + "laravel/ui": "^4.2.3", + "maatwebsite/excel": "^3.1", + "prettus/l5-repository": "^2.7.9" + }, + "require-dev": { + "barryvdh/laravel-debugbar": "^3.6", + "spatie/laravel-ignition": "^2.0", + "fakerphp/faker": "^1.9.1", + "krayin/krayin-package-generator": "dev-master", + "laravel/sail": "^1.0.1", + "mockery/mockery": "^1.4.2", + "nunomaduro/collision": "^6.1", + "pestphp/pest": "^1.21", + "pestphp/pest-plugin-laravel": "^1.1", + "phpunit/phpunit": "^9.3.3" + }, + "config": { + "optimize-autoloader": true, + "preferred-install": "dist", + "sort-packages": true, + "allow-plugins": { + "pestphp/pest-plugin": true + } + }, + "extra": { + "laravel": { + "dont-discover": [] + } + }, + "autoload": { + "psr-4": { + "App\\": "app/", + "Database\\Factories\\": "database/factories/", + "Database\\Seeders\\": "database/seeders/", + "Webkul\\Activity\\": "packages/Webkul/Activity/src", + "Webkul\\Admin\\": "packages/Webkul/Admin/src", + "Webkul\\Attribute\\": "packages/Webkul/Attribute/src", + "Webkul\\Contact\\": "packages/Webkul/Contact/src", + "Webkul\\Core\\": "packages/Webkul/Core/src", + "Webkul\\Email\\": "packages/Webkul/Email/src", + "Webkul\\EmailTemplate\\": "packages/Webkul/EmailTemplate/src", + "Webkul\\Lead\\": "packages/Webkul/Lead/src", + "Webkul\\Product\\": "packages/Webkul/Product/src", + "Webkul\\Quote\\": "packages/Webkul/Quote/src", + "Webkul\\Tag\\": "packages/Webkul/Tag/src", + "Webkul\\UI\\": "packages/Webkul/UI/src", + "Webkul\\User\\": "packages/Webkul/User/src", + "Webkul\\WebForm\\": "packages/Webkul/WebForm/src", + "Webkul\\Workflow\\": "packages/Webkul/Workflow/src" + } + }, + "autoload-dev": { + "psr-4": { + "Tests\\": "tests/" + } + }, + "minimum-stability": "stable", + "prefer-stable": true, + "scripts": { + "post-autoload-dump": [ + "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", + "@php artisan package:discover --ansi" + ], + "post-root-package-install": [ + "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" + ], + "post-create-project-cmd": [ + "@php artisan key:generate --ansi" + ] + } +} diff --git a/config/app.php b/config/app.php new file mode 100644 index 0000000..eb34bcb --- /dev/null +++ b/config/app.php @@ -0,0 +1,296 @@ + env('APP_NAME', 'Laravel'), + + /* + |-------------------------------------------------------------------------- + | Application Environment + |-------------------------------------------------------------------------- + | + | This value determines the "environment" your application is currently + | running in. This may determine how you prefer to configure various + | services the application utilizes. Set this in your ".env" file. + | + */ + + 'env' => env('APP_ENV', 'production'), + + /* + |-------------------------------------------------------------------------- + | Application Debug Mode + |-------------------------------------------------------------------------- + | + | When your application is in debug mode, detailed error messages with + | stack traces will be shown on every error that occurs within your + | application. If disabled, a simple generic error page is shown. + | + */ + + 'debug' => (bool)env('APP_DEBUG', false), + + /* + Application Version + */ + 'version' => env('APP_VERSION'), + + /* + |-------------------------------------------------------------------------- + | Application URL + |-------------------------------------------------------------------------- + | + | This URL is used by the console to properly generate URLs when using + | the Artisan command line tool. You should set this to the root of + | your application so that it is used when running Artisan tasks. + | + */ + + 'url' => env('APP_URL', 'http://localhost'), + + /* + |-------------------------------------------------------------------------- + | Application Admin URL + |-------------------------------------------------------------------------- + | + | This URL suffix is used to define the admin url for example + | admin/ or backend/ + | + */ + + 'admin_path' => env('APP_ADMIN_PATH', 'admin'), + + 'asset_url' => env('ASSET_URL', null), + + /* + |-------------------------------------------------------------------------- + | Application Timezone + |-------------------------------------------------------------------------- + | + | Here you may specify the default timezone for your application, which + | will be used by the PHP date and date-time functions. We have gone + | ahead and set this to a sensible default for you out of the box. + | + */ + + 'timezone' => env('APP_TIMEZONE', 'Asia/Kolkata'), + + /* + |-------------------------------------------------------------------------- + | Application Locale Configuration + |-------------------------------------------------------------------------- + | + | The application locale determines the default locale that will be used + | by the translation service provider. You are free to set this value + | to any of the locales which will be supported by the application. + | + */ + + 'locale' => 'en', + + /* + |-------------------------------------------------------------------------- + | Available Locales Configuration + |-------------------------------------------------------------------------- + | + | The application available locale determines the supported locales + | by application + | + */ + + 'available_locales' => [ + 'en' => 'English', + 'tr' => 'Türkçe', + 'ar' => 'Arabic', + ], + + /* + |-------------------------------------------------------------------------- + | Application Fallback Locale + |-------------------------------------------------------------------------- + | + | The fallback locale determines the locale to use when the current one + | is not available. You may change the value to correspond to any of + | the language folders that are provided through your application. + | + */ + + 'fallback_locale' => 'en', + + /* + |-------------------------------------------------------------------------- + | Faker Locale + |-------------------------------------------------------------------------- + | + | This locale will be used by the Faker PHP library when generating fake + | data for your database seeds. For example, this will be used to get + | localized telephone numbers, street address information and more. + | + */ + + 'faker_locale' => 'en_US', + + /* + |-------------------------------------------------------------------------- + | Base Currency Code + |-------------------------------------------------------------------------- + | + | Here you may specify the base currency code for your application. + | + */ + + 'currency' => env('APP_CURRENCY', 'USD'), + + /* + |-------------------------------------------------------------------------- + | Encryption Key + |-------------------------------------------------------------------------- + | + | This key is used by the Illuminate encrypter service and should be set + | to a random, 32 character string, otherwise these encrypted strings + | will not be safe. Please do this before deploying an application! + | + */ + + 'key' => env('APP_KEY'), + + 'cipher' => 'AES-256-CBC', + + /* + |-------------------------------------------------------------------------- + | Autoloaded Service Providers + |-------------------------------------------------------------------------- + | + | The service providers listed here will be automatically loaded on the + | request to your application. Feel free to add your own services to + | this array to grant expanded functionality to your applications. + | + */ + + 'providers' => [ + + /* + * Laravel Framework Service Providers... + */ + Illuminate\Auth\AuthServiceProvider::class, + Illuminate\Broadcasting\BroadcastServiceProvider::class, + Illuminate\Bus\BusServiceProvider::class, + Illuminate\Cache\CacheServiceProvider::class, + Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class, + Illuminate\Cookie\CookieServiceProvider::class, + Illuminate\Database\DatabaseServiceProvider::class, + Illuminate\Encryption\EncryptionServiceProvider::class, + Illuminate\Filesystem\FilesystemServiceProvider::class, + Illuminate\Foundation\Providers\FoundationServiceProvider::class, + Illuminate\Hashing\HashServiceProvider::class, + Illuminate\Mail\MailServiceProvider::class, + Illuminate\Notifications\NotificationServiceProvider::class, + Illuminate\Pagination\PaginationServiceProvider::class, + Illuminate\Pipeline\PipelineServiceProvider::class, + Illuminate\Queue\QueueServiceProvider::class, + Illuminate\Redis\RedisServiceProvider::class, + Illuminate\Auth\Passwords\PasswordResetServiceProvider::class, + Illuminate\Session\SessionServiceProvider::class, + Illuminate\Translation\TranslationServiceProvider::class, + Illuminate\Validation\ValidationServiceProvider::class, + Illuminate\View\ViewServiceProvider::class, + + /* + * Package Service Providers... + */ + Prettus\Repository\Providers\RepositoryServiceProvider::class, + Konekt\Concord\ConcordServiceProvider::class, + Barryvdh\DomPDF\ServiceProvider::class, + + /* + * Application Service Providers... + */ + App\Providers\AppServiceProvider::class, + App\Providers\AuthServiceProvider::class, + // App\Providers\BroadcastServiceProvider::class, + App\Providers\EventServiceProvider::class, + App\Providers\RouteServiceProvider::class, + + // CRM packages + Webkul\Activity\Providers\ActivityServiceProvider::class, + Webkul\Admin\Providers\AdminServiceProvider::class, + Webkul\Attribute\Providers\AttributeServiceProvider::class, + Webkul\Contact\Providers\ContactServiceProvider::class, + Webkul\Core\Providers\CoreServiceProvider::class, + Webkul\Email\Providers\EmailServiceProvider::class, + Webkul\EmailTemplate\Providers\EmailTemplateServiceProvider::class, + Webkul\Lead\Providers\LeadServiceProvider::class, + Webkul\Product\Providers\ProductServiceProvider::class, + Webkul\Quote\Providers\QuoteServiceProvider::class, + Webkul\Tag\Providers\TagServiceProvider::class, + Webkul\UI\Providers\UIServiceProvider::class, + Webkul\User\Providers\UserServiceProvider::class, + Webkul\WebForm\Providers\WebFormServiceProvider::class, + Webkul\Workflow\Providers\WorkflowServiceProvider::class, + ], + + /* + |-------------------------------------------------------------------------- + | Class Aliases + |-------------------------------------------------------------------------- + | + | This array of class aliases will be registered when this application + | is started. However, feel free to register as many as you wish as + | the aliases are "lazy" loaded so they don't hinder performance. + | + */ + + 'aliases' => [ + + 'App' => Illuminate\Support\Facades\App::class, + 'Arr' => Illuminate\Support\Arr::class, + 'Artisan' => Illuminate\Support\Facades\Artisan::class, + 'Auth' => Illuminate\Support\Facades\Auth::class, + 'Blade' => Illuminate\Support\Facades\Blade::class, + 'Broadcast' => Illuminate\Support\Facades\Broadcast::class, + 'Bus' => Illuminate\Support\Facades\Bus::class, + 'Cache' => Illuminate\Support\Facades\Cache::class, + 'Config' => Illuminate\Support\Facades\Config::class, + 'Cookie' => Illuminate\Support\Facades\Cookie::class, + 'Crypt' => Illuminate\Support\Facades\Crypt::class, + 'DB' => Illuminate\Support\Facades\DB::class, + 'Eloquent' => Illuminate\Database\Eloquent\Model::class, + 'Event' => Illuminate\Support\Facades\Event::class, + 'File' => Illuminate\Support\Facades\File::class, + 'Gate' => Illuminate\Support\Facades\Gate::class, + 'Hash' => Illuminate\Support\Facades\Hash::class, + 'Http' => Illuminate\Support\Facades\Http::class, + 'Lang' => Illuminate\Support\Facades\Lang::class, + 'Log' => Illuminate\Support\Facades\Log::class, + 'Mail' => Illuminate\Support\Facades\Mail::class, + 'Notification' => Illuminate\Support\Facades\Notification::class, + 'Password' => Illuminate\Support\Facades\Password::class, + 'PDF' => Barryvdh\DomPDF\Facade\Pdf::class, + 'Queue' => Illuminate\Support\Facades\Queue::class, + 'Redirect' => Illuminate\Support\Facades\Redirect::class, + // 'Redis' => Illuminate\Support\Facades\Redis::class, + 'Request' => Illuminate\Support\Facades\Request::class, + 'Response' => Illuminate\Support\Facades\Response::class, + 'Route' => Illuminate\Support\Facades\Route::class, + 'Schema' => Illuminate\Support\Facades\Schema::class, + 'Session' => Illuminate\Support\Facades\Session::class, + 'Storage' => Illuminate\Support\Facades\Storage::class, + 'Str' => Illuminate\Support\Str::class, + 'URL' => Illuminate\Support\Facades\URL::class, + 'Validator' => Illuminate\Support\Facades\Validator::class, + 'View' => Illuminate\Support\Facades\View::class, + 'Menu' => Webkul\Admin\Facades\Menu::class, + ], + +]; diff --git a/config/auth.php b/config/auth.php new file mode 100644 index 0000000..2aab2a6 --- /dev/null +++ b/config/auth.php @@ -0,0 +1,105 @@ + [ + 'guard' => 'user', + 'passwords' => 'users', + ], + + /* + |-------------------------------------------------------------------------- + | Authentication Guards + |-------------------------------------------------------------------------- + | + | Next, you may define every authentication guard for your application. + | Of course, a great default configuration has been defined for you + | here which uses session storage and the Eloquent user provider. + | + | All authentication drivers have a user provider. This defines how the + | users are actually retrieved out of your database or other storage + | mechanisms used by this application to persist your user's data. + | + | Supported: "session", "token" + | + */ + + 'guards' => [ + 'user' => [ + 'driver' => 'session', + 'provider' => 'users' + ], + ], + + /* + |-------------------------------------------------------------------------- + | User Providers + |-------------------------------------------------------------------------- + | + | All authentication drivers have a user provider. This defines how the + | users are actually retrieved out of your database or other storage + | mechanisms used by this application to persist your user's data. + | + | If you have multiple user tables or models you may configure multiple + | sources which represent each model / table. These sources may then + | be assigned to any extra authentication guards you have defined. + | + | Supported: "database", "eloquent" + | + */ + + 'providers' => [ + 'users' => [ + 'driver' => 'eloquent', + 'model' => Webkul\User\Models\User::class, + ] + ], + + /* + |-------------------------------------------------------------------------- + | Resetting Passwords + |-------------------------------------------------------------------------- + | + | You may specify multiple password reset configurations if you have more + | than one user table or model in the application and you want to have + | separate password reset settings based on the specific user types. + | + | The expire time is the number of minutes that the reset token should be + | considered valid. This security feature keeps tokens short-lived so + | they have less time to be guessed. You may change this as needed. + | + */ + + 'passwords' => [ + 'users' => [ + 'provider' => 'users', + 'table' => 'user_password_resets', + 'expire' => 60, + ], + ], + + /* + |-------------------------------------------------------------------------- + | Password Confirmation Timeout + |-------------------------------------------------------------------------- + | + | Here you may define the amount of seconds before a password confirmation + | times out and the user is prompted to re-enter their password via the + | confirmation screen. By default, the timeout lasts for three hours. + | + */ + + 'password_timeout' => 10800, + +]; diff --git a/config/breadcrumbs.php b/config/breadcrumbs.php new file mode 100644 index 0000000..9a268fa --- /dev/null +++ b/config/breadcrumbs.php @@ -0,0 +1,75 @@ + 'breadcrumbs::bootstrap5', + + /* + |-------------------------------------------------------------------------- + | Breadcrumbs File(s) + |-------------------------------------------------------------------------- + | + | The file(s) where breadcrumbs are defined. e.g. + | + | - base_path('routes/breadcrumbs.php') + | - glob(base_path('breadcrumbs/*.php')) + | + */ + + 'files' => base_path('routes/breadcrumbs.php'), + + /* + |-------------------------------------------------------------------------- + | Exceptions + |-------------------------------------------------------------------------- + | + | Determine when to throw an exception. + | + */ + + // When route-bound breadcrumbs are used but the current route doesn't have a name (UnnamedRouteException) + 'unnamed-route-exception' => true, + + // When route-bound breadcrumbs are used and the matching breadcrumb doesn't exist (InvalidBreadcrumbException) + 'missing-route-bound-breadcrumb-exception' => true, + + // When a named breadcrumb is used but doesn't exist (InvalidBreadcrumbException) + 'invalid-named-breadcrumb-exception' => true, + + /* + |-------------------------------------------------------------------------- + | Classes + |-------------------------------------------------------------------------- + | + | Subclass the default classes for more advanced customisations. + | + */ + + // Manager + 'manager-class' => Diglactic\Breadcrumbs\Manager::class, + + // Generator + 'generator-class' => Diglactic\Breadcrumbs\Generator::class, + +]; diff --git a/config/broadcasting.php b/config/broadcasting.php new file mode 100644 index 0000000..2d52982 --- /dev/null +++ b/config/broadcasting.php @@ -0,0 +1,64 @@ + env('BROADCAST_DRIVER', 'null'), + + /* + |-------------------------------------------------------------------------- + | Broadcast Connections + |-------------------------------------------------------------------------- + | + | Here you may define all of the broadcast connections that will be used + | to broadcast events to other systems or over websockets. Samples of + | each available type of connection are provided inside this array. + | + */ + + 'connections' => [ + + 'pusher' => [ + 'driver' => 'pusher', + 'key' => env('PUSHER_APP_KEY'), + 'secret' => env('PUSHER_APP_SECRET'), + 'app_id' => env('PUSHER_APP_ID'), + 'options' => [ + 'cluster' => env('PUSHER_APP_CLUSTER'), + 'useTLS' => true, + ], + ], + + 'ably' => [ + 'driver' => 'ably', + 'key' => env('ABLY_KEY'), + ], + + 'redis' => [ + 'driver' => 'redis', + 'connection' => 'default', + ], + + 'log' => [ + 'driver' => 'log', + ], + + 'null' => [ + 'driver' => 'null', + ], + + ], + +]; diff --git a/config/cache.php b/config/cache.php new file mode 100644 index 0000000..2389425 --- /dev/null +++ b/config/cache.php @@ -0,0 +1,106 @@ + env('CACHE_DRIVER', 'file'), + + /* + |-------------------------------------------------------------------------- + | Cache Stores + |-------------------------------------------------------------------------- + | + | Here you may define all of the cache "stores" for your application as + | well as their drivers. You may even define multiple stores for the + | same cache driver to group types of items stored in your caches. + | + | Supported drivers: "apc", "array", "database", "file", + | "memcached", "redis", "dynamodb", "null" + | + */ + + 'stores' => [ + + 'apc' => [ + 'driver' => 'apc', + ], + + 'array' => [ + 'driver' => 'array', + 'serialize' => false, + ], + + 'database' => [ + 'driver' => 'database', + 'table' => 'cache', + 'connection' => null, + 'lock_connection' => null, + ], + + 'file' => [ + 'driver' => 'file', + 'path' => storage_path('framework/cache/data'), + ], + + 'memcached' => [ + 'driver' => 'memcached', + 'persistent_id' => env('MEMCACHED_PERSISTENT_ID'), + 'sasl' => [ + env('MEMCACHED_USERNAME'), + env('MEMCACHED_PASSWORD'), + ], + 'options' => [ + // Memcached::OPT_CONNECT_TIMEOUT => 2000, + ], + 'servers' => [ + [ + 'host' => env('MEMCACHED_HOST', '127.0.0.1'), + 'port' => env('MEMCACHED_PORT', 11211), + 'weight' => 100, + ], + ], + ], + + 'redis' => [ + 'driver' => 'redis', + 'connection' => 'cache', + 'lock_connection' => 'default', + ], + + 'dynamodb' => [ + 'driver' => 'dynamodb', + 'key' => env('AWS_ACCESS_KEY_ID'), + 'secret' => env('AWS_SECRET_ACCESS_KEY'), + 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), + 'table' => env('DYNAMODB_CACHE_TABLE', 'cache'), + 'endpoint' => env('DYNAMODB_ENDPOINT'), + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Cache Key Prefix + |-------------------------------------------------------------------------- + | + | When utilizing a RAM based store such as APC or Memcached, there might + | be other applications utilizing the same cache. So, we'll specify a + | value to get prefixed to all our keys so we can avoid collisions. + | + */ + + 'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_') . '_cache'), + +]; diff --git a/config/concord.php b/config/concord.php new file mode 100644 index 0000000..1096800 --- /dev/null +++ b/config/concord.php @@ -0,0 +1,22 @@ + [ + \Webkul\Activity\Providers\ModuleServiceProvider::class, + \Webkul\Admin\Providers\ModuleServiceProvider::class, + \Webkul\Attribute\Providers\ModuleServiceProvider::class, + \Webkul\Contact\Providers\ModuleServiceProvider::class, + \Webkul\Core\Providers\ModuleServiceProvider::class, + \Webkul\Email\Providers\ModuleServiceProvider::class, + \Webkul\EmailTemplate\Providers\ModuleServiceProvider::class, + \Webkul\Lead\Providers\ModuleServiceProvider::class, + \Webkul\Product\Providers\ModuleServiceProvider::class, + \Webkul\Quote\Providers\ModuleServiceProvider::class, + \Webkul\Tag\Providers\ModuleServiceProvider::class, + \Webkul\UI\Providers\ModuleServiceProvider::class, + \Webkul\User\Providers\ModuleServiceProvider::class, + \Webkul\WebForm\Providers\ModuleServiceProvider::class, + \Webkul\Workflow\Providers\ModuleServiceProvider::class, + ], + 'register_route_models' => true +]; diff --git a/config/cors.php b/config/cors.php new file mode 100644 index 0000000..ddaaf28 --- /dev/null +++ b/config/cors.php @@ -0,0 +1,62 @@ + [ + 'admin/web-forms/forms/*' + ], + + /* + * Matches the request method. `['*']` allows all methods. + */ + 'allowed_methods' => ['*'], + + /* + * Matches the request origin. `['*']` allows all origins. Wildcards can be used, eg `*.mydomain.com` + */ + 'allowed_origins' => ['*'], + + /* + * Patterns that can be used with `preg_match` to match the origin. + */ + 'allowed_origins_patterns' => [], + + /* + * Sets the Access-Control-Allow-Headers response header. `['*']` allows all headers. + */ + 'allowed_headers' => ['*'], + + /* + * Sets the Access-Control-Expose-Headers response header with these headers. + */ + 'exposed_headers' => [], + + /* + * Sets the Access-Control-Max-Age response header when > 0. + */ + 'max_age' => 0, + + /* + * Sets the Access-Control-Allow-Credentials header. + */ + 'supports_credentials' => false, +]; diff --git a/config/database.php b/config/database.php new file mode 100644 index 0000000..d5a7215 --- /dev/null +++ b/config/database.php @@ -0,0 +1,147 @@ + env('DB_CONNECTION', 'mysql'), + + /* + |-------------------------------------------------------------------------- + | Database Connections + |-------------------------------------------------------------------------- + | + | Here are each of the database connections setup for your application. + | Of course, examples of configuring each database platform that is + | supported by Laravel is shown below to make development simple. + | + | + | All database work in Laravel is done through the PHP PDO facilities + | so make sure you have the driver for your particular database of + | choice installed on your machine before you begin development. + | + */ + + 'connections' => [ + + 'sqlite' => [ + 'driver' => 'sqlite', + 'url' => env('DATABASE_URL'), + 'database' => env('DB_DATABASE', database_path('database.sqlite')), + 'prefix' => '', + 'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true), + ], + + 'mysql' => [ + 'driver' => 'mysql', + 'url' => env('DATABASE_URL'), + 'host' => env('DB_HOST', '127.0.0.1'), + 'port' => env('DB_PORT', '3306'), + 'database' => env('DB_DATABASE', 'forge'), + 'username' => env('DB_USERNAME', 'forge'), + 'password' => env('DB_PASSWORD', ''), + 'unix_socket' => env('DB_SOCKET', ''), + 'charset' => 'utf8mb4', + 'collation' => 'utf8mb4_unicode_ci', + 'prefix' => '', + 'prefix_indexes' => true, + 'strict' => false, + 'engine' => null, + 'options' => extension_loaded('pdo_mysql') ? array_filter([ + PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), + ]) : [], + ], + + 'pgsql' => [ + 'driver' => 'pgsql', + 'url' => env('DATABASE_URL'), + 'host' => env('DB_HOST', '127.0.0.1'), + 'port' => env('DB_PORT', '5432'), + 'database' => env('DB_DATABASE', 'forge'), + 'username' => env('DB_USERNAME', 'forge'), + 'password' => env('DB_PASSWORD', ''), + 'charset' => 'utf8', + 'prefix' => '', + 'prefix_indexes' => true, + 'schema' => 'public', + 'sslmode' => 'prefer', + ], + + 'sqlsrv' => [ + 'driver' => 'sqlsrv', + 'url' => env('DATABASE_URL'), + 'host' => env('DB_HOST', 'localhost'), + 'port' => env('DB_PORT', '1433'), + 'database' => env('DB_DATABASE', 'forge'), + 'username' => env('DB_USERNAME', 'forge'), + 'password' => env('DB_PASSWORD', ''), + 'charset' => 'utf8', + 'prefix' => '', + 'prefix_indexes' => true, + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Migration Repository Table + |-------------------------------------------------------------------------- + | + | This table keeps track of all the migrations that have already run for + | your application. Using this information, we can determine which of + | the migrations on disk haven't actually been run in the database. + | + */ + + 'migrations' => 'migrations', + + /* + |-------------------------------------------------------------------------- + | Redis Databases + |-------------------------------------------------------------------------- + | + | Redis is an open source, fast, and advanced key-value store that also + | provides a richer body of commands than a typical key-value system + | such as APC or Memcached. Laravel makes it easy to dig right in. + | + */ + + 'redis' => [ + + 'client' => env('REDIS_CLIENT', 'phpredis'), + + 'options' => [ + 'cluster' => env('REDIS_CLUSTER', 'redis'), + 'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_') . '_database_'), + ], + + 'default' => [ + 'url' => env('REDIS_URL'), + 'host' => env('REDIS_HOST', '127.0.0.1'), + 'password' => env('REDIS_PASSWORD', null), + 'port' => env('REDIS_PORT', '6379'), + 'database' => env('REDIS_DB', '0'), + ], + + 'cache' => [ + 'url' => env('REDIS_URL'), + 'host' => env('REDIS_HOST', '127.0.0.1'), + 'password' => env('REDIS_PASSWORD', null), + 'port' => env('REDIS_PORT', '6379'), + 'database' => env('REDIS_CACHE_DB', '1'), + ], + + ], + +]; diff --git a/config/debugbar.php b/config/debugbar.php new file mode 100644 index 0000000..b18c919 --- /dev/null +++ b/config/debugbar.php @@ -0,0 +1,275 @@ + env('DEBUGBAR_ENABLED', null), + 'except' => [ + 'telescope*', + 'horizon*', + ], + + /* + |-------------------------------------------------------------------------- + | Storage settings + |-------------------------------------------------------------------------- + | + | DebugBar stores data for session/ajax requests. + | You can disable this, so the debugbar stores data in headers/session, + | but this can cause problems with large data collectors. + | By default, file storage (in the storage folder) is used. Redis and PDO + | can also be used. For PDO, run the package migrations first. + | + */ + 'storage' => [ + 'enabled' => true, + 'driver' => 'file', // redis, file, pdo, socket, custom + 'path' => storage_path('debugbar'), // For file driver + 'connection' => null, // Leave null for default connection (Redis/PDO) + 'provider' => '', // Instance of StorageInterface for custom driver + 'hostname' => '127.0.0.1', // Hostname to use with the "socket" driver + 'port' => 2304, // Port to use with the "socket" driver + ], + + /* + |-------------------------------------------------------------------------- + | Editor + |-------------------------------------------------------------------------- + | + | Choose your preferred editor to use when clicking file name. + | + | Supported: "phpstorm", "vscode", "vscode-insiders", "vscode-remote", + | "vscode-insiders-remote", "vscodium", "textmate", "emacs", + | "sublime", "atom", "nova", "macvim", "idea", "netbeans", + | "xdebug", "espresso" + | + */ + + 'editor' => env('DEBUGBAR_EDITOR', 'phpstorm'), + + /* + |-------------------------------------------------------------------------- + | Remote Path Mapping + |-------------------------------------------------------------------------- + | + | If you are using a remote dev server, like Laravel Homestead, Docker, or + | even a remote VPS, it will be necessary to specify your path mapping. + | + | Leaving one, or both of these, empty or null will not trigger the remote + | URL changes and Debugbar will treat your editor links as local files. + | + | "remote_sites_path" is an absolute base path for your sites or projects + | in Homestead, Vagrant, Docker, or another remote development server. + | + | Example value: "/home/vagrant/Code" + | + | "local_sites_path" is an absolute base path for your sites or projects + | on your local computer where your IDE or code editor is running on. + | + | Example values: "/Users//Code", "C:\Users\\Documents\Code" + | + */ + + 'remote_sites_path' => env('DEBUGBAR_REMOTE_SITES_PATH', ''), + 'local_sites_path' => env('DEBUGBAR_LOCAL_SITES_PATH', ''), + + /* + |-------------------------------------------------------------------------- + | Vendors + |-------------------------------------------------------------------------- + | + | Vendor files are included by default, but can be set to false. + | This can also be set to 'js' or 'css', to only include javascript or css vendor files. + | Vendor files are for css: font-awesome (including fonts) and highlight.js (css files) + | and for js: jquery and and highlight.js + | So if you want syntax highlighting, set it to true. + | jQuery is set to not conflict with existing jQuery scripts. + | + */ + + 'include_vendors' => true, + + /* + |-------------------------------------------------------------------------- + | Capture Ajax Requests + |-------------------------------------------------------------------------- + | + | The Debugbar can capture Ajax requests and display them. If you don't want this (ie. because of errors), + | you can use this option to disable sending the data through the headers. + | + | Optionally, you can also send ServerTiming headers on ajax requests for the Chrome DevTools. + | + | Note for your request to be identified as ajax requests they must either send the header + | X-Requested-With with the value XMLHttpRequest (most JS libraries send this), or have application/json as a Accept header. + */ + + 'capture_ajax' => true, + 'add_ajax_timing' => false, + + /* + |-------------------------------------------------------------------------- + | Custom Error Handler for Deprecated warnings + |-------------------------------------------------------------------------- + | + | When enabled, the Debugbar shows deprecated warnings for Symfony components + | in the Messages tab. + | + */ + 'error_handler' => false, + + /* + |-------------------------------------------------------------------------- + | Clockwork integration + |-------------------------------------------------------------------------- + | + | The Debugbar can emulate the Clockwork headers, so you can use the Chrome + | Extension, without the server-side code. It uses Debugbar collectors instead. + | + */ + 'clockwork' => false, + + /* + |-------------------------------------------------------------------------- + | DataCollectors + |-------------------------------------------------------------------------- + | + | Enable/disable DataCollectors + | + */ + + 'collectors' => [ + 'phpinfo' => true, // Php version + 'messages' => true, // Messages + 'time' => true, // Time Datalogger + 'memory' => true, // Memory usage + 'exceptions' => true, // Exception displayer + 'log' => true, // Logs from Monolog (merged in messages if enabled) + 'db' => true, // Show database (PDO) queries and bindings + 'views' => true, // Views with their data + 'route' => true, // Current route information + 'auth' => false, // Display Laravel authentication status + 'gate' => true, // Display Laravel Gate checks + 'session' => true, // Display session data + 'symfony_request' => true, // Only one can be enabled.. + 'mail' => true, // Catch mail messages + 'laravel' => false, // Laravel version and environment + 'events' => false, // All events fired + 'default_request' => false, // Regular or special Symfony request logger + 'logs' => false, // Add the latest log messages + 'files' => false, // Show the included files + 'config' => false, // Display config settings + 'cache' => false, // Display cache events + 'models' => true, // Display models + 'livewire' => true, // Display Livewire (when available) + ], + + /* + |-------------------------------------------------------------------------- + | Extra options + |-------------------------------------------------------------------------- + | + | Configure some DataCollectors + | + */ + + 'options' => [ + 'auth' => [ + 'show_name' => true, // Also show the users name/email in the debugbar + ], + 'db' => [ + 'with_params' => true, // Render SQL with the parameters substituted + 'backtrace' => true, // Use a backtrace to find the origin of the query in your files. + 'backtrace_exclude_paths' => [], // Paths to exclude from backtrace. (in addition to defaults) + 'timeline' => false, // Add the queries to the timeline + 'duration_background' => true, // Show shaded background on each query relative to how long it took to execute. + 'explain' => [ // Show EXPLAIN output on queries + 'enabled' => false, + 'types' => ['SELECT'], // Deprecated setting, is always only SELECT + ], + 'hints' => false, // Show hints for common mistakes + 'show_copy' => false, // Show copy button next to the query + ], + 'mail' => [ + 'full_log' => false, + ], + 'views' => [ + 'timeline' => false, // Add the views to the timeline (Experimental) + 'data' => false, //Note: Can slow down the application, because the data can be quite large.. + ], + 'route' => [ + 'label' => true, // show complete route on bar + ], + 'logs' => [ + 'file' => null, + ], + 'cache' => [ + 'values' => true, // collect cache values + ], + ], + + /* + |-------------------------------------------------------------------------- + | Inject Debugbar in Response + |-------------------------------------------------------------------------- + | + | Usually, the debugbar is added just before , by listening to the + | Response after the App is done. If you disable this, you have to add them + | in your template yourself. See http://phpdebugbar.com/docs/rendering.html + | + */ + + 'inject' => true, + + /* + |-------------------------------------------------------------------------- + | DebugBar route prefix + |-------------------------------------------------------------------------- + | + | Sometimes you want to set route prefix to be used by DebugBar to load + | its resources from. Usually the need comes from misconfigured web server or + | from trying to overcome bugs like this: http://trac.nginx.org/nginx/ticket/97 + | + */ + 'route_prefix' => '_debugbar', + + /* + |-------------------------------------------------------------------------- + | DebugBar route domain + |-------------------------------------------------------------------------- + | + | By default DebugBar route served from the same domain that request served. + | To override default domain, specify it as a non-empty value. + */ + 'route_domain' => null, + + /* + |-------------------------------------------------------------------------- + | DebugBar theme + |-------------------------------------------------------------------------- + | + | Switches between light and dark theme. If set to auto it will respect system preferences + | Possible values: auto, light, dark + */ + 'theme' => env('DEBUGBAR_THEME', 'auto'), + + /* + |-------------------------------------------------------------------------- + | Backtrace stack limit + |-------------------------------------------------------------------------- + | + | By default, the DebugBar limits the number of frames returned by the 'debug_backtrace()' function. + | If you need larger stacktraces, you can increase this number. Setting it to 0 will result in no limit. + */ + 'debug_backtrace_limit' => 50, +]; diff --git a/config/dompdf.php b/config/dompdf.php new file mode 100644 index 0000000..bebbc13 --- /dev/null +++ b/config/dompdf.php @@ -0,0 +1,284 @@ + false, // Throw an Exception on warnings from dompdf + + 'public_path' => null, // Override the public path if needed + + /* + * Dejavu Sans font is missing glyphs for converted entities, turn it off if you need to show € and £. + */ + 'convert_entities' => true, + + 'options' => array( + /** + * The location of the DOMPDF font directory + * + * The location of the directory where DOMPDF will store fonts and font metrics + * Note: This directory must exist and be writable by the webserver process. + * *Please note the trailing slash.* + * + * Notes regarding fonts: + * Additional .afm font metrics can be added by executing load_font.php from command line. + * + * Only the original "Base 14 fonts" are present on all pdf viewers. Additional fonts must + * be embedded in the pdf file or the PDF may not display correctly. This can significantly + * increase file size unless font subsetting is enabled. Before embedding a font please + * review your rights under the font license. + * + * Any font specification in the source HTML is translated to the closest font available + * in the font directory. + * + * The pdf standard "Base 14 fonts" are: + * Courier, Courier-Bold, Courier-BoldOblique, Courier-Oblique, + * Helvetica, Helvetica-Bold, Helvetica-BoldOblique, Helvetica-Oblique, + * Times-Roman, Times-Bold, Times-BoldItalic, Times-Italic, + * Symbol, ZapfDingbats. + */ + "font_dir" => storage_path('fonts'), // advised by dompdf (https://github.com/dompdf/dompdf/pull/782) + + /** + * The location of the DOMPDF font cache directory + * + * This directory contains the cached font metrics for the fonts used by DOMPDF. + * This directory can be the same as DOMPDF_FONT_DIR + * + * Note: This directory must exist and be writable by the webserver process. + */ + "font_cache" => storage_path('fonts'), + + /** + * The location of a temporary directory. + * + * The directory specified must be writeable by the webserver process. + * The temporary directory is required to download remote images and when + * using the PFDLib back end. + */ + "temp_dir" => sys_get_temp_dir(), + + /** + * ==== IMPORTANT ==== + * + * dompdf's "chroot": Prevents dompdf from accessing system files or other + * files on the webserver. All local files opened by dompdf must be in a + * subdirectory of this directory. DO NOT set it to '/' since this could + * allow an attacker to use dompdf to read any files on the server. This + * should be an absolute path. + * This is only checked on command line call by dompdf.php, but not by + * direct class use like: + * $dompdf = new DOMPDF(); $dompdf->load_html($htmldata); $dompdf->render(); $pdfdata = $dompdf->output(); + */ + "chroot" => realpath(base_path()), + + /** + * Protocol whitelist + * + * Protocols and PHP wrappers allowed in URIs, and the validation rules + * that determine if a resouce may be loaded. Full support is not guaranteed + * for the protocols/wrappers specified + * by this array. + * + * @var array + */ + 'allowed_protocols' => [ + "file://" => ["rules" => []], + "http://" => ["rules" => []], + "https://" => ["rules" => []] + ], + + /** + * @var string + */ + 'log_output_file' => null, + + /** + * Whether to enable font subsetting or not. + */ + "enable_font_subsetting" => false, + + /** + * The PDF rendering backend to use + * + * Valid settings are 'PDFLib', 'CPDF' (the bundled R&OS PDF class), 'GD' and + * 'auto'. 'auto' will look for PDFLib and use it if found, or if not it will + * fall back on CPDF. 'GD' renders PDFs to graphic files. {@link + * Canvas_Factory} ultimately determines which rendering class to instantiate + * based on this setting. + * + * Both PDFLib & CPDF rendering backends provide sufficient rendering + * capabilities for dompdf, however additional features (e.g. object, + * image and font support, etc.) differ between backends. Please see + * {@link PDFLib_Adapter} for more information on the PDFLib backend + * and {@link CPDF_Adapter} and lib/class.pdf.php for more information + * on CPDF. Also see the documentation for each backend at the links + * below. + * + * The GD rendering backend is a little different than PDFLib and + * CPDF. Several features of CPDF and PDFLib are not supported or do + * not make any sense when creating image files. For example, + * multiple pages are not supported, nor are PDF 'objects'. Have a + * look at {@link GD_Adapter} for more information. GD support is + * experimental, so use it at your own risk. + * + * @link http://www.pdflib.com + * @link http://www.ros.co.nz/pdf + * @link http://www.php.net/image + */ + "pdf_backend" => "CPDF", + + /** + * PDFlib license key + * + * If you are using a licensed, commercial version of PDFlib, specify + * your license key here. If you are using PDFlib-Lite or are evaluating + * the commercial version of PDFlib, comment out this setting. + * + * @link http://www.pdflib.com + * + * If pdflib present in web server and auto or selected explicitely above, + * a real license code must exist! + */ + //"DOMPDF_PDFLIB_LICENSE" => "your license key here", + + /** + * html target media view which should be rendered into pdf. + * List of types and parsing rules for future extensions: + * http://www.w3.org/TR/REC-html40/types.html + * screen, tty, tv, projection, handheld, print, braille, aural, all + * Note: aural is deprecated in CSS 2.1 because it is replaced by speech in CSS 3. + * Note, even though the generated pdf file is intended for print output, + * the desired content might be different (e.g. screen or projection view of html file). + * Therefore allow specification of content here. + */ + "default_media_type" => "screen", + + /** + * The default paper size. + * + * North America standard is "letter"; other countries generally "a4" + * + * @see CPDF_Adapter::PAPER_SIZES for valid sizes ('letter', 'legal', 'A4', etc.) + */ + "default_paper_size" => "a4", + + /** + * The default paper orientation. + * + * The orientation of the page (portrait or landscape). + * + * @var string + */ + 'default_paper_orientation' => "portrait", + + /** + * The default font family + * + * Used if no suitable fonts can be found. This must exist in the font folder. + * @var string + */ + "default_font" => "serif", + + /** + * Image DPI setting + * + * This setting determines the default DPI setting for images and fonts. The + * DPI may be overridden for inline images by explictly setting the + * image's width & height style attributes (i.e. if the image's native + * width is 600 pixels and you specify the image's width as 72 points, + * the image will have a DPI of 600 in the rendered PDF. The DPI of + * background images can not be overridden and is controlled entirely + * via this parameter. + * + * For the purposes of DOMPDF, pixels per inch (PPI) = dots per inch (DPI). + * If a size in html is given as px (or without unit as image size), + * this tells the corresponding size in pt. + * This adjusts the relative sizes to be similar to the rendering of the + * html page in a reference browser. + * + * In pdf, always 1 pt = 1/72 inch + * + * Rendering resolution of various browsers in px per inch: + * Windows Firefox and Internet Explorer: + * SystemControl->Display properties->FontResolution: Default:96, largefonts:120, custom:? + * Linux Firefox: + * about:config *resolution: Default:96 + * (xorg screen dimension in mm and Desktop font dpi settings are ignored) + * + * Take care about extra font/image zoom factor of browser. + * + * In images, size in pixel attribute, img css style, are overriding + * the real image dimension in px for rendering. + * + * @var int + */ + "dpi" => 96, + + /** + * Enable inline PHP + * + * If this setting is set to true then DOMPDF will automatically evaluate + * inline PHP contained within tags. + * + * Enabling this for documents you do not trust (e.g. arbitrary remote html + * pages) is a security risk. Set this option to false if you wish to process + * untrusted documents. + * + * @var bool + */ + "enable_php" => false, + + /** + * Enable inline Javascript + * + * If this setting is set to true then DOMPDF will automatically insert + * JavaScript code contained within tags. + * + * @var bool + */ + "enable_javascript" => true, + + /** + * Enable remote file access + * + * If this setting is set to true, DOMPDF will access remote sites for + * images and CSS files as required. + * This is required for part of test case www/test/image_variants.html through www/examples.php + * + * Attention! + * This can be a security risk, in particular in combination with DOMPDF_ENABLE_PHP and + * allowing remote access to dompdf.php or on allowing remote html code to be passed to + * $dompdf = new DOMPDF(, $dompdf->load_html(..., + * This allows anonymous users to download legally doubtful internet content which on + * tracing back appears to being downloaded by your server, or allows malicious php code + * in remote html pages to be executed by your server with your account privileges. + * + * @var bool + */ + "enable_remote" => true, + + /** + * A ratio applied to the fonts height to be more like browsers' line height + */ + "font_height_ratio" => 1.1, + + /** + * Use the HTML5 Lib parser + * + * @deprecated This feature is now always on in dompdf 2.x + * @var bool + */ + "enable_html5_parser" => true, + ), + + +); diff --git a/config/excel.php b/config/excel.php new file mode 100644 index 0000000..49d13f1 --- /dev/null +++ b/config/excel.php @@ -0,0 +1,332 @@ + [ + + /* + |-------------------------------------------------------------------------- + | Chunk size + |-------------------------------------------------------------------------- + | + | When using FromQuery, the query is automatically chunked. + | Here you can specify how big the chunk should be. + | + */ + 'chunk_size' => 1000, + + /* + |-------------------------------------------------------------------------- + | Pre-calculate formulas during export + |-------------------------------------------------------------------------- + */ + 'pre_calculate_formulas' => false, + + /* + |-------------------------------------------------------------------------- + | Enable strict null comparison + |-------------------------------------------------------------------------- + | + | When enabling strict null comparison empty cells ('') will + | be added to the sheet. + */ + 'strict_null_comparison' => false, + + /* + |-------------------------------------------------------------------------- + | CSV Settings + |-------------------------------------------------------------------------- + | + | Configure e.g. delimiter, enclosure and line ending for CSV exports. + | + */ + 'csv' => [ + 'delimiter' => ',', + 'enclosure' => '"', + 'line_ending' => PHP_EOL, + 'use_bom' => false, + 'include_separator_line' => false, + 'excel_compatibility' => false, + 'output_encoding' => '', + ], + + /* + |-------------------------------------------------------------------------- + | Worksheet properties + |-------------------------------------------------------------------------- + | + | Configure e.g. default title, creator, subject,... + | + */ + 'properties' => [ + 'creator' => '', + 'lastModifiedBy' => '', + 'title' => '', + 'description' => '', + 'subject' => '', + 'keywords' => '', + 'category' => '', + 'manager' => '', + 'company' => '', + ], + ], + + 'imports' => [ + + /* + |-------------------------------------------------------------------------- + | Read Only + |-------------------------------------------------------------------------- + | + | When dealing with imports, you might only be interested in the + | data that the sheet exists. By default we ignore all styles, + | however if you want to do some logic based on style data + | you can enable it by setting read_only to false. + | + */ + 'read_only' => true, + + /* + |-------------------------------------------------------------------------- + | Ignore Empty + |-------------------------------------------------------------------------- + | + | When dealing with imports, you might be interested in ignoring + | rows that have null values or empty strings. By default rows + | containing empty strings or empty values are not ignored but can be + | ignored by enabling the setting ignore_empty to true. + | + */ + 'ignore_empty' => false, + + /* + |-------------------------------------------------------------------------- + | Heading Row Formatter + |-------------------------------------------------------------------------- + | + | Configure the heading row formatter. + | Available options: none|slug|custom + | + */ + 'heading_row' => [ + 'formatter' => 'slug', + ], + + /* + |-------------------------------------------------------------------------- + | CSV Settings + |-------------------------------------------------------------------------- + | + | Configure e.g. delimiter, enclosure and line ending for CSV imports. + | + */ + 'csv' => [ + 'delimiter' => null, + 'enclosure' => '"', + 'escape_character' => '\\', + 'contiguous' => false, + 'input_encoding' => 'UTF-8', + ], + + /* + |-------------------------------------------------------------------------- + | Worksheet properties + |-------------------------------------------------------------------------- + | + | Configure e.g. default title, creator, subject,... + | + */ + 'properties' => [ + 'creator' => '', + 'lastModifiedBy' => '', + 'title' => '', + 'description' => '', + 'subject' => '', + 'keywords' => '', + 'category' => '', + 'manager' => '', + 'company' => '', + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Extension detector + |-------------------------------------------------------------------------- + | + | Configure here which writer/reader type should be used when the package + | needs to guess the correct type based on the extension alone. + | + */ + 'extension_detector' => [ + 'xlsx' => Excel::XLSX, + 'xlsm' => Excel::XLSX, + 'xltx' => Excel::XLSX, + 'xltm' => Excel::XLSX, + 'xls' => Excel::XLS, + 'xlt' => Excel::XLS, + 'ods' => Excel::ODS, + 'ots' => Excel::ODS, + 'slk' => Excel::SLK, + 'xml' => Excel::XML, + 'gnumeric' => Excel::GNUMERIC, + 'htm' => Excel::HTML, + 'html' => Excel::HTML, + 'csv' => Excel::CSV, + 'tsv' => Excel::TSV, + + /* + |-------------------------------------------------------------------------- + | PDF Extension + |-------------------------------------------------------------------------- + | + | Configure here which Pdf driver should be used by default. + | Available options: Excel::MPDF | Excel::TCPDF | Excel::DOMPDF + | + */ + 'pdf' => Excel::DOMPDF, + ], + + /* + |-------------------------------------------------------------------------- + | Value Binder + |-------------------------------------------------------------------------- + | + | PhpSpreadsheet offers a way to hook into the process of a value being + | written to a cell. In there some assumptions are made on how the + | value should be formatted. If you want to change those defaults, + | you can implement your own default value binder. + | + | Possible value binders: + | + | [x] Maatwebsite\Excel\DefaultValueBinder::class + | [x] PhpOffice\PhpSpreadsheet\Cell\StringValueBinder::class + | [x] PhpOffice\PhpSpreadsheet\Cell\AdvancedValueBinder::class + | + */ + 'value_binder' => [ + 'default' => Maatwebsite\Excel\DefaultValueBinder::class, + ], + + 'cache' => [ + /* + |-------------------------------------------------------------------------- + | Default cell caching driver + |-------------------------------------------------------------------------- + | + | By default PhpSpreadsheet keeps all cell values in memory, however when + | dealing with large files, this might result into memory issues. If you + | want to mitigate that, you can configure a cell caching driver here. + | When using the illuminate driver, it will store each value in a the + | cache store. This can slow down the process, because it needs to + | store each value. You can use the "batch" store if you want to + | only persist to the store when the memory limit is reached. + | + | Drivers: memory|illuminate|batch + | + */ + 'driver' => 'memory', + + /* + |-------------------------------------------------------------------------- + | Batch memory caching + |-------------------------------------------------------------------------- + | + | When dealing with the "batch" caching driver, it will only + | persist to the store when the memory limit is reached. + | Here you can tweak the memory limit to your liking. + | + */ + 'batch' => [ + 'memory_limit' => 60000, + ], + + /* + |-------------------------------------------------------------------------- + | Illuminate cache + |-------------------------------------------------------------------------- + | + | When using the "illuminate" caching driver, it will automatically use + | your default cache store. However if you prefer to have the cell + | cache on a separate store, you can configure the store name here. + | You can use any store defined in your cache config. When leaving + | at "null" it will use the default store. + | + */ + 'illuminate' => [ + 'store' => null, + ], + ], + + /* + |-------------------------------------------------------------------------- + | Transaction Handler + |-------------------------------------------------------------------------- + | + | By default the import is wrapped in a transaction. This is useful + | for when an import may fail and you want to retry it. With the + | transactions, the previous import gets rolled-back. + | + | You can disable the transaction handler by setting this to null. + | Or you can choose a custom made transaction handler here. + | + | Supported handlers: null|db + | + */ + 'transactions' => [ + 'handler' => 'db', + 'db' => [ + 'connection' => null, + ], + ], + + 'temporary_files' => [ + + /* + |-------------------------------------------------------------------------- + | Local Temporary Path + |-------------------------------------------------------------------------- + | + | When exporting and importing files, we use a temporary file, before + | storing reading or downloading. Here you can customize that path. + | + */ + 'local_path' => storage_path('framework/cache/laravel-excel'), + + /* + |-------------------------------------------------------------------------- + | Remote Temporary Disk + |-------------------------------------------------------------------------- + | + | When dealing with a multi server setup with queues in which you + | cannot rely on having a shared local temporary path, you might + | want to store the temporary file on a shared disk. During the + | queue executing, we'll retrieve the temporary file from that + | location instead. When left to null, it will always use + | the local path. This setting only has effect when using + | in conjunction with queued imports and exports. + | + */ + 'remote_disk' => null, + 'remote_prefix' => null, + + /* + |-------------------------------------------------------------------------- + | Force Resync + |-------------------------------------------------------------------------- + | + | When dealing with a multi server setup as above, it's possible + | for the clean up that occurs after entire queue has been run to only + | cleanup the server that the last AfterImportJob runs on. The rest of the server + | would still have the local temporary file stored on it. In this case your + | local storage limits can be exceeded and future imports won't be processed. + | To mitigate this you can set this config value to be true, so that after every + | queued chunk is processed the local temporary file is deleted on the server that + | processed it. + | + */ + 'force_resync_remote' => null, + ], +]; diff --git a/config/filesystems.php b/config/filesystems.php new file mode 100644 index 0000000..df9e2cf --- /dev/null +++ b/config/filesystems.php @@ -0,0 +1,72 @@ + env('FILESYSTEM_DISK', 'public'), + + /* + |-------------------------------------------------------------------------- + | Filesystem Disks + |-------------------------------------------------------------------------- + | + | Here you may configure as many filesystem "disks" as you wish, and you + | may even configure multiple disks of the same driver. Defaults have + | been setup for each driver as an example of the required options. + | + | Supported Drivers: "local", "ftp", "sftp", "s3" + | + */ + + 'disks' => [ + + 'local' => [ + 'driver' => 'local', + 'root' => storage_path('app'), + ], + + 'public' => [ + 'driver' => 'local', + 'root' => storage_path('app/public'), + 'url' => env('APP_URL') . '/storage', + 'visibility' => 'public', + ], + + 's3' => [ + 'driver' => 's3', + 'key' => env('AWS_ACCESS_KEY_ID'), + 'secret' => env('AWS_SECRET_ACCESS_KEY'), + 'region' => env('AWS_DEFAULT_REGION'), + 'bucket' => env('AWS_BUCKET'), + 'url' => env('AWS_URL'), + 'endpoint' => env('AWS_ENDPOINT'), + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Symbolic Links + |-------------------------------------------------------------------------- + | + | Here you may configure the symbolic links that will be created when the + | `storage:link` Artisan command is executed. The array keys should be + | the locations of the links and the values should be their targets. + | + */ + + 'links' => [ + public_path('storage') => storage_path('app/public'), + ], + +]; diff --git a/config/flare.php b/config/flare.php new file mode 100644 index 0000000..a4896f3 --- /dev/null +++ b/config/flare.php @@ -0,0 +1,80 @@ + env('FLARE_KEY'), + + /* + |-------------------------------------------------------------------------- + | Middleware + |-------------------------------------------------------------------------- + | + | These middleware will modify the contents of the report sent to Flare. + | + */ + + 'flare_middleware' => [ + RemoveRequestIp::class, + AddGitInformation::class, + AddNotifierName::class, + AddEnvironmentInformation::class, + AddExceptionInformation::class, + AddDumps::class, + AddLogs::class => [ + 'maximum_number_of_collected_logs' => 200, + ], + AddQueries::class => [ + 'maximum_number_of_collected_queries' => 200, + 'report_query_bindings' => true, + ], + AddJobs::class => [ + 'max_chained_job_reporting_depth' => 5, + ], + CensorRequestBodyFields::class => [ + 'censor_fields' => [ + 'password', + 'password_confirmation', + ], + ], + CensorRequestHeaders::class => [ + 'headers' => [ + 'API-KEY', + ] + ] + ], + + /* + |-------------------------------------------------------------------------- + | Reporting log statements + |-------------------------------------------------------------------------- + | + | If this setting is `false` log statements won't be sent as events to Flare, + | no matter which error level you specified in the Flare log channel. + | + */ + + 'send_logs_as_events' => true, +]; diff --git a/config/hashing.php b/config/hashing.php new file mode 100644 index 0000000..8425770 --- /dev/null +++ b/config/hashing.php @@ -0,0 +1,52 @@ + 'bcrypt', + + /* + |-------------------------------------------------------------------------- + | Bcrypt Options + |-------------------------------------------------------------------------- + | + | Here you may specify the configuration options that should be used when + | passwords are hashed using the Bcrypt algorithm. This will allow you + | to control the amount of time it takes to hash the given password. + | + */ + + 'bcrypt' => [ + 'rounds' => env('BCRYPT_ROUNDS', 10), + ], + + /* + |-------------------------------------------------------------------------- + | Argon Options + |-------------------------------------------------------------------------- + | + | Here you may specify the configuration options that should be used when + | passwords are hashed using the Argon algorithm. These will allow you + | to control the amount of time it takes to hash the given password. + | + */ + + 'argon' => [ + 'memory' => 1024, + 'threads' => 2, + 'time' => 2, + ], + +]; diff --git a/config/ignition.php b/config/ignition.php new file mode 100644 index 0000000..4cc53e4 --- /dev/null +++ b/config/ignition.php @@ -0,0 +1,214 @@ + env('IGNITION_EDITOR', 'phpstorm'), + + /* + |-------------------------------------------------------------------------- + | Theme + |-------------------------------------------------------------------------- + | + | Here you may specify which theme Ignition should use. + | + | Supported: "light", "dark", "auto" + | + */ + + 'theme' => env('IGNITION_THEME', 'auto'), + + /* + |-------------------------------------------------------------------------- + | Sharing + |-------------------------------------------------------------------------- + | + | You can share local errors with colleagues or others around the world. + | Sharing is completely free and doesn't require an account on Flare. + | + | If necessary, you can completely disable sharing below. + | + */ + + 'enable_share_button' => env('IGNITION_SHARING_ENABLED', true), + + /* + |-------------------------------------------------------------------------- + | Register Ignition commands + |-------------------------------------------------------------------------- + | + | Ignition comes with an additional make command that lets you create + | new solution classes more easily. To keep your default Laravel + | installation clean, this command is not registered by default. + | + | You can enable the command registration below. + | + */ + + 'register_commands' => env('REGISTER_IGNITION_COMMANDS', false), + + /* + |-------------------------------------------------------------------------- + | Solution Providers + |-------------------------------------------------------------------------- + | + | You may specify a list of solution providers (as fully qualified class + | names) that shouldn't be loaded. Ignition will ignore these classes + | and possible solutions provided by them will never be displayed. + | + */ + + 'solution_providers' => [ + // from spatie/ignition + BadMethodCallSolutionProvider::class, + MergeConflictSolutionProvider::class, + UndefinedPropertySolutionProvider::class, + + // from spatie/laravel-ignition + IncorrectValetDbCredentialsSolutionProvider::class, + MissingAppKeySolutionProvider::class, + DefaultDbNameSolutionProvider::class, + TableNotFoundSolutionProvider::class, + MissingImportSolutionProvider::class, + InvalidRouteActionSolutionProvider::class, + ViewNotFoundSolutionProvider::class, + RunningLaravelDuskInProductionProvider::class, + MissingColumnSolutionProvider::class, + UnknownValidationSolutionProvider::class, + MissingMixManifestSolutionProvider::class, + MissingViteManifestSolutionProvider::class, + MissingLivewireComponentSolutionProvider::class, + UndefinedViewVariableSolutionProvider::class, + GenericLaravelExceptionSolutionProvider::class, + ], + + /* + |-------------------------------------------------------------------------- + | Ignored Solution Providers + |-------------------------------------------------------------------------- + | + | You may specify a list of solution providers (as fully qualified class + | names) that shouldn't be loaded. Ignition will ignore these classes + | and possible solutions provided by them will never be displayed. + | + */ + + 'ignored_solution_providers' => [ + + ], + + /* + |-------------------------------------------------------------------------- + | Runnable Solutions + |-------------------------------------------------------------------------- + | + | Some solutions that Ignition displays are runnable and can perform + | various tasks. By default, runnable solutions are only enabled when your + | app has debug mode enabled and the environment is `local` or + | `development`. + | + | Using the `IGNITION_ENABLE_RUNNABLE_SOLUTIONS` environment variable, you + | can override this behaviour and enable or disable runnable solutions + | regardless of the application's environment. + | + | Default: env('IGNITION_ENABLE_RUNNABLE_SOLUTIONS') + | + */ + + 'enable_runnable_solutions' => env('IGNITION_ENABLE_RUNNABLE_SOLUTIONS'), + + /* + |-------------------------------------------------------------------------- + | Remote Path Mapping + |-------------------------------------------------------------------------- + | + | If you are using a remote dev server, like Laravel Homestead, Docker, or + | even a remote VPS, it will be necessary to specify your path mapping. + | + | Leaving one, or both of these, empty or null will not trigger the remote + | URL changes and Ignition will treat your editor links as local files. + | + | "remote_sites_path" is an absolute base path for your sites or projects + | in Homestead, Vagrant, Docker, or another remote development server. + | + | Example value: "/home/vagrant/Code" + | + | "local_sites_path" is an absolute base path for your sites or projects + | on your local computer where your IDE or code editor is running on. + | + | Example values: "/Users//Code", "C:\Users\\Documents\Code" + | + */ + + 'remote_sites_path' => env('IGNITION_REMOTE_SITES_PATH', base_path()), + 'local_sites_path' => env('IGNITION_LOCAL_SITES_PATH', ''), + + /* + |-------------------------------------------------------------------------- + | Housekeeping Endpoint Prefix + |-------------------------------------------------------------------------- + | + | Ignition registers a couple of routes when it is enabled. Below you may + | specify a route prefix that will be used to host all internal links. + | + */ + + 'housekeeping_endpoint_prefix' => '_ignition', + + /* + |-------------------------------------------------------------------------- + | Settings File + |-------------------------------------------------------------------------- + | + | Ignition allows you to save your settings to a specific global file. + | + | If no path is specified, a file with settings will be saved to the user's + | home directory. The directory depends on the OS and its settings but it's + | typically `~/.ignition.json`. In this case, the settings will be applied + | to all of your projects where Ignition is used and the path is not + | specified. + | + | However, if you want to store your settings on a project basis, or you + | want to keep them in another directory, you can specify a path where + | the settings file will be saved. The path should be an existing directory + | with correct write access. + | For example, create a new `ignition` folder in the storage directory and + | use `storage_path('ignition')` as the `settings_file_path`. + | + | Default value: '' (empty string) + */ + + 'settings_file_path' => '', + +]; diff --git a/config/logging.php b/config/logging.php new file mode 100644 index 0000000..6aa77fe --- /dev/null +++ b/config/logging.php @@ -0,0 +1,104 @@ + env('LOG_CHANNEL', 'stack'), + + /* + |-------------------------------------------------------------------------- + | Log Channels + |-------------------------------------------------------------------------- + | + | Here you may configure the log channels for your application. Out of + | the box, Laravel uses the Monolog PHP logging library. This gives + | you a variety of powerful log handlers / formatters to utilize. + | + | Available Drivers: "single", "daily", "slack", "syslog", + | "errorlog", "monolog", + | "custom", "stack" + | + */ + + 'channels' => [ + 'stack' => [ + 'driver' => 'stack', + 'channels' => ['single'], + 'ignore_exceptions' => false, + ], + + 'single' => [ + 'driver' => 'single', + 'path' => storage_path('logs/laravel.log'), + 'level' => env('LOG_LEVEL', 'debug'), + ], + + 'daily' => [ + 'driver' => 'daily', + 'path' => storage_path('logs/laravel.log'), + 'level' => env('LOG_LEVEL', 'debug'), + 'days' => 14, + ], + + 'slack' => [ + 'driver' => 'slack', + 'url' => env('LOG_SLACK_WEBHOOK_URL'), + 'username' => 'Laravel Log', + 'emoji' => ':boom:', + 'level' => env('LOG_LEVEL', 'critical'), + ], + + 'papertrail' => [ + 'driver' => 'monolog', + 'level' => env('LOG_LEVEL', 'debug'), + 'handler' => SyslogUdpHandler::class, + 'handler_with' => [ + 'host' => env('PAPERTRAIL_URL'), + 'port' => env('PAPERTRAIL_PORT'), + ], + ], + + 'stderr' => [ + 'driver' => 'monolog', + 'handler' => StreamHandler::class, + 'formatter' => env('LOG_STDERR_FORMATTER'), + 'with' => [ + 'stream' => 'php://stderr', + ], + ], + + 'syslog' => [ + 'driver' => 'syslog', + 'level' => env('LOG_LEVEL', 'debug'), + ], + + 'errorlog' => [ + 'driver' => 'errorlog', + 'level' => env('LOG_LEVEL', 'debug'), + ], + + 'null' => [ + 'driver' => 'monolog', + 'handler' => NullHandler::class, + ], + + 'emergency' => [ + 'path' => storage_path('logs/laravel.log'), + ], + ], + +]; diff --git a/config/mail.php b/config/mail.php new file mode 100644 index 0000000..f4b2962 --- /dev/null +++ b/config/mail.php @@ -0,0 +1,130 @@ + env('MAIL_MAILER', 'smtp'), + + /* + |-------------------------------------------------------------------------- + | Mailer Configurations + |-------------------------------------------------------------------------- + | + | Here you may configure all of the mailers used by your application plus + | their respective settings. Several examples have been configured for + | you and you are free to add your own as your application requires. + | + | Laravel supports a variety of mail "transport" drivers to be used while + | sending an e-mail. You will specify which one you are using for your + | mailers below. You are free to add additional mailers as required. + | + | Supported: "smtp", "sendmail", "mailgun", "ses", + | "postmark", "log", "array", "failover" + | + */ + + 'mailers' => [ + 'smtp' => [ + 'transport' => 'smtp', + 'host' => env('MAIL_HOST', 'smtp.mailgun.org'), + 'port' => env('MAIL_PORT', 587), + 'encryption' => env('MAIL_ENCRYPTION', 'tls'), + 'username' => env('MAIL_USERNAME'), + 'password' => env('MAIL_PASSWORD'), + 'timeout' => null, + 'verify_peer' => false, + ], + + 'ses' => [ + 'transport' => 'ses', + ], + + 'mailgun' => [ + 'transport' => 'mailgun', + ], + + 'postmark' => [ + 'transport' => 'postmark', + ], + + 'sendmail' => [ + 'transport' => 'sendmail', + 'path' => env('MAIL_SENDMAIL_PATH', '/usr/sbin/sendmail -bs -i'), + ], + + 'log' => [ + 'transport' => 'log', + 'channel' => env('MAIL_LOG_CHANNEL'), + ], + + 'array' => [ + 'transport' => 'array', + ], + + 'failover' => [ + 'transport' => 'failover', + 'mailers' => [ + 'smtp', + 'log', + ], + ], + ], + + /* + |-------------------------------------------------------------------------- + | Global "From" Address + |-------------------------------------------------------------------------- + | + | You may wish for all e-mails sent by your application to be sent from + | the same address. Here, you may specify a name and address that is + | used globally for all e-mails that are sent by your application. + | + */ + + 'from' => [ + 'address' => env('MAIL_FROM_ADDRESS'), + 'name' => env('MAIL_FROM_NAME') + ], + + /* + |-------------------------------------------------------------------------- + | Default Mailer Domain + |-------------------------------------------------------------------------- + | + | This option controls the domain for email message_id that is used to send email + | messages sent by your application. + | + */ + + 'domain' => env('MAIL_DOMAIN', 'webkul.com'), + + /* + |-------------------------------------------------------------------------- + | Markdown Mail Settings + |-------------------------------------------------------------------------- + | + | If you are using Markdown based email rendering, you may configure your + | theme and component paths here, allowing you to customize the design + | of the emails. Or, you may simply stick with the Laravel defaults! + | + */ + + 'markdown' => [ + 'theme' => 'default', + + 'paths' => [ + resource_path('views/vendor/mail'), + ], + ], + +]; \ No newline at end of file diff --git a/config/queue.php b/config/queue.php new file mode 100644 index 0000000..1222296 --- /dev/null +++ b/config/queue.php @@ -0,0 +1,89 @@ + env('QUEUE_CONNECTION', 'sync'), + + /* + |-------------------------------------------------------------------------- + | Queue Connections + |-------------------------------------------------------------------------- + | + | Here you may configure the connection information for each server that + | is used by your application. A default configuration has been added + | for each back-end shipped with Laravel. You are free to add more. + | + | Drivers: "sync", "database", "beanstalkd", "sqs", "redis", "null" + | + */ + + 'connections' => [ + + 'sync' => [ + 'driver' => 'sync', + ], + + 'database' => [ + 'driver' => 'database', + 'table' => 'jobs', + 'queue' => 'default', + 'retry_after' => 90, + ], + + 'beanstalkd' => [ + 'driver' => 'beanstalkd', + 'host' => 'localhost', + 'queue' => 'default', + 'retry_after' => 90, + 'block_for' => 0, + ], + + 'sqs' => [ + 'driver' => 'sqs', + 'key' => env('AWS_ACCESS_KEY_ID'), + 'secret' => env('AWS_SECRET_ACCESS_KEY'), + 'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'), + 'queue' => env('SQS_QUEUE', 'your-queue-name'), + 'suffix' => env('SQS_SUFFIX'), + 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), + ], + + 'redis' => [ + 'driver' => 'redis', + 'connection' => 'default', + 'queue' => env('REDIS_QUEUE', 'default'), + 'retry_after' => 90, + 'block_for' => null, + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Failed Queue Jobs + |-------------------------------------------------------------------------- + | + | These options configure the behavior of failed queue job logging so you + | can control which database and table are used to store the jobs that + | have failed. You may change them to any database / table you wish. + | + */ + + 'failed' => [ + 'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'), + 'database' => env('DB_CONNECTION', 'mysql'), + 'table' => 'failed_jobs', + ], + +]; diff --git a/config/repository.php b/config/repository.php new file mode 100644 index 0000000..fe63a7b --- /dev/null +++ b/config/repository.php @@ -0,0 +1,246 @@ + [ + 'limit' => 15 + ], + + /* + |-------------------------------------------------------------------------- + | Fractal Presenter Config + |-------------------------------------------------------------------------- + | + + Available serializers: + ArraySerializer + DataArraySerializer + JsonApiSerializer + + */ + 'fractal' => [ + 'params' => [ + 'include' => 'include' + ], + 'serializer' => League\Fractal\Serializer\DataArraySerializer::class + ], + + /* + |-------------------------------------------------------------------------- + | Cache Config + |-------------------------------------------------------------------------- + | + */ + 'cache' => [ + /* + |-------------------------------------------------------------------------- + | Cache Status + |-------------------------------------------------------------------------- + | + | Enable or disable cache + | + */ + 'enabled' => false, + + /* + |-------------------------------------------------------------------------- + | Cache Minutes + |-------------------------------------------------------------------------- + | + | Time of expiration cache + | + */ + 'minutes' => 30, + + /* + |-------------------------------------------------------------------------- + | Cache Repository + |-------------------------------------------------------------------------- + | + | Instance of Illuminate\Contracts\Cache\Repository + | + */ + 'repository' => 'cache', + + /* + |-------------------------------------------------------------------------- + | Cache Clean Listener + |-------------------------------------------------------------------------- + | + | + | + */ + 'clean' => [ + + /* + |-------------------------------------------------------------------------- + | Enable clear cache on repository changes + |-------------------------------------------------------------------------- + | + */ + 'enabled' => true, + + /* + |-------------------------------------------------------------------------- + | Actions in Repository + |-------------------------------------------------------------------------- + | + | create : Clear Cache on create Entry in repository + | update : Clear Cache on update Entry in repository + | delete : Clear Cache on delete Entry in repository + | + */ + 'on' => [ + 'create' => true, + 'update' => true, + 'delete' => true, + ] + ], + + 'params' => [ + /* + |-------------------------------------------------------------------------- + | Skip Cache Params + |-------------------------------------------------------------------------- + | + | + | Ex: http://prettus.local/?search=lorem&skipCache=true + | + */ + 'skipCache' => 'skipCache' + ], + + /* + |-------------------------------------------------------------------------- + | Methods Allowed + |-------------------------------------------------------------------------- + | + | methods cacheable : all, paginate, find, findByField, findWhere, getByCriteria + | + | Ex: + | + | 'only' =>['all','paginate'], + | + | or + | + | 'except' =>['find'], + */ + 'allowed' => [ + 'only' => null, + 'except' => null + ] + ], + + /* + |-------------------------------------------------------------------------- + | Criteria Config + |-------------------------------------------------------------------------- + | + | Settings of request parameters names that will be used by Criteria + | + */ + 'criteria' => [ + /* + |-------------------------------------------------------------------------- + | Accepted Conditions + |-------------------------------------------------------------------------- + | + | Conditions accepted in consultations where the Criteria + | + | Ex: + | + | 'acceptedConditions'=>['=','like'] + | + | $query->where('foo','=','bar') + | $query->where('foo','like','bar') + | + */ + 'acceptedConditions' => [ + '=', + 'like', + 'in' + ], + /* + |-------------------------------------------------------------------------- + | Request Params + |-------------------------------------------------------------------------- + | + | Request parameters that will be used to filter the query in the repository + | + | Params : + | + | - search : Searched value + | Ex: http://prettus.local/?search=lorem + | + | - searchFields : Fields in which research should be carried out + | Ex: + | http://prettus.local/?search=lorem&searchFields=name;email + | http://prettus.local/?search=lorem&searchFields=name:like;email + | http://prettus.local/?search=lorem&searchFields=name:like + | + | - filter : Fields that must be returned to the response object + | Ex: + | http://prettus.local/?search=lorem&filter=id,name + | + | - orderBy : Order By + | Ex: + | http://prettus.local/?search=lorem&orderBy=id + | + | - sortedBy : Sort + | Ex: + | http://prettus.local/?search=lorem&orderBy=id&sortedBy=asc + | http://prettus.local/?search=lorem&orderBy=id&sortedBy=desc + | + | - searchJoin: Specifies the search method (AND / OR), by default the + | application searches each parameter with OR + | EX: + | http://prettus.local/?search=lorem&searchJoin=and + | http://prettus.local/?search=lorem&searchJoin=or + | + */ + 'params' => [ + 'search' => 'search', + 'searchFields' => 'searchFields', + 'filter' => 'filter', + 'orderBy' => 'orderBy', + 'sortedBy' => 'sortedBy', + 'with' => 'with', + 'searchJoin' => 'searchJoin', + 'withCount' => 'withCount' + ] + ], + /* + |-------------------------------------------------------------------------- + | Generator Config + |-------------------------------------------------------------------------- + | + */ + 'generator' => [ + 'basePath' => app()->path(), + 'rootNamespace' => 'App\\', + 'stubsOverridePath' => app()->path(), + 'paths' => [ + 'models' => 'Entities', + 'repositories' => 'Repositories', + 'interfaces' => 'Repositories', + 'transformers' => 'Transformers', + 'presenters' => 'Presenters', + 'validators' => 'Validators', + 'controllers' => 'Http/Controllers', + 'provider' => 'RepositoryServiceProvider', + 'criteria' => 'Criteria' + ] + ] +]; diff --git a/config/sanctum.php b/config/sanctum.php new file mode 100644 index 0000000..6b98c27 --- /dev/null +++ b/config/sanctum.php @@ -0,0 +1,65 @@ + explode(',', env('SANCTUM_STATEFUL_DOMAINS', sprintf( + '%s%s', + 'localhost,localhost:3000,127.0.0.1,127.0.0.1:8000,::1', + env('APP_URL') ? ',' . parse_url(env('APP_URL'), PHP_URL_HOST) : '' + ))), + + /* + |-------------------------------------------------------------------------- + | Sanctum Guards + |-------------------------------------------------------------------------- + | + | This array contains the authentication guards that will be checked when + | Sanctum is trying to authenticate a request. If none of these guards + | are able to authenticate the request, Sanctum will use the bearer + | token that's present on an incoming request for authentication. + | + */ + + 'guard' => ['user'], + + /* + |-------------------------------------------------------------------------- + | Expiration Minutes + |-------------------------------------------------------------------------- + | + | This value controls the number of minutes until an issued token will be + | considered expired. If this value is null, personal access tokens do + | not expire. This won't tweak the lifetime of first-party sessions. + | + */ + + 'expiration' => null, + + /* + |-------------------------------------------------------------------------- + | Sanctum Middleware + |-------------------------------------------------------------------------- + | + | When authenticating your first-party SPA with Sanctum you may need to + | customize some of the middleware Sanctum uses while processing the + | request. You may change the middleware listed below as required. + | + */ + + 'middleware' => [ + 'verify_csrf_token' => App\Http\Middleware\VerifyCsrfToken::class, + 'encrypt_cookies' => App\Http\Middleware\EncryptCookies::class, + ], + +]; diff --git a/config/services.php b/config/services.php new file mode 100644 index 0000000..2a1d616 --- /dev/null +++ b/config/services.php @@ -0,0 +1,33 @@ + [ + 'domain' => env('MAILGUN_DOMAIN'), + 'secret' => env('MAILGUN_SECRET'), + 'endpoint' => env('MAILGUN_ENDPOINT', 'api.mailgun.net'), + ], + + 'postmark' => [ + 'token' => env('POSTMARK_TOKEN'), + ], + + 'ses' => [ + 'key' => env('AWS_ACCESS_KEY_ID'), + 'secret' => env('AWS_SECRET_ACCESS_KEY'), + 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), + ], + +]; diff --git a/config/session.php b/config/session.php new file mode 100644 index 0000000..c0e798b --- /dev/null +++ b/config/session.php @@ -0,0 +1,201 @@ + env('SESSION_DRIVER', 'file'), + + /* + |-------------------------------------------------------------------------- + | Session Lifetime + |-------------------------------------------------------------------------- + | + | Here you may specify the number of minutes that you wish the session + | to be allowed to remain idle before it expires. If you want them + | to immediately expire on the browser closing, set that option. + | + */ + + 'lifetime' => env('SESSION_LIFETIME', 120), + + 'expire_on_close' => false, + + /* + |-------------------------------------------------------------------------- + | Session Encryption + |-------------------------------------------------------------------------- + | + | This option allows you to easily specify that all of your session data + | should be encrypted before it is stored. All encryption will be run + | automatically by Laravel and you can use the Session like normal. + | + */ + + 'encrypt' => false, + + /* + |-------------------------------------------------------------------------- + | Session File Location + |-------------------------------------------------------------------------- + | + | When using the native session driver, we need a location where session + | files may be stored. A default has been set for you but a different + | location may be specified. This is only needed for file sessions. + | + */ + + 'files' => storage_path('framework/sessions'), + + /* + |-------------------------------------------------------------------------- + | Session Database Connection + |-------------------------------------------------------------------------- + | + | When using the "database" or "redis" session drivers, you may specify a + | connection that should be used to manage these sessions. This should + | correspond to a connection in your database configuration options. + | + */ + + 'connection' => env('SESSION_CONNECTION', null), + + /* + |-------------------------------------------------------------------------- + | Session Database Table + |-------------------------------------------------------------------------- + | + | When using the "database" session driver, you may specify the table we + | should use to manage the sessions. Of course, a sensible default is + | provided for you; however, you are free to change this as needed. + | + */ + + 'table' => 'sessions', + + /* + |-------------------------------------------------------------------------- + | Session Cache Store + |-------------------------------------------------------------------------- + | + | While using one of the framework's cache driven session backends you may + | list a cache store that should be used for these sessions. This value + | must match with one of the application's configured cache "stores". + | + | Affects: "apc", "dynamodb", "memcached", "redis" + | + */ + + 'store' => env('SESSION_STORE', null), + + /* + |-------------------------------------------------------------------------- + | Session Sweeping Lottery + |-------------------------------------------------------------------------- + | + | Some session drivers must manually sweep their storage location to get + | rid of old sessions from storage. Here are the chances that it will + | happen on a given request. By default, the odds are 2 out of 100. + | + */ + + 'lottery' => [2, 100], + + /* + |-------------------------------------------------------------------------- + | Session Cookie Name + |-------------------------------------------------------------------------- + | + | Here you may change the name of the cookie used to identify a session + | instance by ID. The name specified here will get used every time a + | new session cookie is created by the framework for every driver. + | + */ + + 'cookie' => env( + 'SESSION_COOKIE', + Str::slug(env('APP_NAME', 'laravel'), '_') . '_session' + ), + + /* + |-------------------------------------------------------------------------- + | Session Cookie Path + |-------------------------------------------------------------------------- + | + | The session cookie path determines the path for which the cookie will + | be regarded as available. Typically, this will be the root path of + | your application but you are free to change this when necessary. + | + */ + + 'path' => '/', + + /* + |-------------------------------------------------------------------------- + | Session Cookie Domain + |-------------------------------------------------------------------------- + | + | Here you may change the domain of the cookie used to identify a session + | in your application. This will determine which domains the cookie is + | available to in your application. A sensible default has been set. + | + */ + + 'domain' => env('SESSION_DOMAIN', null), + + /* + |-------------------------------------------------------------------------- + | HTTPS Only Cookies + |-------------------------------------------------------------------------- + | + | By setting this option to true, session cookies will only be sent back + | to the server if the browser has a HTTPS connection. This will keep + | the cookie from being sent to you if it can not be done securely. + | + */ + + 'secure' => env('SESSION_SECURE_COOKIE'), + + /* + |-------------------------------------------------------------------------- + | HTTP Access Only + |-------------------------------------------------------------------------- + | + | Setting this value to true will prevent JavaScript from accessing the + | value of the cookie and the cookie will only be accessible through + | the HTTP protocol. You are free to modify this option if needed. + | + */ + + 'http_only' => true, + + /* + |-------------------------------------------------------------------------- + | Same-Site Cookies + |-------------------------------------------------------------------------- + | + | This option determines how your cookies behave when cross-site requests + | take place, and can be used to mitigate CSRF attacks. By default, we + | will set this value to "lax" since this is a secure default value. + | + | Supported: "lax", "strict", "none", null + | + */ + + 'same_site' => 'lax', + +]; diff --git a/config/tinker.php b/config/tinker.php new file mode 100644 index 0000000..c187942 --- /dev/null +++ b/config/tinker.php @@ -0,0 +1,50 @@ + [ + // App\Console\Commands\ExampleCommand::class, + ], + + /* + |-------------------------------------------------------------------------- + | Auto Aliased Classes + |-------------------------------------------------------------------------- + | + | Tinker will not automatically alias classes in your vendor namespaces + | but you may explicitly allow a subset of classes to get aliased by + | adding the names of each of those classes to the following list. + | + */ + + 'alias' => [ + // + ], + + /* + |-------------------------------------------------------------------------- + | Classes That Should Not Be Aliased + |-------------------------------------------------------------------------- + | + | Typically, Tinker automatically aliases classes as you require them in + | Tinker. However, you may wish to never alias certain classes, which + | you may accomplish by listing the classes in the following array. + | + */ + + 'dont_alias' => [ + 'App\Nova', + ], + +]; diff --git a/config/view.php b/config/view.php new file mode 100644 index 0000000..22b8a18 --- /dev/null +++ b/config/view.php @@ -0,0 +1,36 @@ + [ + resource_path('views'), + ], + + /* + |-------------------------------------------------------------------------- + | Compiled View Path + |-------------------------------------------------------------------------- + | + | This option determines where all the compiled Blade templates will be + | stored for your application. Typically, this is within the storage + | directory. However, as usual, you are free to change this value. + | + */ + + 'compiled' => env( + 'VIEW_COMPILED_PATH', + realpath(storage_path('framework/views')) + ), + +]; diff --git a/database/.gitignore b/database/.gitignore new file mode 100644 index 0000000..97fc976 --- /dev/null +++ b/database/.gitignore @@ -0,0 +1,2 @@ +*.sqlite +*.sqlite-journal diff --git a/database/factories/UserFactory.php b/database/factories/UserFactory.php new file mode 100644 index 0000000..3510ed6 --- /dev/null +++ b/database/factories/UserFactory.php @@ -0,0 +1,47 @@ + $this->faker->name, + 'email' => $this->faker->unique()->safeEmail, + 'email_verified_at' => now(), + 'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password + 'remember_token' => Str::random(10), + ]; + } + + /** + * Indicate that the model's email address should be unverified. + * + * @return \Illuminate\Database\Eloquent\Factories\Factory + */ + public function unverified() + { + return $this->state(function (array $attributes) { + return [ + 'email_verified_at' => null, + ]; + }); + } +} diff --git a/database/migrations/2019_08_19_000000_create_failed_jobs_table.php b/database/migrations/2019_08_19_000000_create_failed_jobs_table.php new file mode 100644 index 0000000..6aa6d74 --- /dev/null +++ b/database/migrations/2019_08_19_000000_create_failed_jobs_table.php @@ -0,0 +1,36 @@ +id(); + $table->string('uuid')->unique(); + $table->text('connection'); + $table->text('queue'); + $table->longText('payload'); + $table->longText('exception'); + $table->timestamp('failed_at')->useCurrent(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('failed_jobs'); + } +} diff --git a/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php new file mode 100644 index 0000000..3ce0002 --- /dev/null +++ b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php @@ -0,0 +1,36 @@ +bigIncrements('id'); + $table->morphs('tokenable'); + $table->string('name'); + $table->string('token', 64)->unique(); + $table->text('abilities')->nullable(); + $table->timestamp('last_used_at')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('personal_access_tokens'); + } +} diff --git a/database/migrations/2023_12_02_000001_create_personal_access_tokens_expires_at_column.php b/database/migrations/2023_12_02_000001_create_personal_access_tokens_expires_at_column.php new file mode 100644 index 0000000..2291285 --- /dev/null +++ b/database/migrations/2023_12_02_000001_create_personal_access_tokens_expires_at_column.php @@ -0,0 +1,35 @@ + sanctum 3 + */ + Schema::table('personal_access_tokens', function (Blueprint $table) { + $table->timestamp('expires_at')->nullable()->after('last_used_at'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('personal_access_tokens', function (Blueprint $table) { + $table->dropColumn('expires_at'); + }); + } +} diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php new file mode 100644 index 0000000..22f0087 --- /dev/null +++ b/database/seeders/DatabaseSeeder.php @@ -0,0 +1,23 @@ +call(AdminDatabaseSeeder::class); + $this->call(CoreDatabaseSeeder::class); + $this->call(UserDatabaseSeeder::class); + } +} diff --git a/docker/7.4/Dockerfile b/docker/7.4/Dockerfile new file mode 100644 index 0000000..2184e49 --- /dev/null +++ b/docker/7.4/Dockerfile @@ -0,0 +1,62 @@ +FROM ubuntu:20.04 + +LABEL maintainer="Taylor Otwell" + +ARG WWWGROUP +ARG NODE_VERSION=16 +ARG POSTGRES_VERSION=13 + +WORKDIR /var/www/html + +ENV DEBIAN_FRONTEND noninteractive +ENV TZ=UTC + +RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone + +RUN apt-get update \ + && apt-get install -y gnupg gosu curl ca-certificates zip unzip git supervisor sqlite3 libcap2-bin libpng-dev python2 \ + && mkdir -p ~/.gnupg \ + && chmod 600 ~/.gnupg \ + && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ + && echo "keyserver hkp://keyserver.ubuntu.com:80" >> ~/.gnupg/dirmngr.conf \ + && gpg --recv-key 0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c \ + && gpg --export 0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c > /usr/share/keyrings/ppa_ondrej_php.gpg \ + && echo "deb [signed-by=/usr/share/keyrings/ppa_ondrej_php.gpg] https://ppa.launchpadcontent.net/ondrej/php/ubuntu focal main" > /etc/apt/sources.list.d/ppa_ondrej_php.list \ + && apt-get update \ + && apt-get install -y php7.4-cli php7.4-dev \ + php7.4-pgsql php7.4-sqlite3 php7.4-gd \ + php7.4-curl php7.4-memcached \ + php7.4-imap php7.4-mysql php7.4-mbstring \ + php7.4-xml php7.4-zip php7.4-bcmath php7.4-soap \ + php7.4-intl php7.4-readline php7.4-pcov \ + php7.4-msgpack php7.4-igbinary php7.4-ldap \ + php7.4-redis php7.4-xdebug \ + && php -r "readfile('https://getcomposer.org/installer');" | php -- --install-dir=/usr/bin/ --filename=composer \ + && curl -sLS https://deb.nodesource.com/setup_$NODE_VERSION.x | bash - \ + && apt-get install -y nodejs \ + && npm install -g npm \ + && curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | tee /usr/share/keyrings/yarnkey.gpg >/dev/null \ + && echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian/ stable main" > /etc/apt/sources.list.d/yarn.list \ + && curl -sS https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | tee /usr/share/keyrings/pgdg.gpg >/dev/null \ + && echo "deb [signed-by=/usr/share/keyrings/pgdg.gpg] http://apt.postgresql.org/pub/repos/apt focal-pgdg main" > /etc/apt/sources.list.d/pgdg.list \ + && apt-get update \ + && apt-get install -y yarn \ + && apt-get install -y mysql-client \ + && apt-get install -y postgresql-client-$POSTGRES_VERSION \ + && apt-get -y autoremove \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + +RUN setcap "cap_net_bind_service=+ep" /usr/bin/php7.4 + +RUN groupadd --force -g $WWWGROUP sail +RUN useradd -ms /bin/bash --no-user-group -g $WWWGROUP -u 1337 sail + +COPY start-container /usr/local/bin/start-container +COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf +COPY php.ini /etc/php/7.4/cli/conf.d/99-sail.ini +RUN chmod +x /usr/local/bin/start-container + +EXPOSE 8000 + +ENTRYPOINT ["start-container"] diff --git a/docker/7.4/php.ini b/docker/7.4/php.ini new file mode 100644 index 0000000..66d04d5 --- /dev/null +++ b/docker/7.4/php.ini @@ -0,0 +1,4 @@ +[PHP] +post_max_size = 100M +upload_max_filesize = 100M +variables_order = EGPCS diff --git a/docker/7.4/start-container b/docker/7.4/start-container new file mode 100644 index 0000000..b864399 --- /dev/null +++ b/docker/7.4/start-container @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +if [ ! -z "$WWWUSER" ]; then + usermod -u $WWWUSER sail +fi + +if [ ! -d /.composer ]; then + mkdir /.composer +fi + +chmod -R ugo+rw /.composer + +if [ $# -gt 0 ]; then + exec gosu $WWWUSER "$@" +else + exec /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord.conf +fi diff --git a/docker/7.4/supervisord.conf b/docker/7.4/supervisord.conf new file mode 100644 index 0000000..9d28479 --- /dev/null +++ b/docker/7.4/supervisord.conf @@ -0,0 +1,14 @@ +[supervisord] +nodaemon=true +user=root +logfile=/var/log/supervisor/supervisord.log +pidfile=/var/run/supervisord.pid + +[program:php] +command=/usr/bin/php -d variables_order=EGPCS /var/www/html/artisan serve --host=0.0.0.0 --port=80 +user=sail +environment=LARAVEL_SAIL="1" +stdout_logfile=/dev/stdout +stdout_logfile_maxbytes=0 +stderr_logfile=/dev/stderr +stderr_logfile_maxbytes=0 diff --git a/docker/8.0/Dockerfile b/docker/8.0/Dockerfile new file mode 100644 index 0000000..15456ca --- /dev/null +++ b/docker/8.0/Dockerfile @@ -0,0 +1,64 @@ +FROM ubuntu:20.04 + +LABEL maintainer="Taylor Otwell" + +ARG WWWGROUP +ARG NODE_VERSION=16 +ARG POSTGRES_VERSION=13 + +WORKDIR /var/www/html + +ENV DEBIAN_FRONTEND noninteractive +ENV TZ=UTC + +RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone + +RUN apt-get update \ + && apt-get install -y gnupg gosu curl ca-certificates zip unzip git supervisor sqlite3 libcap2-bin libpng-dev python2 \ + && mkdir -p ~/.gnupg \ + && chmod 600 ~/.gnupg \ + && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ + && echo "keyserver hkp://keyserver.ubuntu.com:80" >> ~/.gnupg/dirmngr.conf \ + && gpg --recv-key 0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c \ + && gpg --export 0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c > /usr/share/keyrings/ppa_ondrej_php.gpg \ + && echo "deb [signed-by=/usr/share/keyrings/ppa_ondrej_php.gpg] https://ppa.launchpadcontent.net/ondrej/php/ubuntu focal main" > /etc/apt/sources.list.d/ppa_ondrej_php.list \ + && apt-get update \ + && apt-get install -y php8.0-cli php8.0-dev \ + php8.0-pgsql php8.0-sqlite3 php8.0-gd \ + php8.0-curl php8.0-memcached \ + php8.0-imap php8.0-mysql php8.0-mbstring \ + php8.0-xml php8.0-zip php8.0-bcmath php8.0-soap \ + php8.0-intl php8.0-readline php8.0-pcov \ + php8.0-msgpack php8.0-igbinary php8.0-ldap \ + php8.0-redis php8.0-swoole php8.0-xdebug \ + && php -r "readfile('https://getcomposer.org/installer');" | php -- --install-dir=/usr/bin/ --filename=composer \ + && curl -sLS https://deb.nodesource.com/setup_$NODE_VERSION.x | bash - \ + && apt-get install -y nodejs \ + && npm install -g npm \ + && curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | tee /usr/share/keyrings/yarnkey.gpg >/dev/null \ + && echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian/ stable main" > /etc/apt/sources.list.d/yarn.list \ + && curl -sS https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | tee /usr/share/keyrings/pgdg.gpg >/dev/null \ + && echo "deb [signed-by=/usr/share/keyrings/pgdg.gpg] http://apt.postgresql.org/pub/repos/apt focal-pgdg main" > /etc/apt/sources.list.d/pgdg.list \ + && apt-get update \ + && apt-get install -y yarn \ + && apt-get install -y mysql-client \ + && apt-get install -y postgresql-client-$POSTGRES_VERSION \ + && apt-get -y autoremove \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + +RUN update-alternatives --set php /usr/bin/php8.0 + +RUN setcap "cap_net_bind_service=+ep" /usr/bin/php8.0 + +RUN groupadd --force -g $WWWGROUP sail +RUN useradd -ms /bin/bash --no-user-group -g $WWWGROUP -u 1337 sail + +COPY start-container /usr/local/bin/start-container +COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf +COPY php.ini /etc/php/8.0/cli/conf.d/99-sail.ini +RUN chmod +x /usr/local/bin/start-container + +EXPOSE 8000 + +ENTRYPOINT ["start-container"] diff --git a/docker/8.0/php.ini b/docker/8.0/php.ini new file mode 100644 index 0000000..66d04d5 --- /dev/null +++ b/docker/8.0/php.ini @@ -0,0 +1,4 @@ +[PHP] +post_max_size = 100M +upload_max_filesize = 100M +variables_order = EGPCS diff --git a/docker/8.0/start-container b/docker/8.0/start-container new file mode 100644 index 0000000..b864399 --- /dev/null +++ b/docker/8.0/start-container @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +if [ ! -z "$WWWUSER" ]; then + usermod -u $WWWUSER sail +fi + +if [ ! -d /.composer ]; then + mkdir /.composer +fi + +chmod -R ugo+rw /.composer + +if [ $# -gt 0 ]; then + exec gosu $WWWUSER "$@" +else + exec /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord.conf +fi diff --git a/docker/8.0/supervisord.conf b/docker/8.0/supervisord.conf new file mode 100644 index 0000000..9d28479 --- /dev/null +++ b/docker/8.0/supervisord.conf @@ -0,0 +1,14 @@ +[supervisord] +nodaemon=true +user=root +logfile=/var/log/supervisor/supervisord.log +pidfile=/var/run/supervisord.pid + +[program:php] +command=/usr/bin/php -d variables_order=EGPCS /var/www/html/artisan serve --host=0.0.0.0 --port=80 +user=sail +environment=LARAVEL_SAIL="1" +stdout_logfile=/dev/stdout +stdout_logfile_maxbytes=0 +stderr_logfile=/dev/stderr +stderr_logfile_maxbytes=0 diff --git a/docker/8.1/Dockerfile b/docker/8.1/Dockerfile new file mode 100644 index 0000000..0277709 --- /dev/null +++ b/docker/8.1/Dockerfile @@ -0,0 +1,63 @@ +FROM ubuntu:22.04 + +LABEL maintainer="Taylor Otwell" + +ARG WWWGROUP +ARG NODE_VERSION=16 +ARG POSTGRES_VERSION=14 + +WORKDIR /var/www/html + +ENV DEBIAN_FRONTEND noninteractive +ENV TZ=UTC + +RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone + +RUN apt-get update \ + && apt-get install -y gnupg gosu curl ca-certificates zip unzip git supervisor sqlite3 libcap2-bin libpng-dev python2 \ + && mkdir -p ~/.gnupg \ + && chmod 600 ~/.gnupg \ + && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ + && echo "keyserver hkp://keyserver.ubuntu.com:80" >> ~/.gnupg/dirmngr.conf \ + && gpg --recv-key 0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c \ + && gpg --export 0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c > /usr/share/keyrings/ppa_ondrej_php.gpg \ + && echo "deb [signed-by=/usr/share/keyrings/ppa_ondrej_php.gpg] https://ppa.launchpadcontent.net/ondrej/php/ubuntu jammy main" > /etc/apt/sources.list.d/ppa_ondrej_php.list \ + && apt-get update \ + && apt-get install -y php8.1-cli php8.1-dev \ + php8.1-pgsql php8.1-sqlite3 php8.1-gd \ + php8.1-curl \ + php8.1-imap php8.1-mysql php8.1-mbstring \ + php8.1-xml php8.1-zip php8.1-bcmath php8.1-soap \ + php8.1-intl php8.1-readline \ + php8.1-ldap \ + php8.1-msgpack php8.1-igbinary php8.1-redis php8.1-swoole \ + php8.1-memcached php8.1-pcov php8.1-xdebug \ + && php -r "readfile('https://getcomposer.org/installer');" | php -- --install-dir=/usr/bin/ --filename=composer \ + && curl -sLS https://deb.nodesource.com/setup_$NODE_VERSION.x | bash - \ + && apt-get install -y nodejs \ + && npm install -g npm \ + && curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | tee /usr/share/keyrings/yarn.gpg >/dev/null \ + && echo "deb [signed-by=/usr/share/keyrings/yarn.gpg] https://dl.yarnpkg.com/debian/ stable main" > /etc/apt/sources.list.d/yarn.list \ + && curl -sS https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | tee /usr/share/keyrings/pgdg.gpg >/dev/null \ + && echo "deb [signed-by=/usr/share/keyrings/pgdg.gpg] http://apt.postgresql.org/pub/repos/apt jammy-pgdg main" > /etc/apt/sources.list.d/pgdg.list \ + && apt-get update \ + && apt-get install -y yarn \ + && apt-get install -y mysql-client \ + && apt-get install -y postgresql-client-$POSTGRES_VERSION \ + && apt-get -y autoremove \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + +RUN setcap "cap_net_bind_service=+ep" /usr/bin/php8.1 + +RUN groupadd --force -g $WWWGROUP sail +RUN useradd -ms /bin/bash --no-user-group -g $WWWGROUP -u 1337 sail + +COPY start-container /usr/local/bin/start-container +COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf +COPY php.ini /etc/php/8.1/cli/conf.d/99-sail.ini +RUN chmod +x /usr/local/bin/start-container + +EXPOSE 8000 + +ENTRYPOINT ["start-container"] diff --git a/docker/8.1/php.ini b/docker/8.1/php.ini new file mode 100644 index 0000000..66d04d5 --- /dev/null +++ b/docker/8.1/php.ini @@ -0,0 +1,4 @@ +[PHP] +post_max_size = 100M +upload_max_filesize = 100M +variables_order = EGPCS diff --git a/docker/8.1/start-container b/docker/8.1/start-container new file mode 100644 index 0000000..b864399 --- /dev/null +++ b/docker/8.1/start-container @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +if [ ! -z "$WWWUSER" ]; then + usermod -u $WWWUSER sail +fi + +if [ ! -d /.composer ]; then + mkdir /.composer +fi + +chmod -R ugo+rw /.composer + +if [ $# -gt 0 ]; then + exec gosu $WWWUSER "$@" +else + exec /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord.conf +fi diff --git a/docker/8.1/supervisord.conf b/docker/8.1/supervisord.conf new file mode 100644 index 0000000..9d28479 --- /dev/null +++ b/docker/8.1/supervisord.conf @@ -0,0 +1,14 @@ +[supervisord] +nodaemon=true +user=root +logfile=/var/log/supervisor/supervisord.log +pidfile=/var/run/supervisord.pid + +[program:php] +command=/usr/bin/php -d variables_order=EGPCS /var/www/html/artisan serve --host=0.0.0.0 --port=80 +user=sail +environment=LARAVEL_SAIL="1" +stdout_logfile=/dev/stdout +stdout_logfile_maxbytes=0 +stderr_logfile=/dev/stderr +stderr_logfile_maxbytes=0 diff --git a/docker/8.2/Dockerfile b/docker/8.2/Dockerfile new file mode 100644 index 0000000..e177eb8 --- /dev/null +++ b/docker/8.2/Dockerfile @@ -0,0 +1,63 @@ +FROM ubuntu:22.04 + +LABEL maintainer="Taylor Otwell" + +ARG WWWGROUP +ARG NODE_VERSION=16 +ARG POSTGRES_VERSION=14 + +WORKDIR /var/www/html + +ENV DEBIAN_FRONTEND noninteractive +ENV TZ=UTC + +RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone + +RUN apt-get update \ + && apt-get install -y gnupg gosu curl ca-certificates zip unzip git supervisor sqlite3 libcap2-bin libpng-dev python2 \ + && mkdir -p ~/.gnupg \ + && chmod 600 ~/.gnupg \ + && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ + && echo "keyserver hkp://keyserver.ubuntu.com:80" >> ~/.gnupg/dirmngr.conf \ + && gpg --recv-key 0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c \ + && gpg --export 0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c > /usr/share/keyrings/ppa_ondrej_php.gpg \ + && echo "deb [signed-by=/usr/share/keyrings/ppa_ondrej_php.gpg] https://ppa.launchpadcontent.net/ondrej/php/ubuntu jammy main" > /etc/apt/sources.list.d/ppa_ondrej_php.list \ + && apt-get update \ + && apt-get install -y php8.2-cli php8.2-dev \ + php8.2-pgsql php8.2-sqlite3 php8.2-gd \ + php8.2-curl \ + php8.2-imap php8.2-mysql php8.2-mbstring \ + php8.2-xml php8.2-zip php8.2-bcmath php8.2-soap \ + php8.2-intl php8.2-readline \ + php8.2-ldap \ + # php8.2-msgpack php8.2-igbinary php8.2-redis php8.2-swoole \ + # php8.2-memcached php8.2-pcov php8.2-xdebug \ + && php -r "readfile('https://getcomposer.org/installer');" | php -- --install-dir=/usr/bin/ --filename=composer \ + && curl -sLS https://deb.nodesource.com/setup_$NODE_VERSION.x | bash - \ + && apt-get install -y nodejs \ + && npm install -g npm \ + && curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | tee /usr/share/keyrings/yarn.gpg >/dev/null \ + && echo "deb [signed-by=/usr/share/keyrings/yarn.gpg] https://dl.yarnpkg.com/debian/ stable main" > /etc/apt/sources.list.d/yarn.list \ + && curl -sS https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | tee /usr/share/keyrings/pgdg.gpg >/dev/null \ + && echo "deb [signed-by=/usr/share/keyrings/pgdg.gpg] http://apt.postgresql.org/pub/repos/apt jammy-pgdg main" > /etc/apt/sources.list.d/pgdg.list \ + && apt-get update \ + && apt-get install -y yarn \ + && apt-get install -y mysql-client \ + && apt-get install -y postgresql-client-$POSTGRES_VERSION \ + && apt-get -y autoremove \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + +RUN setcap "cap_net_bind_service=+ep" /usr/bin/php8.2 + +RUN groupadd --force -g $WWWGROUP sail +RUN useradd -ms /bin/bash --no-user-group -g $WWWGROUP -u 1337 sail + +COPY start-container /usr/local/bin/start-container +COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf +COPY php.ini /etc/php/8.2/cli/conf.d/99-sail.ini +RUN chmod +x /usr/local/bin/start-container + +EXPOSE 8000 + +ENTRYPOINT ["start-container"] diff --git a/docker/8.2/php.ini b/docker/8.2/php.ini new file mode 100644 index 0000000..66d04d5 --- /dev/null +++ b/docker/8.2/php.ini @@ -0,0 +1,4 @@ +[PHP] +post_max_size = 100M +upload_max_filesize = 100M +variables_order = EGPCS diff --git a/docker/8.2/start-container b/docker/8.2/start-container new file mode 100644 index 0000000..b864399 --- /dev/null +++ b/docker/8.2/start-container @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +if [ ! -z "$WWWUSER" ]; then + usermod -u $WWWUSER sail +fi + +if [ ! -d /.composer ]; then + mkdir /.composer +fi + +chmod -R ugo+rw /.composer + +if [ $# -gt 0 ]; then + exec gosu $WWWUSER "$@" +else + exec /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord.conf +fi diff --git a/docker/8.2/supervisord.conf b/docker/8.2/supervisord.conf new file mode 100644 index 0000000..9d28479 --- /dev/null +++ b/docker/8.2/supervisord.conf @@ -0,0 +1,14 @@ +[supervisord] +nodaemon=true +user=root +logfile=/var/log/supervisor/supervisord.log +pidfile=/var/run/supervisord.pid + +[program:php] +command=/usr/bin/php -d variables_order=EGPCS /var/www/html/artisan serve --host=0.0.0.0 --port=80 +user=sail +environment=LARAVEL_SAIL="1" +stdout_logfile=/dev/stdout +stdout_logfile_maxbytes=0 +stderr_logfile=/dev/stderr +stderr_logfile_maxbytes=0 diff --git a/lang/en/auth.php b/lang/en/auth.php new file mode 100644 index 0000000..6598e2c --- /dev/null +++ b/lang/en/auth.php @@ -0,0 +1,20 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + +]; diff --git a/lang/en/pagination.php b/lang/en/pagination.php new file mode 100644 index 0000000..d481411 --- /dev/null +++ b/lang/en/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/en/passwords.php b/lang/en/passwords.php new file mode 100644 index 0000000..2345a56 --- /dev/null +++ b/lang/en/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/en/validation.php b/lang/en/validation.php new file mode 100644 index 0000000..c77e41c --- /dev/null +++ b/lang/en/validation.php @@ -0,0 +1,152 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'gt' => [ + 'numeric' => 'The :attribute must be greater than :value.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'string' => 'The :attribute must be greater than :value characters.', + 'array' => 'The :attribute must have more than :value items.', + ], + 'gte' => [ + 'numeric' => 'The :attribute must be greater than or equal :value.', + 'file' => 'The :attribute must be greater than or equal :value kilobytes.', + 'string' => 'The :attribute must be greater than or equal :value characters.', + 'array' => 'The :attribute must have :value items or more.', + ], + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'numeric' => 'The :attribute must be less than :value.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'string' => 'The :attribute must be less than :value characters.', + 'array' => 'The :attribute must have less than :value items.', + ], + 'lte' => [ + 'numeric' => 'The :attribute must be less than or equal :value.', + 'file' => 'The :attribute must be less than or equal :value kilobytes.', + 'string' => 'The :attribute must be less than or equal :value characters.', + 'array' => 'The :attribute must not have more than :value items.', + ], + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => 'The password is incorrect.', + 'present' => 'The :attribute field must be present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute format is invalid.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/package.json b/package.json new file mode 100644 index 0000000..00c6506 --- /dev/null +++ b/package.json @@ -0,0 +1,18 @@ +{ + "private": true, + "scripts": { + "dev": "npm run development", + "development": "mix", + "watch": "mix watch", + "watch-poll": "mix watch -- --watch-options-poll=1000", + "hot": "mix watch --hot", + "prod": "npm run production", + "production": "mix --production" + }, + "devDependencies": { + "axios": "^0.21", + "laravel-mix": "^6.0.6", + "lodash": "^4.17.19", + "postcss": "^8.1.14" + } +} diff --git a/packages/Webkul/Activity/composer.json b/packages/Webkul/Activity/composer.json new file mode 100644 index 0000000..0cf8329 --- /dev/null +++ b/packages/Webkul/Activity/composer.json @@ -0,0 +1,28 @@ +{ + "name": "krayin/laravel-activity", + "license": "MIT", + "authors": [ + { + "name": "Jitendra Singh", + "email": "jitendra@webkul.com" + } + ], + "require": { + "krayin/laravel-core": "^1.0", + "krayin/laravel-user": "^1.0" + }, + "autoload": { + "psr-4": { + "Webkul\\Activity\\": "src/" + } + }, + "extra": { + "laravel": { + "providers": [ + "Webkul\\Activity\\Providers\\ActivityServiceProvider" + ], + "aliases": {} + } + }, + "minimum-stability": "dev" +} \ No newline at end of file diff --git a/packages/Webkul/Activity/src/Contracts/Activity.php b/packages/Webkul/Activity/src/Contracts/Activity.php new file mode 100644 index 0000000..3fa2414 --- /dev/null +++ b/packages/Webkul/Activity/src/Contracts/Activity.php @@ -0,0 +1,7 @@ +increments('id'); + $table->string('title')->nullable(); + $table->string('type'); + $table->text('comment')->nullable(); + $table->json('additional')->nullable(); + $table->datetime('schedule_from')->nullable(); + $table->datetime('schedule_to')->nullable(); + $table->boolean('is_done')->default(0); + + $table->integer('user_id')->unsigned(); + $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('activities'); + } +} diff --git a/packages/Webkul/Activity/src/Database/Migrations/2021_05_15_151855_create_activity_files_table.php b/packages/Webkul/Activity/src/Database/Migrations/2021_05_15_151855_create_activity_files_table.php new file mode 100644 index 0000000..279fe0d --- /dev/null +++ b/packages/Webkul/Activity/src/Database/Migrations/2021_05_15_151855_create_activity_files_table.php @@ -0,0 +1,37 @@ +increments('id'); + $table->string('name'); + $table->string('path'); + + $table->integer('activity_id')->unsigned(); + $table->foreign('activity_id')->references('id')->on('activities')->onDelete('cascade'); + + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('activity_files'); + } +} diff --git a/packages/Webkul/Activity/src/Database/Migrations/2021_07_28_142453_create_activity_participants_table.php b/packages/Webkul/Activity/src/Database/Migrations/2021_07_28_142453_create_activity_participants_table.php new file mode 100644 index 0000000..a58ec77 --- /dev/null +++ b/packages/Webkul/Activity/src/Database/Migrations/2021_07_28_142453_create_activity_participants_table.php @@ -0,0 +1,39 @@ +increments('id'); + + $table->integer('activity_id')->unsigned(); + $table->foreign('activity_id')->references('id')->on('activities')->onDelete('cascade'); + + $table->integer('user_id')->nullable()->unsigned(); + $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); + + $table->integer('person_id')->nullable()->unsigned(); + $table->foreign('person_id')->references('id')->on('persons')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('activity_participants'); + } +} diff --git a/packages/Webkul/Activity/src/Database/Migrations/2021_11_17_190943_add_location_column_in_activities_table.php b/packages/Webkul/Activity/src/Database/Migrations/2021_11_17_190943_add_location_column_in_activities_table.php new file mode 100644 index 0000000..26fe706 --- /dev/null +++ b/packages/Webkul/Activity/src/Database/Migrations/2021_11_17_190943_add_location_column_in_activities_table.php @@ -0,0 +1,32 @@ +string('location')->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('activities', function (Blueprint $table) { + $table->dropColumn('location'); + }); + } +} diff --git a/packages/Webkul/Activity/src/Models/Activity.php b/packages/Webkul/Activity/src/Models/Activity.php new file mode 100644 index 0000000..d8fde7b --- /dev/null +++ b/packages/Webkul/Activity/src/Models/Activity.php @@ -0,0 +1,69 @@ +belongsTo(UserProxy::modelClass()); + } + + /** + * The participants that belong to the activity. + */ + public function participants() + { + return $this->hasMany(ParticipantProxy::modelClass()); + } + + /** + * Get the file associated with the activity. + */ + public function file() + { + return $this->hasOne(FileProxy::modelClass(), 'activity_id'); + } + + /** + * The leads that belong to the activity. + */ + public function leads() + { + return $this->belongsToMany(LeadProxy::modelClass(), 'lead_activities'); + } +} diff --git a/packages/Webkul/Activity/src/Models/ActivityProxy.php b/packages/Webkul/Activity/src/Models/ActivityProxy.php new file mode 100644 index 0000000..0e7fda0 --- /dev/null +++ b/packages/Webkul/Activity/src/Models/ActivityProxy.php @@ -0,0 +1,10 @@ +path); + } + + /** + * Get image url for the product image. + */ + public function getUrlAttribute() + { + return $this->url(); + } + + /** + * Get the activity that owns the file. + */ + public function activity() + { + return $this->belongsTo(ActivityProxy::modelClass()); + } + + /** + * @return array + */ + public function toArray() + { + $array = parent::toArray(); + + $array['url'] = $this->url; + + return $array; + } +} diff --git a/packages/Webkul/Activity/src/Models/FileProxy.php b/packages/Webkul/Activity/src/Models/FileProxy.php new file mode 100644 index 0000000..b4326e8 --- /dev/null +++ b/packages/Webkul/Activity/src/Models/FileProxy.php @@ -0,0 +1,10 @@ +belongsTo(ActivityProxy::modelClass()); + } + + /** + * Get the user that owns the participant. + */ + public function user() + { + return $this->belongsTo(UserProxy::modelClass()); + } + + /** + * Get the person that owns the participant. + */ + public function person() + { + return $this->belongsTo(PersonProxy::modelClass()); + } +} diff --git a/packages/Webkul/Activity/src/Models/ParticipantProxy.php b/packages/Webkul/Activity/src/Models/ParticipantProxy.php new file mode 100644 index 0000000..71f6467 --- /dev/null +++ b/packages/Webkul/Activity/src/Models/ParticipantProxy.php @@ -0,0 +1,10 @@ +loadMigrationsFrom(__DIR__ . '/../Database/Migrations'); + } + + /** + * Register services. + * + * @return void + */ + public function register() + { + } +} \ No newline at end of file diff --git a/packages/Webkul/Activity/src/Providers/ModuleServiceProvider.php b/packages/Webkul/Activity/src/Providers/ModuleServiceProvider.php new file mode 100644 index 0000000..8d52023 --- /dev/null +++ b/packages/Webkul/Activity/src/Providers/ModuleServiceProvider.php @@ -0,0 +1,14 @@ +select( + 'activities.id', + 'activities.created_at', + 'activities.title', + 'activities.schedule_from as start', + 'activities.schedule_to as end', + 'users.name as user_name', + ) + ->addSelect(\DB::raw('IF(activities.is_done, "done", "") as class')) + ->leftJoin('activity_participants', 'activities.id', '=', 'activity_participants.activity_id') + ->leftJoin('users', 'activities.user_id', '=', 'users.id') + ->whereIn('type', ['call', 'meeting', 'lunch']) + ->whereBetween('activities.schedule_from', $dateRange) + ->where(function ($query) { + $currentUser = auth()->guard()->user(); + + if ($currentUser->view_permission != 'global') { + if ($currentUser->view_permission == 'group') { + $userIds = app(UserRepository::class)->getCurrentUserGroupsUserIds(); + + $query->whereIn('activities.user_id', $userIds) + ->orWhereIn('activity_participants.user_id', $userIds); + } else { + $query->where('activities.user_id', $currentUser->id) + ->orWhere('activity_participants.user_id', $currentUser->id); + } + } + }) + ->distinct() + ->get(); + } + + /** + * @param string $startFrom + * @param string $endFrom + * @param array $participants + * @param integer $id + * @return boolean + */ + public function isDurationOverlapping($startFrom, $endFrom, $participants = [], $id) + { + $queryBuilder = $this->model + ->leftJoin('activity_participants', 'activities.id', '=', 'activity_participants.activity_id') + ->where(function ($query) use ($startFrom, $endFrom) { + $query->where([ + ['activities.schedule_from', '<=', $startFrom], + ['activities.schedule_to', '>=', $startFrom], + ])->orWhere([ + ['activities.schedule_from', '>=', $startFrom], + ['activities.schedule_from', '<=', $endFrom], + ]); + }) + ->where(function ($query) use ($participants) { + if (is_null($participants)) { + return; + } + + if (isset($participants['users'])) { + $query->orWhereIn('activity_participants.user_id', collect($participants['users'])->pluck('id')); + } + + if (isset($participants['persons'])) { + $query->orWhereIn('activity_participants.person_id', collect($participants['persons'])->pluck('id')); + } + }) + ->groupBy('activities.id'); + + if (!is_null($id)) { + $queryBuilder->where('activities.id', '!=', $id); + } + + return $queryBuilder->count() ? true : false; + } +} diff --git a/packages/Webkul/Activity/src/Repositories/FileRepository.php b/packages/Webkul/Activity/src/Repositories/FileRepository.php new file mode 100644 index 0000000..f1bc105 --- /dev/null +++ b/packages/Webkul/Activity/src/Repositories/FileRepository.php @@ -0,0 +1,68 @@ +activityRepository = $activityRepository; + + parent::__construct($container); + } + + /** + * Specify model class name. + * + * @return mixed + */ + public function model() + { + return \Webkul\Activity\Contracts\File::class; + } + + /** + * Upload files. + * + * @param array $data + * @return mixed|void + */ + public function upload(array $data) + { + if (!request()->hasFile('file')) { + return; + } + + $leadActivity = $this->activityRepository->create([ + 'is_done' => 1, + 'type' => 'file', + 'comment' => $data['comment'], + 'user_id' => auth()->guard()->user()->id, + ]); + + return parent::create([ + 'name' => $data['name'] ?? request()->file('file')->getClientOriginalName(), + 'path' => request()->file('file')->store('activities/' . $leadActivity->id), + 'activity_id' => $leadActivity->id, + ]); + } +} diff --git a/packages/Webkul/Activity/src/Repositories/ParticipantRepository.php b/packages/Webkul/Activity/src/Repositories/ParticipantRepository.php new file mode 100644 index 0000000..26ff036 --- /dev/null +++ b/packages/Webkul/Activity/src/Repositories/ParticipantRepository.php @@ -0,0 +1,18 @@ +div{width:100%}.drag-column .drag-column-header>div h2{color:#263238;font-size:18px;font-weight:500;margin:0 0 10px}.drag-column .drag-column-header>div h2 span{color:#53c41a}.drag-column .drag-column-header>div a{cursor:pointer}.drag-inner-list{color:#546e7a;height:100%;height:calc(100% - 110px);min-height:50px;overflow-y:scroll}.drag-inner-list .empty-icon-container{display:block;height:100%;position:relative;text-align:center}.drag-inner-list .empty-icon-container .icon-text-container{left:calc(50% - 49px);position:absolute;top:calc(50% - 75px)}.drag-inner-list .empty-icon-container .icon-text-container .empty-kanban-icon{height:98px;width:98px}.drag-inner-list .empty-icon-container .icon-text-container span{display:block;padding-top:10px}.drag-item{background:#fff;border:1px solid #f7f8f9;border-bottom-color:hsla(210,2%,76%,.5);box-shadow:none;box-shadow:0 2px 2px rgba(0,0,0,.1);line-height:30px;margin:0;transition:all .3s cubic-bezier(.23,1,.32,1)}.drag-item .lead-block{padding:10px;position:relative}.drag-item .lead-block:hover .icons{display:inline-block}.drag-item .lead-block.rotten{background:#ffd0d6}.drag-item .lead-block .lead-title{color:#263238;display:inline-block;font-size:16px;font-weight:500;line-break:anywhere;width:calc(100% - 45px)}.drag-item .lead-block .icons{cursor:pointer;display:none;position:absolute;right:5px;top:5px}.drag-item .lead-block .lead-cost{color:#263238}.drag-item .lead-block .lead-cost,.drag-item .lead-block .lead-person{font-size:14px}.drag-item .lead-block .lead-cost .icon,.drag-item .lead-block .lead-person .icon{margin-right:5px;vertical-align:middle}.drag-header-more{cursor:pointer}.drag-options{height:100%;left:0;opacity:0;padding:10px;position:absolute;top:44px;transform:translateX(100%);transition:all .3s cubic-bezier(.23,1,.32,1);width:100%}.drag-options.active{opacity:1;transform:translateX(0)}.drag-options-label{display:block;margin:0 0 5px}.drag-options-label input{opacity:.6}.drag-options-label span{display:inline-block;font-size:.9rem;font-weight:400;margin-left:5px}.gu-mirror{list-style-type:none;margin:0!important;opacity:.8;position:fixed!important;z-index:9999!important}.gu-hide{display:none!important}.gu-unselectable{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.gu-transit{opacity:.2}.disable-drag{pointer-events:none}.rtl{direction:rtl}.rtl .anonymous-layout-container .center-box .adjacent-center{text-align:right}.rtl .lead-quote-list table tr td.actions .icon{cursor:pointer}.rtl .lead-quote-list table tr td.actions .dropdown-list{left:60px!important;right:unset}.rtl .navbar-top .navbar-top-right{text-align:left}.rtl .navbar-top .navbar-top-right .quick-create .dropdown-toggle .icon{margin-left:6px;margin-right:unset}.rtl .navbar-top .navbar-top-right .quick-create .dropdown-list{left:0;right:unset}.rtl .navbar-top .navbar-top-right .profile-info .dropdown-toggle .avatar{margin-left:10px}.rtl .navbar-top .navbar-top-right .profile-info .dropdown-list{left:0;right:unset;text-align:right}.rtl table tr .avatar{margin-left:10px}.rtl table tr .badge{margin-left:5px}.rtl .navbar-left{left:unset;right:-1px}.rtl .navbar-left .menubar li.menu-item .menu-label{margin-left:0;margin-right:10px}.rtl .navbar-left .menubar li.menu-item ul.sub-menubar{border-left:1px solid #eee;border-right:0;left:unset;right:48px}.rtl .navbar-left.open ul.menubar li.menu-item.active{width:100%}.rtl .navbar-left.open+.content-container{padding-left:0!important;padding-right:160px}.rtl .content-container{padding-left:0;padding-right:48px}.rtl .content-container .dashboard .row-grid-3 .card label .icon-container,.rtl .content-container .dashboard>h1~.card-filter-container{float:left}.rtl .content-container .dashboard .daterangepicker{left:0;right:unset}.rtl .content-container .content .page-header .page-action{float:left}.rtl .table .tabs-container .tabs-right-container{text-align:left}.rtl .drag-item .lead-block .icons{left:5px;right:unset}.rtl .tags-container .tag-dropdown .lookup-results{text-align:right}.rtl .tags-container ul.tag-list{margin-left:0;margin-right:10px}.rtl .tags-container ul.tag-list li{margin-left:8px;margin-right:0}.rtl .tags-container ul.tag-list li:last-child{margin-left:0}.rtl .modal-container .modal-header .header-actions{text-align:left}.rtl .page-content.lead-view .lead-content-left{float:right;padding-left:10px;padding-right:0}.rtl .page-content.lead-view .lead-content-left .panel .lead-rotten-info{float:left}.rtl .page-content.lead-view .lead-content-right{padding-left:0;padding-right:10px}.rtl .adjacent-center .page-content .nav-aside{float:right;padding-left:20px;padding-right:0}.rtl .adjacent-center .page-content .panel .panel-header button.btn{margin-right:0}.rtl .adjacent-center .page-content .panel .panel-header button.btn .icon{margin-left:5px;margin-right:0}.rtl .custom-attribute-view .attribute-value-row{padding-left:30px;padding-right:0}.rtl .custom-attribute-view .attribute-value-row .label{float:right}.rtl .custom-attribute-view .attribute-value-row .value{float:right;padding-left:0;padding-right:10px}.rtl .pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stage-controls{direction:ltr;margin-left:0;margin-right:10px}.rtl .pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage .dropdown-list{left:0;right:unset}.rtl .activity-list .section-tag span{padding-left:10px;padding-right:0}.rtl .activity-list .timeline-bar{left:unset;right:18px}.rtl .activity-list .activities .activity-item{margin-left:0;margin-right:50px;text-align:right}.rtl .activity-list .activities .activity-item:before{left:unset;right:-51px}.rtl .activity-list .activities .activity-item .timeline-bar-icon{left:unset;right:-40px}.rtl .activity-list .activities .activity-item .timeline-bar-icon.meeting{right:-42px}.rtl .activity-list .activities .activity-item .timeline-bar-icon.lunch{left:-40px}.rtl .activity-list .activities .activity-item .timeline-bar-icon.email{left:unset;right:-41px}.rtl .activity-list .activities .activity-item .icon.ellipsis-icon{left:10px;right:unset}.rtl .activity-list .activities .activity-item .dropdown-list{left:0;right:unset;text-align:right}.rtl .activity-list .activities .activity-item.activity .attachment .icon{margin-left:5px;margin-right:0}.rtl .switch-view-container{margin-left:unset}.rtl .switch-view-container .icon-container.active{margin-left:1px}.rtl .form-group.email-control-group{padding-left:0;padding-right:40px}.rtl .form-group.email-control-group>label{left:unset;right:0}.rtl .form-group.email-control-group .email-address-options{left:10px;right:unset}.rtl .email-list .email-item .email-header .row .time{float:left;text-align:left}.rtl .email-action-container .sidebar-filter{left:-420px;right:unset}.rtl .email-action-container .sidebar-filter.show{left:0;right:unset}.rtl .email-action-container .sidebar-filter .panel .panel-header .links{float:left}.rtl .email-action-container .sidebar-filter .panel .panel-header .links .icon.close-icon{margin-left:0;margin-right:5px}.rtl .email-action-container .sidebar-filter .panel .panel-header .links a{margin-left:0}.rtl .email-action-container .sidebar-filter .panel .btn-group .form-group .icon{left:13px;right:unset}.rtl .dropdown-list{text-align:right}.rtl .dragable-container ul.dragable-list li.list-group-item .form-group{padding-left:40px;padding-right:0}.rtl .dragable-container ul.dragable-list li.list-group-item .form-group .icon.align-justify-icon{left:50px;right:unset}.rtl .dragable-container ul.dragable-list li.list-group-item .icon.trash-icon{left:5px;right:unset}body{background:#f7f8f9;height:100%;margin:0;position:static;width:100%}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{border-radius:10px;-webkit-box-shadow:inset 0 0 6px hsla(0,0%,100%,.3)}::-webkit-scrollbar-thumb{border-radius:10px;-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.5)}.navbar-top{background-color:#fff;box-shadow:inset 0 -1px 0 #cdcecf;font-size:0;height:60px;left:0;position:fixed;right:0;z-index:5}.navbar-top .navbar-top-left{display:inline-block;height:60px;vertical-align:middle;width:50%}.navbar-top .navbar-top-left .brand-logo{padding:10px 5px}.navbar-top .navbar-top-right{display:inline-block;height:60px;padding:10px;text-align:right;vertical-align:middle;width:50%}.navbar-top .navbar-top-right .quick-create{display:inline-block;margin-right:10px;position:relative;vertical-align:middle}.navbar-top .navbar-top-right .quick-create .button{background:#0e90d9;border:2px solid #0e90d9;border-radius:43px;cursor:pointer;display:inline-block;height:40px;width:40px}.navbar-top .navbar-top-right .quick-create .button.active{box-shadow:inset 0 0 0 2px #fff}.navbar-top .navbar-top-right .quick-create .button .icon{margin-right:9px;margin-top:6px}.navbar-top .navbar-top-right .quick-create .dropdown-list{bottom:unset;padding:12px;right:0;top:50px;width:284px}.navbar-top .navbar-top-right .quick-create .dropdown-list .quick-link-container{grid-gap:10px;display:grid;font-size:12px;font-weight:500;grid-template-columns:auto auto auto;text-align:center}.navbar-top .navbar-top-right .quick-create .dropdown-list .quick-link-container .quick-link-item{background:#fff;width:80px}.navbar-top .navbar-top-right .quick-create .dropdown-list .quick-link-container .quick-link-item:hover{background:#f7f8f9;border-radius:8px}.navbar-top .navbar-top-right .quick-create .dropdown-list .quick-link-container .quick-link-item a{color:#546e7a;display:block;padding:5px}.navbar-top .navbar-top-right .quick-create .dropdown-list .quick-link-container .quick-link-item a .icon{height:40px;margin-bottom:5px;width:40px}.navbar-top .navbar-top-right .quick-create .dropdown-list .quick-link-container .quick-link-item a span{display:block}.navbar-top .navbar-top-right .profile-info{cursor:pointer;display:inline-block;position:relative;text-align:left;vertical-align:middle}.navbar-top .navbar-top-right .profile-info .avatar{background-color:#f7f8f9;border:1px solid #c1c2c3;border-radius:43px;display:inline-block;height:40px;margin-right:10px;overflow:hidden;text-align:center;vertical-align:middle;width:40px}.navbar-top .navbar-top-right .profile-info .avatar img{height:40px;width:40px}.navbar-top .navbar-top-right .profile-info .avatar .icon{margin-top:8px}.navbar-top .navbar-top-right .profile-info .info{display:inline-block;font-size:16px;line-height:20px;min-width:50px;vertical-align:middle}.navbar-top .navbar-top-right .profile-info .info .howdy{color:#9e9e9e}.navbar-top .navbar-top-right .profile-info .info .user{display:block}.navbar-top .navbar-top-right .profile-info .icon.ellipsis-icon{height:30px!important;vertical-align:middle;width:30px!important}.navbar-top .navbar-top-right .profile-info .dropdown-list{bottom:unset;right:0;top:50px}.navbar-top .navbar-top-right .profile-info .dropdown-list .app-version{border-bottom:1px solid #c1c2c3;color:#a2a2a2;cursor:default;display:block;font-size:18px;padding:8px 12px}.navbar-left{background-color:#263238;bottom:0;box-shadow:inset -1px 0 0 #cdcecf;height:auto;left:0;position:fixed;top:60px;width:48px;z-index:2}.navbar-left ul.menubar li.menu-item{font-size:14px;overflow:hidden;position:relative}.navbar-left ul.menubar li.menu-item>a{color:#546e7a;display:block;padding:16px 12px;width:100%}.navbar-left ul.menubar li.menu-item>a .icon{display:inline-block;vertical-align:middle}.navbar-left ul.menubar li.menu-item>a .menu-label{display:none;margin-left:10px}.navbar-left ul.menubar li.menu-item span{display:block;margin:auto}.navbar-left ul.menubar li.menu-item ul.sub-menubar{background-color:#fff;border:1px solid #eee;border-left:0;border-radius:0 3px 3px 0;box-shadow:2px 1px 3px #cdcecf;display:none;left:48px;min-width:160px;position:absolute;top:0}.navbar-left ul.menubar li.menu-item ul.sub-menubar li.sub-menu-item a{color:#546e7a;display:block;font-size:14px;padding:8px 12px}.navbar-left ul.menubar li.menu-item ul.sub-menubar li.sub-menu-item.active a,.navbar-left ul.menubar li.menu-item ul.sub-menubar li.sub-menu-item:hover a{color:#0e90d9}.navbar-left ul.menubar li.menu-item.active,.navbar-left ul.menubar li.menu-item:hover{box-shadow:inset 4px 0 0 #0e90d9}.navbar-left ul.menubar li.menu-item:hover{overflow:visible}.navbar-left ul.menubar li.menu-item:hover ul.sub-menubar{display:block}.navbar-left ul.menubar li.menu-item:hover ul.sub-menubar .sub-menu-item .menu-label{color:#546e7a}.navbar-left ul.menubar li.menu-item:hover ul.sub-menubar .sub-menu-item.active .menu-label,.navbar-left ul.menubar li.menu-item:hover ul.sub-menubar .sub-menu-item:hover .menu-label{color:#0e90d9}.navbar-left.open{overflow-x:auto;width:160px}.navbar-left.open ul.menubar li.menu-item a .menu-label{color:#b0bec5;display:inline-block;font-size:16px;font-weight:200}.navbar-left.open ul.menubar li.menu-item ul.sub-menubar{background-color:transparent;border:0;border-radius:0;box-shadow:unset;display:none;position:unset}.navbar-left.open ul.menubar li.menu-item ul.sub-menubar li.sub-menu-item a{padding-left:45px}.navbar-left.open ul.menubar li.menu-item.active{background:#12171a;width:calc(100% - 1px)}.navbar-left.open ul.menubar li.menu-item.active .menu-label{color:#0e90d9}.navbar-left.open ul.menubar li.menu-item.active ul.sub-menubar{display:block}.navbar-left.open ul.menubar li.menu-item.active ul.sub-menubar .sub-menu-item .menu-label{color:#b0bec5}.navbar-left.open ul.menubar li.menu-item.active ul.sub-menubar .sub-menu-item.active .menu-label,.navbar-left.open ul.menubar li.menu-item.active ul.sub-menubar .sub-menu-item:hover .menu-label{color:#0e90d9!important}.navbar-left.open ul.menubar li.menu-item:hover .menu-label{color:#0e90d9}.navbar-left .menubar-bottom{background-color:#263238;cursor:pointer;padding:12px;position:absolute;width:calc(100% - 1px)}.settings-container .panel{margin-bottom:30px;max-width:941px}.settings-container .panel .panel-header h3{margin:0 0 5px}.settings-container .panel .panel-header p{font-size:16px;font-weight:400;margin:0}.settings-container .panel .setting-link-container .setting-link-item{display:inline-block;width:300px}.settings-container .panel .setting-link-container .setting-link-item a{align-items:center;display:flex;height:100px;padding:20px}.settings-container .panel .setting-link-container .setting-link-item a .icon{height:40px;width:40px}.settings-container .panel .setting-link-container .setting-link-item a .setting-info{display:inline-block;margin-left:25px}.settings-container .panel .setting-link-container .setting-link-item a .setting-info label{color:#263238;cursor:pointer;font-size:18px;font-weight:400}.settings-container .panel .setting-link-container .setting-link-item a .setting-info p{color:#263238;display:none;font-size:14px;font-weight:400;margin:0 0 3px}.settings-container .panel .setting-link-container .setting-link-item:hover{background-color:#f7f8f9;border-radius:8px}.settings-container .panel .setting-link-container .setting-link-item:hover .setting-info p{display:block}.content-container{bottom:0;height:calc(100% - 60px);left:0;padding-left:48px;position:absolute;right:0;top:60px;width:100%}.content-container .inner-section{height:100%}.content-container .aside-nav{background-color:#fff;border-right:1px solid #c1c2c3;bottom:0;padding-bottom:10px;padding-top:10px;position:fixed;top:60px;width:280px;z-index:4}.content-container .aside-nav ul{height:90%;overflow-y:auto}.content-container .aside-nav a{color:#000311;display:block;padding:15px}.content-container .aside-nav .active a{background:#fff;border-bottom:1px solid #c1c2c3;border-top:1px solid #c1c2c3}.content-container .aside-nav .active i{float:right}.content-container .content-wrapper{background-color:#fff;margin-left:280px;margin-top:1px;padding:25px 25px 25px 15px}.content-container .content.full-page{height:100%;padding:25px}.content-container .content .page-header{display:inline-block;margin-bottom:10px;width:100%;z-index:3}.content-container .content .page-header .page-title{display:inline-block}.content-container .content .page-header .page-title .back-link{cursor:pointer;float:left;height:24px;margin-right:10px;margin-top:5px;width:24px}.content-container .content .page-header .page-title h1{display:inline-block;font-weight:400;line-height:normal;margin-bottom:0;vertical-align:middle}.content-container .content .page-header .page-action{float:right}.content-container .content .page-header .page-action a{margin-left:25px}.content-container .content .page-header>.form-group{display:inline-block;margin-bottom:0;margin-left:20px;width:180px}.content-container .content .page-header .control{margin:0;width:100%}.content-container .content .page-content{display:inline-block;padding-bottom:20px;width:100%}.control-container{align-items:flex-start;display:flex;flex-direction:row;width:750px}.control-container .control{background:#fff;border:1px solid #c1c2c3;border-radius:3px;display:inline-block;font-size:16px;height:36px;padding:0 10px;transition:.2s cubic-bezier(.4,0,.2,1);vertical-align:middle;width:150px}.control-container .control:focus{border-color:#0041ff}.control-container .icon:hover{cursor:pointer}.control-container .form-group::last-child{margin-right:0}.anonymous-layout-container{background:#f7f8f9;display:table;height:100%;position:absolute;text-align:center;width:100%;z-index:1}.anonymous-layout-container .center-box{display:table-cell;vertical-align:middle}.anonymous-layout-container .center-box .adjacent-center{display:inline-block;text-align:left;width:476px}.anonymous-layout-container .center-box .adjacent-center .brand-logo{margin-bottom:40px;text-align:center}.anonymous-layout-container .center-box .adjacent-center .brand-logo img{height:50px;transform:translateY(-8px);width:280px}.anonymous-layout-container .center-box .adjacent-center .brand-logo p{color:#546e7a;font-size:20px;margin:0}.anonymous-layout-container .center-box .adjacent-center .panel .panel-body{border:0;padding:48px}.anonymous-layout-container .center-box .adjacent-center .panel .panel-body h1{color:#546e7a;font-size:24px;font-weight:500;margin-bottom:30px}.anonymous-layout-container .center-box .adjacent-center .panel .panel-body .form-group .control{width:100%}.anonymous-layout-container .center-box .adjacent-center .panel .panel-body a{display:block;font-size:14px;margin-bottom:30px;margin-top:-15px}.anonymous-layout-container .center-box .adjacent-center .panel .panel-body button.btn{font-size:24px;width:100%}.adjacent-center .page-content,.adjacent-center .page-header{display:block!important;margin:auto;width:1000px!important}.adjacent-center .page-content .nav-aside{float:left;padding-right:20px;width:190px}.adjacent-center .page-content .nav-aside ul{margin-top:118px}.adjacent-center .page-content .nav-aside ul li{margin-bottom:5px}.adjacent-center .page-content .nav-aside ul li a{border-radius:4px;color:#546e7a;display:block;font-weight:400;padding:10px;text-align:right}.adjacent-center .page-content .nav-aside ul li:hover a{background-color:rgba(38,41,44,.08)}.adjacent-center .page-content .nav-aside ul li.active a{background:#0e90d9;color:#fff;font-weight:500}.adjacent-center .page-content .panel .panel-header button.btn{margin-right:30px}.adjacent-center .page-content .panel .panel-header button.btn .icon{margin-right:5px}.adjacent-center .page-content .panel .panel-header input[type=submit]{background:transparent;border:0;color:#546e7a;cursor:pointer;font-family:Roboto;font-size:18px;font-weight:500;margin-right:30px;padding:0}.adjacent-center .page-content .panel .panel-header a{color:inherit;margin-right:30px}.dragable-container ul.dragable-list li.list-group-item{margin-bottom:10px;position:relative}.dragable-container ul.dragable-list li.list-group-item.sortable-ghost .form-group .control{border-style:dashed}.dragable-container ul.dragable-list li.list-group-item .form-group{margin:0;padding-right:40px}.dragable-container ul.dragable-list li.list-group-item .form-group .control{margin:0}.dragable-container ul.dragable-list li.list-group-item .form-group .icon.align-justify-icon{cursor:pointer;height:24px;position:absolute;right:50px;top:9px;width:24px}.dragable-container ul.dragable-list li.list-group-item .icon.trash-icon{cursor:pointer;height:24px;position:absolute;right:5px;top:9px;width:24px}.dragable-container table{box-shadow:none}.dragable-container table tr th:first-child,.dragable-container table tr th:last-child{width:40px}.dragable-container table tr td.delete-icon .icon,.dragable-container table tr td.dragable-icon .icon{cursor:pointer;height:24px;margin-top:9px;width:24px}.dragable-container table tr td .form-group .control{margin-bottom:0;margin-top:0}.dragable-container table tr:not(.draggable) .control[readonly=readonly]{background-color:#f0f0f0}.dragable-container button.btn{margin-top:10px}.lookup-results{background-color:#fff;border-radius:3px;box-shadow:0 2px 4px 0 rgba(0,0,0,.16),0 0 9px 0 rgba(0,0,0,.16);max-height:200px;overflow-y:auto;text-align:left;width:100%;z-index:10}.lookup-results.grouped label{color:#263238;font-size:18px;font-weight:500;padding:10px 10px 0}.lookup-results.grouped li{padding-left:15px}.lookup-results li{cursor:pointer;padding:5px 0}.lookup-results li.action{border-top:1px solid #c1c2c3}.lookup-results li span{display:inline-block;padding:5px 10px;width:100%}.lookup-results li span:hover{background-color:#0e90d9;color:#fff}.lookup-selected-options{margin-top:10px}.lookup-selected-options .badge{margin-right:10px}.lookup-selected-options .badge .icon{cursor:pointer}.modal-container{box-shadow:0 54px 55px rgba(0,0,0,.25),0 -12px 30px rgba(0,0,0,.12),0 4px 6px rgba(0,0,0,.12),0 12px 13px rgba(0,0,0,.17),0 -3px 5px rgba(0,0,0,.09)}.modal-container .tabs-content{border:0;border-top:1px solid #c1c2c3}.lead-product-list .lead-product{border-bottom:1px solid #c1c2c3;padding-bottom:20px;padding-top:20px}.lead-product-list .lead-product:first-of-type{padding-top:0}.lead-product-list .lead-product:last-of-type{margin-bottom:20px}.lead-product-list .lead-product .top-control-group{display:inline-block;width:100%}.lead-product-list .lead-product .top-control-group .form-group{margin-bottom:10px}.lead-product-list .lead-product .bottom-control-group{grid-column-gap:10px;grid-row-gap:0;display:grid;grid-auto-rows:auto;grid-template-columns:repeat(auto-fill,minmax(30%,1fr));justify-items:center;padding-right:28px;position:relative;width:100%}.lead-product-list .lead-product .bottom-control-group .form-group{margin-bottom:0}.lead-product-list .lead-product .bottom-control-group .icon.trash-icon{cursor:pointer;position:absolute;right:0;top:44px}.page-content.lead-view .lead-content-left{float:left;padding-right:10px;width:30%}.page-content.lead-view .lead-content-left .panel{margin-bottom:30px}.page-content.lead-view .lead-content-left .panel .lead-rotten-info{background:#ffd0d6;border-radius:4px;color:#ff4d50;float:right;font-size:14px;font-weight:400;padding:2px 12px}.page-content.lead-view .lead-content-left .panel .lead-rotten-info .icon{height:16px;margin-right:5px;margin-top:3px;width:16px}.page-content.lead-view .lead-content-right{float:left;padding-left:10px;width:70%}.page-content.lead-view .lead-content-right .tabs-content{margin-bottom:20px}.custom-attribute-view .attribute-value-row{display:inline-block;font-size:16px;padding:6px 30px 6px 6px;position:relative;width:100%}.custom-attribute-view .attribute-value-row:nth-child(2n){background-color:#fff;padding:10px 6px}.custom-attribute-view .attribute-value-row:last-child{border:none}.custom-attribute-view .attribute-value-row .label{color:#546e7a;float:left;width:120px}.custom-attribute-view .attribute-value-row .value{float:left;padding-left:10px;width:calc(100% - 120px)}.custom-attribute-view .attribute-value-row .value span.multi-value{background:#eff0f5;border-radius:30px;display:inline-block;margin-bottom:5px;padding:4px 8px;word-break:break-all}.custom-attribute-view .attribute-value-row .value span.multi-value span{color:#747678;font-size:16px}.custom-attribute-view .attribute-value-row .value .image{border:1px solid;border-radius:4px;height:100px;width:100px}.custom-attribute-view .attribute-value-row .icon.pencil-underline-icon{cursor:pointer;display:none;position:absolute;right:5px}.custom-attribute-view .attribute-value-row .dropdown-list{right:0;width:100%}.custom-attribute-view .attribute-value-row:hover .icon.pencil-underline-icon{display:inline-block}.form-group .image{border-radius:3px;height:33px;margin-right:5px;position:absolute;right:0;top:36px;width:33px}.form-group .icon.download-icon{position:absolute;right:10px;top:40px}.form-group.email-control-group{padding-left:40px}.form-group.email-control-group>label{left:0;position:absolute;top:10px}.form-group.email-control-group .tags-control{margin-top:0}.form-group.email-control-group .email-address-options{position:absolute;right:10px;top:10px}.form-group.email-control-group .email-address-options label{-webkit-touch-callout:none;cursor:pointer;display:inline-block;font-weight:500;margin-right:10px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.form-group.email-control-group .email-address-options label:last-child{margin-right:0}.activity-list .section-tag{display:inline-block;margin-bottom:20px;margin-left:50px;position:relative;width:100%}.activity-list .section-tag span{background:#fff;color:#546e7a;font-weight:500;padding-right:10px;position:absolute;top:-11px}.activity-list .section-tag hr{border-top:1px solid #c1c2c3;margin:0}.activity-list .timeline-bar{bottom:0;left:18px;position:absolute;top:38px}.activity-list .activities{position:relative}.activity-list .activities.planned-activities{margin-bottom:30px}.activity-list .activities.planned-activities .timeline-bar{border-left:2px dashed #546e7a;bottom:-67px}.activity-list .activities.planned-activities.email,.activity-list .activities.planned-activities.file,.activity-list .activities.planned-activities.note{display:none}.activity-list .activities.done-activities .timeline-bar{border-left:2px solid #546e7a}.activity-list .activities .activity-item{background:#fff;border:1px solid #f7f8f9;box-shadow:0 2px 2px rgba(0,0,0,.1);margin-bottom:10px;margin-left:50px;padding:15px;position:relative;text-align:left}.activity-list .activities .activity-item:before{background-color:#fff;background-position:50%;background-repeat:no-repeat;border:1px solid #546e7a;border-radius:50%;content:" ";display:inline-block;height:36px;left:-51px;position:absolute;top:0;width:36px}.activity-list .activities .activity-item:last-child{margin-bottom:0}.activity-list .activities .activity-item.activity .title{color:#546e7a;font-size:16px;margin-bottom:5px}.activity-list .activities .activity-item.activity .title h4{margin:0 0 5px}.activity-list .activities .activity-item.activity .attachment{display:inline-block;font-size:16px;margin-bottom:10px;margin-top:5px}.activity-list .activities .activity-item.activity .attachment .icon{margin-left:-3px;margin-right:5px}.activity-list .activities .activity-item.activity .comment{background-color:#fff9c4;border:1px solid #fdd835;border-radius:4px;font-size:16px;margin-bottom:5px;padding:15px;position:relative}.activity-list .activities .activity-item.activity .info{color:#747678;font-size:14px}.activity-list .activities .activity-item.activity .info .seperator{cursor:default;display:inline-block;font-weight:700;margin:0 5px;text-align:center;width:8px}.activity-list .activities .activity-item.email{position:relative}.activity-list .activities .activity-item.email .subject h5{margin:0 0 5px}.activity-list .activities .activity-item.email .subject span{color:#546e7a;font-size:16px;margin-bottom:5px}.activity-list .activities .activity-item .icon.ellipsis-icon{border-radius:4px;cursor:pointer;position:absolute;right:10px;top:10px}.activity-list .activities .activity-item .icon.ellipsis-icon:hover{background-color:rgba(38,41,44,.05)}.activity-list .activities .activity-item .dropdown-list{font-weight:400;right:0;top:40px}.activity-list .activities .activity-item .timeline-bar-icon{bottom:77px;height:18px;left:-40px;position:absolute;top:11px;width:18px}.activity-list .activities .activity-item .timeline-bar-icon.note{background-image:url(../images/note-icon.svg);height:20px;top:8px;width:16px}.activity-list .activities .activity-item .timeline-bar-icon.call{background-image:url(../images/call-icon.svg);top:9px}.activity-list .activities .activity-item .timeline-bar-icon.meeting{background-image:url(../images/meeting-icon.svg);top:9px}.activity-list .activities .activity-item .timeline-bar-icon.lunch{background-image:url(../images/lunch-icon.svg);height:17px;left:-40px;top:10px;width:17px}.activity-list .activities .activity-item .timeline-bar-icon.file{background-image:url(../images/file-icon.svg);top:10px;width:16px}.activity-list .activities .activity-item .timeline-bar-icon.email{background-image:url(../images/email-icon.svg);height:16px;left:-41px;width:18px}.activity-list .empty-activities{color:#546e7a;font-size:16px;text-align:center}.dashboard{background-color:#f7f8f9;height:unset!important}.dashboard .dashboard-content.print{background-color:#fff;left:0;position:absolute;top:-60px;width:100%;z-index:10000}.dashboard>h1{display:inline-block;margin-bottom:35px}.dashboard>h1~.cards-collection{border:2px solid #c1c2c3;border-radius:3px;cursor:pointer;float:right;margin:0;width:200px}.dashboard>h1~.cards-collection .toggle-btn{background-color:#fff;margin:0;padding:6px 10px}.dashboard>h1~.cards-collection .toggle-btn :last-child{float:right}.dashboard>h1~.cards-collection .cards-options{border:none;margin-bottom:0;position:relative;width:unset;z-index:1}.dashboard>h1~.cards-collection .cards-options>div{background:#fff;box-shadow:0 4px 4px rgba(84,110,122,.25);padding:20px 12px;position:absolute;top:20px;transition:.35s cubic-bezier(.4,0,.2,1);width:100%;z-index:1}.dashboard>h1~.cards-collection .cards-options>div header{border-bottom:1px solid #c1c2c3;margin-bottom:10px;padding-bottom:15px}.dashboard>h1~.cards-collection .cards-options>div header .btn-secondary-outline{border:none;font-size:16px;padding-left:0}.dashboard>h1~.cards-collection .cards-options>div header .btn-primary{float:right}.dashboard>h1~.card-filter-container{color:#546e7a;float:right;z-index:1}.dashboard>h1~.card-filter-container .daterangepicker .btn-success{background-color:#0e90d9;padding:10px 14px}.dashboard>h1~.card-filter-container .daterangepicker .btn-secondary{background-color:#546e7a;padding:10px 14px}.dashboard .date{text-align:right}.dashboard .date .date-container,.dashboard .date label{display:inline-block}.dashboard .row-grid-3{align-items:start;padding:10px 0}.dashboard .row-grid-3 .card{background-color:#fff;border-radius:3px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);height:100%;min-height:300px}.dashboard .row-grid-3 .card label{border-bottom:1px solid hsla(210,2%,76%,.5);color:#263238;display:block;font-weight:500;height:100%;padding:20px}.dashboard .row-grid-3 .card label .card-filter-container{color:#546e7a;cursor:pointer;display:inline-block;margin-left:5px}.dashboard .row-grid-3 .card label .card-filter-container .dropdown-toggle{margin-bottom:5px}.dashboard .row-grid-3 .card label .icon-container{display:none;float:right}.dashboard .row-grid-3 .card label .icon-container .icon{cursor:pointer}.dashboard .row-grid-3 .card .card-header{height:65px;text-transform:capitalize}.dashboard .row-grid-3 .card .card-data,.dashboard .row-grid-3 .card .db-wg-spinner{height:calc(100% - 65px)}.dashboard .row-grid-3 .card .card-data{overflow-y:scroll;padding:20px;position:relative}.dashboard .row-grid-3 .card .card-data::-webkit-scrollbar{display:none}.dashboard .row-grid-3 .card .card-data .bar-chart,.dashboard .row-grid-3 .card .card-data .line-chart{align-items:center;display:grid;height:100%}.dashboard .row-grid-3 .card .card-data .bar-data{grid-column-gap:15px;align-items:center;color:#263238;display:grid;font-size:14px;grid-template-columns:70px auto 40px}.dashboard .row-grid-3 .card .card-data .bar-data.activity>span:first-child{line-break:anywhere;text-transform:capitalize}.dashboard .row-grid-3 .card .card-data .lead{color:#546e7a;margin-top:20px}.dashboard .row-grid-3 .card .card-data .lead:first-child{margin:0}.dashboard .row-grid-3 .card .card-data .lead label{border:0;font-size:18px;font-weight:500;height:-webkit-max-content;height:-moz-max-content;height:max-content;padding:0}.dashboard .row-grid-3 .card .card-data .lead .details{border-bottom:1px solid hsla(210,2%,76%,.5);display:grid;font-size:16px;grid-template-columns:auto auto auto;padding:5px 0}.dashboard .row-grid-3 .card .card-data .column-container{border-bottom:1px solid #c1c2c3;display:inline-block;margin-top:10px;padding-bottom:5px;width:100%}.dashboard .row-grid-3 .card .card-data .column-container:nth-child(odd){margin-right:10px}.dashboard .row-grid-3 .card .card-data .column-container:first-child,.dashboard .row-grid-3 .card .card-data .column-container:nth-child(2){margin-top:0}.dashboard .row-grid-3 .card .card-data .column-container span{color:#546e7a;display:block;text-align:left}.dashboard .row-grid-3 .card .card-data .column-container span:first-child{font-size:36px;font-weight:500;margin-bottom:10px}.dashboard .row-grid-3 .card .card-data .column-container span:last-child{font-size:16px}.dashboard .row-grid-3 .card .card-data .custom-card{color:#546e7a;left:calc(50% - 62px);position:absolute;text-align:center;top:calc(50% - 62px)}.dashboard .row-grid-3 .card .card-data .custom-card span{display:block}.dashboard .row-grid-3 .card .card-data .custom-card i.icon{height:96px;width:96px}.dashboard .row-grid-3 .card .card-data.column-grid-2{align-items:start}.dashboard .row-grid-3 .card.dashed{border-style:dashed}.dashboard .row-grid-3 .card:hover label .icon-container{display:inline}.table tr td.subject,.table tr th.subject{overflow:hidden;text-overflow:ellipsis;width:100%}.table tr td.subject .subject-wrapper,.table tr th.subject .subject-wrapper{align-items:center;display:flex}.table tr td.subject .subject-wrapper .subject-content,.table tr th.subject .subject-wrapper .subject-content{flex:0 0 auto;font-weight:500;max-width:100%;overflow:hidden;text-overflow:ellipsis}.table tr td.subject .subject-wrapper .reply,.table tr th.subject .subject-wrapper .reply{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis}.table tr td.created_at,.table tr th.created_at{width:200px}.table tr td.attachments,.table tr th.attachments{width:45px}.table tr td .avatar,.table tr th .avatar{background-color:#f7f8f9;border:1px solid #c1c2c3;border-radius:43px;display:inline-block;height:40px;margin-right:10px;overflow:hidden;text-align:center;vertical-align:middle;width:40px}.table tr td .avatar img,.table tr th .avatar img{height:40px;width:40px}.table tr td .avatar .icon,.table tr th .avatar .icon{margin-top:8px}.banner{background-color:#0e90d9;color:#fff;display:none;height:50px;max-height:50px;padding:13px 20px;position:fixed;text-align:center;width:100%;z-index:10}.banner .thumbnail{cursor:pointer;margin-right:10px;width:20px}.banner .hovered-container{display:none;position:relative;right:110px;top:-28px;z-index:10}.banner .hovered-container.show{display:inline-block}.banner .hovered-container img{position:absolute}.banner span{vertical-align:super}.banner i.close-white-icon{cursor:pointer;float:right}body.top-banner .center-box,body.top-banner .content-container,body.top-banner .navbar-top{top:50px}body.top-banner .navbar-left{top:110px}body.top-banner .center-box{position:relative}body.top-banner .banner{display:inline-block}.email-action-container .btn-secondary-outline{font-size:16px}.email-action-container .btn-secondary-outline span{padding:1px 0}.email-action-container .btn-secondary-outline .icon{margin-right:5px}.email-action-container .sidebar-filter{padding:0}.email-action-container .sidebar-filter header{margin-bottom:0;padding:30px 20px 20px}.email-action-container .sidebar-filter .panel{border-bottom:1px solid #c1c2c3;padding:20px}.email-action-container .sidebar-filter .panel .panel-header .links{float:right}.email-action-container .sidebar-filter .panel .panel-header .links .icon{cursor:pointer;height:24px;width:24px}.email-action-container .sidebar-filter .panel .panel-header .links .icon.close-icon{margin-left:5px;margin-top:-2px}.email-action-container .sidebar-filter .panel .panel-body{border:1px solid #c1c2c3;box-shadow:none}.email-action-container .sidebar-filter .panel .btn-group button{font-size:18px;margin-bottom:10px;width:100%}.email-action-container .sidebar-filter .panel .btn-group button:last-child{margin-bottom:0}.email-action-container .sidebar-filter .panel .btn-group .form-group{margin-bottom:10px}.email-action-container .sidebar-filter .panel .btn-group .form-group .control{border:2px solid;padding:6px 10px 7px}.email-action-container .sidebar-filter .panel .btn-group .form-group .icon{position:absolute;right:13px;top:7px}.email-action-container .sidebar-filter .panel .contact-details .name{color:#546e7a;margin-bottom:10px}.email-action-container .sidebar-filter .panel .contact-details .email{color:#546e7a;font-weight:500;margin-bottom:10px}.email-action-container .sidebar-filter .panel .contact-details .email .icon{margin-right:10px;margin-top:1px}.email-list .email-item{margin-bottom:40px}.email-list .email-item .email-header{margin-bottom:20px}.email-list .email-item .email-header .row{color:#546e7a}.email-list .email-item .email-header .row .label{font-weight:400}.email-list .email-item .email-header .row .value{font-weight:500}.email-list .email-item .email-header .row .time{float:right;position:relative;text-align:right;width:215px}.email-list .email-item .email-header .row .time>.icon{cursor:pointer;transform:rotate(90deg)}.email-list .email-item .email-header .row .time .dropdown-list .icon{margin-right:15px}.email-list .email-item .email-content{background-color:#fff;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);color:#546e7a;padding:30px}.email-list .email-item .email-content .attachment-list{margin-top:30px}.email-list .email-item .email-content .attachment-list .attachment-item{display:block;margin-bottom:10px}.email-list .email-item .email-content .attachment-list .attachment-item:last-child{margin-bottom:0}.email-list .email-item .email-content .attachment-list .attachment-item a{color:#546e7a}.email-list .email-action span{color:#546e7a;cursor:pointer;font-weight:500;padding:8px}.email-list .email-action span.reply-button{margin-right:20px}.email-list .email-action span .icon{margin-right:10px}.email-list .email-form-container .panel .panel-bottom{margin-top:25px}.email-list .email-form-container .panel .panel-bottom button.btn{margin-right:30px}.email-list .email-form-container .panel .panel-bottom label{color:#546e7a;cursor:pointer;font-size:18px;font-weight:500}.tags-container{display:inline-block;margin-left:10px;position:relative}.tags-container .icon.tags-icon{cursor:pointer;vertical-align:middle}.tags-container ul.tag-list{display:inline-block;margin-left:10px}.tags-container ul.tag-list li{border-radius:4px;color:#fff;display:inline-block;font-size:16px;font-weight:500;margin-right:8px;padding:3px 10px}.tags-container ul.tag-list li:last-child{margin-right:0}.tags-container ul.tag-list li .icon{cursor:pointer;height:15px;width:15px}.tags-container .tag-dropdown{background-color:#fff;border:1px solid #f0f0f0;box-shadow:0 2px 5px 0 rgba(39,49,58,.15);margin-bottom:20px;position:absolute;text-align:left;top:35px;width:215px;z-index:10}.tags-container .tag-dropdown .lookup-results{color:#546e7a;font-size:18px}.tags-container .tag-dropdown .lookup-results .control-list-item:hover{background-color:#fff}.tags-container .tag-dropdown .form-group{margin:0!important;padding:5px 10px;width:100%!important}.tags-container .tag-dropdown .form-group .loader-active-icon{right:15px}.tags-container .tag-dropdown .form-container{padding:5px 0}.tags-container .tag-dropdown .form-container .color-list,.tags-container .tag-dropdown .form-container .form-group .control{margin-bottom:5px;margin-top:10px}.tags-container .tag-dropdown .form-container .color-list span{border-radius:50%;box-shadow:0 4px 15.36px .75px rgba(0,0,0,.1),0 2px 6px 0 rgba(0,0,0,.15);cursor:pointer;display:inline-block;height:25px;margin-right:3px;transition:.2s cubic-bezier(.4,0,.2,1);width:25px}.tags-container .tag-dropdown .form-container .color-list span.active{border:3px solid #fff}.tags-container .tag-dropdown .form-container .button-group{border-top:1px solid #c1c2c3;display:inline-block;padding-top:10px}.pipeline-stage-controls-wrapper{margin-bottom:40px}.pipeline-stage-controls-wrapper .pipeline-stage-container{display:flex;position:relative;width:100%}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages{align-items:center;border-radius:4px;display:flex;flex-flow:row nowrap;overflow:hidden;width:100%}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages::-webkit-scrollbar{display:none}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage{background:#c1c2c3;color:#263238;font-size:16px;font-weight:500;min-width:200px;text-align:center;width:100%}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage span{cursor:pointer;display:block;overflow:hidden;padding:7px 5px 7px 22px;text-overflow:ellipsis;white-space:nowrap}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage span .icon{float:right}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage:not(:last-child){position:relative}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage:not(:last-child):before{background:#c1c2c3;border-radius:0 0 0 25px;box-shadow:1px -1px 0 1px #fff,1px -1px 0 1px #fff;content:"";height:25px;position:absolute;right:-12px;top:50%;transform:translateY(-50%) rotate(45deg);width:25px;z-index:1}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage.active{background-color:#0e90d9;color:#fff}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage.active:before{background:#0e90d9}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage .dropdown-list{font-weight:400;right:0}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage .dropdown-list ul li{color:#546e7a}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages .stage .dropdown-list ul li:hover{color:#fff}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages.won .stage{background-color:#53c41a;color:#fff}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages.won .stage:before{background:#53c41a}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages.lost .stage{background-color:#ff4d50;color:#fff}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stages.lost .stage:before{background:#ff4d50}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stage-controls{align-items:center;display:flex;margin-left:10px;width:72px}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stage-controls .btn{border:1px solid;border-radius:4px;height:36px;padding:7px}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stage-controls .btn:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.pipeline-stage-controls-wrapper .pipeline-stage-container .pipeline-stage-controls .btn:last-child{border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px}.pipeline-stage-controls-wrapper .date-panel{display:inline-block;font-size:14px;margin-top:5px;width:100%}.pipeline-stage-controls-wrapper .date-panel .pull-left{float:left}.pipeline-stage-controls-wrapper .date-panel .pull-right{float:right}.pipeline-stage-controls-wrapper .date-panel .pull-left .icon,.pipeline-stage-controls-wrapper .date-panel .pull-right .icon{height:18px;vertical-align:middle;width:18px}.pipeline-stage-controls-wrapper .date-panel .pull-left label,.pipeline-stage-controls-wrapper .date-panel .pull-right label{color:#546e7a;font-weight:500}.pipeline-stage-controls-wrapper .date-panel .pull-left span,.pipeline-stage-controls-wrapper .date-panel .pull-right span{color:#263238}.switch-pipeline-container{display:inline-block;margin-right:6px}.switch-pipeline-container .control{border:1px solid #c1c2c3;height:40px;margin:0}.switch-view-container{display:inline-block;margin-left:-5px;margin-right:6px;vertical-align:top}.switch-view-container .icon-container{border:1px solid #c1c2c3;cursor:pointer;display:inline-block;height:40px;padding:6px 10px 10px 8px}.switch-view-container .icon-container:first-child{border-radius:3px 0 0 3px;left:5px;position:relative}.switch-view-container .icon-container:last-child{border-radius:0 3px 3px 0}.switch-view-container .icon-container.active{background-color:#546e7a;border-color:#546e7a;cursor:not-allowed}.switch-view-container .icon-container .icon{height:22px;vertical-align:middle;width:24px}.empty-record{text-align:center}.empty-record img{height:100px;margin-bottom:15px;width:100px}.empty-record span{display:block}.quote-item-list .table{padding:5px}.quote-item-list .table table{margin-bottom:20px}.quote-item-list .table table tr th.actions{width:50px}.quote-item-list .table table tr td{vertical-align:top}.quote-item-list .table table tr td.actions{vertical-align:middle;width:50px}.quote-item-list .table table tr td.actions .icon{cursor:pointer}.quote-item-list .table table tr td .form-group{min-width:100%!important}.quote-item-list .table table tr td .form-group .control{margin:0}.quote-item-list .quote-summary{padding:5px}.quote-item-list .quote-summary table{float:right;margin-top:40px}.quote-item-list .quote-summary table tr td{font-weight:500;padding:5px 8px;vertical-align:text-bottom}.quote-item-list .quote-summary table tr td .form-group{margin:0;width:100px!important}.quote-item-list .quote-summary table tr td .form-group .control{margin:0}.lead-quote-list table tr td.actions .icon{cursor:pointer}.lead-quote-list table tr td.actions .dropdown-list{right:60px}.web-form-container .panel-separator,.workflow-container .panel-separator{border-bottom:1px solid #d3d3d3;margin:25px 0}.web-form-container .web-form-panel .header label,.web-form-container .workflow-panel .header label,.workflow-container .web-form-panel .header label,.workflow-container .workflow-panel .header label{color:#546e7a;font-size:18px;font-weight:500}.web-form-container .web-form-panel .header p,.web-form-container .workflow-panel .header p,.workflow-container .web-form-panel .header p,.workflow-container .workflow-panel .header p{color:#6f6f6f;font-size:16px;font-style:italic;margin:5px 0 20px}.web-form-container .web-form-panel table tr td.actions,.web-form-container .workflow-panel table tr td.actions,.workflow-container .web-form-panel table tr td.actions,.workflow-container .workflow-panel table tr td.actions{width:50px}.web-form-container .web-form-panel table tr td.actions .icon,.web-form-container .workflow-panel table tr td.actions .icon,.workflow-container .web-form-panel table tr td.actions .icon,.workflow-container .workflow-panel table tr td.actions .icon{cursor:pointer;margin-top:20px}.web-form-panel .dropdown-list .dropdown-container ul li{color:#263238;cursor:default;font-weight:500}.web-form-panel .dropdown-list .dropdown-container ul li:hover{background:none}.web-form-panel .dropdown-list .dropdown-container ul li ul li{color:#546e7a;cursor:pointer;font-weight:400}.web-form-panel .dropdown-list .dropdown-container ul li ul li:hover{background:#0e90d9;color:#fff}.web-form-panel .dragable-container table tr td{vertical-align:bottom}.web-form-panel .dragable-container table tr td.delete-icon .icon,.web-form-panel .dragable-container table tr td.dragable-icon .icon{margin-bottom:10px}.web-form-panel .dragable-container table tr td .form-group .control{margin-top:10px}.vuecal__event{background-color:#0e90d9!important;color:#fff!important;cursor:pointer}.vuecal__event.done{background-color:#53c41a!important}.image-upload-brick{border:1px dashed #546e7a;border-radius:5px;display:inline-block;height:100px;margin-right:15px;overflow:hidden;position:relative;transition:.2s cubic-bezier(.4,0,.2,1);vertical-align:middle;width:100px}.image-upload-brick input[type=file]{height:100px;opacity:0;position:absolute;width:100px;z-index:3}.image-upload-brick .upload-icon{height:40px;left:50%;margin-left:-20px;margin-top:-20px;position:absolute;top:50%;width:40px;z-index:1}.image-upload-brick img{background:#fff;display:block;height:100px;position:absolute;width:100px;z-index:2}.image-info-brick{display:inline-block;margin:10px 0;vertical-align:middle}.image-info-brick .field-info{color:#546e7a;display:block;font-size:16px;font-style:italic} diff --git a/packages/Webkul/Admin/publishable/assets/images/activities-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/activities-active-icon.svg new file mode 100644 index 0000000..05bc456 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/activities-active-icon.svg @@ -0,0 +1,5 @@ +> + + diff --git a/packages/Webkul/Admin/publishable/assets/images/activities-icon.svg b/packages/Webkul/Admin/publishable/assets/images/activities-icon.svg new file mode 100644 index 0000000..9f304f9 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/activities-icon.svg @@ -0,0 +1,5 @@ +> + + diff --git a/packages/Webkul/Admin/publishable/assets/images/attribute-icon.svg b/packages/Webkul/Admin/publishable/assets/images/attribute-icon.svg new file mode 100644 index 0000000..6c9a7c6 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/attribute-icon.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/avatar-dark-icon.svg b/packages/Webkul/Admin/publishable/assets/images/avatar-dark-icon.svg new file mode 100644 index 0000000..7800c9a --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/avatar-dark-icon.svg @@ -0,0 +1,6 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/avatar-icon.svg b/packages/Webkul/Admin/publishable/assets/images/avatar-icon.svg new file mode 100644 index 0000000..94a1c2d --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/avatar-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/calendar-line-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/calendar-line-active-icon.svg new file mode 100644 index 0000000..df30602 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/calendar-line-active-icon.svg @@ -0,0 +1,6 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/calendar-line-icon.svg b/packages/Webkul/Admin/publishable/assets/images/calendar-line-icon.svg new file mode 100644 index 0000000..db0a3f4 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/calendar-line-icon.svg @@ -0,0 +1,6 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/call-icon.svg b/packages/Webkul/Admin/publishable/assets/images/call-icon.svg new file mode 100644 index 0000000..f8d00b5 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/call-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/dashboard-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/dashboard-active-icon.svg new file mode 100644 index 0000000..0da5203 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/dashboard-active-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/dashboard-icon.svg b/packages/Webkul/Admin/publishable/assets/images/dashboard-icon.svg new file mode 100644 index 0000000..72ac425 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/dashboard-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/dollar-circle-icon.svg b/packages/Webkul/Admin/publishable/assets/images/dollar-circle-icon.svg new file mode 100644 index 0000000..bfc8fb2 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/dollar-circle-icon.svg @@ -0,0 +1,6 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/drag-icon.svg b/packages/Webkul/Admin/publishable/assets/images/drag-icon.svg new file mode 100644 index 0000000..ff4047e --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/drag-icon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/ellipsis-icon.svg b/packages/Webkul/Admin/publishable/assets/images/ellipsis-icon.svg new file mode 100644 index 0000000..5f5a28d --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/ellipsis-icon.svg @@ -0,0 +1,6 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/email-icon.svg b/packages/Webkul/Admin/publishable/assets/images/email-icon.svg new file mode 100644 index 0000000..0b5633c --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/email-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/email-send-icon.svg b/packages/Webkul/Admin/publishable/assets/images/email-send-icon.svg new file mode 100644 index 0000000..1b30a45 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/email-send-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/email-template-icon.svg b/packages/Webkul/Admin/publishable/assets/images/email-template-icon.svg new file mode 100644 index 0000000..f619ab7 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/email-template-icon.svg @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/emails-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/emails-active-icon.svg new file mode 100644 index 0000000..abda225 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/emails-active-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/emails-icon.svg b/packages/Webkul/Admin/publishable/assets/images/emails-icon.svg new file mode 100644 index 0000000..c6d0203 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/emails-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/empty-bar-icon.svg b/packages/Webkul/Admin/publishable/assets/images/empty-bar-icon.svg new file mode 100644 index 0000000..1b758aa --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/empty-bar-icon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/empty-bar-vertical-icon.svg b/packages/Webkul/Admin/publishable/assets/images/empty-bar-vertical-icon.svg new file mode 100644 index 0000000..ac8e212 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/empty-bar-vertical-icon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/empty-kanban-icon.svg b/packages/Webkul/Admin/publishable/assets/images/empty-kanban-icon.svg new file mode 100644 index 0000000..fcf5d4a --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/empty-kanban-icon.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/empty-state-icon.svg b/packages/Webkul/Admin/publishable/assets/images/empty-state-icon.svg new file mode 100644 index 0000000..db3e50b --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/empty-state-icon.svg @@ -0,0 +1,11 @@ + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/empty-table-icon.svg b/packages/Webkul/Admin/publishable/assets/images/empty-table-icon.svg new file mode 100644 index 0000000..4a857b4 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/empty-table-icon.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/error-illustraton.svg b/packages/Webkul/Admin/publishable/assets/images/error-illustraton.svg new file mode 100644 index 0000000..afee5fd --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/error-illustraton.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-144x144.png b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-144x144.png new file mode 100644 index 0000000..f6aa9e7 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-144x144.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-192x192.png b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-192x192.png new file mode 100644 index 0000000..db7fe99 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-192x192.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-36x36.png b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-36x36.png new file mode 100644 index 0000000..356ee60 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-36x36.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-48x48.png b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-48x48.png new file mode 100644 index 0000000..a7319da Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-48x48.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-72x72.png b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-72x72.png new file mode 100644 index 0000000..c68f23d Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-72x72.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-96x96.png b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-96x96.png new file mode 100644 index 0000000..23d1920 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/android-icon-96x96.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-114x114.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-114x114.png new file mode 100644 index 0000000..ae17845 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-114x114.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-120x120.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-120x120.png new file mode 100644 index 0000000..014002c Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-120x120.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-144x144.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-144x144.png new file mode 100644 index 0000000..f6aa9e7 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-144x144.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-152x152.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-152x152.png new file mode 100644 index 0000000..ad9bd34 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-152x152.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-180x180.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-180x180.png new file mode 100644 index 0000000..a713e0d Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-180x180.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-57x57.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-57x57.png new file mode 100644 index 0000000..a33189c Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-57x57.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-60x60.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-60x60.png new file mode 100644 index 0000000..6460f3f Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-60x60.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-72x72.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-72x72.png new file mode 100644 index 0000000..c68f23d Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-72x72.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-76x76.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-76x76.png new file mode 100644 index 0000000..66e7aaf Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-76x76.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-precomposed.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-precomposed.png new file mode 100644 index 0000000..f657478 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon-precomposed.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon.png b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon.png new file mode 100644 index 0000000..f657478 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/apple-icon.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/browserconfig.xml b/packages/Webkul/Admin/publishable/assets/images/favicon/browserconfig.xml new file mode 100644 index 0000000..193b755 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/favicon/browserconfig.xml @@ -0,0 +1,11 @@ + + + + + + + + #ffffff + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/favicon-16x16.png b/packages/Webkul/Admin/publishable/assets/images/favicon/favicon-16x16.png new file mode 100644 index 0000000..952428b Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/favicon-16x16.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/favicon-32x32.png b/packages/Webkul/Admin/publishable/assets/images/favicon/favicon-32x32.png new file mode 100644 index 0000000..8d1ffd9 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/favicon-32x32.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/favicon-96x96.png b/packages/Webkul/Admin/publishable/assets/images/favicon/favicon-96x96.png new file mode 100644 index 0000000..23d1920 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/favicon-96x96.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/favicon.ico b/packages/Webkul/Admin/publishable/assets/images/favicon/favicon.ico new file mode 100644 index 0000000..8fd6915 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/favicon.ico differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/manifest.json b/packages/Webkul/Admin/publishable/assets/images/favicon/manifest.json new file mode 100644 index 0000000..4a3a89e --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/favicon/manifest.json @@ -0,0 +1,41 @@ +{ + "name": "App", + "icons": [ + { + "src": "\/android-icon-36x36.png", + "sizes": "36x36", + "type": "image\/png", + "density": "0.75" + }, + { + "src": "\/android-icon-48x48.png", + "sizes": "48x48", + "type": "image\/png", + "density": "1.0" + }, + { + "src": "\/android-icon-72x72.png", + "sizes": "72x72", + "type": "image\/png", + "density": "1.5" + }, + { + "src": "\/android-icon-96x96.png", + "sizes": "96x96", + "type": "image\/png", + "density": "2.0" + }, + { + "src": "\/android-icon-144x144.png", + "sizes": "144x144", + "type": "image\/png", + "density": "3.0" + }, + { + "src": "\/android-icon-192x192.png", + "sizes": "192x192", + "type": "image\/png", + "density": "4.0" + } + ] +} diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-144x144.png b/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-144x144.png new file mode 100644 index 0000000..f6aa9e7 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-144x144.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-150x150.png b/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-150x150.png new file mode 100644 index 0000000..4a42859 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-150x150.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-310x310.png b/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-310x310.png new file mode 100644 index 0000000..d3674c6 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-310x310.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-70x70.png b/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-70x70.png new file mode 100644 index 0000000..106a109 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/images/favicon/ms-icon-70x70.png differ diff --git a/packages/Webkul/Admin/publishable/assets/images/file-icon.svg b/packages/Webkul/Admin/publishable/assets/images/file-icon.svg new file mode 100644 index 0000000..800238a --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/file-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/group-icon.svg b/packages/Webkul/Admin/publishable/assets/images/group-icon.svg new file mode 100644 index 0000000..d3c2465 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/group-icon.svg @@ -0,0 +1,20 @@ + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/layout-column-line-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/layout-column-line-active-icon.svg new file mode 100644 index 0000000..3afe318 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/layout-column-line-active-icon.svg @@ -0,0 +1,5 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/layout-column-line-icon.svg b/packages/Webkul/Admin/publishable/assets/images/layout-column-line-icon.svg new file mode 100644 index 0000000..b6def06 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/layout-column-line-icon.svg @@ -0,0 +1,5 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/lead-icon.svg b/packages/Webkul/Admin/publishable/assets/images/lead-icon.svg new file mode 100644 index 0000000..6bb1694 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/lead-icon.svg @@ -0,0 +1,10 @@ + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/leads-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/leads-active-icon.svg new file mode 100644 index 0000000..7305ef0 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/leads-active-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/leads-icon.svg b/packages/Webkul/Admin/publishable/assets/images/leads-icon.svg new file mode 100644 index 0000000..7dfba97 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/leads-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/logo.svg b/packages/Webkul/Admin/publishable/assets/images/logo.svg new file mode 100644 index 0000000..4adf932 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/logo.svg @@ -0,0 +1,10 @@ + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/lunch-icon.svg b/packages/Webkul/Admin/publishable/assets/images/lunch-icon.svg new file mode 100644 index 0000000..215e154 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/lunch-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/mail-icon.svg b/packages/Webkul/Admin/publishable/assets/images/mail-icon.svg new file mode 100644 index 0000000..7c3dfdb --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/mail-icon.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/meeting-icon.svg b/packages/Webkul/Admin/publishable/assets/images/meeting-icon.svg new file mode 100644 index 0000000..af93f44 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/meeting-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/note-icon.svg b/packages/Webkul/Admin/publishable/assets/images/note-icon.svg new file mode 100644 index 0000000..3869cee --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/note-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/organization-icon.svg b/packages/Webkul/Admin/publishable/assets/images/organization-icon.svg new file mode 100644 index 0000000..c600484 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/organization-icon.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/person-icon.svg b/packages/Webkul/Admin/publishable/assets/images/person-icon.svg new file mode 100644 index 0000000..68446b1 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/person-icon.svg @@ -0,0 +1,10 @@ + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/phone-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/phone-active-icon.svg new file mode 100644 index 0000000..ec62c49 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/phone-active-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/phone-icon.svg b/packages/Webkul/Admin/publishable/assets/images/phone-icon.svg new file mode 100644 index 0000000..415d1c6 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/phone-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/pipeline-icon.svg b/packages/Webkul/Admin/publishable/assets/images/pipeline-icon.svg new file mode 100644 index 0000000..5b2143b --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/pipeline-icon.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/product-icon.svg b/packages/Webkul/Admin/publishable/assets/images/product-icon.svg new file mode 100644 index 0000000..eeb3a00 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/product-icon.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/products-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/products-active-icon.svg new file mode 100644 index 0000000..30de8ab --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/products-active-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/products-icon.svg b/packages/Webkul/Admin/publishable/assets/images/products-icon.svg new file mode 100644 index 0000000..f26d97a --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/products-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/quotation-icon.svg b/packages/Webkul/Admin/publishable/assets/images/quotation-icon.svg new file mode 100644 index 0000000..95afcfe --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/quotation-icon.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/role-icon.svg b/packages/Webkul/Admin/publishable/assets/images/role-icon.svg new file mode 100644 index 0000000..076af4f --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/role-icon.svg @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/settings-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/settings-active-icon.svg new file mode 100644 index 0000000..52411a1 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/settings-active-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/settings-icon.svg b/packages/Webkul/Admin/publishable/assets/images/settings-icon.svg new file mode 100644 index 0000000..9536b92 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/settings-icon.svg @@ -0,0 +1,5 @@ + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/source-icon.svg b/packages/Webkul/Admin/publishable/assets/images/source-icon.svg new file mode 100644 index 0000000..b5f0a7f --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/source-icon.svg @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/sprite-main.svg b/packages/Webkul/Admin/publishable/assets/images/sprite-main.svg new file mode 100644 index 0000000..6e7a4d5 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/sprite-main.svg @@ -0,0 +1,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/table-line-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/table-line-active-icon.svg new file mode 100644 index 0000000..d8fc84a --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/table-line-active-icon.svg @@ -0,0 +1,6 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/table-line-icon.svg b/packages/Webkul/Admin/publishable/assets/images/table-line-icon.svg new file mode 100644 index 0000000..dea6667 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/table-line-icon.svg @@ -0,0 +1,6 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/tag-icon.svg b/packages/Webkul/Admin/publishable/assets/images/tag-icon.svg new file mode 100644 index 0000000..d4d2dc9 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/tag-icon.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/tools-active-icon.svg b/packages/Webkul/Admin/publishable/assets/images/tools-active-icon.svg new file mode 100644 index 0000000..07155a8 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/tools-active-icon.svg @@ -0,0 +1,6 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/tools-icon.svg b/packages/Webkul/Admin/publishable/assets/images/tools-icon.svg new file mode 100644 index 0000000..e10ad45 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/tools-icon.svg @@ -0,0 +1,6 @@ + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/type-icon.svg b/packages/Webkul/Admin/publishable/assets/images/type-icon.svg new file mode 100644 index 0000000..dee32cb --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/type-icon.svg @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/user-icon.svg b/packages/Webkul/Admin/publishable/assets/images/user-icon.svg new file mode 100644 index 0000000..83cfe8b --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/user-icon.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/images/workflow-icon.svg b/packages/Webkul/Admin/publishable/assets/images/workflow-icon.svg new file mode 100644 index 0000000..19ebd1c --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/images/workflow-icon.svg @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/js/admin.js b/packages/Webkul/Admin/publishable/assets/js/admin.js new file mode 100644 index 0000000..24dd1b5 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/admin.js @@ -0,0 +1,2 @@ +/*! For license information please see admin.js.LICENSE.txt */ +(()=>{var e,t={2584:e=>{e.exports=function(e,t){return Array.prototype.slice.call(e,t)}},9669:(e,t,n)=>{e.exports=n(1609)},5448:(e,t,n)=>{"use strict";var r=n(4867),i=n(6026),a=n(4372),o=n(5327),s=n(4097),u=n(4109),l=n(7985),c=n(5061);e.exports=function(e){return new Promise((function(t,n){var d=e.data,f=e.headers,h=e.responseType;r.isFormData(d)&&delete f["Content-Type"];var p=new XMLHttpRequest;if(e.auth){var m=e.auth.username||"",v=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";f.Authorization="Basic "+btoa(m+":"+v)}var _=s(e.baseURL,e.url);function y(){if(p){var r="getAllResponseHeaders"in p?u(p.getAllResponseHeaders()):null,a={data:h&&"text"!==h&&"json"!==h?p.response:p.responseText,status:p.status,statusText:p.statusText,headers:r,config:e,request:p};i(t,n,a),p=null}}if(p.open(e.method.toUpperCase(),o(_,e.params,e.paramsSerializer),!0),p.timeout=e.timeout,"onloadend"in p?p.onloadend=y:p.onreadystatechange=function(){p&&4===p.readyState&&(0!==p.status||p.responseURL&&0===p.responseURL.indexOf("file:"))&&setTimeout(y)},p.onabort=function(){p&&(n(c("Request aborted",e,"ECONNABORTED",p)),p=null)},p.onerror=function(){n(c("Network Error",e,null,p)),p=null},p.ontimeout=function(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(c(t,e,e.transitional&&e.transitional.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",p)),p=null},r.isStandardBrowserEnv()){var g=(e.withCredentials||l(_))&&e.xsrfCookieName?a.read(e.xsrfCookieName):void 0;g&&(f[e.xsrfHeaderName]=g)}"setRequestHeader"in p&&r.forEach(f,(function(e,t){void 0===d&&"content-type"===t.toLowerCase()?delete f[t]:p.setRequestHeader(t,e)})),r.isUndefined(e.withCredentials)||(p.withCredentials=!!e.withCredentials),h&&"json"!==h&&(p.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&p.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&p.upload&&p.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function(e){p&&(p.abort(),n(e),p=null)})),d||(d=null),p.send(d)}))}},1609:(e,t,n)=>{"use strict";var r=n(4867),i=n(1849),a=n(321),o=n(7185);function s(e){var t=new a(e),n=i(a.prototype.request,t);return r.extend(n,a.prototype,t),r.extend(n,t),n}var u=s(n(5655));u.Axios=a,u.create=function(e){return s(o(u.defaults,e))},u.Cancel=n(5263),u.CancelToken=n(4972),u.isCancel=n(6502),u.all=function(e){return Promise.all(e)},u.spread=n(8713),u.isAxiosError=n(6268),e.exports=u,e.exports.default=u},5263:e=>{"use strict";function t(e){this.message=e}t.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},t.prototype.__CANCEL__=!0,e.exports=t},4972:(e,t,n)=>{"use strict";var r=n(5263);function i(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var n=this;e((function(e){n.reason||(n.reason=new r(e),t(n.reason))}))}i.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},i.source=function(){var e;return{token:new i((function(t){e=t})),cancel:e}},e.exports=i},6502:e=>{"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},321:(e,t,n)=>{"use strict";var r=n(4867),i=n(5327),a=n(782),o=n(3572),s=n(7185),u=n(4875),l=u.validators;function c(e){this.defaults=e,this.interceptors={request:new a,response:new a}}c.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=s(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=e.transitional;void 0!==t&&u.assertOptions(t,{silentJSONParsing:l.transitional(l.boolean,"1.0.0"),forcedJSONParsing:l.transitional(l.boolean,"1.0.0"),clarifyTimeoutError:l.transitional(l.boolean,"1.0.0")},!1);var n=[],r=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(r=r&&t.synchronous,n.unshift(t.fulfilled,t.rejected))}));var i,a=[];if(this.interceptors.response.forEach((function(e){a.push(e.fulfilled,e.rejected)})),!r){var c=[o,void 0];for(Array.prototype.unshift.apply(c,n),c=c.concat(a),i=Promise.resolve(e);c.length;)i=i.then(c.shift(),c.shift());return i}for(var d=e;n.length;){var f=n.shift(),h=n.shift();try{d=f(d)}catch(e){h(e);break}}try{i=o(d)}catch(e){return Promise.reject(e)}for(;a.length;)i=i.then(a.shift(),a.shift());return i},c.prototype.getUri=function(e){return e=s(this.defaults,e),i(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(e){c.prototype[e]=function(t,n){return this.request(s(n||{},{method:e,url:t,data:(n||{}).data}))}})),r.forEach(["post","put","patch"],(function(e){c.prototype[e]=function(t,n,r){return this.request(s(r||{},{method:e,url:t,data:n}))}})),e.exports=c},782:(e,t,n)=>{"use strict";var r=n(4867);function i(){this.handlers=[]}i.prototype.use=function(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1},i.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},i.prototype.forEach=function(e){r.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=i},4097:(e,t,n)=>{"use strict";var r=n(1793),i=n(7303);e.exports=function(e,t){return e&&!r(t)?i(e,t):t}},5061:(e,t,n)=>{"use strict";var r=n(481);e.exports=function(e,t,n,i,a){var o=new Error(e);return r(o,t,n,i,a)}},3572:(e,t,n)=>{"use strict";var r=n(4867),i=n(8527),a=n(6502),o=n(5655);function s(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function(e){return s(e),e.headers=e.headers||{},e.data=i.call(e,e.data,e.headers,e.transformRequest),e.headers=r.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||o.adapter)(e).then((function(t){return s(e),t.data=i.call(e,t.data,t.headers,e.transformResponse),t}),(function(t){return a(t)||(s(e),t&&t.response&&(t.response.data=i.call(e,t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},481:e=>{"use strict";e.exports=function(e,t,n,r,i){return e.config=t,n&&(e.code=n),e.request=r,e.response=i,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},7185:(e,t,n)=>{"use strict";var r=n(4867);e.exports=function(e,t){t=t||{};var n={},i=["url","method","data"],a=["headers","auth","proxy","params"],o=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],s=["validateStatus"];function u(e,t){return r.isPlainObject(e)&&r.isPlainObject(t)?r.merge(e,t):r.isPlainObject(t)?r.merge({},t):r.isArray(t)?t.slice():t}function l(i){r.isUndefined(t[i])?r.isUndefined(e[i])||(n[i]=u(void 0,e[i])):n[i]=u(e[i],t[i])}r.forEach(i,(function(e){r.isUndefined(t[e])||(n[e]=u(void 0,t[e]))})),r.forEach(a,l),r.forEach(o,(function(i){r.isUndefined(t[i])?r.isUndefined(e[i])||(n[i]=u(void 0,e[i])):n[i]=u(void 0,t[i])})),r.forEach(s,(function(r){r in t?n[r]=u(e[r],t[r]):r in e&&(n[r]=u(void 0,e[r]))}));var c=i.concat(a).concat(o).concat(s),d=Object.keys(e).concat(Object.keys(t)).filter((function(e){return-1===c.indexOf(e)}));return r.forEach(d,l),n}},6026:(e,t,n)=>{"use strict";var r=n(5061);e.exports=function(e,t,n){var i=n.config.validateStatus;n.status&&i&&!i(n.status)?t(r("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}},8527:(e,t,n)=>{"use strict";var r=n(4867),i=n(5655);e.exports=function(e,t,n){var a=this||i;return r.forEach(n,(function(n){e=n.call(a,e,t)})),e}},5655:(e,t,n)=>{"use strict";var r=n(4155),i=n(4867),a=n(6016),o=n(481),s={"Content-Type":"application/x-www-form-urlencoded"};function u(e,t){!i.isUndefined(e)&&i.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var l,c={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==r&&"[object process]"===Object.prototype.toString.call(r))&&(l=n(5448)),l),transformRequest:[function(e,t){return a(t,"Accept"),a(t,"Content-Type"),i.isFormData(e)||i.isArrayBuffer(e)||i.isBuffer(e)||i.isStream(e)||i.isFile(e)||i.isBlob(e)?e:i.isArrayBufferView(e)?e.buffer:i.isURLSearchParams(e)?(u(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):i.isObject(e)||t&&"application/json"===t["Content-Type"]?(u(t,"application/json"),function(e,t,n){if(i.isString(e))try{return(t||JSON.parse)(e),i.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){var t=this.transitional,n=t&&t.silentJSONParsing,r=t&&t.forcedJSONParsing,a=!n&&"json"===this.responseType;if(a||r&&i.isString(e)&&e.length)try{return JSON.parse(e)}catch(e){if(a){if("SyntaxError"===e.name)throw o(e,this,"E_JSON_PARSE");throw e}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300}};c.headers={common:{Accept:"application/json, text/plain, */*"}},i.forEach(["delete","get","head"],(function(e){c.headers[e]={}})),i.forEach(["post","put","patch"],(function(e){c.headers[e]=i.merge(s)})),e.exports=c},1849:e=>{"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),r=0;r{"use strict";var r=n(4867);function i(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,n){if(!t)return e;var a;if(n)a=n(t);else if(r.isURLSearchParams(t))a=t.toString();else{var o=[];r.forEach(t,(function(e,t){null!=e&&(r.isArray(e)?t+="[]":e=[e],r.forEach(e,(function(e){r.isDate(e)?e=e.toISOString():r.isObject(e)&&(e=JSON.stringify(e)),o.push(i(t)+"="+i(e))})))})),a=o.join("&")}if(a){var s=e.indexOf("#");-1!==s&&(e=e.slice(0,s)),e+=(-1===e.indexOf("?")?"?":"&")+a}return e}},7303:e=>{"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},4372:(e,t,n)=>{"use strict";var r=n(4867);e.exports=r.isStandardBrowserEnv()?{write:function(e,t,n,i,a,o){var s=[];s.push(e+"="+encodeURIComponent(t)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(i)&&s.push("path="+i),r.isString(a)&&s.push("domain="+a),!0===o&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},1793:e=>{"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},6268:e=>{"use strict";e.exports=function(e){return"object"==typeof e&&!0===e.isAxiosError}},7985:(e,t,n)=>{"use strict";var r=n(4867);e.exports=r.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function i(e){var r=e;return t&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=i(window.location.href),function(t){var n=r.isString(t)?i(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return!0}},6016:(e,t,n)=>{"use strict";var r=n(4867);e.exports=function(e,t){r.forEach(e,(function(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])}))}},4109:(e,t,n)=>{"use strict";var r=n(4867),i=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,n,a,o={};return e?(r.forEach(e.split("\n"),(function(e){if(a=e.indexOf(":"),t=r.trim(e.substr(0,a)).toLowerCase(),n=r.trim(e.substr(a+1)),t){if(o[t]&&i.indexOf(t)>=0)return;o[t]="set-cookie"===t?(o[t]?o[t]:[]).concat([n]):o[t]?o[t]+", "+n:n}})),o):o}},8713:e=>{"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},4875:(e,t,n)=>{"use strict";var r=n(8593),i={};["object","boolean","number","function","string","symbol"].forEach((function(e,t){i[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));var a={},o=r.version.split(".");function s(e,t){for(var n=t?t.split("."):o,r=e.split("."),i=0;i<3;i++){if(n[i]>r[i])return!0;if(n[i]0;){var a=r[i],o=t[a];if(o){var s=e[a],u=void 0===s||o(s,a,e);if(!0!==u)throw new TypeError("option "+a+" must be "+u)}else if(!0!==n)throw Error("Unknown option "+a)}},validators:i}},4867:(e,t,n)=>{"use strict";var r=n(1849),i=Object.prototype.toString;function a(e){return"[object Array]"===i.call(e)}function o(e){return void 0===e}function s(e){return null!==e&&"object"==typeof e}function u(e){if("[object Object]"!==i.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function l(e){return"[object Function]"===i.call(e)}function c(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),a(e))for(var n=0,r=e.length;n{"use strict";var r=n(1094),i=n.n(r),a=n(9980),o=n.n(a),s=n(6272),u=n.n(s),l=function(e,t,n){var r=n.includeSeconds,i=n.addSuffix;return void 0===i&&(i=!0),u()(e,{locale:t,includeSeconds:r,addSuffix:i})};const c=function(e,t){if(!e.prototype.$timeago){0;var n={locale:t.locale};e.prototype.$timeago=e.observable?e.observable(n):new e({data:n});var r=function(e){void 0===e&&(e={});var t=e.locales||{};return{name:e.name||"Timeago",props:{datetime:{required:!0},title:{type:[String,Boolean]},locale:{type:String},autoUpdate:{type:[Number,Boolean]},converter:{type:Function},converterOptions:{type:Object}},data:function(){return{timeago:this.getTimeago()}},computed:{localeName:function(){return this.locale||this.$timeago.locale}},mounted:function(){this.startUpdater()},beforeDestroy:function(){this.stopUpdater()},render:function(e){return e("time",{attrs:{datetime:new Date(this.datetime).toISOString(),title:"string"==typeof this.title?this.title:!1===this.title?null:this.timeago}},[this.timeago])},methods:{getTimeago:function(n){return(this.converter||e.converter||l)(n||this.datetime,t[this.locale||this.$timeago.locale],this.converterOptions||{})},convert:function(e){this.timeago=this.getTimeago(e)},startUpdater:function(){var e=this;if(this.autoUpdate){var t=!0===this.autoUpdate?60:this.autoUpdate;this.updater=setInterval((function(){e.convert()}),1e3*t)}},stopUpdater:function(){this.updater&&(clearInterval(this.updater),this.updater=null)}},watch:{autoUpdate:function(e){this.stopUpdater(),e&&this.startUpdater()},datetime:function(){this.convert()},localeName:function(){this.convert()},converter:function(){this.convert()},converterOptions:{handler:function(){this.convert()},deep:!0}}}}(t);e.component(r.name,r)}};var d=function(e){return W(["text","password","search","email","tel","url","textarea","number"],e.type)},f=function(e){return W(["radio","checkbox"],e.type)},h=function(e,t){return e.getAttribute("data-vv-"+t)},p=function(e){return"isNaN"in Number?Number.isNaN(e):"number"==typeof e&&e!=e},m=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return e.every((function(e){return null==e}))},v=function(e,t){if(e instanceof RegExp&&t instanceof RegExp)return v(e.source,t.source)&&v(e.flags,t.flags);if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(var n=0;n0;)t[n]=arguments[n+1];if(x(Object.assign))return Object.assign.apply(Object,[e].concat(t));if(null==e)throw new TypeError("Cannot convert undefined or null to object");var r=Object(e);return t.forEach((function(e){null!=e&&Object.keys(e).forEach((function(t){r[t]=e[t]}))})),r},O=0,E="{id}",C=function(e,t){for(var n=Array.isArray(e)?e:Y(e),r=0;r=0&&e.maxLength<524288&&(t=b("max:"+e.maxLength,t)),e.minLength>0&&(t=b("min:"+e.minLength,t)),"number"===e.type&&(t=b("decimal",t),""!==e.min&&(t=b("min_value:"+e.min,t)),""!==e.max&&(t=b("max_value:"+e.max,t))),t;if(function(e){return W(["date","week","month","datetime-local","time"],e.type)}(e)){var n=e.step&&Number(e.step)<60?"HH:mm:ss":"HH:mm";if("date"===e.type)return b("date_format:yyyy-MM-dd",t);if("datetime-local"===e.type)return b("date_format:yyyy-MM-ddT"+n,t);if("month"===e.type)return b("date_format:yyyy-MM",t);if("week"===e.type)return b("date_format:yyyy-[W]WW",t);if("time"===e.type)return b("date_format:"+n,t)}return t},F=function(e){return x(Object.values)?Object.values(e):Object.keys(e).map((function(t){return e[t]}))},W=function(e,t){return-1!==e.indexOf(t)},R=function(e){return Array.isArray(e)&&0===e.length},z=function(e,t,n){Object.defineProperty(e,t,{configurable:!1,writable:!0,value:n})},B="en",V=function(e){void 0===e&&(e={}),this.container={},this.merge(e)},U={locale:{configurable:!0}};U.locale.get=function(){return B},U.locale.set=function(e){B=e||"en"},V.prototype.hasLocale=function(e){return!!this.container[e]},V.prototype.setDateFormat=function(e,t){this.container[e]||(this.container[e]={}),this.container[e].dateFormat=t},V.prototype.getDateFormat=function(e){return this.container[e]&&this.container[e].dateFormat?this.container[e].dateFormat:null},V.prototype.getMessage=function(e,t,n){var r=null;return r=this.hasMessage(e,t)?this.container[e].messages[t]:this._getDefaultMessage(e),x(r)?r.apply(void 0,n):r},V.prototype.getFieldMessage=function(e,t,n,r){if(!this.hasLocale(e))return this.getMessage(e,n,r);var i=this.container[e].custom&&this.container[e].custom[t];if(!i||!i[n])return this.getMessage(e,n,r);var a=i[n];return x(a)?a.apply(void 0,r):a},V.prototype._getDefaultMessage=function(e){return this.hasMessage(e,"_default")?this.container[e].messages._default:this.container.en.messages._default},V.prototype.getAttribute=function(e,t,n){return void 0===n&&(n=""),this.hasAttribute(e,t)?this.container[e].attributes[t]:n},V.prototype.hasMessage=function(e,t){return!!(this.hasLocale(e)&&this.container[e].messages&&this.container[e].messages[t])},V.prototype.hasAttribute=function(e,t){return!!(this.hasLocale(e)&&this.container[e].attributes&&this.container[e].attributes[t])},V.prototype.merge=function(e){N(this.container,e)},V.prototype.setMessage=function(e,t,n){this.hasLocale(e)||(this.container[e]={messages:{},attributes:{}}),this.container[e].messages||(this.container[e].messages={}),this.container[e].messages[t]=n},V.prototype.setAttribute=function(e,t,n){this.hasLocale(e)||(this.container[e]={messages:{},attributes:{}}),this.container[e].attributes[t]=n},Object.defineProperties(V.prototype,U);var q={default:new V({en:{messages:{},attributes:{},custom:{}}})},J="default",G=function(){};G._checkDriverName=function(e){if(!e)throw k("you must provide a name to the dictionary driver")},G.setDriver=function(e,t){void 0===t&&(t=null),this._checkDriverName(e),t&&(q[e]=t),J=e},G.getDriver=function(){return q[J]};var X=function e(t,n){void 0===t&&(t=null),void 0===n&&(n=null),this.vmId=n||null,this.items=t&&t instanceof e?t.items:[]};X.prototype["function"==typeof Symbol?Symbol.iterator:"@@iterator"]=function(){var e=this,t=0;return{next:function(){return{value:e.items[t++],done:t>e.items.length}}}},X.prototype.add=function(e){var t;(t=this.items).push.apply(t,this._normalizeError(e))},X.prototype._normalizeError=function(e){var t=this;return Array.isArray(e)?e.map((function(e){return e.scope=m(e.scope)?null:e.scope,e.vmId=m(e.vmId)?t.vmId||null:e.vmId,e})):(e.scope=m(e.scope)?null:e.scope,e.vmId=m(e.vmId)?this.vmId||null:e.vmId,[e])},X.prototype.regenerate=function(){this.items.forEach((function(e){e.msg=x(e.regenerate)?e.regenerate():e.msg}))},X.prototype.update=function(e,t){var n=A(this.items,(function(t){return t.id===e}));if(n){var r=this.items.indexOf(n);this.items.splice(r,1),n.scope=t.scope,this.items.push(n)}},X.prototype.all=function(e){var t=this;return this.items.filter((function(n){var r=!0,i=!0;return m(e)||(r=n.scope===e),m(t.vmId)||(i=n.vmId===t.vmId),i&&r})).map((function(e){return e.msg}))},X.prototype.any=function(e){var t=this;return!!this.items.filter((function(n){var r=!0,i=!0;return m(e)||(r=n.scope===e),m(t.vmId)||(i=n.vmId===t.vmId),i&&r})).length},X.prototype.clear=function(e){var t=this,n=m(this.vmId)?function(){return!0}:function(e){return e.vmId===t.vmId},r=function(t){return t.scope===e};0===arguments.length?r=function(){return!0}:m(e)&&(e=null);for(var i=0;i=9999&&(O=0,E=E.replace("{id}","_{id}")),O++,E.replace("{id}",String(O))),this.el=e.el,this.updated=!1,this.vmId=e.vmId,z(this,"dependencies",[]),z(this,"watchers",[]),z(this,"events",[]),this.delay=0,this.rules={},this.forceRequired=!1,this._cacheId(e),this.classNames=j({},ve.classNames),e=j({},ve,e),this._delay=m(e.delay)?0:e.delay,this.validity=e.validity,this.aria=e.aria,this.flags=e.flags||{untouched:!0,touched:!1,dirty:!1,pristine:!0,valid:null,invalid:null,validated:!1,pending:!1,required:!1,changed:!1},z(this,"vm",e.vm),z(this,"componentInstance",e.component),this.ctorConfig=this.componentInstance?y("$options.$_veeValidate",this.componentInstance):void 0,this.update(e),this.initialValue=this.value,this.updated=!1},ye={validator:{configurable:!0},isRequired:{configurable:!0},isDisabled:{configurable:!0},alias:{configurable:!0},value:{configurable:!0},bails:{configurable:!0},rejectsFalse:{configurable:!0}};ye.validator.get=function(){return this.vm&&this.vm.$validator?this.vm.$validator:{validate:function(){return Promise.resolve(!0)}}},ye.isRequired.get=function(){return!!this.rules.required||this.forceRequired},ye.isDisabled.get=function(){return!(!this.el||!this.el.disabled)},ye.alias.get=function(){if(this._alias)return this._alias;var e=null;return this.ctorConfig&&this.ctorConfig.alias&&(e=x(this.ctorConfig.alias)?this.ctorConfig.alias.call(this.componentInstance):this.ctorConfig.alias),!e&&this.el&&(e=h(this.el,"as")),!e&&this.componentInstance?this.componentInstance.$attrs&&this.componentInstance.$attrs["data-vv-as"]:e},ye.value.get=function(){if(x(this.getter))return this.getter()},ye.bails.get=function(){return this._bails},ye.rejectsFalse.get=function(){return this.componentInstance&&this.ctorConfig?!!this.ctorConfig.rejectsFalse:!!this.el&&"checkbox"===this.el.type},_e.prototype.matches=function(e){var t=this;if(!e)return!0;if(e.id)return this.id===e.id;var n=m(e.vmId)?function(){return!0}:function(e){return e===t.vmId};return!!n(e.vmId)&&(void 0===e.name&&void 0===e.scope||(void 0===e.scope?this.name===e.name:void 0===e.name?this.scope===e.scope:e.name===this.name&&e.scope===this.scope))},_e.prototype._cacheId=function(e){this.el&&!e.targetOf&&(this.el._veeValidateId=this.id)},_e.prototype.waitFor=function(e){this._waitingFor=e},_e.prototype.isWaitingFor=function(e){return this._waitingFor===e},_e.prototype.update=function(e){var t,n,r,i=this;if(this.targetOf=e.targetOf||null,this.immediate=e.immediate||this.immediate||!1,this.persist=e.persist||this.persist||!1,!m(e.scope)&&e.scope!==this.scope&&x(this.validator.update)&&this.validator.update(this.id,{scope:e.scope}),this.scope=m(e.scope)?m(this.scope)?null:this.scope:e.scope,this.name=(m(e.name)?e.name:String(e.name))||this.name||null,this.rules=void 0!==e.rules?w(e.rules):this.rules,this._bails=void 0!==e.bails?e.bails:this._bails,this.model=e.model||this.model,this.listen=void 0!==e.listen?e.listen:this.listen,this.classes=!(!e.classes&&!this.classes)&&!this.componentInstance,this.classNames=L(e.classNames)?N(this.classNames,e.classNames):this.classNames,this.getter=x(e.getter)?e.getter:this.getter,this._alias=e.alias||this._alias,this.events=e.events?he(e.events):this.events,this.delay=(t=this.events,n=e.delay||this.delay,r=this._delay,"number"==typeof n?t.reduce((function(e,t){return e[t]=n,e}),{}):t.reduce((function(e,t){return"object"==typeof n&&t in n?(e[t]=n[t],e):"number"==typeof r?(e[t]=r,e):(e[t]=r&&r[t]||0,e)}),{})),this.updateDependencies(),this.addActionListeners(),void 0!==e.rules&&(this.flags.required=this.isRequired),0===Object.keys(e.rules||{}).length&&this.updated){var a=this.flags.validated;this.validator.validate("#"+this.id).then((function(){i.flags.validated=a}))}this.flags.validated&&void 0!==e.rules&&this.updated&&this.validator.validate("#"+this.id),this.updated=!0,this.addValueListeners(),this.el&&(this.updateClasses(),this.updateAriaAttrs())},_e.prototype.reset=function(){var e=this;this._cancellationToken&&(this._cancellationToken.cancelled=!0,delete this._cancellationToken);var t={untouched:!0,touched:!1,dirty:!1,pristine:!0,valid:null,invalid:null,validated:!1,pending:!1,required:!1,changed:!1};Object.keys(this.flags).filter((function(e){return"required"!==e})).forEach((function(n){e.flags[n]=t[n]})),this.initialValue=this.value,this.flags.changed=!1,this.addValueListeners(),this.addActionListeners(),this.updateClasses(!0),this.updateAriaAttrs(),this.updateCustomValidity()},_e.prototype.setFlags=function(e){var t=this,n={pristine:"dirty",dirty:"pristine",valid:"invalid",invalid:"valid",touched:"untouched",untouched:"touched"};Object.keys(e).forEach((function(r){t.flags[r]=e[r],n[r]&&void 0===e[n[r]]&&(t.flags[n[r]]=!e[r])})),void 0===e.untouched&&void 0===e.touched&&void 0===e.dirty&&void 0===e.pristine||this.addActionListeners(),this.updateClasses(),this.updateAriaAttrs(),this.updateCustomValidity()},_e.prototype.updateDependencies=function(){var e=this;this.dependencies.forEach((function(e){return e.field.destroy()})),this.dependencies=[];var t=Object.keys(this.rules).reduce((function(t,n){return ce.isTargetRule(n)&&t.push({selector:e.rules[n][0],name:n}),t}),[]);t.length&&this.vm&&this.vm.$el&&t.forEach((function(t){var n=t.selector,r=t.name,i=e.vm.$refs[n],a=Array.isArray(i)?i[0]:i;if(a){var o={vm:e.vm,classes:e.classes,classNames:e.classNames,delay:e.delay,scope:e.scope,events:e.events.join("|"),immediate:e.immediate,targetOf:e.id};x(a.$watch)?(o.component=a,o.el=a.$el,o.getter=ue.resolveGetter(a.$el,a.$vnode)):(o.el=a,o.getter=ue.resolveGetter(a,{})),e.dependencies.push({name:r,field:new _e(o)})}}))},_e.prototype.unwatch=function(e){if(void 0===e&&(e=null),!e)return this.watchers.forEach((function(e){return e.unwatch()})),void(this.watchers=[]);this.watchers.filter((function(t){return e.test(t.tag)})).forEach((function(e){return e.unwatch()})),this.watchers=this.watchers.filter((function(t){return!e.test(t.tag)}))},_e.prototype.updateClasses=function(e){var t=this;if(void 0===e&&(e=!1),this.classes&&!this.isDisabled){var n=function(n){T(n,t.classNames.dirty,t.flags.dirty),T(n,t.classNames.pristine,t.flags.pristine),T(n,t.classNames.touched,t.flags.touched),T(n,t.classNames.untouched,t.flags.untouched),e&&(T(n,t.classNames.valid,!1),T(n,t.classNames.invalid,!1)),!m(t.flags.valid)&&t.flags.validated&&T(n,t.classNames.valid,t.flags.valid),!m(t.flags.invalid)&&t.flags.validated&&T(n,t.classNames.invalid,t.flags.invalid)};if(f(this.el)){var r=document.querySelectorAll('input[name="'+this.el.name+'"]');Y(r).forEach(n)}else n(this.el)}},_e.prototype.addActionListeners=function(){var e=this;if(this.unwatch(/class/),this.el){var t=function(){e.flags.touched=!0,e.flags.untouched=!1,e.classes&&(T(e.el,e.classNames.touched,!0),T(e.el,e.classNames.untouched,!1)),e.unwatch(/^class_blur$/)},n=d(this.el)?"input":"change",r=function(){e.flags.dirty=!0,e.flags.pristine=!1,e.classes&&(T(e.el,e.classNames.pristine,!1),T(e.el,e.classNames.dirty,!0)),e.unwatch(/^class_input$/)};if(this.componentInstance&&x(this.componentInstance.$once))return this.componentInstance.$once("input",r),this.componentInstance.$once("blur",t),this.watchers.push({tag:"class_input",unwatch:function(){e.componentInstance.$off("input",r)}}),void this.watchers.push({tag:"class_blur",unwatch:function(){e.componentInstance.$off("blur",t)}});if(this.el){me(this.el,n,r);var i=f(this.el)?"change":"blur";me(this.el,i,t),this.watchers.push({tag:"class_input",unwatch:function(){e.el.removeEventListener(n,r)}}),this.watchers.push({tag:"class_blur",unwatch:function(){e.el.removeEventListener(i,t)}})}}},_e.prototype.checkValueChanged=function(){return(null!==this.initialValue||""!==this.value||!d(this.el))&&this.value!==this.initialValue},_e.prototype._determineInputEvent=function(){return this.componentInstance?this.componentInstance.$options.model&&this.componentInstance.$options.model.event||"input":this.model&&this.model.lazy?"change":d(this.el)?"input":"change"},_e.prototype._determineEventList=function(e){var t=this;return!this.events.length||this.componentInstance||d(this.el)?[].concat(this.events).map((function(e){return"input"===e&&t.model&&t.model.lazy?"change":e})):this.events.map((function(t){return"input"===t?e:t}))},_e.prototype.addValueListeners=function(){var e=this;if(this.unwatch(/^input_.+/),this.listen&&this.el){var t={cancelled:!1},n=this.targetOf?function(){var t=e.validator._resolveField("#"+e.targetOf);t&&t.flags.validated&&e.validator.validate("#"+e.targetOf)}:function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];(0===n.length||fe(n[0]))&&(n[0]=e.value),e.flags.pending=!0,e._cancellationToken=t,e.validator.validate("#"+e.id,n[0])},r=this._determineInputEvent(),i=this._determineEventList(r);if(W(i,r)){var a=null,o=null,s=!1;if(this.model&&this.model.expression&&(a=this.vm,o=this.model.expression,s=!0),!o&&this.componentInstance&&this.componentInstance.$options.model&&(a=this.componentInstance,o=this.componentInstance.$options.model.prop||"value"),a&&o){var u=g(n,this.delay[r],t),l=a.$watch(o,u);this.watchers.push({tag:"input_model",unwatch:function(){e.vm.$nextTick((function(){l()}))}}),s&&(i=i.filter((function(e){return e!==r})))}}i.forEach((function(r){var i=g(n,e.delay[r],t);e._addComponentEventListener(r,i),e._addHTMLEventListener(r,i)}))}},_e.prototype._addComponentEventListener=function(e,t){var n=this;this.componentInstance&&(this.componentInstance.$on(e,t),this.watchers.push({tag:"input_vue",unwatch:function(){n.componentInstance.$off(e,t)}}))},_e.prototype._addHTMLEventListener=function(e,t){var n=this;if(this.el&&!this.componentInstance){var r=function(r){me(r,e,t),n.watchers.push({tag:"input_native",unwatch:function(){r.removeEventListener(e,t)}})};if(r(this.el),f(this.el)){var i=document.querySelectorAll('input[name="'+this.el.name+'"]');Y(i).forEach((function(e){e._veeValidateId&&e!==n.el||r(e)}))}}},_e.prototype.updateAriaAttrs=function(){var e=this;if(this.aria&&this.el&&x(this.el.setAttribute)){var t=function(t){t.setAttribute("aria-required",e.isRequired?"true":"false"),t.setAttribute("aria-invalid",e.flags.invalid?"true":"false")};if(f(this.el)){var n=document.querySelectorAll('input[name="'+this.el.name+'"]');Y(n).forEach(t)}else t(this.el)}},_e.prototype.updateCustomValidity=function(){this.validity&&this.el&&x(this.el.setCustomValidity)&&this.validator.errors&&this.el.setCustomValidity(this.flags.valid?"":this.validator.errors.firstById(this.id)||"")},_e.prototype.destroy=function(){this._cancellationToken&&(this._cancellationToken.cancelled=!0),this.unwatch(),this.dependencies.forEach((function(e){return e.field.destroy()})),this.dependencies=[]},Object.defineProperties(_e.prototype,ye);var ge=function(e){void 0===e&&(e=[]),this.items=e||[],this.itemsById=this.items.reduce((function(e,t){return e[t.id]=t,e}),{})},be={length:{configurable:!0}};ge.prototype["function"==typeof Symbol?Symbol.iterator:"@@iterator"]=function(){var e=this,t=0;return{next:function(){return{value:e.items[t++],done:t>e.items.length}}}},be.length.get=function(){return this.items.length},ge.prototype.find=function(e){return A(this.items,(function(t){return t.matches(e)}))},ge.prototype.findById=function(e){return this.itemsById[e]||null},ge.prototype.filter=function(e){return Array.isArray(e)?this.items.filter((function(t){return e.some((function(e){return t.matches(e)}))})):this.items.filter((function(t){return t.matches(e)}))},ge.prototype.map=function(e){return this.items.map(e)},ge.prototype.remove=function(e){var t=null;if(!(t=e instanceof _e?e:this.find(e)))return null;var n=this.items.indexOf(t);return this.items.splice(n,1),delete this.itemsById[t.id],t},ge.prototype.push=function(e){if(!(e instanceof _e))throw k("FieldBag only accepts instances of Field that has an id defined.");if(!e.id)throw k("Field id must be defined.");if(this.findById(e.id))throw k("Field with id "+e.id+" is already added.");this.items.push(e),this.itemsById[e.id]=e},Object.defineProperties(ge.prototype,be);var we=function(e,t){this.id=t._uid,this._base=e,this._paused=!1,this.errors=new X(e.errors,this.id)},Me={flags:{configurable:!0},rules:{configurable:!0},fields:{configurable:!0},dictionary:{configurable:!0},locale:{configurable:!0}};Me.flags.get=function(){var e=this;return this._base.fields.items.filter((function(t){return t.vmId===e.id})).reduce((function(e,t){return t.scope&&(e["$"+t.scope]||(e["$"+t.scope]={}),e["$"+t.scope][t.name]=t.flags),e[t.name]=t.flags,e}),{})},Me.rules.get=function(){return this._base.rules},Me.fields.get=function(){return new ge(this._base.fields.filter({vmId:this.id}))},Me.dictionary.get=function(){return this._base.dictionary},Me.locale.get=function(){return this._base.locale},Me.locale.set=function(e){this._base.locale=e},we.prototype.localize=function(){for(var e,t=[],n=arguments.length;n--;)t[n]=arguments[n];return(e=this._base).localize.apply(e,t)},we.prototype.update=function(){for(var e,t=[],n=arguments.length;n--;)t[n]=arguments[n];return(e=this._base).update.apply(e,t)},we.prototype.attach=function(e){var t=j({},e,{vmId:this.id});return this._base.attach(t)},we.prototype.pause=function(){this._paused=!0},we.prototype.resume=function(){this._paused=!1},we.prototype.remove=function(e){return this._base.remove(e)},we.prototype.detach=function(e,t){return this._base.detach(e,t,this.id)},we.prototype.extend=function(){for(var e,t=[],n=arguments.length;n--;)t[n]=arguments[n];return(e=this._base).extend.apply(e,t)},we.prototype.validate=function(e,t,n){return void 0===n&&(n={}),this._paused?Promise.resolve(!0):this._base.validate(e,t,j({},{vmId:this.id},n||{}))},we.prototype.verify=function(){for(var e,t=[],n=arguments.length;n--;)t[n]=arguments[n];return(e=this._base).verify.apply(e,t)},we.prototype.validateAll=function(e,t){return void 0===t&&(t={}),this._paused?Promise.resolve(!0):this._base.validateAll(e,j({},{vmId:this.id},t||{}))},we.prototype.validateScopes=function(e){return void 0===e&&(e={}),this._paused?Promise.resolve(!0):this._base.validateScopes(j({},{vmId:this.id},e||{}))},we.prototype.destroy=function(){delete this.id,delete this._base},we.prototype.reset=function(e){return this._base.reset(Object.assign({},e||{},{vmId:this.id}))},we.prototype.flag=function(){for(var e,t=[],n=arguments.length;n--;)t[n]=arguments[n];return(e=this._base).flag.apply(e,t.concat([this.id]))},we.prototype._resolveField=function(){for(var e,t=[],n=arguments.length;n--;)t[n]=arguments[n];return(e=this._base)._resolveField.apply(e,t)},Object.defineProperties(we.prototype,Me);var ke=null,Le=function(){return ke},xe={provide:function(){return this.$validator&&!H(this.$vnode)?{$validator:this.$validator}:{}},beforeCreate:function(){if(!H(this.$vnode)&&!1!==this.$options.$__veeInject){this.$parent||ee(this.$options.$_veeValidate||{});var e=K(this);(!this.$parent||this.$options.$_veeValidate&&/new/.test(this.$options.$_veeValidate.validator))&&(this.$validator=new we(Le(),this));var t,n=(t=this.$options.inject,!(!L(t)||!t.$validator));if(this.$validator||!e.inject||n||(this.$validator=new we(Le(),this)),n||this.$validator){if(!n&&this.$validator)this.$options._base.util.defineReactive(this.$validator,"errors",this.$validator.errors);this.$options.computed||(this.$options.computed={}),this.$options.computed[e.errorBagName||"errors"]=function(){return this.$validator.errors},this.$options.computed[e.fieldsBagName||"fields"]=function(){return this.$validator.fields.items.reduce((function(e,t){return t.scope?(e["$"+t.scope]||(e["$"+t.scope]={}),e["$"+t.scope][t.name]=t.flags,e):(e[t.name]=t.flags,e)}),{})}}}},beforeDestroy:function(){this.$validator&&this._uid===this.$validator.id&&this.$validator.errors.clear()}};function De(e,t){return t&&t.$validator?t.$validator.fields.findById(e._veeValidateId):null}var Te={bind:function(e,t,n){var r=n.context.$validator;if(r){var i=ue.generate(e,t,n);r.attach(i)}},inserted:function(e,t,n){var r=De(e,n.context),i=ue.resolveScope(e,t,n);r&&i!==r.scope&&(r.update({scope:i}),r.updated=!1)},update:function(e,t,n){var r=De(e,n.context);if(!(!r||r.updated&&v(t.value,t.oldValue))){var i=ue.resolveScope(e,t,n),a=ue.resolveRules(e,t,n);r.update({scope:i,rules:a})}},unbind:function(e,t,n){var r=n.context,i=De(e,r);i&&r.$validator.detach(i)}},Ye=function(e,t,n){void 0===t&&(t={fastExit:!0}),void 0===n&&(n=null),this.errors=new X,this.fields=new ge,this._createFields(e),this.paused=!1,this.fastExit=!!m(t&&t.fastExit)||t.fastExit,this.$vee=n||{_vm:{$nextTick:function(e){return x(e)?e():Promise.resolve()},$emit:function(){},$off:function(){}}}},Se={rules:{configurable:!0},dictionary:{configurable:!0},flags:{configurable:!0},locale:{configurable:!0}},je={rules:{configurable:!0},dictionary:{configurable:!0},locale:{configurable:!0}};je.rules.get=function(){return ce.rules},Se.rules.get=function(){return ce.rules},Se.dictionary.get=function(){return G.getDriver()},je.dictionary.get=function(){return G.getDriver()},Se.flags.get=function(){return this.fields.items.reduce((function(e,t){var n;return t.scope?(e["$"+t.scope]=((n={})[t.name]=t.flags,n),e):(e[t.name]=t.flags,e)}),{})},Se.locale.get=function(){return Ye.locale},Se.locale.set=function(e){Ye.locale=e},je.locale.get=function(){return G.getDriver().locale},je.locale.set=function(e){var t=e!==G.getDriver().locale;G.getDriver().locale=e,t&&Ye.$vee&&Ye.$vee._vm&&Ye.$vee._vm.$emit("localeChanged")},Ye.create=function(e,t){return new Ye(e,t)},Ye.extend=function(e,t,n){void 0===n&&(n={}),Ye._guardExtend(e,t);var r=t.options||{};Ye._merge(e,{validator:t,paramNames:n&&n.paramNames||t.paramNames,options:j({hasTarget:!1,immediate:!0},r,n||{})})},Ye.remove=function(e){ce.remove(e)},Ye.prototype.localize=function(e,t){Ye.localize(e,t)},Ye.localize=function(e,t){var n;if(L(e))G.getDriver().merge(e);else{if(t){var r=e||t.name;t=j({},t),G.getDriver().merge(((n={})[r]=t,n))}e&&(Ye.locale=e)}},Ye.prototype.attach=function(e){var t=this,n={name:e.name,scope:e.scope,persist:!0},r=e.persist?this.fields.find(n):null;r&&(e.flags=r.flags,r.destroy(),this.fields.remove(r));var i=e.initialValue,a=new _e(e);return this.fields.push(a),a.immediate?this.$vee._vm.$nextTick((function(){return t.validate("#"+a.id,i||a.value,{vmId:e.vmId})})):this._validate(a,i||a.value,{initial:!0}).then((function(e){a.flags.valid=e.valid,a.flags.invalid=!e.valid})),a},Ye.prototype.flag=function(e,t,n){void 0===n&&(n=null);var r=this._resolveField(e,void 0,n);r&&t&&r.setFlags(t)},Ye.prototype.detach=function(e,t,n){var r=x(e.destroy)?e:this._resolveField(e,t,n);r&&(r.persist||(r.destroy(),this.errors.remove(r.name,r.scope,r.vmId),this.fields.remove(r)))},Ye.prototype.extend=function(e,t,n){void 0===n&&(n={}),Ye.extend(e,t,n)},Ye.prototype.reset=function(e){var t=this;return this.$vee._vm.$nextTick().then((function(){return t.$vee._vm.$nextTick()})).then((function(){t.fields.filter(e).forEach((function(n){n.waitFor(null),n.reset(),t.errors.remove(n.name,n.scope,e&&e.vmId)}))}))},Ye.prototype.update=function(e,t){var n=t.scope;this._resolveField("#"+e)&&this.errors.update(e,{scope:n})},Ye.prototype.remove=function(e){Ye.remove(e)},Ye.prototype.validate=function(e,t,n){var r=this;void 0===n&&(n={});var i=n.silent,a=n.vmId;if(this.paused)return Promise.resolve(!0);if(m(e))return this.validateScopes({silent:i,vmId:a});if("*"===e)return this.validateAll(void 0,{silent:i,vmId:a});if(/^(.+)\.\*$/.test(e)){var o=e.match(/^(.+)\.\*$/)[1];return this.validateAll(o)}var s=this._resolveField(e);if(!s)return this._handleFieldNotFound(e);i||(s.flags.pending=!0),void 0===t&&(t=s.value);var u=this._validate(s,t);return s.waitFor(u),u.then((function(e){return!i&&s.isWaitingFor(u)&&(s.waitFor(null),r._handleValidationResults([e],a)),e.valid}))},Ye.prototype.pause=function(){return this.paused=!0,this},Ye.prototype.resume=function(){return this.paused=!1,this},Ye.prototype.validateAll=function(e,t){var n=this;void 0===t&&(t={});var r=t.silent,i=t.vmId;if(this.paused)return Promise.resolve(!0);var a=null,o=!1;return"string"==typeof e?a={scope:e,vmId:i}:L(e)?(a=Object.keys(e).map((function(e){return{name:e,vmId:i,scope:null}})),o=!0):a=Array.isArray(e)?e.map((function(e){return"object"==typeof e?Object.assign({vmId:i},e):{name:e,vmId:i}})):{scope:null,vmId:i},Promise.all(this.fields.filter(a).map((function(t){return n._validate(t,o?e[t.name]:t.value)}))).then((function(e){return r||n._handleValidationResults(e,i),e.every((function(e){return e.valid}))}))},Ye.prototype.validateScopes=function(e){var t=this;void 0===e&&(e={});var n=e.silent,r=e.vmId;return this.paused?Promise.resolve(!0):Promise.all(this.fields.filter({vmId:r}).map((function(e){return t._validate(e,e.value)}))).then((function(e){return n||t._handleValidationResults(e,r),e.every((function(e){return e.valid}))}))},Ye.prototype.verify=function(e,t,n){void 0===n&&(n={});var r={name:n&&n.name||"{field}",rules:w(t),bails:y("bails",n,!0),forceRequired:!1,get isRequired(){return!!this.rules.required||this.forceRequired}},i=Object.keys(r.rules).filter(ce.isTargetRule);return i.length&&n&&L(n.values)&&(r.dependencies=i.map((function(e){var t=r.rules[e][0];return{name:e,field:{value:n.values[t]}}}))),this._validate(r,e).then((function(e){var t=[],n={};return e.errors.forEach((function(e){t.push(e.msg),n[e.rule]=e.msg})),{valid:e.valid,errors:t,failedRules:n}}))},Ye.prototype.destroy=function(){this.$vee._vm.$off("localeChanged")},Ye.prototype._createFields=function(e){var t=this;e&&Object.keys(e).forEach((function(n){var r=j({},{name:n,rules:e[n]});t.attach(r)}))},Ye.prototype._getDateFormat=function(e){var t=null;return e.date_format&&Array.isArray(e.date_format)&&(t=e.date_format[0]),t||G.getDriver().getDateFormat(this.locale)},Ye.prototype._formatErrorMessage=function(e,t,n,r){void 0===n&&(n={}),void 0===r&&(r=null);var i=this._getFieldDisplayName(e),a=this._getLocalizedParams(t,r);return G.getDriver().getFieldMessage(this.locale,e.name,t.name,[i,a,n])},Ye.prototype._convertParamObjectToArray=function(e,t){if(Array.isArray(e))return e;var n=ce.getParamNames(t);return n&&L(e)?n.reduce((function(t,n){return n in e&&t.push(e[n]),t}),[]):e},Ye.prototype._getLocalizedParams=function(e,t){void 0===t&&(t=null);var n=this._convertParamObjectToArray(e.params,e.name);return e.options.hasTarget&&n&&n[0]?[t||G.getDriver().getAttribute(this.locale,n[0],n[0])].concat(n.slice(1)):n},Ye.prototype._getFieldDisplayName=function(e){return e.alias||G.getDriver().getAttribute(this.locale,e.name,e.name)},Ye.prototype._convertParamArrayToObj=function(e,t){var n=ce.getParamNames(t);if(!n)return e;if(L(e)){if(n.some((function(t){return-1!==Object.keys(e).indexOf(t)})))return e;e=[e]}return e.reduce((function(e,t,r){return e[n[r]]=t,e}),{})},Ye.prototype._test=function(e,t,n){var r=this,i=ce.getValidatorMethod(n.name),a=Array.isArray(n.params)?Y(n.params):n.params;a||(a=[]);var o=null;if(!i||"function"!=typeof i)return Promise.reject(k("No such validator '"+n.name+"' exists."));if(n.options.hasTarget&&e.dependencies){var s=A(e.dependencies,(function(e){return e.name===n.name}));s&&(o=s.field.alias,a=[s.field.value].concat(a.slice(1)))}else"required"===n.name&&e.rejectsFalse&&(a=a.length?a:[!0]);if(n.options.isDate){var u=this._getDateFormat(e.rules);"date_format"!==n.name&&a.push(u)}var l=i(t,this._convertParamArrayToObj(a,n.name));return x(l.then)?l.then((function(t){var i=!0,a={};return Array.isArray(t)?i=t.every((function(e){return L(e)?e.valid:e})):(i=L(t)?t.valid:t,a=t.data),{valid:i,data:l.data,errors:i?[]:[r._createFieldError(e,n,a,o)]}})):(L(l)||(l={valid:l,data:{}}),{valid:l.valid,data:l.data,errors:l.valid?[]:[this._createFieldError(e,n,l.data,o)]})},Ye._merge=function(e,t){var n=t.validator,r=t.options,i=t.paramNames,a=x(n)?n:n.validate;n.getMessage&&G.getDriver().setMessage(Ye.locale,e,n.getMessage),ce.add(e,{validate:a,options:r,paramNames:i})},Ye._guardExtend=function(e,t){if(!x(t)&&!x(t.validate))throw k("Extension Error: The validator '"+e+"' must be a function or have a 'validate' method.")},Ye.prototype._createFieldError=function(e,t,n,r){var i=this;return{id:e.id,vmId:e.vmId,field:e.name,msg:this._formatErrorMessage(e,t,n,r),rule:t.name,scope:e.scope,regenerate:function(){return i._formatErrorMessage(e,t,n,r)}}},Ye.prototype._resolveField=function(e,t,n){if("#"===e[0])return this.fields.findById(e.slice(1));if(!m(t))return this.fields.find({name:e,scope:t,vmId:n});if(W(e,".")){var r=e.split("."),i=r[0],a=r.slice(1),o=this.fields.find({name:a.join("."),scope:i,vmId:n});if(o)return o}return this.fields.find({name:e,scope:null,vmId:n})},Ye.prototype._handleFieldNotFound=function(e,t){var n=m(t)?e:(m(t)?"":t+".")+e;return Promise.reject(k('Validating a non-existent field: "'+n+'". Use "attach()" first.'))},Ye.prototype._handleValidationResults=function(e,t){var n=this,r=e.map((function(e){return{id:e.id}}));this.errors.removeById(r.map((function(e){return e.id}))),e.forEach((function(e){n.errors.remove(e.field,e.scope,t)}));var i=e.reduce((function(e,t){return e.push.apply(e,t.errors),e}),[]);this.errors.add(i),this.fields.filter(r).forEach((function(t){var n=A(e,(function(e){return e.id===t.id}));t.setFlags({pending:!1,valid:n.valid,validated:!0})}))},Ye.prototype._shouldSkip=function(e,t){return!1!==e.bails&&(!(!e.isDisabled||!Q().useConstraintAttrs)||!e.isRequired&&(m(t)||""===t||R(t)))},Ye.prototype._shouldBail=function(e){return void 0!==e.bails?e.bails:this.fastExit},Ye.prototype._validate=function(e,t,n){var r=this;void 0===n&&(n={});var i=n.initial,a=Object.keys(e.rules).filter(ce.isRequireRule);if(e.forceRequired=!1,a.forEach((function(n){var i=ce.getOptions(n),a=r._test(e,t,{name:n,params:e.rules[n],options:i});if(x(a.then))throw k("Require rules cannot be async");if(!L(a))throw k("Require rules has to return an object (see docs)");!0===a.data.required&&(e.forceRequired=!0)})),this._shouldSkip(e,t))return Promise.resolve({valid:!0,id:e.id,field:e.name,scope:e.scope,errors:[]});var o=[],s=[],u=!1;return x(e.checkValueChanged)&&(e.flags.changed=e.checkValueChanged()),Object.keys(e.rules).filter((function(e){return!i||!ce.has(e)||ce.isImmediate(e)})).some((function(n){var i=ce.getOptions(n),a=r._test(e,t,{name:n,params:e.rules[n],options:i});return x(a.then)?o.push(a):!a.valid&&r._shouldBail(e)?(s.push.apply(s,a.errors),u=!0):o.push(new Promise((function(e){return e(a)}))),u})),u?Promise.resolve({valid:!1,errors:s,id:e.id,field:e.name,scope:e.scope}):Promise.all(o).then((function(t){return t.reduce((function(e,t){var n;return t.valid||(n=e.errors).push.apply(n,t.errors),e.valid=e.valid&&t.valid,e}),{valid:!0,errors:s,id:e.id,field:e.name,scope:e.scope})}))},Object.defineProperties(Ye.prototype,Se),Object.defineProperties(Ye,je);var Oe=function(e){return L(e)?Object.keys(e).reduce((function(t,n){return t[n]=Oe(e[n]),t}),{}):x(e)?e("{0}",["{1}","{2}","{3}"]):e},Ee=function(e,t){this.i18n=e,this.rootKey=t},Ce={locale:{configurable:!0}};Ce.locale.get=function(){return this.i18n.locale},Ce.locale.set=function(e){M("Cannot set locale from the validator when using vue-i18n, use i18n.locale setter instead")},Ee.prototype.getDateFormat=function(e){return this.i18n.getDateTimeFormat(e||this.locale)},Ee.prototype.setDateFormat=function(e,t){this.i18n.setDateTimeFormat(e||this.locale,t)},Ee.prototype.getMessage=function(e,t,n){var r=this.rootKey+".messages."+t,i=n;return Array.isArray(n)&&(i=[].concat.apply([],n)),this.i18n.te(r)?this.i18n.t(r,i):this.i18n.te(r,this.i18n.fallbackLocale)?this.i18n.t(r,this.i18n.fallbackLocale,i):this.i18n.t(this.rootKey+".messages._default",i)},Ee.prototype.getAttribute=function(e,t,n){void 0===n&&(n="");var r=this.rootKey+".attributes."+t;return this.i18n.te(r)?this.i18n.t(r):n},Ee.prototype.getFieldMessage=function(e,t,n,r){var i=this.rootKey+".custom."+t+"."+n;return this.i18n.te(i)?this.i18n.t(i,r):this.getMessage(e,n,r)},Ee.prototype.merge=function(e){var t=this;Object.keys(e).forEach((function(n){var r,i=N({},y(n+"."+t.rootKey,t.i18n.messages,{})),a=N(i,function(e){var t={};return e.messages&&(t.messages=Oe(e.messages)),e.custom&&(t.custom=Oe(e.custom)),e.attributes&&(t.attributes=e.attributes),m(e.dateFormat)||(t.dateFormat=e.dateFormat),t}(e[n]));t.i18n.mergeLocaleMessage(n,((r={})[t.rootKey]=a,r)),a.dateFormat&&t.i18n.setDateTimeFormat(n,a.dateFormat)}))},Ee.prototype.setMessage=function(e,t,n){var r,i;this.merge(((i={})[e]={messages:(r={},r[t]=n,r)},i))},Ee.prototype.setAttribute=function(e,t,n){var r,i;this.merge(((i={})[e]={attributes:(r={},r[t]=n,r)},i))},Object.defineProperties(Ee.prototype,Ce);var Ae,He,Pe,Ne={aggressive:function(){return{on:["input"]}},eager:function(e){return e.errors.length?{on:["input"]}:{on:["change","blur"]}},passive:function(){return{on:[]}},lazy:function(){return{on:["change"]}}},$e=function(e,t){var n;this.configure(e),Pe=this,t&&(Ae=t),this._validator=(n=new Ye(null,{fastExit:e&&e.fastExit},this),ke=n,n),this._initVM(this.config),this._initI18n(this.config)},Ie={i18nDriver:{configurable:!0},config:{configurable:!0}},Fe={i18nDriver:{configurable:!0},config:{configurable:!0}};$e.setI18nDriver=function(e,t){G.setDriver(e,t)},$e.configure=function(e){ee(e)},$e.setMode=function(e,t){if(ee({mode:e}),t){if(!x(t))throw new Error("A mode implementation must be a function");Ne[e]=t}},$e.use=function(e,t){return void 0===t&&(t={}),x(e)?Pe?void e({Validator:Ye,ErrorBag:X,Rules:Ye.rules},t):(He||(He=[]),void He.push({plugin:e,options:t})):M("The plugin must be a callable function")},$e.install=function(e,t){Ae&&e===Ae||(Ae=e,Pe=new $e(t),Ye.$vee=Pe,function(){try{var e=Object.defineProperty({},"passive",{get:function(){pe=!0}});window.addEventListener("testPassive",null,e),window.removeEventListener("testPassive",null,e)}catch(e){pe=!1}}(),Ae.mixin(xe),Ae.directive("validate",Te),He&&(He.forEach((function(e){var t=e.plugin,n=e.options;$e.use(t,n)})),He=null))},Ie.i18nDriver.get=function(){return G.getDriver()},Fe.i18nDriver.get=function(){return G.getDriver()},Ie.config.get=function(){return Q()},Fe.config.get=function(){return Q()},$e.prototype._initVM=function(e){var t=this;this._vm=new Ae({data:function(){return{errors:t._validator.errors,fields:t._validator.fields}}})},$e.prototype._initI18n=function(e){var t=this,n=e.dictionary,r=e.i18n,i=e.i18nRootKey,a=e.locale,o=function(){n&&t.i18nDriver.merge(n),t._validator.errors.regenerate()};r?($e.setI18nDriver("i18n",new Ee(r,i)),r._vm.$watch("locale",o)):"undefined"!=typeof window&&this._vm.$on("localeChanged",o),n&&this.i18nDriver.merge(n),a&&!r&&this._validator.localize(a)},$e.prototype.configure=function(e){ee(e)},Object.defineProperties($e.prototype,Ie),Object.defineProperties($e,Fe),$e.mixin=xe,$e.directive=Te,$e.Validator=Ye,$e.ErrorBag=X;var We,Re={_default:function(e){return"The "+e+" value is not valid"},after:function(e,t){var n=t[0];return"The "+e+" must be after "+(t[1]?"or equal to ":"")+n},alpha:function(e){return"The "+e+" field may only contain alphabetic characters"},alpha_dash:function(e){return"The "+e+" field may contain alpha-numeric characters as well as dashes and underscores"},alpha_num:function(e){return"The "+e+" field may only contain alpha-numeric characters"},alpha_spaces:function(e){return"The "+e+" field may only contain alphabetic characters as well as spaces"},before:function(e,t){var n=t[0];return"The "+e+" must be before "+(t[1]?"or equal to ":"")+n},between:function(e,t){return"The "+e+" field must be between "+t[0]+" and "+t[1]},confirmed:function(e){return"The "+e+" confirmation does not match"},credit_card:function(e){return"The "+e+" field is invalid"},date_between:function(e,t){return"The "+e+" must be between "+t[0]+" and "+t[1]},date_format:function(e,t){return"The "+e+" must be in the format "+t[0]},decimal:function(e,t){void 0===t&&(t=[]);var n=t[0];return void 0===n&&(n="*"),"The "+e+" field must be numeric and may contain"+(n&&"*"!==n?" "+n:"")+" decimal points"},digits:function(e,t){return"The "+e+" field must be numeric and contains exactly "+t[0]+" digits"},dimensions:function(e,t){return"The "+e+" field must be "+t[0]+" pixels by "+t[1]+" pixels"},email:function(e){return"The "+e+" field must be a valid email"},excluded:function(e){return"The "+e+" field must be a valid value"},ext:function(e){return"The "+e+" field must be a valid file"},image:function(e){return"The "+e+" field must be an image"},included:function(e){return"The "+e+" field must be a valid value"},integer:function(e){return"The "+e+" field must be an integer"},ip:function(e){return"The "+e+" field must be a valid ip address"},ip_or_fqdn:function(e){return"The "+e+" field must be a valid ip address or FQDN"},length:function(e,t){var n=t[0],r=t[1];return r?"The "+e+" length must be between "+n+" and "+r:"The "+e+" length must be "+n},max:function(e,t){return"The "+e+" field may not be greater than "+t[0]+" characters"},max_value:function(e,t){return"The "+e+" field must be "+t[0]+" or less"},mimes:function(e){return"The "+e+" field must have a valid file type"},min:function(e,t){return"The "+e+" field must be at least "+t[0]+" characters"},min_value:function(e,t){return"The "+e+" field must be "+t[0]+" or more"},numeric:function(e){return"The "+e+" field may only contain numeric characters"},regex:function(e){return"The "+e+" field format is invalid"},required:function(e){return"The "+e+" field is required"},required_if:function(e,t){return"The "+e+" field is required when the "+t[0]+" field has this value"},size:function(e,t){return"The "+e+" size must be less than "+function(e){var t=1024,n=0==(e=Number(e)*t)?0:Math.floor(Math.log(e)/Math.log(t));return 1*(e/Math.pow(t,n)).toFixed(2)+" "+["Byte","KB","MB","GB","TB","PB","EB","ZB","YB"][n]}(t[0])},url:function(e){return"The "+e+" field is not a valid URL"}},ze={name:"en",messages:Re,attributes:{}};function Be(e){if(null===e||!0===e||!1===e)return NaN;var t=Number(e);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}"undefined"!=typeof VeeValidate&&VeeValidate.Validator.localize(((We={})[ze.name]=ze,We));function Ve(e){var t=new Date(e.getTime()),n=t.getTimezoneOffset();return t.setSeconds(0,0),6e4*n+t.getTime()%6e4}var Ue=36e5,qe=6e4,Je={dateTimeDelimeter:/[T ]/,plainTime:/:/,timeZoneDelimeter:/[Z ]/i,YY:/^(\d{2})$/,YYY:[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],YYYY:/^(\d{4})/,YYYYY:[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],MM:/^-(\d{2})$/,DDD:/^-?(\d{3})$/,MMDD:/^-?(\d{2})-?(\d{2})$/,Www:/^-?W(\d{2})$/,WwwD:/^-?W(\d{2})-?(\d{1})$/,HH:/^(\d{2}([.,]\d*)?)$/,HHMM:/^(\d{2}):?(\d{2}([.,]\d*)?)$/,HHMMSS:/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,timezone:/([Z+-].*)$/,timezoneZ:/^(Z)$/,timezoneHH:/^([+-])(\d{2})$/,timezoneHHMM:/^([+-])(\d{2}):?(\d{2})$/};function Ge(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");if(null===e)return new Date(NaN);var n=t||{},r=null==n.additionalDigits?2:Be(n.additionalDigits);if(2!==r&&1!==r&&0!==r)throw new RangeError("additionalDigits must be 0, 1 or 2");if(e instanceof Date||"object"==typeof e&&"[object Date]"===Object.prototype.toString.call(e))return new Date(e.getTime());if("number"==typeof e||"[object Number]"===Object.prototype.toString.call(e))return new Date(e);if("string"!=typeof e&&"[object String]"!==Object.prototype.toString.call(e))return new Date(NaN);var i=Xe(e),a=Ze(i.date,r),o=a.year,s=a.restDateString,u=Ke(s,o);if(isNaN(u))return new Date(NaN);if(u){var l,c=u.getTime(),d=0;if(i.time&&(d=Qe(i.time),isNaN(d)))return new Date(NaN);if(i.timezone){if(l=et(i.timezone),isNaN(l))return new Date(NaN)}else l=Ve(new Date(c+d)),l=Ve(new Date(c+d+l));return new Date(c+d+l)}return new Date(NaN)}function Xe(e){var t,n={},r=e.split(Je.dateTimeDelimeter);if(Je.plainTime.test(r[0])?(n.date=null,t=r[0]):(n.date=r[0],t=r[1],Je.timeZoneDelimeter.test(n.date)&&(n.date=e.split(Je.timeZoneDelimeter)[0],t=e.substr(n.date.length,e.length))),t){var i=Je.timezone.exec(t);i?(n.time=t.replace(i[1],""),n.timezone=i[1]):n.time=t}return n}function Ze(e,t){var n,r=Je.YYY[t],i=Je.YYYYY[t];if(n=Je.YYYY.exec(e)||i.exec(e)){var a=n[1];return{year:parseInt(a,10),restDateString:e.slice(a.length)}}if(n=Je.YY.exec(e)||r.exec(e)){var o=n[1];return{year:100*parseInt(o,10),restDateString:e.slice(o.length)}}return{year:null}}function Ke(e,t){if(null===t)return null;var n,r,i,a;if(0===e.length)return(r=new Date(0)).setUTCFullYear(t),r;if(n=Je.MM.exec(e))return r=new Date(0),at(t,i=parseInt(n[1],10)-1)?(r.setUTCFullYear(t,i),r):new Date(NaN);if(n=Je.DDD.exec(e)){r=new Date(0);var o=parseInt(n[1],10);return function(e,t){if(t<1)return!1;var n=it(e);if(n&&t>366)return!1;if(!n&&t>365)return!1;return!0}(t,o)?(r.setUTCFullYear(t,0,o),r):new Date(NaN)}if(n=Je.MMDD.exec(e)){r=new Date(0),i=parseInt(n[1],10)-1;var s=parseInt(n[2],10);return at(t,i,s)?(r.setUTCFullYear(t,i,s),r):new Date(NaN)}if(n=Je.Www.exec(e))return ot(t,a=parseInt(n[1],10)-1)?tt(t,a):new Date(NaN);if(n=Je.WwwD.exec(e)){a=parseInt(n[1],10)-1;var u=parseInt(n[2],10)-1;return ot(t,a,u)?tt(t,a,u):new Date(NaN)}return null}function Qe(e){var t,n,r;if(t=Je.HH.exec(e))return st(n=parseFloat(t[1].replace(",",".")))?n%24*Ue:NaN;if(t=Je.HHMM.exec(e))return st(n=parseInt(t[1],10),r=parseFloat(t[2].replace(",",".")))?n%24*Ue+r*qe:NaN;if(t=Je.HHMMSS.exec(e)){n=parseInt(t[1],10),r=parseInt(t[2],10);var i=parseFloat(t[3].replace(",","."));return st(n,r,i)?n%24*Ue+r*qe+1e3*i:NaN}return null}function et(e){var t,n,r;if(t=Je.timezoneZ.exec(e))return 0;if(t=Je.timezoneHH.exec(e))return r=parseInt(t[2],10),ut()?(n=r*Ue,"+"===t[1]?-n:n):NaN;if(t=Je.timezoneHHMM.exec(e)){r=parseInt(t[2],10);var i=parseInt(t[3],10);return ut(r,i)?(n=r*Ue+i*qe,"+"===t[1]?-n:n):NaN}return 0}function tt(e,t,n){t=t||0,n=n||0;var r=new Date(0);r.setUTCFullYear(e,0,4);var i=7*t+n+1-(r.getUTCDay()||7);return r.setUTCDate(r.getUTCDate()+i),r}var nt=[31,28,31,30,31,30,31,31,30,31,30,31],rt=[31,29,31,30,31,30,31,31,30,31,30,31];function it(e){return e%400==0||e%4==0&&e%100!=0}function at(e,t,n){if(t<0||t>11)return!1;if(null!=n){if(n<1)return!1;var r=it(e);if(r&&n>rt[t])return!1;if(!r&&n>nt[t])return!1}return!0}function ot(e,t,n){return!(t<0||t>52)&&(null==n||!(n<0||n>6))}function st(e,t,n){return(null==e||!(e<0||e>=25))&&((null==t||!(t<0||t>=60))&&(null==n||!(n<0||n>=60)))}function ut(e,t){return null==t||!(t<0||t>59)}function lt(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=Ge(e,n).getTime(),i=Be(t);return new Date(r+i)}function ct(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=Ge(e,t);return!isNaN(n)}var dt={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function ft(e){return function(t){var n=t||{},r=n.width?String(n.width):e.defaultWidth;return e.formats[r]||e.formats[e.defaultWidth]}}var ht={date:ft({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:ft({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:ft({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},pt={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function mt(e){return function(t,n){var r=n||{},i=r.width?String(r.width):e.defaultWidth;return("formatting"===(r.context?String(r.context):"standalone")&&e.formattingValues?e.formattingValues[i]||e.formattingValues[e.defaultFormattingWidth]:e.values[i]||e.values[e.defaultWidth])[e.argumentCallback?e.argumentCallback(t):t]}}var vt={ordinalNumber:function(e,t){var n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:mt({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:mt({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:function(e){return Number(e)-1}}),month:mt({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:mt({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:mt({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaulFormattingWidth:"wide"})};function _t(e){return function(t,n){var r=String(t),i=n||{},a=i.width,o=a&&e.matchPatterns[a]||e.matchPatterns[e.defaultMatchWidth],s=r.match(o);if(!s)return null;var u,l=s[0],c=a&&e.parsePatterns[a]||e.parsePatterns[e.defaultParseWidth];return u="[object Array]"===Object.prototype.toString.call(c)?c.findIndex((function(e){return e.test(r)})):function(e,t){for(var n in e)if(e.hasOwnProperty(n)&&t(e[n]))return n}(c,(function(e){return e.test(r)})),u=e.valueCallback?e.valueCallback(u):u,{value:u=i.valueCallback?i.valueCallback(u):u,rest:r.slice(l.length)}}}var yt,gt={ordinalNumber:(yt={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:function(e){return parseInt(e,10)}},function(e,t){var n=String(e),r=t||{},i=n.match(yt.matchPattern);if(!i)return null;var a=i[0],o=n.match(yt.parsePattern);if(!o)return null;var s=yt.valueCallback?yt.valueCallback(o[0]):o[0];return{value:s=r.valueCallback?r.valueCallback(s):s,rest:n.slice(a.length)}}),era:_t({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:_t({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:function(e){return e+1}}),month:_t({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:_t({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:_t({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},bt={formatDistance:function(e,t,n){var r;return n=n||{},r="string"==typeof dt[e]?dt[e]:1===t?dt[e].one:dt[e].other.replace("{{count}}",t),n.addSuffix?n.comparison>0?"in "+r:r+" ago":r},formatLong:ht,formatRelative:function(e,t,n,r){return pt[e]},localize:vt,match:gt,options:{weekStartsOn:0,firstWeekContainsDate:1}},wt=864e5;function Mt(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=1,r=Ge(e,t),i=r.getUTCDay(),a=(i=a.getTime()?r+1:n.getTime()>=s.getTime()?r:r-1}function Lt(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=kt(e,t),r=new Date(0);r.setUTCFullYear(n,0,4),r.setUTCHours(0,0,0,0);var i=Mt(r,t);return i}var xt=6048e5;function Dt(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=Ge(e,t),r=Mt(n,t).getTime()-Lt(n,t).getTime();return Math.round(r/xt)+1}function Tt(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},r=n.locale,i=r&&r.options&&r.options.weekStartsOn,a=null==i?0:Be(i),o=null==n.weekStartsOn?a:Be(n.weekStartsOn);if(!(o>=0&&o<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var s=Ge(e,n),u=s.getUTCDay(),l=(u=1&&u<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var l=new Date(0);l.setUTCFullYear(r+1,0,u),l.setUTCHours(0,0,0,0);var c=Tt(l,t),d=new Date(0);d.setUTCFullYear(r,0,u),d.setUTCHours(0,0,0,0);var f=Tt(d,t);return n.getTime()>=c.getTime()?r+1:n.getTime()>=f.getTime()?r:r-1}function St(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},r=n.locale,i=r&&r.options&&r.options.firstWeekContainsDate,a=null==i?1:Be(i),o=null==n.firstWeekContainsDate?a:Be(n.firstWeekContainsDate),s=Yt(e,t),u=new Date(0);u.setUTCFullYear(s,0,o),u.setUTCHours(0,0,0,0);var l=Tt(u,t);return l}var jt=6048e5;function Ot(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=Ge(e,t),r=Tt(n,t).getTime()-St(n,t).getTime();return Math.round(r/jt)+1}var Et="midnight",Ct="noon",At="morning",Ht="afternoon",Pt="evening",Nt="night",$t={G:function(e,t,n){var r=e.getUTCFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(e,t,n,r){var i=e.getUTCFullYear(),a=i>0?i:1-i;return"yy"===t?It(a%100,2):"yo"===t?n.ordinalNumber(a,{unit:"year"}):It(a,t.length)},Y:function(e,t,n,r){var i=Yt(e,r),a=i>0?i:1-i;return"YY"===t?It(a%100,2):"Yo"===t?n.ordinalNumber(a,{unit:"year"}):It(a,t.length)},R:function(e,t,n,r){return It(kt(e,r),t.length)},u:function(e,t,n,r){return It(e.getUTCFullYear(),t.length)},Q:function(e,t,n,r){var i=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"Q":return String(i);case"QQ":return It(i,2);case"Qo":return n.ordinalNumber(i,{unit:"quarter"});case"QQQ":return n.quarter(i,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(i,{width:"narrow",context:"formatting"});default:return n.quarter(i,{width:"wide",context:"formatting"})}},q:function(e,t,n,r){var i=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"q":return String(i);case"qq":return It(i,2);case"qo":return n.ordinalNumber(i,{unit:"quarter"});case"qqq":return n.quarter(i,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(i,{width:"narrow",context:"standalone"});default:return n.quarter(i,{width:"wide",context:"standalone"})}},M:function(e,t,n,r){var i=e.getUTCMonth();switch(t){case"M":return String(i+1);case"MM":return It(i+1,2);case"Mo":return n.ordinalNumber(i+1,{unit:"month"});case"MMM":return n.month(i,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(i,{width:"narrow",context:"formatting"});default:return n.month(i,{width:"wide",context:"formatting"})}},L:function(e,t,n,r){var i=e.getUTCMonth();switch(t){case"L":return String(i+1);case"LL":return It(i+1,2);case"Lo":return n.ordinalNumber(i+1,{unit:"month"});case"LLL":return n.month(i,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(i,{width:"narrow",context:"standalone"});default:return n.month(i,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){var i=Ot(e,r);return"wo"===t?n.ordinalNumber(i,{unit:"week"}):It(i,t.length)},I:function(e,t,n,r){var i=Dt(e,r);return"Io"===t?n.ordinalNumber(i,{unit:"week"}):It(i,t.length)},d:function(e,t,n,r){var i=e.getUTCDate();return"do"===t?n.ordinalNumber(i,{unit:"date"}):It(i,t.length)},D:function(e,t,n,r){var i=function(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=Ge(e,t),r=n.getTime();n.setUTCMonth(0,1),n.setUTCHours(0,0,0,0);var i=n.getTime(),a=r-i;return Math.floor(a/wt)+1}(e,r);return"Do"===t?n.ordinalNumber(i,{unit:"dayOfYear"}):It(i,t.length)},E:function(e,t,n,r){var i=e.getUTCDay();switch(t){case"E":case"EE":case"EEE":return n.day(i,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(i,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(i,{width:"short",context:"formatting"});default:return n.day(i,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){var i=e.getUTCDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(a);case"ee":return It(a,2);case"eo":return n.ordinalNumber(a,{unit:"day"});case"eee":return n.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(i,{width:"short",context:"formatting"});default:return n.day(i,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){var i=e.getUTCDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(a);case"cc":return It(a,t.length);case"co":return n.ordinalNumber(a,{unit:"day"});case"ccc":return n.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(i,{width:"narrow",context:"standalone"});case"cccccc":return n.day(i,{width:"short",context:"standalone"});default:return n.day(i,{width:"wide",context:"standalone"})}},i:function(e,t,n,r){var i=e.getUTCDay(),a=0===i?7:i;switch(t){case"i":return String(a);case"ii":return It(a,t.length);case"io":return n.ordinalNumber(a,{unit:"day"});case"iii":return n.day(i,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(i,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(i,{width:"short",context:"formatting"});default:return n.day(i,{width:"wide",context:"formatting"})}},a:function(e,t,n){var r=e.getUTCHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(e,t,n){var r,i=e.getUTCHours();switch(r=12===i?Ct:0===i?Et:i/12>=1?"pm":"am",t){case"b":case"bb":case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,n){var r,i=e.getUTCHours();switch(r=i>=17?Pt:i>=12?Ht:i>=4?At:Nt,t){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,n,r){var i=e.getUTCHours()%12;return 0===i&&(i=12),"ho"===t?n.ordinalNumber(i,{unit:"hour"}):It(i,t.length)},H:function(e,t,n,r){var i=e.getUTCHours();return"Ho"===t?n.ordinalNumber(i,{unit:"hour"}):It(i,t.length)},K:function(e,t,n,r){var i=e.getUTCHours()%12;return"Ko"===t?n.ordinalNumber(i,{unit:"hour"}):It(i,t.length)},k:function(e,t,n,r){var i=e.getUTCHours();return 0===i&&(i=24),"ko"===t?n.ordinalNumber(i,{unit:"hour"}):It(i,t.length)},m:function(e,t,n,r){var i=e.getUTCMinutes();return"mo"===t?n.ordinalNumber(i,{unit:"minute"}):It(i,t.length)},s:function(e,t,n,r){var i=e.getUTCSeconds();return"so"===t?n.ordinalNumber(i,{unit:"second"}):It(i,t.length)},S:function(e,t,n,r){var i=t.length,a=e.getUTCMilliseconds();return It(Math.floor(a*Math.pow(10,i-3)),i)},X:function(e,t,n,r){var i=(r._originalDate||e).getTimezoneOffset();if(0===i)return"Z";switch(t){case"X":return Wt(i);case"XXXX":case"XX":return Ft(i);default:return Ft(i,":")}},x:function(e,t,n,r){var i=(r._originalDate||e).getTimezoneOffset();switch(t){case"x":return Wt(i);case"xxxx":case"xx":return Ft(i);default:return Ft(i,":")}},O:function(e,t,n,r){var i=(r._originalDate||e).getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Rt(i,":");default:return"GMT"+Ft(i,":")}},z:function(e,t,n,r){var i=(r._originalDate||e).getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Rt(i,":");default:return"GMT"+Ft(i,":")}},t:function(e,t,n,r){var i=r._originalDate||e;return It(Math.floor(i.getTime()/1e3),t.length)},T:function(e,t,n,r){return It((r._originalDate||e).getTime(),t.length)}};function It(e,t){for(var n=e<0?"-":"",r=Math.abs(e).toString();r.length0?"-":"+",i=Math.abs(e);return r+It(Math.floor(i/60),2)+n+It(i%60,2)}function Wt(e,t){return e%60==0?(e>0?"-":"+")+It(Math.abs(e)/60,2):Ft(e,t)}function Rt(e,t){var n=e>0?"-":"+",r=Math.abs(e),i=Math.floor(r/60),a=r%60;if(0===a)return n+String(i);var o=t||"";return n+String(i)+o+It(a,2)}function zt(e,t,n){switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}}function Bt(e,t,n){switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}}var Vt={p:Bt,P:function(e,t,n){var r,i=e.match(/(P+)(p+)?/),a=i[1],o=i[2];if(!o)return zt(e,t);switch(a){case"P":r=t.dateTime({width:"short"});break;case"PP":r=t.dateTime({width:"medium"});break;case"PPP":r=t.dateTime({width:"long"});break;default:r=t.dateTime({width:"full"})}return r.replace("{{date}}",zt(a,t)).replace("{{time}}",Bt(o,t))}};function Ut(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=Be(t);return lt(e,-r,n)}var qt=["D","DD","YY","YYYY"];function Jt(e){return-1!==qt.indexOf(e)}function Gt(e){throw new RangeError("`options.awareOfUnicodeTokens` must be set to `true` to use `"+e+"` token; see: https://git.io/fxCyr")}var Xt=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Zt=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Kt=/^'(.*?)'?$/,Qt=/''/g;function en(e){return e.match(Kt)[1].replace(Qt,"'")}function tn(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=Ge(e,n),i=Ge(t,n);return r.getTime()>i.getTime()}function nn(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=Ge(e,n),i=Ge(t,n);return r.getTime()=0&&s<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var u=Ge(e,n),l=Be(t),c=u.getUTCDay(),d=l%7,f=(d+7)%7,h=(f0,i=r?t:1-t;if(i<=50)n=e||100;else{var a=i+50;n=e+100*Math.floor(a/100)-(e>=a%100?100:0)}return r?n:1-n}var Nn=[31,28,31,30,31,30,31,31,30,31,30,31],$n=[31,29,31,30,31,30,31,31,30,31,30,31];function In(e){return e%400==0||e%4==0&&e%100!=0}var Fn={G:{priority:140,parse:function(e,t,n,r){switch(t){case"G":case"GG":case"GGG":return n.era(e,{width:"abbreviated"})||n.era(e,{width:"narrow"});case"GGGGG":return n.era(e,{width:"narrow"});default:return n.era(e,{width:"wide"})||n.era(e,{width:"abbreviated"})||n.era(e,{width:"narrow"})}},set:function(e,t,n){return e.setUTCFullYear(1===t?10:-9,0,1),e.setUTCHours(0,0,0,0),e}},y:{priority:130,parse:function(e,t,n,r){var i=function(e){return{year:e,isTwoDigitYear:"yy"===t}};switch(t){case"y":return Cn(4,e,i);case"yo":return n.ordinalNumber(e,{unit:"year",valueCallback:i});default:return Cn(t.length,e,i)}},validate:function(e,t,n){return t.isTwoDigitYear||t.year>0},set:function(e,t,n){var r=Yt(e,n);if(t.isTwoDigitYear){var i=Pn(t.year,r);return e.setUTCFullYear(i,0,1),e.setUTCHours(0,0,0,0),e}var a=r>0?t.year:1-t.year;return e.setUTCFullYear(a,0,1),e.setUTCHours(0,0,0,0),e}},Y:{priority:130,parse:function(e,t,n,r){var i=function(e){return{year:e,isTwoDigitYear:"YY"===t}};switch(t){case"Y":return Cn(4,e,i);case"Yo":return n.ordinalNumber(e,{unit:"year",valueCallback:i});default:return Cn(t.length,e,i)}},validate:function(e,t,n){return t.isTwoDigitYear||t.year>0},set:function(e,t,n){var r=e.getUTCFullYear();if(t.isTwoDigitYear){var i=Pn(t.year,r);return e.setUTCFullYear(i,0,n.firstWeekContainsDate),e.setUTCHours(0,0,0,0),Tt(e,n)}var a=r>0?t.year:1-t.year;return e.setUTCFullYear(a,0,n.firstWeekContainsDate),e.setUTCHours(0,0,0,0),Tt(e,n)}},R:{priority:130,parse:function(e,t,n,r){return An("R"===t?4:t.length,e)},set:function(e,t,n){var r=new Date(0);return r.setUTCFullYear(t,0,4),r.setUTCHours(0,0,0,0),Mt(r)}},u:{priority:130,parse:function(e,t,n,r){return An("u"===t?4:t.length,e)},set:function(e,t,n){return e.setUTCFullYear(t,0,1),e.setUTCHours(0,0,0,0),e}},Q:{priority:120,parse:function(e,t,n,r){switch(t){case"Q":case"QQ":return Cn(t.length,e);case"Qo":return n.ordinalNumber(e,{unit:"quarter"});case"QQQ":return n.quarter(e,{width:"abbreviated",context:"formatting"})||n.quarter(e,{width:"narrow",context:"formatting"});case"QQQQQ":return n.quarter(e,{width:"narrow",context:"formatting"});default:return n.quarter(e,{width:"wide",context:"formatting"})||n.quarter(e,{width:"abbreviated",context:"formatting"})||n.quarter(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=1&&t<=4},set:function(e,t,n){return e.setUTCMonth(3*(t-1),1),e.setUTCHours(0,0,0,0),e}},q:{priority:120,parse:function(e,t,n,r){switch(t){case"q":case"qq":return Cn(t.length,e);case"qo":return n.ordinalNumber(e,{unit:"quarter"});case"qqq":return n.quarter(e,{width:"abbreviated",context:"standalone"})||n.quarter(e,{width:"narrow",context:"standalone"});case"qqqqq":return n.quarter(e,{width:"narrow",context:"standalone"});default:return n.quarter(e,{width:"wide",context:"standalone"})||n.quarter(e,{width:"abbreviated",context:"standalone"})||n.quarter(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=1&&t<=4},set:function(e,t,n){return e.setUTCMonth(3*(t-1),1),e.setUTCHours(0,0,0,0),e}},M:{priority:110,parse:function(e,t,n,r){var i=function(e){return e-1};switch(t){case"M":return jn(on,e,i);case"MM":return Cn(2,e,i);case"Mo":return n.ordinalNumber(e,{unit:"month",valueCallback:i});case"MMM":return n.month(e,{width:"abbreviated",context:"formatting"})||n.month(e,{width:"narrow",context:"formatting"});case"MMMMM":return n.month(e,{width:"narrow",context:"formatting"});default:return n.month(e,{width:"wide",context:"formatting"})||n.month(e,{width:"abbreviated",context:"formatting"})||n.month(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n){return e.setUTCMonth(t,1),e.setUTCHours(0,0,0,0),e}},L:{priority:110,parse:function(e,t,n,r){var i=function(e){return e-1};switch(t){case"L":return jn(on,e,i);case"LL":return Cn(2,e,i);case"Lo":return n.ordinalNumber(e,{unit:"month",valueCallback:i});case"LLL":return n.month(e,{width:"abbreviated",context:"standalone"})||n.month(e,{width:"narrow",context:"standalone"});case"LLLLL":return n.month(e,{width:"narrow",context:"standalone"});default:return n.month(e,{width:"wide",context:"standalone"})||n.month(e,{width:"abbreviated",context:"standalone"})||n.month(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n){return e.setUTCMonth(t,1),e.setUTCHours(0,0,0,0),e}},w:{priority:100,parse:function(e,t,n,r){switch(t){case"w":return jn(ln,e);case"wo":return n.ordinalNumber(e,{unit:"week"});default:return Cn(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=53},set:function(e,t,n){return Tt(function(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=Ge(e,n),i=Be(t),a=Ot(r,n)-i;return r.setUTCDate(r.getUTCDate()-7*a),r}(e,t,n),n)}},I:{priority:100,parse:function(e,t,n,r){switch(t){case"I":return jn(ln,e);case"Io":return n.ordinalNumber(e,{unit:"week"});default:return Cn(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=53},set:function(e,t,n){return Mt(function(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=Ge(e,n),i=Be(t),a=Dt(r,n)-i;return r.setUTCDate(r.getUTCDate()-7*a),r}(e,t,n),n)}},d:{priority:90,parse:function(e,t,n,r){switch(t){case"d":return jn(sn,e);case"do":return n.ordinalNumber(e,{unit:"date"});default:return Cn(t.length,e)}},validate:function(e,t,n){var r=In(e.getUTCFullYear()),i=e.getUTCMonth();return r?t>=1&&t<=$n[i]:t>=1&&t<=Nn[i]},set:function(e,t,n){return e.setUTCDate(t),e.setUTCHours(0,0,0,0),e}},D:{priority:90,parse:function(e,t,n,r){switch(t){case"D":case"DD":return jn(un,e);case"Do":return n.ordinalNumber(e,{unit:"date"});default:return Cn(t.length,e)}},validate:function(e,t,n){return In(e.getUTCFullYear())?t>=1&&t<=366:t>=1&&t<=365},set:function(e,t,n){return e.setUTCMonth(0,t),e.setUTCHours(0,0,0,0),e}},E:{priority:90,parse:function(e,t,n,r){switch(t){case"E":case"EE":case"EEE":return n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"EEEEE":return n.day(e,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});default:return n.day(e,{width:"wide",context:"formatting"})||n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n){return(e=an(e,t,n)).setUTCHours(0,0,0,0),e}},e:{priority:90,parse:function(e,t,n,r){var i=function(e){var t=7*Math.floor((e-1)/7);return(e+r.weekStartsOn+6)%7+t};switch(t){case"e":case"ee":return Cn(t.length,e,i);case"eo":return n.ordinalNumber(e,{unit:"day",valueCallback:i});case"eee":return n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"eeeee":return n.day(e,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});default:return n.day(e,{width:"wide",context:"formatting"})||n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n){return(e=an(e,t,n)).setUTCHours(0,0,0,0),e}},c:{priority:90,parse:function(e,t,n,r){var i=function(e){var t=7*Math.floor((e-1)/7);return(e+r.weekStartsOn+6)%7+t};switch(t){case"c":case"cc":return Cn(t.length,e,i);case"co":return n.ordinalNumber(e,{unit:"day",valueCallback:i});case"ccc":return n.day(e,{width:"abbreviated",context:"standalone"})||n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"});case"ccccc":return n.day(e,{width:"narrow",context:"standalone"});case"cccccc":return n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"});default:return n.day(e,{width:"wide",context:"standalone"})||n.day(e,{width:"abbreviated",context:"standalone"})||n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n){return(e=an(e,t,n)).setUTCHours(0,0,0,0),e}},i:{priority:90,parse:function(e,t,n,r){var i=function(e){return 0===e?7:e};switch(t){case"i":case"ii":return Cn(t.length,e);case"io":return n.ordinalNumber(e,{unit:"day"});case"iii":return n.day(e,{width:"abbreviated",context:"formatting",valueCallback:i})||n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiiii":return n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiiiii":return n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i});default:return n.day(e,{width:"wide",context:"formatting",valueCallback:i})||n.day(e,{width:"abbreviated",context:"formatting",valueCallback:i})||n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i})}},validate:function(e,t,n){return t>=1&&t<=7},set:function(e,t,n){return e=function(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var r=Be(t);r%7==0&&(r-=7);var i=1,a=Ge(e,n),o=a.getUTCDay(),s=((r%7+7)%7=1&&t<=12},set:function(e,t,n){var r=e.getUTCHours()>=12;return r&&t<12?e.setUTCHours(t+12,0,0,0):r||12!==t?e.setUTCHours(t,0,0,0):e.setUTCHours(0,0,0,0),e}},H:{priority:70,parse:function(e,t,n,r){switch(t){case"H":return jn(cn,e);case"Ho":return n.ordinalNumber(e,{unit:"hour"});default:return Cn(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=23},set:function(e,t,n){return e.setUTCHours(t,0,0,0),e}},K:{priority:70,parse:function(e,t,n,r){switch(t){case"K":return jn(fn,e);case"Ko":return n.ordinalNumber(e,{unit:"hour"});default:return Cn(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n){return e.getUTCHours()>=12&&t<12?e.setUTCHours(t+12,0,0,0):e.setUTCHours(t,0,0,0),e}},k:{priority:70,parse:function(e,t,n,r){switch(t){case"k":return jn(dn,e);case"ko":return n.ordinalNumber(e,{unit:"hour"});default:return Cn(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=24},set:function(e,t,n){var r=t<=24?t%24:t;return e.setUTCHours(r,0,0,0),e}},m:{priority:60,parse:function(e,t,n,r){switch(t){case"m":return jn(pn,e);case"mo":return n.ordinalNumber(e,{unit:"minute"});default:return Cn(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=59},set:function(e,t,n){return e.setUTCMinutes(t,0,0),e}},s:{priority:50,parse:function(e,t,n,r){switch(t){case"s":return jn(mn,e);case"so":return n.ordinalNumber(e,{unit:"second"});default:return Cn(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=59},set:function(e,t,n){return e.setUTCSeconds(t,0),e}},S:{priority:40,parse:function(e,t,n,r){return Cn(t.length,e,(function(e){return Math.floor(e*Math.pow(10,3-t.length))}))},set:function(e,t,n){return e.setUTCMilliseconds(t),e}},X:{priority:20,parse:function(e,t,n,r){switch(t){case"X":return On(xn,e);case"XX":return On(Dn,e);case"XXXX":return On(Tn,e);case"XXXXX":return On(Sn,e);default:return On(Yn,e)}},set:function(e,t,n){return new Date(e.getTime()-t)}},x:{priority:20,parse:function(e,t,n,r){switch(t){case"x":return On(xn,e);case"xx":return On(Dn,e);case"xxxx":return On(Tn,e);case"xxxxx":return On(Sn,e);default:return On(Yn,e)}},set:function(e,t,n){return new Date(e.getTime()-t)}},t:{priority:10,parse:function(e,t,n,r){return En(e)},set:function(e,t,n){return new Date(1e3*t)}},T:{priority:10,parse:function(e,t,n,r){return En(e)},set:function(e,t,n){return new Date(t)}}},Wn=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Rn=/^'(.*?)'?$/,zn=/''/g,Bn=/\S/;function Vn(e){var t=new Date(0);return t.setFullYear(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()),t.setHours(e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds()),t}function Un(e){return e.match(Rn)[1].replace(zn,"'")}function qn(e,t){if("string"!=typeof e)return ct(e)?e:null;var n=function(e,t,n,r){if(arguments.length<3)throw new TypeError("3 arguments required, but only "+arguments.length+" present");var i=String(e),a=String(t),o=r||{},s=o.locale||bt;if(!s.match)throw new RangeError("locale must contain match property");var u=s.options&&s.options.firstWeekContainsDate,l=null==u?1:Be(u),c=null==o.firstWeekContainsDate?l:Be(o.firstWeekContainsDate);if(!(c>=1&&c<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var d=s.options&&s.options.weekStartsOn,f=null==d?0:Be(d),h=null==o.weekStartsOn?f:Be(o.weekStartsOn);if(!(h>=0&&h<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(""===a)return""===i?Ge(n,o):new Date(NaN);var p,m={firstWeekContainsDate:c,weekStartsOn:h,locale:s},v=[{priority:20,set:Vn,index:0}],_=a.match(Wn);for(p=0;p<_.length;p++){var y=_[p];!o.awareOfUnicodeTokens&&Jt(y)&&Gt(y);var g=y[0],b=Fn[g];if(b){var w=b.parse(i,y,s.match,m);if(!w)return new Date(NaN);v.push({priority:b.priority,set:b.set,validate:b.validate,value:w.value,index:v.length}),i=w.rest}else{if("''"===y?y="'":"'"===g&&(y=Un(y)),0!==i.indexOf(y))return new Date(NaN);i=i.slice(y.length)}}if(i.length>0&&Bn.test(i))return new Date(NaN);var M=v.map((function(e){return e.priority})).sort((function(e,t){return t-e})).filter((function(e,t,n){return n.indexOf(e)===t})).map((function(e){return v.filter((function(t){return t.priority===e})).reverse()})).map((function(e){return e[0]})),k=Ge(n,o);if(isNaN(k))return new Date(NaN);var L=Ut(k,Ve(k));for(p=0;p=1&&u<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var l=a.options&&a.options.weekStartsOn,c=null==l?0:Be(l),d=null==i.weekStartsOn?c:Be(i.weekStartsOn);if(!(d>=0&&d<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!a.localize)throw new RangeError("locale must contain localize property");if(!a.formatLong)throw new RangeError("locale must contain formatLong property");var f=Ge(e,i);if(!ct(f,i))return"Invalid Date";var h=Ve(f),p=Ut(f,h,i),m={firstWeekContainsDate:u,weekStartsOn:d,locale:a,_originalDate:f};return r.match(Zt).map((function(e){var t=e[0];return"p"===t||"P"===t?(0,Vt[t])(e,a.formatLong,m):e})).join("").match(Xt).map((function(e){if("''"===e)return"'";var t=e[0];if("'"===t)return en(e);var n=$t[t];return n?(!i.awareOfUnicodeTokens&&Jt(e)&&Gt(e),n(p,e,a.localize,m)):e})).join("")}(n,t)===e?n:null}var Jn={validate:function(e,t){void 0===t&&(t={});var n=t.targetValue,r=t.inclusion;void 0===r&&(r=!1);var i=t.format;return void 0===i&&(i=r,r=!1),e=qn(e,i),n=qn(n,i),!(!e||!n)&&(tn(e,n)||r&&rn(e,n))},options:{hasTarget:!0,isDate:!0},paramNames:["targetValue","inclusion","format"]},Gn={en:/^[A-Z]*$/i,cs:/^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]*$/i,da:/^[A-ZÆØÅ]*$/i,de:/^[A-ZÄÖÜß]*$/i,es:/^[A-ZÁÉÍÑÓÚÜ]*$/i,fa:/^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی]*$/,fr:/^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]*$/i,it:/^[A-Z\xC0-\xFF]*$/i,lt:/^[A-ZĄČĘĖĮŠŲŪŽ]*$/i,nl:/^[A-ZÉËÏÓÖÜ]*$/i,hu:/^[A-ZÁÉÍÓÖŐÚÜŰ]*$/i,pl:/^[A-ZĄĆĘŚŁŃÓŻŹ]*$/i,pt:/^[A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]*$/i,ru:/^[А-ЯЁ]*$/i,sk:/^[A-ZÁÄČĎÉÍĹĽŇÓŔŠŤÚÝŽ]*$/i,sr:/^[A-ZČĆŽŠĐ]*$/i,sv:/^[A-ZÅÄÖ]*$/i,tr:/^[A-ZÇĞİıÖŞÜ]*$/i,uk:/^[А-ЩЬЮЯЄІЇҐ]*$/i,ar:/^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]*$/,az:/^[A-ZÇƏĞİıÖŞÜ]*$/i},Xn={en:/^[A-Z\s]*$/i,cs:/^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ\s]*$/i,da:/^[A-ZÆØÅ\s]*$/i,de:/^[A-ZÄÖÜß\s]*$/i,es:/^[A-ZÁÉÍÑÓÚÜ\s]*$/i,fa:/^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی\s]*$/,fr:/^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ\s]*$/i,it:/^[A-Z\xC0-\xFF\s]*$/i,lt:/^[A-ZĄČĘĖĮŠŲŪŽ\s]*$/i,nl:/^[A-ZÉËÏÓÖÜ\s]*$/i,hu:/^[A-ZÁÉÍÓÖŐÚÜŰ\s]*$/i,pl:/^[A-ZĄĆĘŚŁŃÓŻŹ\s]*$/i,pt:/^[A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ\s]*$/i,ru:/^[А-ЯЁ\s]*$/i,sk:/^[A-ZÁÄČĎÉÍĹĽŇÓŔŠŤÚÝŽ\s]*$/i,sr:/^[A-ZČĆŽŠĐ\s]*$/i,sv:/^[A-ZÅÄÖ\s]*$/i,tr:/^[A-ZÇĞİıÖŞÜ\s]*$/i,uk:/^[А-ЩЬЮЯЄІЇҐ\s]*$/i,ar:/^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ\s]*$/,az:/^[A-ZÇƏĞİıÖŞÜ\s]*$/i},Zn={en:/^[0-9A-Z]*$/i,cs:/^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]*$/i,da:/^[0-9A-ZÆØÅ]$/i,de:/^[0-9A-ZÄÖÜß]*$/i,es:/^[0-9A-ZÁÉÍÑÓÚÜ]*$/i,fa:/^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی]*$/,fr:/^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]*$/i,it:/^[0-9A-Z\xC0-\xFF]*$/i,lt:/^[0-9A-ZĄČĘĖĮŠŲŪŽ]*$/i,hu:/^[0-9A-ZÁÉÍÓÖŐÚÜŰ]*$/i,nl:/^[0-9A-ZÉËÏÓÖÜ]*$/i,pl:/^[0-9A-ZĄĆĘŚŁŃÓŻŹ]*$/i,pt:/^[0-9A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]*$/i,ru:/^[0-9А-ЯЁ]*$/i,sk:/^[0-9A-ZÁÄČĎÉÍĹĽŇÓŔŠŤÚÝŽ]*$/i,sr:/^[0-9A-ZČĆŽŠĐ]*$/i,sv:/^[0-9A-ZÅÄÖ]*$/i,tr:/^[0-9A-ZÇĞİıÖŞÜ]*$/i,uk:/^[0-9А-ЩЬЮЯЄІЇҐ]*$/i,ar:/^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]*$/,az:/^[0-9A-ZÇƏĞİıÖŞÜ]*$/i},Kn={en:/^[0-9A-Z_-]*$/i,cs:/^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ_-]*$/i,da:/^[0-9A-ZÆØÅ_-]*$/i,de:/^[0-9A-ZÄÖÜß_-]*$/i,es:/^[0-9A-ZÁÉÍÑÓÚÜ_-]*$/i,fa:/^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰپژگچکی_-]*$/,fr:/^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ_-]*$/i,it:/^[0-9A-Z\xC0-\xFF_-]*$/i,lt:/^[0-9A-ZĄČĘĖĮŠŲŪŽ_-]*$/i,nl:/^[0-9A-ZÉËÏÓÖÜ_-]*$/i,hu:/^[0-9A-ZÁÉÍÓÖŐÚÜŰ_-]*$/i,pl:/^[0-9A-ZĄĆĘŚŁŃÓŻŹ_-]*$/i,pt:/^[0-9A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ_-]*$/i,ru:/^[0-9А-ЯЁ_-]*$/i,sk:/^[0-9A-ZÁÄČĎÉÍĹĽŇÓŔŠŤÚÝŽ_-]*$/i,sr:/^[0-9A-ZČĆŽŠĐ_-]*$/i,sv:/^[0-9A-ZÅÄÖ_-]*$/i,tr:/^[0-9A-ZÇĞİıÖŞÜ_-]*$/i,uk:/^[0-9А-ЩЬЮЯЄІЇҐ_-]*$/i,ar:/^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ_-]*$/,az:/^[0-9A-ZÇƏĞİıÖŞÜ_-]*$/i},Qn=function(e,t){void 0===t&&(t={});var n=t.locale;return Array.isArray(e)?e.every((function(e){return Qn(e,[n])})):n?(Gn[n]||Gn.en).test(e):Object.keys(Gn).some((function(t){return Gn[t].test(e)}))},er={validate:Qn,paramNames:["locale"]},tr=function(e,t){void 0===t&&(t={});var n=t.locale;return Array.isArray(e)?e.every((function(e){return tr(e,[n])})):n?(Kn[n]||Kn.en).test(e):Object.keys(Kn).some((function(t){return Kn[t].test(e)}))},nr={validate:tr,paramNames:["locale"]},rr=function(e,t){void 0===t&&(t={});var n=t.locale;return Array.isArray(e)?e.every((function(e){return rr(e,[n])})):n?(Zn[n]||Zn.en).test(e):Object.keys(Zn).some((function(t){return Zn[t].test(e)}))},ir={validate:rr,paramNames:["locale"]},ar=function(e,t){void 0===t&&(t={});var n=t.locale;return Array.isArray(e)?e.every((function(e){return ar(e,[n])})):n?(Xn[n]||Xn.en).test(e):Object.keys(Xn).some((function(t){return Xn[t].test(e)}))},or={validate:ar,paramNames:["locale"]},sr={validate:function(e,t){void 0===t&&(t={});var n=t.targetValue,r=t.inclusion;void 0===r&&(r=!1);var i=t.format;return void 0===i&&(i=r,r=!1),e=qn(e,i),n=qn(n,i),!(!e||!n)&&(nn(e,n)||r&&rn(e,n))},options:{hasTarget:!0,isDate:!0},paramNames:["targetValue","inclusion","format"]},ur=function(e,t){void 0===t&&(t={});var n=t.min,r=t.max;return Array.isArray(e)?e.every((function(e){return ur(e,{min:n,max:r})})):Number(n)<=e&&Number(r)>=e},lr={validate:ur,paramNames:["min","max"]},cr={validate:function(e,t){var n=t.targetValue;return String(e)===String(n)},options:{hasTarget:!0},paramNames:["targetValue"]};function dr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function fr(e,t){return e(t={exports:{}},t.exports),t.exports}var hr=fr((function(e,t){function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!("string"==typeof e||e instanceof String)){var t;throw t=null===e?"null":"object"===(t=n(e))&&e.constructor&&e.constructor.hasOwnProperty("name")?e.constructor.name:"a ".concat(t),new TypeError("Expected string but received ".concat(t,"."))}},e.exports=t.default,e.exports.default=t.default}));dr(hr);var pr=fr((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){(0,n.default)(e);var t=e.replace(/[- ]+/g,"");if(!r.test(t))return!1;for(var i,a,o,s=0,u=t.length-1;u>=0;u--)i=t.substring(u,u+1),a=parseInt(i,10),s+=o&&(a*=2)>=10?a%10+1:a,o=!o;return!(s%10!=0||!t)};var n=function(e){return e&&e.__esModule?e:{default:e}}(hr);var r=/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11}|6[27][0-9]{14})$/;e.exports=t.default,e.exports.default=t.default})),mr=dr(pr),vr={validate:function(e){return mr(String(e))}},_r={validate:function(e,t){void 0===t&&(t={});var n=t.min,r=t.max,i=t.inclusivity;void 0===i&&(i="()");var a=t.format;void 0===a&&(a=i,i="()");var o=qn(String(n),a),s=qn(String(r),a),u=qn(String(e),a);return!!(o&&s&&u)&&("()"===i?tn(u,o)&&nn(u,s):"(]"===i?tn(u,o)&&(rn(u,s)||nn(u,s)):"[)"===i?nn(u,s)&&(rn(u,o)||tn(u,o)):rn(u,s)||rn(u,o)||nn(u,s)&&tn(u,o))},options:{isDate:!0},paramNames:["min","max","inclusivity","format"]},yr={validate:function(e,t){return!!qn(e,t.format)},options:{isDate:!0},paramNames:["format"]},gr=function(e,t){void 0===t&&(t={});var n=t.decimals;void 0===n&&(n="*");var r=t.separator;if(void 0===r&&(r="."),m(e)||""===e)return!1;if(Array.isArray(e))return e.every((function(e){return gr(e,{decimals:n,separator:r})}));if(0===Number(n))return/^-?\d*$/.test(e);if(!new RegExp("^[-+]?\\d*(\\"+r+"\\d"+("*"===n?"+":"{1,"+n+"}")+")?([eE]{1}[-]?\\d+)?$").test(e))return!1;var i=parseFloat(e);return i==i},br={validate:gr,paramNames:["decimals","separator"]},wr=function(e,t){var n=t[0];if(Array.isArray(e))return e.every((function(e){return wr(e,[n])}));var r=String(e);return/^[0-9]*$/.test(r)&&r.length===Number(n)},Mr={validate:wr},kr=/\.(jpg|svg|jpeg|png|bmp|gif)$/i,Lr={validate:function(e,t){var n=t[0],r=t[1],i=S(e).filter((function(e){return kr.test(e.name)}));return 0!==i.length&&Promise.all(i.map((function(e){return function(e,t,n){var r=window.URL||window.webkitURL;return new Promise((function(i){var a=new Image;a.onerror=function(){return i({valid:!1})},a.onload=function(){return i({valid:a.width===Number(t)&&a.height===Number(n)})},a.src=r.createObjectURL(e)}))}(e,n,r)})))}},xr=fr((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;for(var n in t)void 0===e[n]&&(e[n]=t[n]);return e},e.exports=t.default,e.exports.default=t.default}));dr(xr);var Dr=fr((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var i,a;(0,n.default)(e),"object"===r(t)?(i=t.min||0,a=t.max):(i=arguments[1],a=arguments[2]);var o=encodeURI(e).split(/%..|./).length-1;return o>=i&&(void 0===a||o<=a)};var n=function(e){return e&&e.__esModule?e:{default:e}}(hr);function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}e.exports=t.default,e.exports.default=t.default}));dr(Dr);var Tr=fr((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,n.default)(e),(t=(0,r.default)(t,a)).allow_trailing_dot&&"."===e[e.length-1]&&(e=e.substring(0,e.length-1));for(var i=e.split("."),o=0;o63)return!1;if(t.require_tld){var s=i.pop();if(!i.length||!/^([a-z\u00a1-\uffff]{2,}|xn[a-z0-9-]{2,})$/i.test(s))return!1;if(/[\s\u2002-\u200B\u202F\u205F\u3000\uFEFF\uDB40\uDC20]/.test(s))return!1}for(var u,l=0;l1&&void 0!==arguments[1]?arguments[1]:"";if((0,n.default)(t),!(a=String(a)))return e(t,4)||e(t,6);if("4"===a){if(!r.test(t))return!1;var o=t.split(".").sort((function(e,t){return e-t}));return o[3]<=255}if("6"===a){var s=t.split(":"),u=!1,l=e(s[s.length-1],4),c=l?7:8;if(s.length>c)return!1;if("::"===t)return!0;"::"===t.substr(0,2)?(s.shift(),s.shift(),u=!0):"::"===t.substr(t.length-2)&&(s.pop(),s.pop(),u=!0);for(var d=0;d0&&d=1:s.length===c}return!1};var n=function(e){return e&&e.__esModule?e:{default:e}}(hr);var r=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/,i=/^[0-9A-F]{1,4}$/i;e.exports=t.default,e.exports.default=t.default})),jr=dr(Sr),Or=fr((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,n.default)(e),(t=(0,r.default)(t,u)).require_display_name||t.allow_display_name){var s=e.match(l);if(s)e=s[1];else if(t.require_display_name)return!1}var m=e.split("@"),v=m.pop(),_=m.join("@"),y=v.toLowerCase();if(t.domain_specific_validation&&("gmail.com"===y||"googlemail.com"===y)){var g=(_=_.toLowerCase()).split("+")[0];if(!(0,i.default)(g.replace(".",""),{min:6,max:30}))return!1;for(var b=g.split("."),w=0;w$/i,c=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i,d=/^[a-z\d]+$/,f=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i,h=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i,p=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i;e.exports=t.default,e.exports.default=t.default})),Er=dr(Or);var Cr={validate:function(e,t){void 0===t&&(t={});var n=t.multiple;void 0===n&&(n=!1);var r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&-1===t.indexOf(r)&&(n[r]=e[r]);return n}(t,["multiple"]),i=r;n&&!Array.isArray(e)&&(e=String(e).split(",").map((function(e){return e.trim()})));var a=j({},i);return Array.isArray(e)?e.every((function(e){return Er(String(e),a)})):Er(String(e),a)}},Ar=function(e,t){return Array.isArray(e)?e.every((function(e){return Ar(e,t)})):Y(t).some((function(t){return t==e}))},Hr={validate:Ar},Pr={validate:function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return!Ar.apply(void 0,e)}},Nr={validate:function(e,t){var n=new RegExp(".("+t.join("|")+")$","i");return S(e).every((function(e){return n.test(e.name)}))}},$r={validate:function(e){return(Array.isArray(e)?e:[e]).every((function(e){return/\.(jpg|svg|jpeg|png|bmp|gif)$/i.test(e.name)}))}},Ir={validate:function(e){return Array.isArray(e)?e.every((function(e){return/^-?[0-9]+$/.test(String(e))})):/^-?[0-9]+$/.test(String(e))}},Fr={validate:function(e,t){void 0===t&&(t={});var n=t.version;return void 0===n&&(n=4),m(e)&&(e=""),Array.isArray(e)?e.every((function(e){return jr(e,n)})):jr(e,n)},paramNames:["version"]},Wr={validate:function(e){return m(e)&&(e=""),Array.isArray(e)?e.every((function(e){return jr(e,"")||Yr(e)})):jr(e,"")||Yr(e)}},Rr={validate:function(e,t){return void 0===t&&(t=[]),e===t[0]}},zr={validate:function(e,t){return void 0===t&&(t=[]),e!==t[0]}},Br={validate:function(e,t){var n=t[0],r=t[1];return void 0===r&&(r=void 0),!m(e)&&(n=Number(n),"number"==typeof e&&(e=String(e)),e.length||(e=Y(e)),function(e,t,n){return void 0===n?e.length===t:(n=Number(n),e.length>=t&&e.length<=n)}(e,n,r))}},Vr=function(e,t){var n=t[0];return m(e)?n>=0:Array.isArray(e)?e.every((function(e){return Vr(e,[n])})):String(e).length<=n},Ur={validate:Vr},qr=function(e,t){var n=t[0];return!m(e)&&""!==e&&(Array.isArray(e)?e.length>0&&e.every((function(e){return qr(e,[n])})):Number(e)<=n)},Jr={validate:qr},Gr={validate:function(e,t){var n=new RegExp(t.join("|").replace("*",".+")+"$","i");return S(e).every((function(e){return n.test(e.type)}))}},Xr=function(e,t){var n=t[0];return!m(e)&&(Array.isArray(e)?e.every((function(e){return Xr(e,[n])})):String(e).length>=n)},Zr={validate:Xr},Kr=function(e,t){var n=t[0];return!m(e)&&""!==e&&(Array.isArray(e)?e.length>0&&e.every((function(e){return Kr(e,[n])})):Number(e)>=n)},Qr={validate:Kr},ei=/^[٠١٢٣٤٥٦٧٨٩]+$/,ti=/^[0-9]+$/,ni={validate:function(e){var t=function(e){var t=String(e);return ti.test(t)||ei.test(t)};return Array.isArray(e)?e.every(t):t(e)}},ri=function(e,t){var n=t.expression;return"string"==typeof n&&(n=new RegExp(n)),Array.isArray(e)?e.every((function(e){return ri(e,{expression:n})})):n.test(String(e))},ii={validate:ri,paramNames:["expression"]},ai={validate:function(e,t){void 0===t&&(t=[]);var n=t[0];return void 0===n&&(n=!1),!m(e)&&!R(e)&&((!1!==e||!n)&&!!String(e).trim().length)}},oi={validate:function(e,t){void 0===t&&(t=[]);var n=t[0],r=t.slice(1).includes(String(n).trim());if(!r)return{valid:!0,data:{required:r}};var i=R(e)||[!1,null,void 0].includes(e);return{valid:!(i=i||!String(e).trim().length),data:{required:r}}},options:{hasTarget:!0,computesRequired:!0}},si={validate:function(e,t){var n=t[0];if(isNaN(n))return!1;var r=1024*Number(n);return S(e).every((function(e){return e.size<=r}))}},ui=fr((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,n.default)(e),!e||e.length>=2083||/[\s<>]/.test(e))return!1;if(0===e.indexOf("mailto:"))return!1;var o,l,d,f,h,p,m,v;if(t=(0,a.default)(t,s),m=e.split("#"),e=m.shift(),m=e.split("?"),e=m.shift(),(m=e.split("://")).length>1){if(o=m.shift().toLowerCase(),t.require_valid_protocol&&-1===t.protocols.indexOf(o))return!1}else{if(t.require_protocol)return!1;if("//"===e.substr(0,2)){if(!t.allow_protocol_relative_urls)return!1;m[0]=e.substr(2)}}if(""===(e=m.join("://")))return!1;if(m=e.split("/"),""===(e=m.shift())&&!t.require_host)return!0;if((m=e.split("@")).length>1){if(t.disallow_auth)return!1;if((l=m.shift()).indexOf(":")>=0&&l.split(":").length>2)return!1}f=m.join("@"),p=null,v=null;var _=f.match(u);_?(d="",v=_[1],p=_[2]||null):(m=f.split(":"),d=m.shift(),m.length&&(p=m.join(":")));if(null!==p&&(h=parseInt(p,10),!/^[0-9]+$/.test(p)||h<=0||h>65535))return!1;if(!((0,i.default)(d)||(0,r.default)(d,t)||v&&(0,i.default)(v,6)))return!1;if(d=d||v,t.host_whitelist&&!c(d,t.host_whitelist))return!1;if(t.host_blacklist&&c(d,t.host_blacklist))return!1;return!0};var n=o(hr),r=o(Tr),i=o(Sr),a=o(xr);function o(e){return e&&e.__esModule?e:{default:e}}var s={protocols:["http","https","ftp"],require_tld:!0,require_protocol:!1,require_host:!0,require_valid_protocol:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_protocol_relative_urls:!1},u=/^\[([^\]]+)\](?::([0-9]+))?$/;function l(e){return"[object RegExp]"===Object.prototype.toString.call(e)}function c(e,t){for(var n=0;n0&&this.syncValue(t[0]),this.validateSilent().then((function(t){return e.applyResult(t),t}))},validateSilent:function(){var e,t,n=this;return this.setFlags({pending:!0}),pi.verify(this.value,this.rules,{name:this.name,values:(e=this,t=e.$_veeObserver.refs,e.fieldDeps.reduce((function(e,n){return t[n]?(e[n]=t[n].value,e):e}),{})),bails:this.bails}).then((function(e){return n.setFlags({pending:!1}),n.isRequired||n.setFlags({valid:e.valid,invalid:!e.valid}),e}))},applyResult:function(e){var t=e.errors,n=e.failedRules;this.messages=t,this.failedRules=j({},n),this.setFlags({valid:!t.length,changed:this.value!==this.initialValue,invalid:!!t.length,validated:!0})},registerField:function(){pi||(pi=Le()||new Ye(null,{fastExit:Q().fastExit})),function(e){m(e.id)&&e.id===e.vid&&(e.id=mi,mi++);var t=e.id,n=e.vid;if(e.isDeactivated||t===n&&e.$_veeObserver.refs[t])return;t!==n&&e.$_veeObserver.refs[t]===e&&e.$_veeObserver.unsubscribe({vid:t});e.$_veeObserver.subscribe(e),e.id=n}(this)}}};function _i(e){return{errors:e.messages,flags:e.flags,classes:e.classes,valid:e.isValid,failedRules:e.failedRules,reset:function(){return e.reset()},validate:function(){for(var t=[],n=arguments.length;n--;)t[n]=arguments[n];return e.validate.apply(e,t)},aria:{"aria-invalid":e.flags.invalid?"true":"false","aria-required":e.isRequired?"true":"false"}}}function yi(e){return(x(e.mode)?e.mode:Ne[e.mode])({errors:e.messages,value:e.value,flags:e.flags})}function gi(e){this.initialized||(this.initialValue=e.value);var t=function(e,t){return!(e._ignoreImmediate||!e.immediate)||e.value!==t.value||!!e._needsValidation||!e.initialized&&void 0===t.value}(this,e);this._needsValidation=!1,this.value=e.value,this._ignoreImmediate=!0,t&&this.validateSilent().then(this.immediate||this.flags.validated?this.applyResult:function(e){return e})}function bi(e){var t=e.$veeHandler,n=yi(e);return t&&e.$veeDebounce===e.debounce||(t=g((function(){e.$nextTick((function(){var t=e.validateSilent();e._pendingValidation=t,t.then((function(n){t===e._pendingValidation&&(e.applyResult(n),e._pendingValidation=null)}))}))}),n.debounce||e.debounce),e.$veeHandler=t,e.$veeDebounce=e.debounce),{onInput:function(t){e.syncValue(t),e.setFlags({dirty:!0,pristine:!1})},onBlur:function(){e.setFlags({touched:!0,untouched:!1})},onValidate:t}}function wi(e){var t=te(e);this._inputEventName=this._inputEventName||oe(e,t),gi.call(this,t);var n=bi(this),r=n.onInput,i=n.onBlur,a=n.onValidate;ae(e,this._inputEventName,r),ae(e,"blur",i),this.normalizedEvents.forEach((function(t){ae(e,t,a)})),this.initialized=!0}function Mi(e,t,n){void 0===n&&(n=!0);var r=e.$_veeObserver.refs;if(e._veeWatchers||(e._veeWatchers={}),!r[t]&&n)return e.$once("hook:mounted",(function(){Mi(e,t,!1)}));!x(e._veeWatchers[t])&&r[t]&&(e._veeWatchers[t]=r[t].$watch("value",(function(){e.flags.validated&&(e._needsValidation=!0,e.validate())})))}var ki={pristine:"every",dirty:"some",touched:"some",untouched:"every",valid:"every",invalid:"some",pending:"some",validated:"every"};var Li=0,xi={name:"ValidationObserver",provide:function(){return{$_veeObserver:this}},inject:{$_veeObserver:{from:"$_veeObserver",default:function(){return this.$vnode.context.$_veeObserver?this.$vnode.context.$_veeObserver:null}}},props:{tag:{type:String,default:"span"},slim:{type:Boolean,default:!1}},data:function(){return{vid:"obs_"+Li++,refs:{},observers:[],persistedStore:{}}},computed:{ctx:function(){var e=this,t={errors:{},validate:function(t){var n=e.validate(t);return{then:function(e){return n.then((function(t){return t&&x(e)?Promise.resolve(e()):Promise.resolve(t)}))}}},reset:function(){return e.reset()}};return F(this.refs).concat(Object.keys(this.persistedStore).map((function(t){return{vid:t,flags:e.persistedStore[t].flags,messages:e.persistedStore[t].errors}})),this.observers).reduce((function(e,t){return Object.keys(ki).forEach((function(n){var r,i,a=t.flags||t.ctx;n in e?e[n]=(r=e[n],i=a[n],[r,i][ki[n]]((function(e){return e}))):e[n]=a[n]})),e.errors[t.vid]=t.messages||F(t.ctx.errors).reduce((function(e,t){return e.concat(t)}),[]),e}),t)}},created:function(){this.$_veeObserver&&this.$_veeObserver.subscribe(this,"observer")},activated:function(){this.$_veeObserver&&this.$_veeObserver.subscribe(this,"observer")},deactivated:function(){this.$_veeObserver&&this.$_veeObserver.unsubscribe(this,"observer")},beforeDestroy:function(){this.$_veeObserver&&this.$_veeObserver.unsubscribe(this,"observer")},render:function(e){var t=this.$slots.default||this.$scopedSlots.default||[];return x(t)&&(t=t(this.ctx)),this.slim?se(e,t):e(this.tag,{on:this.$listeners,attrs:this.$attrs},t)},methods:{subscribe:function(e,t){var n;void 0===t&&(t="provider"),"observer"!==t?(this.refs=Object.assign({},this.refs,((n={})[e.vid]=e,n)),e.persist&&this.persistedStore[e.vid]&&this.restoreProviderState(e)):this.observers.push(e)},unsubscribe:function(e,t){var n=e.vid;void 0===t&&(t="provider"),"provider"===t&&this.removeProvider(n);var r=C(this.observers,(function(e){return e.vid===n}));-1!==r&&this.observers.splice(r,1)},validate:function(e){void 0===e&&(e={silent:!1});var t=e.silent;return Promise.all(F(this.refs).map((function(e){return e[t?"validateSilent":"validate"]().then((function(e){return e.valid}))})).concat(this.observers.map((function(e){return e.validate({silent:t})})))).then((function(e){return e.every((function(e){return e}))}))},reset:function(){var e=this;return Object.keys(this.persistedStore).forEach((function(t){e.$delete(e.persistedStore,t)})),F(this.refs).concat(this.observers).forEach((function(e){return e.reset()}))},restoreProviderState:function(e){var t=this.persistedStore[e.vid];e.setFlags(t.flags),e.applyResult(t),this.$delete(this.persistedStore,e.vid)},removeProvider:function(e){var t,n=this.refs[e];n&&n.persist&&(this.persistedStore=j({},this.persistedStore,((t={})[e]={flags:n.flags,errors:n.messages,failedRules:n.failedRules},t))),this.$delete(this.refs,e)}}};Object.keys(di).forEach((function(e){Ye.extend(e,di[e].validate,j({},di[e].options,{paramNames:di[e].paramNames}))})),Ye.localize({en:ze});$e.version="2.2.15",$e.mapFields=function(e){if(!e)return function(){return hi(this.$validator.flags)};var t=function(e){return Array.isArray(e)?e.reduce((function(e,t){return W(t,".")?e[t.split(".")[1]]=t:e[t]=t,e}),{}):e}(e);return Object.keys(t).reduce((function(e,n){var r=t[n];return e[n]=function(){if(this.$validator.flags[r])return this.$validator.flags[r];if("*"===t[n])return hi(this.$validator.flags,!1);if(r.indexOf(".")<=0)return{};var e=r.split("."),i=e[0],a=e.slice(1);return i=this.$validator.flags["$"+i],"*"===(a=a.join("."))&&i?hi(i):i&&i[a]?i[a]:{}},e}),{})},$e.ValidationProvider=vi,$e.ValidationObserver=xi,$e.withValidation=function(e,t){void 0===t&&(t=null);var n=x(e)?e.options:e;n.$__veeInject=!1;var r={name:(n.name||"AnonymousHoc")+"WithValidation",props:j({},vi.props),data:vi.data,computed:j({},vi.computed),methods:j({},vi.methods),$__veeInject:!1,beforeDestroy:vi.beforeDestroy,inject:vi.inject};t||(t=function(e){return e});var i=n.model&&n.model.event||"input";return r.render=function(e){var r;this.registerField();var a=_i(this),o=j({},this.$listeners),s=te(this.$vnode);this._inputEventName=this._inputEventName||oe(this.$vnode,s),gi.call(this,s);var u=bi(this),l=u.onInput,c=u.onBlur,d=u.onValidate;ie(o,i,l),ie(o,"blur",c),this.normalizedEvents.forEach((function(e,t){ie(o,e,d)}));var f,h,p=(re(this.$vnode)||{prop:"value"}).prop,m=j({},this.$attrs,((r={})[p]=s.value,r),t(a));return e(n,{attrs:this.$attrs,props:m,on:o},(f=this.$slots,h=this.$vnode.context,Object.keys(f).reduce((function(e,t){return f[t].forEach((function(e){e.context||(f[t].context=h,e.data||(e.data={}),e.data.slot=t)})),e.concat(f[t])}),[])))},r};const Di=$e;var Ti=n(7137),Yi=n.n(Ti),Si=function(){return Si=Object.assign||function(e){for(var t,n=1,r=arguments.length;n=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Ei(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,a=n.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)o.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(i)throw i.error}}return o}function Ci(e,t,n){if(n||2===arguments.length)for(var r,i=0,a=t.length;i0})))return this.next(t,n);var h=Ui(d.map((function(e){return e.entrySet}))),p=Ui(Object.keys(a).map((function(e){return a[e].configuration})));return{transitions:f,entrySet:h,exitSet:Ui(d.map((function(e){return e.exitSet}))),configuration:p,source:t,actions:Ui(Object.keys(a).map((function(e){return a[e].actions})))}},e.prototype._transition=function(e,t,n){return na(e)?this.transitionLeafNode(e,t,n):1===Object.keys(e).length?this.transitionCompoundNode(e,t,n):this.transitionParallelNode(e,t,n)},e.prototype.getTransitionData=function(e,t){return this._transition(e.value,e,la(t))},e.prototype.next=function(e,t){var n,r,i,a=this,o=t.name,s=[],u=[];try{for(var l=Oi(this.getCandidates(o)),c=l.next();!c.done;c=l.next()){var d=c.value,f=d.cond,h=d.in,p=e.context,m=!h||(na(h)&&to(h)?e.matches(Fi(this.getStateNodeById(h).path,this.delimiter)):Ni(Fi(h,this.delimiter),Bi(this.path.slice(0,-2))(e.value))),v=!1;try{v=!f||da(this.machine,f,p,t,e)}catch(e){throw new Error("Unable to evaluate guard '".concat(f.name||f.type,"' in transition for event '").concat(o,"' in state node '").concat(this.id,"':\n").concat(e.message))}if(v&&m){void 0!==d.target&&(u=d.target),s.push.apply(s,Ci([],Ei(d.actions),!1)),i=d;break}}}catch(e){n={error:e}}finally{try{c&&!c.done&&(r=l.return)&&r.call(l)}finally{if(n)throw n.error}}if(i){if(!u.length)return{transitions:[i],entrySet:[],exitSet:[],configuration:e.value?[this]:[],source:e,actions:s};var _=Ui(u.map((function(t){return a.getRelativeStateNodes(t,e.historyValue)}))),y=!!i.internal;return{transitions:[i],entrySet:y?[]:Ui(_.map((function(e){return a.nodesFromChild(e)}))),exitSet:y?[]:[this],configuration:_,source:e,actions:s}}},e.prototype.nodesFromChild=function(e){if(e.escapes(this))return[];for(var t=[],n=e;n&&n!==this;)t.push(n),n=n.parent;return t.push(this),t},e.prototype.escapes=function(e){if(this===e)return!1;for(var t=this.parent;t;){if(t===e)return!1;t=t.parent}return!0},e.prototype.getActions=function(e,t,n,r){var i,a,o,s,u=va([],r?this.getStateNodes(r.value):[this]),l=e.configuration.length?va(u,e.configuration):u;try{for(var c=Oi(l),d=c.next();!d.done;d=c.next()){ba(u,p=d.value)||e.entrySet.push(p)}}catch(e){i={error:e}}finally{try{d&&!d.done&&(a=c.return)&&a.call(c)}finally{if(i)throw i.error}}try{for(var f=Oi(u),h=f.next();!h.done;h=f.next()){var p;ba(l,p=h.value)&&!ba(e.exitSet,p.parent)||e.exitSet.push(p)}}catch(e){o={error:e}}finally{try{h&&!h.done&&(s=f.return)&&s.call(f)}finally{if(o)throw o.error}}var m=Ui(e.entrySet.map((function(r){var i=[];if("final"!==r.type)return i;var a=r.parent;if(!a.parent)return i;i.push(za(r.id,r.doneData),za(a.id,r.doneData?Gi(r.doneData,t,n):void 0));var o=a.parent;return"parallel"===o.type&&pa(o).every((function(t){return wa(e.configuration,t)}))&&i.push(za(o.id)),i})));e.exitSet.sort((function(e,t){return t.order-e.order})),e.entrySet.sort((function(e,t){return e.order-t.order}));var v=new Set(e.entrySet),_=new Set(e.exitSet),y=Ei([Ui(Array.from(v).map((function(e){return Ci(Ci([],Ei(e.activities.map((function(e){return function(e){var t=Fa(e);return{type:oa.Start,activity:t,exec:void 0}}(e)}))),!1),Ei(e.onEntry),!1)}))).concat(m.map(Wa)),Ui(Array.from(_).map((function(e){return Ci(Ci([],Ei(e.onExit),!1),Ei(e.activities.map((function(e){return function(e){var t=ta(e)?e:Fa(e);return{type:oa.Stop,activity:t,exec:void 0}}(e)}))),!1)})))],2),g=y[0],b=y[1];return Ia(b.concat(e.actions).concat(g),this.machine.options.actions)},e.prototype.transition=function(e,t,n){void 0===e&&(e=this.initialState);var r,i,a=la(t);if(e instanceof Ua)r=void 0===n?e:this.resolveState(Ua.from(e,n));else{var o=na(e)?this.resolve(Wi(this.getResolvedPath(e))):this.resolve(e),s=null!=n?n:this.machine.context;r=this.resolveState(Ua.from(o,s))}if(this.strict&&!this.events.includes(a.name)&&(i=a.name,!/^(done|error)\./.test(i)))throw new Error("Machine '".concat(this.id,"' does not accept event '").concat(a.name,"'"));var u=this._transition(r.value,r,a)||{transitions:[],configuration:[],entrySet:[],exitSet:[],source:r,actions:[]},l=va([],this.getStateNodes(r.value)),c=u.configuration.length?va(l,u.configuration):l;return u.configuration=Ci([],Ei(c),!1),this.resolveTransition(u,r,r.context,a)},e.prototype.resolveRaisedTransition=function(e,t,n){var r,i=e.actions;return(e=this.transition(e,t))._event=n,e.event=n.data,(r=e.actions).unshift.apply(r,Ci([],Ei(i),!1)),e},e.prototype.resolveTransition=function(e,t,n,r){var i,a,o=this;void 0===r&&(r=Pa);var s=e.configuration,u=!t||e.transitions.length>0,l=u?ga(this.machine,s):void 0,c=t?t.historyValue?t.historyValue:e.source?this.machine.historyValue(t.value):void 0:void 0,d=this.getActions(e,n,r,t),f=t?Si({},t.activities):{};try{for(var h=Oi(d),p=h.next();!p.done;p=h.next()){var m=p.value;m.type===ka?f[m.activity.id||m.activity.type]=m:m.type===La&&(f[m.activity.id||m.activity.type]=!1)}}catch(e){i={error:e}}finally{try{p&&!p.done&&(a=h.return)&&a.call(h)}finally{if(i)throw i.error}}var v,_,y=Ei(Ba(this,t,n,r,d,this.machine.config.preserveActionOrder),2),g=y[0],b=y[1],w=Ei(Xi(g,(function(e){return e.type===xa||e.type===Da&&e.to===sa.Internal})),2),M=w[0],k=w[1],L=g.filter((function(e){var t;return e.type===ka&&(null===(t=e.activity)||void 0===t?void 0:t.type)===Ea})),x=L.reduce((function(e,t){return e[t.activity.id]=Ga(t.activity,o.machine,b,r),e}),t?Si({},t.children):{}),D=u?e.configuration:t?t.configuration:[],T=wa(D,this),Y=new Ua({value:l||t.value,context:b,_event:r,_sessionid:t?t._sessionid:null,historyValue:l?c?(v=c,_=l,{current:_,states:Zi(v,_)}):void 0:t?t.historyValue:void 0,history:!l||e.source?t:void 0,actions:l?k:[],activities:l?f:t?t.activities:{},events:[],configuration:D,transitions:e.transitions,children:x,done:T,tags:Ma(D),machine:this}),S=n!==b;Y.changed=r.name===Ca||S;var j=Y.history;j&&delete j.history;var O=!T&&(this._transient||s.some((function(e){return e._transient})));if(!(u||O&&r.name!==Ka))return Y;var E=Y;if(!T)for(O&&(E=this.resolveRaisedTransition(E,{type:Ya},r));M.length;){var C=M.shift();E=this.resolveRaisedTransition(E,C._event,r)}var A=E.changed||(j?!!E.actions.length||S||typeof j.value!=typeof E.value||!Va(E.value,j.value):void 0);return E.changed=A,E.history=j,E},e.prototype.getStateNode=function(e){if(to(e))return this.machine.getStateNodeById(e);if(!this.states)throw new Error("Unable to retrieve child state '".concat(e,"' from '").concat(this.id,"'; no child states exist."));var t=this.states[e];if(!t)throw new Error("Child state '".concat(e,"' does not exist on '").concat(this.id,"'"));return t},e.prototype.getStateNodeById=function(e){var t=to(e)?e.slice("#".length):e;if(t===this.id)return this;var n=this.machine.idMap[t];if(!n)throw new Error("Child state node '#".concat(t,"' does not exist on machine '").concat(this.id,"'"));return n},e.prototype.getStateNodeByPath=function(e){if("string"==typeof e&&to(e))try{return this.getStateNodeById(e.slice(1))}catch(e){}for(var t=Ii(e,this.delimiter).slice(),n=this;t.length;){var r=t.shift();if(!r.length)break;n=n.getStateNode(r)}return n},e.prototype.resolve=function(e){var t,n=this;if(!e)return this.initialStateValue||eo;switch(this.type){case"parallel":return Ri(this.initialStateValue,(function(t,r){return t?n.getStateNode(r).resolve(e[r]||t):eo}));case"compound":if(na(e)){var r=this.getStateNode(e);return"parallel"===r.type||"compound"===r.type?((t={})[e]=r.initialStateValue,t):e}return Object.keys(e).length?Ri(e,(function(e,t){return e?n.getStateNode(t).resolve(e):eo})):this.initialStateValue||{};default:return e||eo}},e.prototype.getResolvedPath=function(e){if(to(e)){var t=this.machine.idMap[e.slice("#".length)];if(!t)throw new Error("Unable to find state node '".concat(e,"'"));return t.path}return Ii(e,this.delimiter)},Object.defineProperty(e.prototype,"initialStateValue",{get:function(){var e,t;if(this.__cache.initialStateValue)return this.__cache.initialStateValue;if("parallel"===this.type)t=zi(this.states,(function(e){return e.initialStateValue||eo}),(function(e){return!("history"===e.type)}));else if(void 0!==this.initial){if(!this.states[this.initial])throw new Error("Initial state '".concat(this.initial,"' not found on '").concat(this.key,"'"));t=ha(this.states[this.initial])?this.initial:((e={})[this.initial]=this.states[this.initial].initialStateValue,e)}else t={};return this.__cache.initialStateValue=t,this.__cache.initialStateValue},enumerable:!1,configurable:!0}),e.prototype.getInitialState=function(e,t){this._init();var n=this.getStateNodes(e);return this.resolveTransition({configuration:n,entrySet:n,exitSet:[],transitions:[],source:void 0,actions:[]},void 0,null!=t?t:this.machine.context,void 0)},Object.defineProperty(e.prototype,"initialState",{get:function(){var e=this.initialStateValue;if(!e)throw new Error("Cannot retrieve initial state from simple state '".concat(this.id,"'."));return this.getInitialState(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"target",{get:function(){var e;if("history"===this.type){var t=this.config;e=na(t.target)&&to(t.target)?Wi(this.machine.getStateNodeById(t.target).path.slice(this.path.length-1)):t.target}return e},enumerable:!1,configurable:!0}),e.prototype.getRelativeStateNodes=function(e,t,n){return void 0===n&&(n=!0),n?"history"===e.type?e.resolveHistory(t):e.initialStateNodes:[e]},Object.defineProperty(e.prototype,"initialStateNodes",{get:function(){var e=this;return ha(this)?[this]:"compound"!==this.type||this.initial?Ui(Vi(this.initialStateValue).map((function(t){return e.getFromRelativePath(t)}))):[this]},enumerable:!1,configurable:!0}),e.prototype.getFromRelativePath=function(e){if(!e.length)return[this];var t=Ei(e),n=t[0],r=t.slice(1);if(!this.states)throw new Error("Cannot retrieve subPath '".concat(n,"' from node with no states"));var i=this.getStateNode(n);if("history"===i.type)return i.resolveHistory();if(!this.states[n])throw new Error("Child state '".concat(n,"' does not exist on '").concat(this.id,"'"));return this.states[n].getFromRelativePath(r)},e.prototype.historyValue=function(e){if(Object.keys(this.states).length)return{current:e||this.initialStateValue,states:zi(this.states,(function(t,n){if(!e)return t.historyValue();var r=na(e)?void 0:e[n];return t.historyValue(r||t.initialStateValue)}),(function(e){return!e.history}))}},e.prototype.resolveHistory=function(e){var t=this;if("history"!==this.type)return[this];var n=this.parent;if(!e){var r=this.target;return r?Ui(Vi(r).map((function(e){return n.getFromRelativePath(e)}))):n.initialStateNodes}var i,a,o=(i=n.path,a="states",function(e){var t,n,r=e;try{for(var o=Oi(i),s=o.next();!s.done;s=o.next()){var u=s.value;r=r[a][u]}}catch(e){t={error:e}}finally{try{s&&!s.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}return r})(e).current;return na(o)?[n.getStateNode(o)]:Ui(Vi(o).map((function(e){return"deep"===t.history?n.getFromRelativePath(e):[n.states[e[0]]]})))},Object.defineProperty(e.prototype,"stateIds",{get:function(){var e=this,t=Ui(Object.keys(this.states).map((function(t){return e.states[t].stateIds})));return[this.id].concat(t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"events",{get:function(){var e,t,n,r;if(this.__cache.events)return this.__cache.events;var i=this.states,a=new Set(this.ownEvents);if(i)try{for(var o=Oi(Object.keys(i)),s=o.next();!s.done;s=o.next()){var u=i[s.value];if(u.states)try{for(var l=(n=void 0,Oi(u.events)),c=l.next();!c.done;c=l.next()){var d=c.value;a.add("".concat(d))}}catch(e){n={error:e}}finally{try{c&&!c.done&&(r=l.return)&&r.call(l)}finally{if(n)throw n.error}}}}catch(t){e={error:t}}finally{try{s&&!s.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}return this.__cache.events=Array.from(a)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"ownEvents",{get:function(){var e=new Set(this.transitions.filter((function(e){return!(!e.target&&!e.actions.length&&e.internal)})).map((function(e){return e.eventType})));return Array.from(e)},enumerable:!1,configurable:!0}),e.prototype.resolveTarget=function(e){var t=this;if(void 0!==e)return e.map((function(e){if(!na(e))return e;var n=e[0]===t.delimiter;if(n&&!t.parent)return t.getStateNodeByPath(e.slice(1));var r=n?t.key+e:e;if(!t.parent)return t.getStateNodeByPath(r);try{return t.parent.getStateNodeByPath(r)}catch(e){throw new Error("Invalid transition definition for state node '".concat(t.id,"':\n").concat(e.message))}}))},e.prototype.formatTransition=function(e){var t=this,n=function(e){if(void 0!==e&&""!==e)return Ji(e)}(e.target),r="internal"in e?e.internal:!n||n.some((function(e){return na(e)&&e[0]===t.delimiter})),i=this.machine.options.guards,a=this.resolveTarget(n),o=Si(Si({},e),{actions:Ia(Ji(e.actions)),cond:ra(e.cond,i),target:a,source:this,internal:r,eventType:e.event,toJSON:function(){return Si(Si({},o),{target:o.target?o.target.map((function(e){return"#".concat(e.id)})):void 0,source:"#".concat(t.id)})}});return o},e.prototype.formatTransitions=function(){var e,t,n,r=this;if(this.config.on)if(Array.isArray(this.config.on))n=this.config.on;else{var i=this.config.on,a=Qa,o=i[a],s=void 0===o?[]:o,u=ji(i,["*"]);n=Ui(Object.keys(u).map((function(e){var t=ca(e,u[e]);return t})).concat(ca(Qa,s)))}else n=[];var l=this.config.always?ca("",this.config.always):[],c=this.config.onDone?ca(String(za(this.id)),this.config.onDone):[];var d=Ui(this.invoke.map((function(e){var t=[];return e.onDone&&t.push.apply(t,Ci([],Ei(ca(String(function(e,t){var n="".concat(oa.DoneInvoke,".").concat(e);return{type:n,data:t,toString:function(){return n}}}(e.id)),e.onDone)),!1)),e.onError&&t.push.apply(t,Ci([],Ei(ca(String(function(e,t){var n="".concat(oa.ErrorPlatform,".").concat(e);return{type:n,data:t,toString:function(){return n}}}(e.id)),e.onError)),!1)),t}))),f=this.after,h=Ui(Ci(Ci(Ci(Ci([],Ei(c),!1),Ei(d),!1),Ei(n),!1),Ei(l),!1).map((function(e){return Ji(e).map((function(e){return r.formatTransition(e)}))})));try{for(var p=Oi(f),m=p.next();!m.done;m=p.next()){var v=m.value;h.push(v)}}catch(t){e={error:t}}finally{try{m&&!m.done&&(t=p.return)&&t.call(p)}finally{if(e)throw e.error}}return h},e}();const ro={name:"KanbanBoard",props:{stages:{type:Array,required:!0},blocks:{type:Array,required:!0},config:{type:Object,default:()=>({})},stateMachineConfig:{type:Object,default:null},idProp:{type:String,default:"id"},statusProp:{type:String,default:"status"}},data:()=>({machine:null}),computed:{localBlocks(){return this.blocks}},methods:{getBlocks(e){return this.localBlocks.filter((t=>t[this.statusProp]===e))},findPossibleTransitions(e){return this.machine.config.states[e].on||{}},findTransition(e,t){const n=e.dataset.status,r=t.dataset.status,i=this.findPossibleTransitions(r);return Object.keys(i).find((e=>i[e]===n))},accepts(e,t,n){if(!this.machine)return!0;const r=t.dataset.status,i=n.dataset.status;return Object.values(this.findPossibleTransitions(i)).includes(r)},allowedTargets(e,t){const n=this.localBlocks.find((t=>t[this.idProp]===e.dataset.blockId));return this.drake.containers.filter((e=>this.config.accepts(n,e,t)))},forbiddenTargets(e,t){return this.drake.containers.filter((n=>!this.allowedTargets(e,t).includes(n)))}},updated(){this.drake.containers=this.$refs.list,this.drake.mirrorContainer=this.$el},mounted(){this.config.accepts=this.config.accepts||this.accepts,this.config.mirrorContainer=this.$el,this.drake=Yi()(this.$refs.list,this.config).on("drag",((e,t)=>{this.$emit("drag",e,t),e.classList.add("is-moving"),this.allowedTargets(e,t).forEach((e=>e.classList.add("allowed"))),this.forbiddenTargets(e,t).forEach((e=>e.classList.add("forbidden")))})).on("dragend",(e=>{this.$emit("dragend",e),e.classList.remove("is-moving"),this.drake.containers.forEach((e=>e.classList.remove("allowed","forbidden"))),window.setTimeout((()=>{e.classList.add("is-moved"),window.setTimeout((()=>{e.classList.remove("is-moved")}),600)}),100)})).on("drop",((e,t,n,r)=>{this.$emit("drop",e,t,n,r);let i=0;for(i=0;i{this.$emit("cancel",e,t,n)})).on("remove",((e,t,n)=>{this.$emit("remove",e,t,n)})).on("shadow",((e,t,n)=>{this.$emit("shadow",e,t,n)})).on("over",((e,t,n)=>{this.$emit("over",e,t,n)})).on("out",((e,t,n)=>{this.$emit("out",e,t,n)})).on("cloned",((e,t,n)=>{this.$emit("cloned",e,t,n)})),this.$emit("init",this.drake)},created(){this.stateMachineConfig&&(this.machine=function(e,t,n){return void 0===n&&(n=e.context),new no(e,t,n)}(this.stateMachineConfig))}};var io=function(e,t,n,r,i,a,o,s){var u,l="function"==typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=n,l._compiled=!0),r&&(l.functional=!0),a&&(l._scopeId="data-v-"+a),o?(u=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(o)},l._ssrRegister=u):i&&(u=s?function(){i.call(this,(l.functional?this.parent:this).$root.$options.shadowRoot)}:i),u)if(l.functional){l._injectStyles=u;var c=l.render;l.render=function(e,t){return u.call(t),c(e,t)}}else{var d=l.beforeCreate;l.beforeCreate=d?[].concat(d,u):[u]}return{exports:e,options:l}}(ro,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"drag-container"},[n("ul",{staticClass:"drag-list"},e._l(e.stages,(function(t){var r;return n("li",{key:t,staticClass:"drag-column",class:(r={},r["drag-column-"+t]=!0,r)},[n("span",{staticClass:"drag-column-header"},[e._t(t,(function(){return[n("h2",[e._v(e._s(t))])]}))],2),e._v(" "),n("div",{staticClass:"drag-options"}),e._v(" "),n("ul",{ref:"list",refInFor:!0,staticClass:"drag-inner-list",attrs:{"data-status":t}},e._l(e.getBlocks(t),(function(t){return n("li",{key:t[e.idProp],staticClass:"drag-item",attrs:{"data-block-id":t[e.idProp]}},[e._t(t[e.idProp],(function(){return[n("strong",[e._v(e._s(t[e.statusProp]))]),e._v(" "),n("div",[e._v(e._s(t[e.idProp]))])]}))],2)})),0),e._v(" "),n("div",{staticClass:"drag-column-footer"},[e._t("footer-"+t)],2)])})),0)])}),[],!1,null,null,null);const ao=io.exports,oo={install(e){e.component("kanban-board",ao)}};var so=n(9444),uo=n.n(so),lo=n(3379),co=n.n(lo),fo=n(4630),ho={insert:"head",singleton:!1};co()(fo.Z,ho);fo.Z.locals;n(9101);var po=n(4837),mo=n.n(po),vo=n(9948),_o=n.n(vo),yo=n(2953),go=n.n(yo),bo=n(4910),wo=n.n(bo),Mo=n(3786),ko=n.n(Mo),Lo=n(4374),xo=n.n(Lo),Do=n(107),To=n.n(Do),Yo=n(1888),So=n.n(Yo),jo=n(4051),Oo=n.n(jo);n(951),n(2002);window.moment=n(381),window.Vue=i(),window.VeeValidate=Di,i().use(Di,{dictionary:{ar:mo(),de:_o(),es:go(),fa:wo(),fr:ko(),nl:xo(),tr:To(),hi_IN:So(),zh_CN:Oo()},events:"input|change|blur"}),i().prototype.$http=axios,window.eventBus=new(i()),i().use(oo),i().use(c,{name:"Timeago",locale:"en",locales:{ar:n(8137),tr:n(1062)}}),i().component("draggable",o()),i().component("vue-cal",uo()),$((function(){var e=new(i())({el:"#app",data:function(){return{pageLoaded:!1,modalIds:{},isMenuOpen:"true"==localStorage.getItem("crm-sidebar")}},mounted:function(){var e=this;this.$validator.localize(document.documentElement.lang),setTimeout((function(){e.pageLoaded=!0,e.disableAutoComplete()})),this.addServerErrors(),this.addFlashMessages(),window.addFlashMessages=function(t){e.$refs.flashes.addFlash(t)}},methods:{onSubmit:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";this.toggleButtonDisable(!0),"undefined"!=typeof tinyMCE&&tinyMCE.triggerSave(),this.$validator.validateAll(n||null).then((function(n){n?e.target.submit():(t.activateAutoScroll(),t.toggleButtonDisable(!1),eventBus.$emit("onFormError"))}))},activateAutoScroll:function(e){var t=document.querySelector(".control-error:first-of-type");t&&t.scrollIntoView({behavior:"smooth",block:"end",inline:"nearest"})},toggleButtonDisable:function(e){for(var t=document.getElementsByTagName("button"),n=0;n0&&void 0!==arguments[0]?arguments[0]:null;for(var t in serverErrors){var n=[];t.split(".").forEach((function(e,t){t?n.push("["+e+"]"):n.push(e)}));var r=n.join(""),i=this.$validator.fields.find({name:r,scope:e});i&&this.$validator.errors.add({id:i.id,field:r,msg:serverErrors[t][0],scope:e})}},addFlashMessages:function(){if("undefined"!=typeof flashMessages){var e=this.$refs.flashes;flashMessages.forEach((function(t){e.addFlash(t)}),this)}},openModal:function(e){this.$set(this.modalIds,e,!0),this.disableAutoComplete()},closeModal:function(e){this.$set(this.modalIds,e,!1)},toggleMenu:function(){this.isMenuOpen=!this.isMenuOpen,localStorage.setItem("crm-sidebar",this.isMenuOpen)},disableAutoComplete:function(){queueMicrotask((function(){$(".date-container input").attr("autocomplete","off"),$(".datetime-container input").attr("autocomplete","off")}))}}});window.app=e}))},9101:(e,t,n)=>{if(window._=n(6486),window.axios=n(9669),window.$=window.jQuery=n(9755),window.axios){window.axios.defaults.headers.common["X-Requested-With"]="XMLHttpRequest";var r=document.head.querySelector('meta[name="csrf-token"]');r?window.axios.defaults.headers.common["X-CSRF-TOKEN"]=r.content:console.error("CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token")}},8514:(e,t,n)=>{"use strict";var r=n(6115);e.exports=function(e,t,n){e&&r((function(){e.apply(n||null,t||[])}))}},5229:(e,t,n)=>{"use strict";var r=n(2584),i=n(8514);e.exports=function(e,t){var n=t||{},a={};return void 0===e&&(e={}),e.on=function(t,n){return a[t]?a[t].push(n):a[t]=[n],e},e.once=function(t,n){return n._once=!0,e.on(t,n),e},e.off=function(t,n){var r=arguments.length;if(1===r)delete a[t];else if(0===r)a={};else{var i=a[t];if(!i)return e;i.splice(i.indexOf(n),1)}return e},e.emit=function(){var t=r(arguments);return e.emitterSnapshot(t.shift()).apply(this,t)},e.emitterSnapshot=function(t){var o=(a[t]||[]).slice(0);return function(){var a=r(arguments),s=this||e;if("error"===t&&!1!==n.throws&&!o.length)throw 1===a.length?a[0]:a;return o.forEach((function(r){n.async?i(r,a,s):r.apply(s,a),r._once&&e.off(t,r)})),e}},e}},1808:(e,t,n)=>{"use strict";var r=n(9638),i=n(4874),a=n.g.document,o=function(e,t,n,r){return e.addEventListener(t,n,r)},s=function(e,t,n,r){return e.removeEventListener(t,n,r)},u=[];function l(e,t,n){var r=function(e,t,n){var r,i;for(r=0;r{"use strict";var r=[],i="",a=/^on/;for(i in n.g)a.test(i)&&r.push(i.slice(2));e.exports=r},4630:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(3645),i=n.n(r)()((function(e){return e[1]}));i.push([e.id,'.vuecal__weekdays-headings{border-bottom:1px solid #ddd;margin-bottom:-1px}.vuecal--view-with-time .vuecal__weekdays-headings,.vuecal--week-numbers .vuecal__weekdays-headings{padding-left:3em}.vuecal--view-with-time.vuecal--twelve-hour .vuecal__weekdays-headings{font-size:.9em;padding-left:4em}.vuecal--overflow-x.vuecal--view-with-time .vuecal__weekdays-headings{padding-left:0}.vuecal__heading{align-items:center;font-weight:400;height:2.8em;justify-content:center;overflow:hidden;position:relative;text-align:center;width:100%}.vuecal__heading>.vuecal__flex{align-items:normal!important;height:100%;width:100%}.vuecal--sticky-split-labels .vuecal__heading{height:3.4em}.vuecal--day-view .vuecal__heading,.vuecal--month-view .vuecal__heading,.vuecal--week-view .vuecal__heading{width:14.2857%}.vuecal--hide-weekends.vuecal--day-view .vuecal__heading,.vuecal--hide-weekends.vuecal--month-view .vuecal__heading,.vuecal--hide-weekends.vuecal--week-view .vuecal__heading,.vuecal--years-view .vuecal__heading{width:20%}.vuecal--year-view .vuecal__heading{width:33.33%}.vuecal__heading .weekday-label{align-items:center;display:flex;flex-shrink:0;justify-content:center}.vuecal--small .vuecal__heading .small,.vuecal--xsmall .vuecal__heading .xsmall{display:block}.vuecal--small .vuecal__heading .full,.vuecal--small .vuecal__heading .xsmall,.vuecal--xsmall .vuecal__heading .full,.vuecal--xsmall .vuecal__heading .small,.vuecal__heading .small,.vuecal__heading .xsmall{display:none}.vuecal .vuecal__split-days-headers{align-items:center}@media screen and (max-width:550px){.vuecal__heading{line-height:1.2}.vuecal--small .vuecal__heading .small,.vuecal--xsmall .vuecal__heading .xsmall,.vuecal__heading .small{display:block}.vuecal--small .vuecal__heading .full,.vuecal--small .vuecal__heading .xsmall,.vuecal--xsmall .vuecal__heading .full,.vuecal--xsmall .vuecal__heading .small,.vuecal__heading .full,.vuecal__heading .xsmall{display:none}.vuecal--overflow-x .vuecal__heading .full,.vuecal--small.vuecal--overflow-x .vuecal__heading .small,.vuecal--xsmall.vuecal--overflow-x .vuecal__heading .xsmall{display:block}.vuecal--overflow-x .vuecal__heading .small,.vuecal--overflow-x .vuecal__heading .xsmall,.vuecal--small.vuecal--overflow-x .vuecal__heading .full,.vuecal--small.vuecal--overflow-x .vuecal__heading .xsmall,.vuecal--xsmall.vuecal--overflow-x .vuecal__heading .full,.vuecal--xsmall.vuecal--overflow-x .vuecal__heading .small{display:none}}@media screen and (max-width:450px){.vuecal--small .vuecal__heading .xsmall,.vuecal--xsmall .vuecal__heading .xsmall,.vuecal__heading .xsmall{display:block}.vuecal--small .vuecal__heading .full,.vuecal--small .vuecal__heading .small,.vuecal--xsmall .vuecal__heading .full,.vuecal--xsmall .vuecal__heading .small,.vuecal__heading .full,.vuecal__heading .small{display:none}.vuecal--small.vuecal--overflow-x .vuecal__heading .small,.vuecal--xsmall.vuecal--overflow-x .vuecal__heading .xsmall{display:block}.vuecal--small.vuecal--overflow-x .vuecal__heading .full,.vuecal--small.vuecal--overflow-x .vuecal__heading .xsmall,.vuecal--xsmall.vuecal--overflow-x .vuecal__heading .full,.vuecal--xsmall.vuecal--overflow-x .vuecal__heading .small{display:none}}.vuecal__header button{font-family:inherit;outline:none}.vuecal__menu{background-color:rgba(0,0,0,.02);justify-content:center;list-style-type:none;margin:0;padding:0}.vuecal__view-btn{background:none;border:none;border-bottom:0 solid;box-sizing:border-box;color:inherit;cursor:pointer;font-size:1.3em;height:2.2em;padding:.3em 1em;transition:.2s}.vuecal__view-btn--active{background:hsla(0,0%,100%,.15);border-bottom-width:2px}.vuecal__title-bar{align-items:center;background-color:rgba(0,0,0,.1);display:flex;font-size:1.4em;justify-content:space-between;line-height:1.3;min-height:2em;text-align:center}.vuecal--xsmall .vuecal__title-bar{font-size:1.3em}.vuecal__title{justify-content:center;position:relative}.vuecal__title button{background:none;border:none;cursor:pointer}.vuecal__title button.slide-fade--left-leave-active,.vuecal__title button.slide-fade--right-leave-active{width:100%}.vuecal__today-btn{align-items:center;background:none;border:none;display:flex;font-size:.8em;position:relative}.vuecal__today-btn span.default{cursor:pointer;font-size:.8em;padding:3px 6px;text-transform:uppercase}.vuecal__arrow{background:none;border:none;cursor:pointer;position:relative;white-space:nowrap;z-index:1}.vuecal__arrow--prev{margin-left:.6em}.vuecal__arrow--next{margin-right:.6em}.vuecal__arrow i.angle{border:solid;border-width:0 2px 2px 0;display:inline-block;padding:.25em;transform:rotate(-45deg)}.vuecal__arrow--prev i.angle{border-width:2px 0 0 2px}.vuecal__arrow--highlighted,.vuecal__today-btn--highlighted,.vuecal__view-btn--highlighted{background-color:rgba(0,0,0,.04);position:relative}.vuecal__arrow--highlighted *,.vuecal__today-btn--highlighted *,.vuecal__view-btn--highlighted *{pointer-events:none}.vuecal__arrow--highlighted:after,.vuecal__arrow--highlighted:before,.vuecal__today-btn--highlighted:after,.vuecal__today-btn--highlighted:before,.vuecal__view-btn--highlighted:after,.vuecal__view-btn--highlighted:before{-webkit-animation:sonar .8s ease-out infinite;animation:sonar .8s ease-out infinite;background-color:inherit;content:"";left:50%;pointer-events:none;position:absolute;top:50%}.vuecal__arrow--highlighted:before,.vuecal__today-btn--highlighted:before,.vuecal__view-btn--highlighted:before{border-radius:3em;height:3em;margin-left:-1.5em;margin-top:-1.5em;width:3em}.vuecal__arrow--highlighted:after,.vuecal__today-btn--highlighted:after,.vuecal__view-btn--highlighted:after{-webkit-animation-delay:.1s;animation-delay:.1s;-webkit-animation-duration:1.5s;animation-duration:1.5s;border-radius:2.6em;height:2.6em;margin-left:-1.3em;margin-top:-1.3em;width:2.6em}@-webkit-keyframes sonar{0%,20%{opacity:1}to{opacity:0;transform:scale(2.5)}}@keyframes sonar{0%,20%{opacity:1}to{opacity:0;transform:scale(2.5)}}@media screen and (max-width:450px){.vuecal__title{font-size:.9em}.vuecal__view-btn{padding-left:.6em;padding-right:.6em}}@media screen and (max-width:350px){.vuecal__view-btn{font-size:1.1em}}.vuecal__event{background-color:hsla(0,0%,97%,.8);box-sizing:border-box;color:#666;left:0;overflow:hidden;position:relative;transition:box-shadow .3s,left .3s,width .3s;width:100%;z-index:1}.vuecal--no-time .vuecal__event{min-height:8px}.vuecal:not(.vuecal--dragging-event) .vuecal__event:hover{z-index:2}.vuecal__cell .vuecal__event *{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.vuecal--view-with-time .vuecal__event:not(.vuecal__event--all-day){position:absolute}.vuecal--view-with-time .vuecal__bg .vuecal__event--all-day{bottom:0;opacity:.6;position:absolute;right:0;top:0;width:auto;z-index:0}.vuecal--view-with-time .vuecal__all-day .vuecal__event--all-day{left:0;position:relative}.vuecal__event--background{z-index:0}.vuecal__event--focus,.vuecal__event:focus{box-shadow:1px 1px 6px rgba(0,0,0,.2);outline:none;z-index:3}.vuecal__event.vuecal__event--dragging{opacity:.7}.vuecal__event.vuecal__event--static{opacity:0;transition:opacity .1s}@-moz-document url-prefix(){.vuecal__event.vuecal__event--dragging{opacity:1}}.vuecal__event-resize-handle{background-color:hsla(0,0%,100%,.3);bottom:0;cursor:ns-resize;height:1em;left:0;opacity:0;position:absolute;right:0;transform:translateY(110%);transition:.3s}.vuecal__event--focus .vuecal__event-resize-handle,.vuecal__event--resizing .vuecal__event-resize-handle,.vuecal__event:focus .vuecal__event-resize-handle,.vuecal__event:hover .vuecal__event-resize-handle{opacity:1;transform:translateY(0)}.vuecal__event--dragging .vuecal__event-resize-handle{display:none}.vuecal__event-delete{align-items:center;background-color:rgba(221,51,51,.85);color:#fff;cursor:pointer;display:flex;flex-direction:column;height:1.4em;justify-content:center;left:0;line-height:1.4em;position:absolute;right:0;top:0;transform:translateY(-110%);transition:.3s;z-index:0}.vuecal__event .vuecal__event-delete{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vuecal--full-height-delete .vuecal__event-delete{bottom:0;height:auto}.vuecal--full-height-delete .vuecal__event-delete:before{background-image:url(\'data:image/svg+xml;utf8,\');content:"";display:block;height:1.8em;width:1.7em}.vuecal__event--deletable .vuecal__event-delete{transform:translateY(0);z-index:1}.vuecal__event--deletable.vuecal__event--dragging .vuecal__event-delete{opacity:0;transition:none}.vuecal--month-view .vuecal__event-title{font-size:.85em}.vuecal--short-events .vuecal__event-title{overflow:hidden;padding:0 3px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.vuecal__event-content,.vuecal__event-title{-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.vuecal__event-title--edit{background-image:url(\'data:image/svg+xml;utf8,\');background-position:120% .15em;background-repeat:no-repeat;background-size:.4em;border-bottom:1px solid transparent;color:inherit;outline:none;text-align:center;transition:.3s;width:100%}.vuecal__event-title--edit:focus,.vuecal__event-title--edit:hover{background-position:99% .15em;background-size:1.2em;border-color:rgba(0,0,0,.4)}.vuecal__cell{align-items:center;display:flex;justify-content:center;position:relative;text-align:center;transition:background-color .15s ease-in-out;width:100%}.vuecal__cells.month-view .vuecal__cell,.vuecal__cells.week-view .vuecal__cell{width:14.2857%}.vuecal--hide-weekends .vuecal__cells.month-view .vuecal__cell,.vuecal--hide-weekends .vuecal__cells.week-view .vuecal__cell,.vuecal__cells.years-view .vuecal__cell{width:20%}.vuecal__cells.year-view .vuecal__cell{width:33.33%}.vuecal__cells.day-view .vuecal__cell{flex:1}.vuecal--overflow-x.vuecal--day-view .vuecal__cell{width:auto}.vuecal--click-to-navigate .vuecal__cell:not(.vuecal__cell--disabled){cursor:pointer}.vuecal--day-view.vuecal--no-time .vuecal__cell:not(.vuecal__cell--has-splits),.vuecal--view-with-time .vuecal__cell,.vuecal--week-view.vuecal--no-time .vuecal__cell:not(.vuecal__cell--has-splits){display:block}.vuecal__cell.vuecal__cell--has-splits{display:flex;flex-direction:row}.vuecal__cell:before{border:1px solid hsla(0,0%,77%,.25);bottom:-1px;content:"";left:0;position:absolute;right:-1px;top:0;z-index:0}.vuecal--overflow-x.vuecal--day-view .vuecal__cell:before{bottom:0}.vuecal__cell--current,.vuecal__cell--today{background-color:rgba(240,240,255,.4);z-index:1}.vuecal__cell--selected{background-color:rgba(235,255,245,.4);z-index:2}.vuecal--day-view .vuecal__cell--selected{background:none}.vuecal__cell--out-of-scope{color:rgba(0,0,0,.25)}.vuecal__cell--disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.vuecal__cell--highlighted:not(.vuecal__cell--has-splits),.vuecal__cell-split.vuecal__cell-split--highlighted{background-color:rgba(0,0,0,.04);transition-duration:5ms}.vuecal__cell-content{height:100%;outline:none;position:relative;width:100%}.vuecal--month-view .vuecal__cell-content,.vuecal--year-view .vuecal__cell-content,.vuecal--years-view .vuecal__cell-content{justify-content:center}.vuecal__cell-split{display:flex;flex-direction:column;flex-grow:1;height:100%;position:relative;transition:background-color .15s ease-in-out}.vuecal__cell-events{width:100%}.vuecal__cell-events-count{background:#999;border-radius:12px;color:#fff;font-size:10px;height:12px;left:50%;line-height:12px;min-width:12px;padding:0 3px;top:65%;transform:translateX(-50%)}.vuecal__cell .vuecal__special-hours,.vuecal__cell-events-count{box-sizing:border-box;position:absolute}.vuecal__cell .vuecal__special-hours{left:0;right:0}.vuecal--overflow-x.vuecal--week-view .vuecal__cell,.vuecal__cell-split{overflow:hidden}.vuecal__no-event{color:#aaa;justify-self:flex-start;margin-bottom:auto;padding-top:1em}.vuecal__all-day .vuecal__no-event{display:none}.vuecal__now-line{border-top:1px solid;color:red;height:0;left:0;opacity:.6;position:absolute;width:100%;z-index:1}.vuecal__now-line:before{border:5px solid transparent;border-left-color:currentcolor;content:"";left:0;position:absolute;top:-6px}.vuecal{box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);height:100%}.vuecal *,.vuecal--has-touch :not(.vuecal__event-title--edit){-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vuecal--has-touch :not(.vuecal__event-title--edit){-webkit-touch-callout:none}.vuecal .clickable{cursor:pointer}.vuecal--drag-creating-event,.vuecal--resizing-event{cursor:ns-resize}.vuecal--dragging-event{cursor:move;cursor:-webkit-grabbing;cursor:grabbing}.vuecal .dragging-helper{background:rgba(138,190,230,.8);border:1px solid #61a9e0;height:40px;position:absolute;width:60px;z-index:10}.vuecal--xsmall{font-size:.9em}.vuecal__flex{display:flex;flex-direction:row}.vuecal__flex[column]{flex-direction:column}.vuecal__flex[column],.vuecal__flex[grow]{flex:1 1 auto}.vuecal__flex[grow]{width:100%}.vuecal__flex[wrap]{flex-wrap:wrap}.vuecal__split-days-headers.slide-fade--right-leave-active{display:none}.vuecal--week-numbers.vuecal--month-view .vuecal__split-days-headers{margin-left:3em}.vuecal--day-view:not(.vuecal--overflow-x) .vuecal__split-days-headers{height:2.2em;margin-left:3em}.vuecal--day-view.vuecal--twelve-hour:not(.vuecal--overflow-x) .vuecal__split-days-headers{margin-left:4em}.vuecal__split-days-headers .day-split-header{align-items:center;display:flex;flex-basis:0;flex-grow:1;height:100%;justify-content:center}.vuecal__split-days-headers .vuecal--day-view.vuecal--overflow-x.vuecal--sticky-split-labels .day-split-header{height:1.5em}.vuecal__body{overflow:hidden;position:relative}.vuecal__all-day{flex-shrink:0;margin-bottom:-1px;min-height:1.7em}.vuecal__all-day-text{align-items:center;border-bottom:1px solid #ddd;box-sizing:border-box;color:#999;display:flex;flex-shrink:0;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;justify-content:flex-end;padding-right:2px;width:3em}.vuecal__all-day-text span{font-size:.85em;line-height:1.1;text-align:right}.vuecal--twelve-hour .vuecal__all-day>span{width:4em}.vuecal__bg{-webkit-overflow-scrolling:touch;margin-bottom:1px;min-height:60px;overflow:auto;overflow-x:hidden;position:relative;width:100%}.vuecal--no-time .vuecal__bg{display:flex;flex:1 1 auto;overflow:auto}.vuecal__week-numbers{flex-shrink:0!important;width:3em}.vuecal__week-numbers .vuecal__week-number-cell{align-items:center;font-size:.9em;justify-content:center;justify-items:center;opacity:.4}.vuecal__scrollbar-check{bottom:0;left:0;overflow:scroll;position:absolute;right:0;top:0;visibility:hidden;z-index:-1}.vuecal__scrollbar-check div{height:120%}.vuecal__time-column{flex-shrink:0;height:100%;width:3em}.vuecal--twelve-hour .vuecal__time-column{font-size:.9em;width:4em}.vuecal--overflow-x.vuecal--week-view .vuecal__time-column{box-shadow:0 1px 1px rgba(0,0,0,.3);margin-top:2.8em}.vuecal--overflow-x.vuecal--week-view.vuecal--sticky-split-labels .vuecal__time-column{margin-top:3.4em}.vuecal--overflow-x.vuecal--day-view.vuecal--sticky-split-labels .vuecal__time-column{margin-top:1.5em}.vuecal__time-column .vuecal__time-cell{color:#999;font-size:.9em;padding-right:2px;text-align:right}.vuecal__time-column .vuecal__time-cell-line:before{border-top:1px solid hsla(0,0%,77%,.3);content:"";left:0;position:absolute;right:0}.vuecal__cells{margin:0 1px 1px 0}.vuecal--overflow-x.vuecal--day-view .vuecal__cells{margin:0}.vuecal--events-on-month-view.vuecal--short-events .vuecal__cells{width:99.9%}.vuecal--overflow-x.vuecal--day-view .vuecal__cells,.vuecal--overflow-x.vuecal--week-view .vuecal__cells{flex-wrap:nowrap;overflow:auto}.slide-fade--left-enter-active,.slide-fade--left-leave-active,.slide-fade--right-enter-active,.slide-fade--right-leave-active{transition:.25s ease-out}.slide-fade--left-enter,.slide-fade--right-leave-to{opacity:0;transform:translateX(-15px)}.slide-fade--left-leave-to,.slide-fade--right-enter{opacity:0;transform:translateX(15px)}.slide-fade--left-leave-active,.slide-fade--right-leave-active{height:100%;position:absolute!important}.vuecal__title-bar .slide-fade--left-leave-active,.vuecal__title-bar .slide-fade--right-leave-active{height:auto;left:0;right:0}.vuecal__heading .slide-fade--left-leave-active,.vuecal__heading .slide-fade--right-leave-active{align-items:center;display:flex}.vuecal--green-theme .vuecal__cell-events-count,.vuecal--green-theme .vuecal__menu{background-color:#42b983;color:#fff}.vuecal--green-theme .vuecal__title-bar{background-color:#e4f5ef}.vuecal--green-theme .vuecal__cell--current,.vuecal--green-theme .vuecal__cell--today{background-color:rgba(240,240,255,.4)}.vuecal--green-theme:not(.vuecal--day-view) .vuecal__cell--selected{background-color:rgba(235,255,245,.4)}.vuecal--green-theme .vuecal__cell--selected:before{border-color:rgba(66,185,131,.5)}.vuecal--green-theme .vuecal__cell--highlighted:not(.vuecal__cell--has-splits),.vuecal--green-theme .vuecal__cell-split--highlighted{background-color:rgba(195,255,225,.5)}.vuecal--green-theme .vuecal__arrow--highlighted,.vuecal--green-theme .vuecal__today-btn--highlighted,.vuecal--green-theme .vuecal__view-btn--highlighted{background-color:rgba(136,236,191,.25)}.vuecal--blue-theme .vuecal__cell-events-count,.vuecal--blue-theme .vuecal__menu{background-color:rgba(66,163,185,.8);color:#fff}.vuecal--blue-theme .vuecal__title-bar{background-color:rgba(0,165,188,.3)}.vuecal--blue-theme .vuecal__cell--current,.vuecal--blue-theme .vuecal__cell--today{background-color:rgba(240,240,255,.4)}.vuecal--blue-theme:not(.vuecal--day-view) .vuecal__cell--selected{background-color:rgba(235,253,255,.4)}.vuecal--blue-theme .vuecal__cell--selected:before{border-color:rgba(115,191,204,.5)}.vuecal--blue-theme .vuecal__cell--highlighted:not(.vuecal__cell--has-splits),.vuecal--blue-theme .vuecal__cell-split--highlighted{background-color:rgba(0,165,188,.06)}.vuecal--blue-theme .vuecal__arrow--highlighted,.vuecal--blue-theme .vuecal__today-btn--highlighted,.vuecal--blue-theme .vuecal__view-btn--highlighted{background-color:rgba(66,163,185,.2)}.vuecal--rounded-theme .vuecal__weekdays-headings{border:none}.vuecal--rounded-theme .vuecal__cell,.vuecal--rounded-theme .vuecal__cell:before{background:none;border:none}.vuecal--rounded-theme .vuecal__cell--out-of-scope{opacity:.4}.vuecal--rounded-theme .vuecal__cell-content{border:1px solid transparent;border-radius:30px;color:#333;flex-grow:0;height:30px;width:30px}.vuecal--rounded-theme.vuecal--day-view .vuecal__cell-content{background:none;width:auto}.vuecal--rounded-theme.vuecal--year-view .vuecal__cell{width:33.33%}.vuecal--rounded-theme.vuecal--year-view .vuecal__cell-content{width:85px}.vuecal--rounded-theme.vuecal--years-view .vuecal__cell-content{width:52px}.vuecal--rounded-theme .vuecal__cell{background-color:transparent!important}.vuecal--rounded-theme.vuecal--green-theme:not(.vuecal--day-view) .vuecal__cell-content{background-color:#f1faf7}.vuecal--rounded-theme.vuecal--green-theme:not(.vuecal--day-view) .vuecal__cell--today .vuecal__cell-content{background-color:#42b983;color:#fff}.vuecal--rounded-theme.vuecal--green-theme .vuecal--day-view .vuecal__cell--today:before{background-color:rgba(66,185,131,.05)}.vuecal--rounded-theme.vuecal--green-theme:not(.vuecal--day-view) .vuecal__cell--selected .vuecal__cell-content{border-color:#42b983}.vuecal--rounded-theme.vuecal--green-theme .vuecal__cell--highlighted:not(.vuecal__cell--has-splits),.vuecal--rounded-theme.vuecal--green-theme .vuecal__cell-split--highlighted{background-color:rgba(195,255,225,.5)}.vuecal--rounded-theme.vuecal--blue-theme:not(.vuecal--day-view) .vuecal__cell-content{background-color:rgba(100,182,255,.2)}.vuecal--rounded-theme.vuecal--blue-theme:not(.vuecal--day-view) .vuecal__cell--today .vuecal__cell-content{background-color:#8fb7e4;color:#fff}.vuecal--rounded-theme.vuecal--blue-theme .vuecal--day-view .vuecal__cell--today:before{background-color:rgba(143,183,228,.1)}.vuecal--rounded-theme.vuecal--blue-theme:not(.vuecal--day-view) .vuecal__cell--selected .vuecal__cell-content{border-color:#61a9e0}.vuecal--rounded-theme.vuecal--blue-theme .vuecal__cell--highlighted:not(.vuecal__cell--has-splits),.vuecal--rounded-theme.vuecal--blue-theme .vuecal__cell-split--highlighted{background-color:rgba(0,165,188,.06)}.vuecal--date-picker .vuecal__title-bar{font-size:1.2em}.vuecal--date-picker .vuecal__heading{font-weight:500;height:2.2em;opacity:.4}.vuecal--date-picker .vuecal__weekdays-headings{border:none}.vuecal--date-picker .vuecal__body{margin-left:1px}.vuecal--date-picker .vuecal__cell,.vuecal--date-picker .vuecal__cell:before{background:none;border:none}.vuecal--date-picker .vuecal__cell-content{border:1px solid transparent;border-radius:25px;flex-grow:0;height:26px;transition:background-color .2s cubic-bezier(.39,.58,.57,1)}.vuecal--date-picker.vuecal--years-view .vuecal__cell-content{flex:0;height:24px;padding:0 4px}.vuecal--date-picker.vuecal--year-view .vuecal__cell-content{flex:0;padding:0 15px}.vuecal--date-picker.vuecal--month-view .vuecal__cell-content{width:26px}.vuecal--date-picker:not(.vuecal--day-view) .vuecal__cell-content:hover{background-color:rgba(0,0,0,.1)}.vuecal--date-picker:not(.vuecal--day-view) .vuecal__cell--selected .vuecal__cell-content{background-color:#42b982;color:#fff}.vuecal--date-picker:not(.vuecal--day-view) .vuecal__cell--current .vuecal__cell-content,.vuecal--date-picker:not(.vuecal--day-view) .vuecal__cell--today .vuecal__cell-content{border-color:#42b982}',""]);const a=i},3645:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=e(t);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,r){"string"==typeof e&&(e=[[null,e,""]]);var i={};if(r)for(var a=0;a{var r=n.g.CustomEvent;e.exports=function(){try{var e=new r("cat",{detail:{foo:"bar"}});return"cat"===e.type&&"bar"===e.detail.foo}catch(e){}return!1}()?r:"undefined"!=typeof document&&"function"==typeof document.createEvent?function(e,t){var n=document.createEvent("CustomEvent");return t?n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail):n.initCustomEvent(e,!1,!1,void 0),n}:function(e,t){var n=document.createEventObject();return n.type=e,t?(n.bubbles=Boolean(t.bubbles),n.cancelable=Boolean(t.cancelable),n.detail=t.detail):(n.bubbles=!1,n.cancelable=!1,n.detail=void 0),n}},3561:e=>{e.exports=function(e){var t=new Date(e.getTime()),n=t.getTimezoneOffset();return t.setSeconds(0,0),6e4*n+t.getTime()%6e4}},3374:(e,t,n)=>{var r=n(1884);e.exports=function(e,t){var n=r(e).getTime(),i=r(t).getTime();return ni?1:0}},3558:(e,t,n)=>{var r=n(1884);e.exports=function(e,t){var n=r(e).getTime(),i=r(t).getTime();return n>i?-1:n{var r=n(1884);e.exports=function(e,t){var n=r(e),i=r(t);return 12*(n.getFullYear()-i.getFullYear())+(n.getMonth()-i.getMonth())}},8081:(e,t,n)=>{var r=n(1884);e.exports=function(e,t){var n=r(e),i=r(t);return n.getTime()-i.getTime()}},1387:(e,t,n)=>{var r=n(1884),i=n(1924),a=n(3374);e.exports=function(e,t){var n=r(e),o=r(t),s=a(n,o),u=Math.abs(i(n,o));return n.setMonth(n.getMonth()-s*u),s*(u-(a(n,o)===-s))}},7977:(e,t,n)=>{var r=n(8081);e.exports=function(e,t){var n=r(e,t)/1e3;return n>0?Math.floor(n):Math.ceil(n)}},3332:(e,t,n)=>{var r=n(3558),i=n(1884),a=n(7977),o=n(1387),s=n(7479),u=43200;e.exports=function(e,t,n){var l=n||{},c=r(e,t),d=l.locale,f=s.distanceInWords.localize;d&&d.distanceInWords&&d.distanceInWords.localize&&(f=d.distanceInWords.localize);var h,p,m={addSuffix:Boolean(l.addSuffix),comparison:c};c>0?(h=i(e),p=i(t)):(h=i(t),p=i(e));var v,_=a(p,h),y=p.getTimezoneOffset()-h.getTimezoneOffset(),g=Math.round(_/60)-y;if(g<2)return l.includeSeconds?_<5?f("lessThanXSeconds",5,m):_<10?f("lessThanXSeconds",10,m):_<20?f("lessThanXSeconds",20,m):_<40?f("halfAMinute",null,m):f(_<60?"lessThanXMinutes":"xMinutes",1,m):0===g?f("lessThanXMinutes",1,m):f("xMinutes",g,m);if(g<45)return f("xMinutes",g,m);if(g<90)return f("aboutXHours",1,m);if(g<1440)return f("aboutXHours",Math.round(g/60),m);if(g<2520)return f("xDays",1,m);if(g{var r=n(3332);e.exports=function(e,t){return r(Date.now(),e,t)}},4286:e=>{e.exports=function(e){return e instanceof Date}},8854:e=>{var t=["M","MM","Q","D","DD","DDD","DDDD","d","E","W","WW","YY","YYYY","GG","GGGG","H","HH","h","hh","m","mm","s","ss","S","SS","SSS","Z","ZZ","X","x"];e.exports=function(e){var n=[];for(var r in e)e.hasOwnProperty(r)&&n.push(r);var i=t.concat(n).sort().reverse();return new RegExp("(\\[[^\\[]*\\])|(\\\\)?("+i.join("|")+"|.)","g")}},2565:e=>{e.exports=function(){var e={lessThanXSeconds:{one:"أقل من ثانية واحدة",other:"أقل من {{count}} ثواني"},xSeconds:{one:"ثانية واحدة",other:"{{count}} ثواني"},halfAMinute:"نصف دقيقة",lessThanXMinutes:{one:"أقل من دقيقة",other:"أقل من {{count}} دقيقة"},xMinutes:{one:"دقيقة واحدة",other:"{{count}} دقائق"},aboutXHours:{one:"ساعة واحدة تقريباً",other:"{{count}} ساعات تقريباً"},xHours:{one:"ساعة واحدة",other:"{{count}} ساعات"},xDays:{one:"يوم واحد",other:"{{count}} أيام"},aboutXMonths:{one:"شهر واحد تقريباً",other:"{{count}} أشهر تقريباً"},xMonths:{one:"شهر واحد",other:"{{count}} أشهر"},aboutXYears:{one:"عام واحد تقريباً",other:"{{count}} أعوام تقريباً"},xYears:{one:"عام واحد",other:"{{count}} أعوام"},overXYears:{one:"أكثر من عام",other:"أكثر من {{count}} أعوام"},almostXYears:{one:"عام واحد تقريباً",other:"{{count}} أعوام تقريباً"}};return{localize:function(t,n,r){var i;return r=r||{},i="string"==typeof e[t]?e[t]:1===n?e[t].one:e[t].other.replace("{{count}}",n),r.addSuffix?r.comparison>0?"في خلال "+i:"منذ "+i:i}}}},1883:(e,t,n)=>{var r=n(8854);e.exports=function(){var e=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],t=["كانون الثاني يناير","شباط فبراير","آذار مارس","نيسان أبريل","أيار مايو","حزيران يونيو","تموز يوليو","آب أغسطس","أيلول سبتمبر","تشرين الأول أكتوبر","تشرين الثاني نوفمبر","كانون الأول ديسمبر"],n=["ح","ن","ث","ر","خ","ج","س"],i=["أحد","إثنين","ثلاثاء","أربعاء","خميس","جمعة","سبت"],a=["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],o=["صباح","مساء"],s=["ص","م"],u=["صباحاً","مساءاً"],l={MMM:function(t){return e[t.getMonth()]},MMMM:function(e){return t[e.getMonth()]},dd:function(e){return n[e.getDay()]},ddd:function(e){return i[e.getDay()]},dddd:function(e){return a[e.getDay()]},A:function(e){return e.getHours()/12>=1?o[1]:o[0]},a:function(e){return e.getHours()/12>=1?s[1]:s[0]},aa:function(e){return e.getHours()/12>=1?u[1]:u[0]}};return["M","D","DDD","d","Q","W"].forEach((function(e){l[e+"o"]=function(t,n){return r=n[e](t),String(r);var r}})),{formatters:l,formattingTokensRegExp:r(l)}}},8137:(e,t,n)=>{var r=n(2565),i=n(1883);e.exports={distanceInWords:r(),format:i()}},2894:e=>{e.exports=function(){var e={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};return{localize:function(t,n,r){var i;return r=r||{},i="string"==typeof e[t]?e[t]:1===n?e[t].one:e[t].other.replace("{{count}}",n),r.addSuffix?r.comparison>0?"in "+i:i+" ago":i}}}},664:(e,t,n)=>{var r=n(8854);e.exports=function(){var e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],t=["January","February","March","April","May","June","July","August","September","October","November","December"],n=["Su","Mo","Tu","We","Th","Fr","Sa"],i=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],a=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],o=["AM","PM"],s=["am","pm"],u=["a.m.","p.m."],l={MMM:function(t){return e[t.getMonth()]},MMMM:function(e){return t[e.getMonth()]},dd:function(e){return n[e.getDay()]},ddd:function(e){return i[e.getDay()]},dddd:function(e){return a[e.getDay()]},A:function(e){return e.getHours()/12>=1?o[1]:o[0]},a:function(e){return e.getHours()/12>=1?s[1]:s[0]},aa:function(e){return e.getHours()/12>=1?u[1]:u[0]}};return["M","D","DDD","d","Q","W"].forEach((function(e){l[e+"o"]=function(t,n){return function(e){var t=e%100;if(t>20||t<10)switch(t%10){case 1:return e+"st";case 2:return e+"nd";case 3:return e+"rd"}return e+"th"}(n[e](t))}})),{formatters:l,formattingTokensRegExp:r(l)}}},7479:(e,t,n)=>{var r=n(2894),i=n(664);e.exports={distanceInWords:r(),format:i()}},2860:e=>{e.exports=function(){var e={lessThanXSeconds:{one:"bir saniyeden az",other:"{{count}} saniyeden az"},xSeconds:{one:"1 saniye",other:"{{count}} saniye"},halfAMinute:"yarım dakika",lessThanXMinutes:{one:"bir dakikadan az",other:"{{count}} dakikadan az"},xMinutes:{one:"1 dakika",other:"{{count}} dakika"},aboutXHours:{one:"yaklaşık 1 saat",other:"yaklaşık {{count}} saat"},xHours:{one:"1 saat",other:"{{count}} saat"},xDays:{one:"1 gün",other:"{{count}} gün"},aboutXMonths:{one:"yaklaşık 1 ay",other:"yaklaşık {{count}} ay"},xMonths:{one:"1 ay",other:"{{count}} ay"},aboutXYears:{one:"yaklaşık 1 yıl",other:"yaklaşık {{count}} yıl"},xYears:{one:"1 yıl",other:"{{count}} yıl"},overXYears:{one:"1 yıldan fazla",other:"{{count}} yıldan fazla"},almostXYears:{one:"neredeyse 1 yıl",other:"neredeyse {{count}} yıl"}},t=["lessThanXSeconds","lessThanXMinutes","overXYears"];return{localize:function(n,r,i){var a;if(i=i||{},a="string"==typeof e[n]?e[n]:1===r?e[n].one:e[n].other.replace("{{count}}",r),i.addSuffix){var o="";return t.indexOf(n)>-1&&(o=" bir süre"),i.comparison>0?a+o+" içinde":a+o+" önce"}return a}}}},7791:(e,t,n)=>{var r=n(8854);e.exports=function(){var e=["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],t=["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],n=["Pz","Pt","Sa","Ça","Pe","Cu","Ct"],i=["Paz","Pts","Sal","Çar","Per","Cum","Cts"],a=["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],o=["ÖÖ","ÖS"],s=["öö","ös"],u=["ö.ö.","ö.s."],l={MMM:function(t){return e[t.getMonth()]},MMMM:function(e){return t[e.getMonth()]},dd:function(e){return n[e.getDay()]},ddd:function(e){return i[e.getDay()]},dddd:function(e){return a[e.getDay()]},A:function(e){return e.getHours()/12>=1?o[1]:o[0]},a:function(e){return e.getHours()/12>=1?s[1]:s[0]},aa:function(e){return e.getHours()/12>=1?u[1]:u[0]}};return["M","D","DDD","d","Q","W"].forEach((function(e){l[e+"o"]=function(t,n){return function(e){var t={1:"'inci",2:"'inci",3:"'üncü",4:"'üncü",5:"'inci",6:"'ıncı",7:"'inci",8:"'inci",9:"'uncu",10:"'uncu",20:"'inci",30:"'uncu",50:"'inci",60:"'ıncı",70:"'inci",80:"'inci",90:"'ıncı",100:"'üncü"};if(0===e)return"0'ıncı";var n=e%10,r=e%100-n,i=e>=100?100:null;return e+(t[n]||t[r]||t[i])}(n[e](t))}})),{formatters:l,formattingTokensRegExp:r(l)}}},1062:(e,t,n)=>{var r=n(2860),i=n(7791);e.exports={distanceInWords:r(),format:i()}},1884:(e,t,n)=>{var r=n(3561),i=n(4286),a=36e5,o=6e4,s=/[T ]/,u=/:/,l=/^(\d{2})$/,c=[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],d=/^(\d{4})/,f=[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],h=/^-(\d{2})$/,p=/^-?(\d{3})$/,m=/^-?(\d{2})-?(\d{2})$/,v=/^-?W(\d{2})$/,_=/^-?W(\d{2})-?(\d{1})$/,y=/^(\d{2}([.,]\d*)?)$/,g=/^(\d{2}):?(\d{2}([.,]\d*)?)$/,b=/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,w=/([Z+-].*)$/,M=/^(Z)$/,k=/^([+-])(\d{2})$/,L=/^([+-])(\d{2}):?(\d{2})$/;function x(e,t,n){t=t||0,n=n||0;var r=new Date(0);r.setUTCFullYear(e,0,4);var i=7*t+n+1-(r.getUTCDay()||7);return r.setUTCDate(r.getUTCDate()+i),r}e.exports=function(e,t){if(i(e))return new Date(e.getTime());if("string"!=typeof e)return new Date(e);var n=(t||{}).additionalDigits;n=null==n?2:Number(n);var D=function(e){var t,n={},r=e.split(s);u.test(r[0])?(n.date=null,t=r[0]):(n.date=r[0],t=r[1]);if(t){var i=w.exec(t);i?(n.time=t.replace(i[1],""),n.timezone=i[1]):n.time=t}return n}(e),T=function(e,t){var n,r=c[t],i=f[t];if(n=d.exec(e)||i.exec(e)){var a=n[1];return{year:parseInt(a,10),restDateString:e.slice(a.length)}}if(n=l.exec(e)||r.exec(e)){var o=n[1];return{year:100*parseInt(o,10),restDateString:e.slice(o.length)}}return{year:null}}(D.date,n),Y=T.year,S=function(e,t){if(null===t)return null;var n,r,i;if(0===e.length)return(r=new Date(0)).setUTCFullYear(t),r;if(n=h.exec(e))return r=new Date(0),i=parseInt(n[1],10)-1,r.setUTCFullYear(t,i),r;if(n=p.exec(e)){r=new Date(0);var a=parseInt(n[1],10);return r.setUTCFullYear(t,0,a),r}if(n=m.exec(e)){r=new Date(0),i=parseInt(n[1],10)-1;var o=parseInt(n[2],10);return r.setUTCFullYear(t,i,o),r}if(n=v.exec(e))return x(t,parseInt(n[1],10)-1);if(n=_.exec(e)){return x(t,parseInt(n[1],10)-1,parseInt(n[2],10)-1)}return null}(T.restDateString,Y);if(S){var j,O=S.getTime(),E=0;if(D.time&&(E=function(e){var t,n,r;if(t=y.exec(e))return(n=parseFloat(t[1].replace(",",".")))%24*a;if(t=g.exec(e))return n=parseInt(t[1],10),r=parseFloat(t[2].replace(",",".")),n%24*a+r*o;if(t=b.exec(e)){n=parseInt(t[1],10),r=parseInt(t[2],10);var i=parseFloat(t[3].replace(",","."));return n%24*a+r*o+1e3*i}return null}(D.time)),D.timezone)j=function(e){var t,n;if(t=M.exec(e))return 0;if(t=k.exec(e))return n=60*parseInt(t[2],10),"+"===t[1]?-n:n;if(t=L.exec(e))return n=60*parseInt(t[2],10)+parseInt(t[3],10),"+"===t[1]?-n:n;return 0}(D.timezone)*o;else{var C=O+E,A=new Date(C);j=r(A);var H=new Date(C);H.setDate(A.getDate()+1);var P=r(H)-r(A);P>0&&(j+=P)}return new Date(O+E+j)}return new Date(e)}},9425:e=>{"use strict";var t={};function n(e){var n=t[e];return n?n.lastIndex=0:t[e]=n=new RegExp("(?:^|\\s)"+e+"(?:\\s|$)","g"),n}e.exports={add:function(e,t){var r=e.className;r.length?n(t).test(r)||(e.className+=" "+t):e.className=t},rm:function(e,t){e.className=e.className.replace(n(t)," ").trim()}}},7137:(e,t,n)=>{"use strict";var r=n(5229),i=n(1808),a=n(9425),o=document,s=o.documentElement;function u(e,t,r,a){n.g.navigator.pointerEnabled?i[t](e,{mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"}[r],a):n.g.navigator.msPointerEnabled?i[t](e,{mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"}[r],a):(i[t](e,{mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"}[r],a),i[t](e,r,a))}function l(e){if(void 0!==e.touches)return e.touches.length;if(void 0!==e.which&&0!==e.which)return e.which;if(void 0!==e.buttons)return e.buttons;var t=e.button;return void 0!==t?1&t?1:2&t?3:4&t?2:0:void 0}function c(e){var t=e.getBoundingClientRect();return{left:t.left+d("scrollLeft","pageXOffset"),top:t.top+d("scrollTop","pageYOffset")}}function d(e,t){return void 0!==n.g[t]?n.g[t]:s.clientHeight?s[e]:o.body[e]}function f(e,t,n){var r,i=(e=e||{}).className||"";return e.className+=" gu-hide",r=o.elementFromPoint(t,n),e.className=i,r}function h(){return!1}function p(){return!0}function m(e){return e.width||e.right-e.left}function v(e){return e.height||e.bottom-e.top}function _(e){return e.parentNode===o?null:e.parentNode}function y(e){return"INPUT"===e.tagName||"TEXTAREA"===e.tagName||"SELECT"===e.tagName||g(e)}function g(e){return!!e&&("false"!==e.contentEditable&&("true"===e.contentEditable||g(_(e))))}function b(e){return e.nextElementSibling||function(){var t=e;do{t=t.nextSibling}while(t&&1!==t.nodeType);return t}()}function w(e,t){var n=function(e){return e.targetTouches&&e.targetTouches.length?e.targetTouches[0]:e.changedTouches&&e.changedTouches.length?e.changedTouches[0]:e}(t),r={pageX:"clientX",pageY:"clientY"};return e in r&&!(e in n)&&r[e]in n&&(e=r[e]),n[e]}e.exports=function(e,t){var n,d,g,M,k,L,x,D,T,Y,S,j=arguments.length;1===j&&!1===Array.isArray(e)&&(t=e,e=[]);var O,E=null,C=t||{};void 0===C.moves&&(C.moves=p),void 0===C.accepts&&(C.accepts=p),void 0===C.invalid&&(C.invalid=q),void 0===C.containers&&(C.containers=e||[]),void 0===C.isContainer&&(C.isContainer=h),void 0===C.copy&&(C.copy=!1),void 0===C.copySortSource&&(C.copySortSource=!1),void 0===C.revertOnSpill&&(C.revertOnSpill=!1),void 0===C.removeOnSpill&&(C.removeOnSpill=!1),void 0===C.direction&&(C.direction="vertical"),void 0===C.ignoreInputTextSelection&&(C.ignoreInputTextSelection=!0),void 0===C.mirrorContainer&&(C.mirrorContainer=o.body);var A=r({containers:C.containers,start:V,end:J,cancel:Q,remove:K,destroy:I,canMove:B,dragging:!1});return!0===C.removeOnSpill&&A.on("over",ie).on("out",ae),P(),A;function H(e){return-1!==A.containers.indexOf(e)||C.isContainer(e)}function P(e){var t=e?"remove":"add";u(s,t,"mousedown",W),u(s,t,"mouseup",X)}function N(e){u(s,e?"remove":"add","mousemove",R)}function $(e){var t=e?"remove":"add";i[t](s,"selectstart",F),i[t](s,"click",F)}function I(){P(!0),X({})}function F(e){O&&e.preventDefault()}function W(e){if(L=e.clientX,x=e.clientY,!(1!==l(e)||e.metaKey||e.ctrlKey)){var t=e.target,n=z(t);n&&(O=n,N(),"mousedown"===e.type&&(y(t)?t.focus():e.preventDefault()))}}function R(e){if(O)if(0!==l(e)){if(!(void 0!==e.clientX&&Math.abs(e.clientX-L)<=(C.slideFactorX||0)&&void 0!==e.clientY&&Math.abs(e.clientY-x)<=(C.slideFactorY||0))){if(C.ignoreInputTextSelection){var t=w("clientX",e)||0,n=w("clientY",e)||0;if(y(o.elementFromPoint(t,n)))return}var r=O;N(!0),$(),J(),U(r);var i=c(g);M=w("pageX",e)-i.left,k=w("pageY",e)-i.top,a.add(Y||g,"gu-transit"),oe(),re(e)}}else X({})}function z(e){if(!(A.dragging&&n||H(e))){for(var t=e;_(e)&&!1===H(_(e));){if(C.invalid(e,t))return;if(!(e=_(e)))return}var r=_(e);if(r)if(!C.invalid(e,t))if(C.moves(e,r,t,b(e)))return{item:e,source:r}}}function B(e){return!!z(e)}function V(e){var t=z(e);t&&U(t)}function U(e){ce(e.item,e.source)&&(Y=e.item.cloneNode(!0),A.emit("cloned",Y,e.item,"copy")),d=e.source,g=e.item,D=T=b(e.item),A.dragging=!0,A.emit("drag",g,d)}function q(){return!1}function J(){if(A.dragging){var e=Y||g;Z(e,_(e))}}function G(){O=!1,N(!0),$(!0)}function X(e){if(G(),A.dragging){var t=Y||g,r=w("clientX",e)||0,i=w("clientY",e)||0,a=ne(f(n,r,i),r,i);a&&(Y&&C.copySortSource||!Y||a!==d)?Z(t,a):C.removeOnSpill?K():Q()}}function Z(e,t){var n=_(e);Y&&C.copySortSource&&t===d&&n.removeChild(g),te(t)?A.emit("cancel",e,d,d):A.emit("drop",e,t,d,T),ee()}function K(){if(A.dragging){var e=Y||g,t=_(e);t&&t.removeChild(e),A.emit(Y?"cancel":"remove",e,t,d),ee()}}function Q(e){if(A.dragging){var t=arguments.length>0?e:C.revertOnSpill,n=Y||g,r=_(n),i=te(r);!1===i&&t&&(Y?r&&r.removeChild(Y):d.insertBefore(n,D)),i||t?A.emit("cancel",n,d,d):A.emit("drop",n,r,d,T),ee()}}function ee(){var e=Y||g;G(),se(),e&&a.rm(e,"gu-transit"),S&&clearTimeout(S),A.dragging=!1,E&&A.emit("out",e,E,d),A.emit("dragend",e),d=g=Y=D=T=S=E=null}function te(e,t){var r;return r=void 0!==t?t:n?T:b(Y||g),e===d&&r===D}function ne(e,t,n){for(var r=e;r&&!i();)r=_(r);return r;function i(){if(!1===H(r))return!1;var i=ue(r,e),a=le(r,i,t,n);return!!te(r,a)||C.accepts(g,r,d,a)}}function re(e){if(n){e.preventDefault();var t=w("clientX",e)||0,r=w("clientY",e)||0,i=t-M,a=r-k;n.style.left=i+"px",n.style.top=a+"px";var o=Y||g,s=f(n,t,r),u=ne(s,t,r),l=null!==u&&u!==E;(l||null===u)&&(E&&m("out"),E=u,l&&m("over"));var c=_(o);if(u!==d||!Y||C.copySortSource){var h,p=ue(u,s);if(null!==p)h=le(u,p,t,r);else{if(!0!==C.revertOnSpill||Y)return void(Y&&c&&c.removeChild(o));h=D,u=d}(null===h&&l||h!==o&&h!==b(o))&&(T=h,u.insertBefore(o,h),A.emit("shadow",o,u,d))}else c&&c.removeChild(o)}function m(e){A.emit(e,o,E,d)}}function ie(e){a.rm(e,"gu-hide")}function ae(e){A.dragging&&a.add(e,"gu-hide")}function oe(){if(!n){var e=g.getBoundingClientRect();(n=g.cloneNode(!0)).style.width=m(e)+"px",n.style.height=v(e)+"px",a.rm(n,"gu-transit"),a.add(n,"gu-mirror"),C.mirrorContainer.appendChild(n),u(s,"add","mousemove",re),a.add(C.mirrorContainer,"gu-unselectable"),A.emit("cloned",n,g,"mirror")}}function se(){n&&(a.rm(C.mirrorContainer,"gu-unselectable"),u(s,"remove","mousemove",re),_(n).removeChild(n),n=null)}function ue(e,t){for(var n=t;n!==e&&_(n)!==e;)n=_(n);return n===s?null:n}function le(e,t,n,r){var i="horizontal"===C.direction,a=t!==e?function(){var e=t.getBoundingClientRect();if(i)return o(n>e.left+m(e)/2);return o(r>e.top+v(e)/2)}():function(){var t,a,o,s=e.children.length;for(t=0;tn)return a;if(!i&&o.top+o.height/2>r)return a}return null}();return a;function o(e){return e?b(t):t}}function ce(e,t){return"boolean"==typeof C.copy?C.copy:C.copy(e,t)}}},9755:function(e,t){var n;!function(t,n){"use strict";"object"==typeof e.exports?e.exports=t.document?n(t,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return n(e)}:n(t)}("undefined"!=typeof window?window:this,(function(r,i){"use strict";var a=[],o=Object.getPrototypeOf,s=a.slice,u=a.flat?function(e){return a.flat.call(e)}:function(e){return a.concat.apply([],e)},l=a.push,c=a.indexOf,d={},f=d.toString,h=d.hasOwnProperty,p=h.toString,m=p.call(Object),v={},_=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},y=function(e){return null!=e&&e===e.window},g=r.document,b={type:!0,src:!0,nonce:!0,noModule:!0};function w(e,t,n){var r,i,a=(n=n||g).createElement("script");if(a.text=e,t)for(r in b)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&a.setAttribute(r,i);n.head.appendChild(a).parentNode.removeChild(a)}function M(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?d[f.call(e)]||"object":typeof e}var k="3.6.0",L=function(e,t){return new L.fn.init(e,t)};function x(e){var t=!!e&&"length"in e&&e.length,n=M(e);return!_(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}L.fn=L.prototype={jquery:k,constructor:L,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=L.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return L.each(this,e)},map:function(e){return this.pushStack(L.map(this,(function(t,n){return e.call(t,n,t)})))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(L.grep(this,(function(e,t){return(t+1)%2})))},odd:function(){return this.pushStack(L.grep(this,(function(e,t){return t%2})))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n+~]|[\\x20\\t\\r\\n\\f])[\\x20\\t\\r\\n\\f]*"),V=new RegExp(N+"|>"),U=new RegExp(F),q=new RegExp("^"+$+"$"),J={ID:new RegExp("^#("+$+")"),CLASS:new RegExp("^\\.("+$+")"),TAG:new RegExp("^("+$+"|[*])"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\([\\x20\\t\\r\\n\\f]*(even|odd|(([+-]|)(\\d*)n|)[\\x20\\t\\r\\n\\f]*(?:([+-]|)[\\x20\\t\\r\\n\\f]*(\\d+)|))[\\x20\\t\\r\\n\\f]*\\)|)","i"),bool:new RegExp("^(?:"+P+")$","i"),needsContext:new RegExp("^[\\x20\\t\\r\\n\\f]*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\([\\x20\\t\\r\\n\\f]*((?:-\\d)?\\d*)[\\x20\\t\\r\\n\\f]*\\)|)(?=[^-]|$)","i")},G=/HTML$/i,X=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Q=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}[\\x20\\t\\r\\n\\f]?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},ae=function(){f()},oe=be((function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()}),{dir:"parentNode",next:"legend"});try{C.apply(j=A.call(w.childNodes),w.childNodes),j[w.childNodes.length].nodeType}catch(e){C={apply:j.length?function(e,t){E.apply(e,A.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function se(e,t,r,i){var a,s,l,c,d,p,_,y=t&&t.ownerDocument,w=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==w&&9!==w&&11!==w)return r;if(!i&&(f(t),t=t||h,m)){if(11!==w&&(d=Q.exec(e)))if(a=d[1]){if(9===w){if(!(l=t.getElementById(a)))return r;if(l.id===a)return r.push(l),r}else if(y&&(l=y.getElementById(a))&&g(t,l)&&l.id===a)return r.push(l),r}else{if(d[2])return C.apply(r,t.getElementsByTagName(e)),r;if((a=d[3])&&n.getElementsByClassName&&t.getElementsByClassName)return C.apply(r,t.getElementsByClassName(a)),r}if(n.qsa&&!T[e+" "]&&(!v||!v.test(e))&&(1!==w||"object"!==t.nodeName.toLowerCase())){if(_=e,y=t,1===w&&(V.test(e)||B.test(e))){for((y=ee.test(e)&&_e(t.parentNode)||t)===t&&n.scope||((c=t.getAttribute("id"))?c=c.replace(re,ie):t.setAttribute("id",c=b)),s=(p=o(e)).length;s--;)p[s]=(c?"#"+c:":scope")+" "+ge(p[s]);_=p.join(",")}try{return C.apply(r,y.querySelectorAll(_)),r}catch(t){T(e,!0)}finally{c===b&&t.removeAttribute("id")}}}return u(e.replace(R,"$1"),t,r,i)}function ue(){var e=[];return function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}}function le(e){return e[b]=!0,e}function ce(e){var t=h.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function de(e,t){for(var n=e.split("|"),i=n.length;i--;)r.attrHandle[n[i]]=t}function fe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function he(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function pe(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function me(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&oe(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function ve(e){return le((function(t){return t=+t,le((function(n,r){for(var i,a=e([],n.length,t),o=a.length;o--;)n[i=a[o]]&&(n[i]=!(r[i]=n[i]))}))}))}function _e(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=se.support={},a=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!G.test(t||n&&n.nodeName||"HTML")},f=se.setDocument=function(e){var t,i,o=e?e.ownerDocument||e:w;return o!=h&&9===o.nodeType&&o.documentElement?(p=(h=o).documentElement,m=!a(h),w!=h&&(i=h.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",ae,!1):i.attachEvent&&i.attachEvent("onunload",ae)),n.scope=ce((function(e){return p.appendChild(e).appendChild(h.createElement("div")),void 0!==e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length})),n.attributes=ce((function(e){return e.className="i",!e.getAttribute("className")})),n.getElementsByTagName=ce((function(e){return e.appendChild(h.createComment("")),!e.getElementsByTagName("*").length})),n.getElementsByClassName=K.test(h.getElementsByClassName),n.getById=ce((function(e){return p.appendChild(e).id=b,!h.getElementsByName||!h.getElementsByName(b).length})),n.getById?(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&m){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&m){var n,r,i,a=t.getElementById(e);if(a){if((n=a.getAttributeNode("id"))&&n.value===e)return[a];for(i=t.getElementsByName(e),r=0;a=i[r++];)if((n=a.getAttributeNode("id"))&&n.value===e)return[a]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,a=t.getElementsByTagName(e);if("*"===e){for(;n=a[i++];)1===n.nodeType&&r.push(n);return r}return a},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&m)return t.getElementsByClassName(e)},_=[],v=[],(n.qsa=K.test(h.querySelectorAll))&&(ce((function(e){var t;p.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]=[\\x20\\t\\r\\n\\f]*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\[[\\x20\\t\\r\\n\\f]*(?:value|"+P+")"),e.querySelectorAll("[id~="+b+"-]").length||v.push("~="),(t=h.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\[[\\x20\\t\\r\\n\\f]*name[\\x20\\t\\r\\n\\f]*=[\\x20\\t\\r\\n\\f]*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+b+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")})),ce((function(e){e.innerHTML="";var t=h.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name[\\x20\\t\\r\\n\\f]*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),p.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")}))),(n.matchesSelector=K.test(y=p.matches||p.webkitMatchesSelector||p.mozMatchesSelector||p.oMatchesSelector||p.msMatchesSelector))&&ce((function(e){n.disconnectedMatch=y.call(e,"*"),y.call(e,"[s!='']:x"),_.push("!=",F)})),v=v.length&&new RegExp(v.join("|")),_=_.length&&new RegExp(_.join("|")),t=K.test(p.compareDocumentPosition),g=t||K.test(p.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},Y=t?function(e,t){if(e===t)return d=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e==h||e.ownerDocument==w&&g(w,e)?-1:t==h||t.ownerDocument==w&&g(w,t)?1:c?H(c,e)-H(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return d=!0,0;var n,r=0,i=e.parentNode,a=t.parentNode,o=[e],s=[t];if(!i||!a)return e==h?-1:t==h?1:i?-1:a?1:c?H(c,e)-H(c,t):0;if(i===a)return fe(e,t);for(n=e;n=n.parentNode;)o.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;o[r]===s[r];)r++;return r?fe(o[r],s[r]):o[r]==w?-1:s[r]==w?1:0},h):h},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(f(e),n.matchesSelector&&m&&!T[t+" "]&&(!_||!_.test(t))&&(!v||!v.test(t)))try{var r=y.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){T(t,!0)}return se(t,h,null,[e]).length>0},se.contains=function(e,t){return(e.ownerDocument||e)!=h&&f(e),g(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=h&&f(e);var i=r.attrHandle[t.toLowerCase()],a=i&&S.call(r.attrHandle,t.toLowerCase())?i(e,t,!m):void 0;return void 0!==a?a:n.attributes||!m?e.getAttribute(t):(a=e.getAttributeNode(t))&&a.specified?a.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,r=[],i=0,a=0;if(d=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(Y),d){for(;t=e[a++];)t===e[a]&&(i=r.push(a));for(;i--;)e.splice(r[i],1)}return c=null,e},i=se.getText=function(e){var t,n="",r=0,a=e.nodeType;if(a){if(1===a||9===a||11===a){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===a||4===a)return e.nodeValue}else for(;t=e[r++];)n+=i(t);return n},r=se.selectors={cacheLength:50,createPseudo:le,match:J,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return J.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&U.test(n)&&(t=o(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=L[e+" "];return t||(t=new RegExp("(^|[\\x20\\t\\r\\n\\f])"+e+"("+N+"|$)"))&&L(e,(function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")}))},ATTR:function(e,t,n){return function(r){var i=se.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace(W," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var a="nth"!==e.slice(0,3),o="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,d,f,h,p,m=a!==o?"nextSibling":"previousSibling",v=t.parentNode,_=s&&t.nodeName.toLowerCase(),y=!u&&!s,g=!1;if(v){if(a){for(;m;){for(f=t;f=f[m];)if(s?f.nodeName.toLowerCase()===_:1===f.nodeType)return!1;p=m="only"===e&&!p&&"nextSibling"}return!0}if(p=[o?v.firstChild:v.lastChild],o&&y){for(g=(h=(l=(c=(d=(f=v)[b]||(f[b]={}))[f.uniqueID]||(d[f.uniqueID]={}))[e]||[])[0]===M&&l[1])&&l[2],f=h&&v.childNodes[h];f=++h&&f&&f[m]||(g=h=0)||p.pop();)if(1===f.nodeType&&++g&&f===t){c[e]=[M,h,g];break}}else if(y&&(g=h=(l=(c=(d=(f=t)[b]||(f[b]={}))[f.uniqueID]||(d[f.uniqueID]={}))[e]||[])[0]===M&&l[1]),!1===g)for(;(f=++h&&f&&f[m]||(g=h=0)||p.pop())&&((s?f.nodeName.toLowerCase()!==_:1!==f.nodeType)||!++g||(y&&((c=(d=f[b]||(f[b]={}))[f.uniqueID]||(d[f.uniqueID]={}))[e]=[M,g]),f!==t)););return(g-=i)===r||g%r==0&&g/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return i[b]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?le((function(e,n){for(var r,a=i(e,t),o=a.length;o--;)e[r=H(e,a[o])]=!(n[r]=a[o])})):function(e){return i(e,0,n)}):i}},pseudos:{not:le((function(e){var t=[],n=[],r=s(e.replace(R,"$1"));return r[b]?le((function(e,t,n,i){for(var a,o=r(e,null,i,[]),s=e.length;s--;)(a=o[s])&&(e[s]=!(t[s]=a))})):function(e,i,a){return t[0]=e,r(t,null,a,n),t[0]=null,!n.pop()}})),has:le((function(e){return function(t){return se(e,t).length>0}})),contains:le((function(e){return e=e.replace(te,ne),function(t){return(t.textContent||i(t)).indexOf(e)>-1}})),lang:le((function(e){return q.test(e||"")||se.error("unsupported lang: "+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=m?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}})),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===p},focus:function(e){return e===h.activeElement&&(!h.hasFocus||h.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:me(!1),disabled:me(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return Z.test(e.nodeName)},input:function(e){return X.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve((function(){return[0]})),last:ve((function(e,t){return[t-1]})),eq:ve((function(e,t,n){return[n<0?n+t:n]})),even:ve((function(e,t){for(var n=0;nt?t:n;--r>=0;)e.push(r);return e})),gt:ve((function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function Me(e,t,n,r,i){for(var a,o=[],s=0,u=e.length,l=null!=t;s-1&&(a[l]=!(o[l]=d))}}else _=Me(_===o?_.splice(p,_.length):_),i?i(null,o,_,u):C.apply(o,_)}))}function Le(e){for(var t,n,i,a=e.length,o=r.relative[e[0].type],s=o||r.relative[" "],u=o?1:0,c=be((function(e){return e===t}),s,!0),d=be((function(e){return H(t,e)>-1}),s,!0),f=[function(e,n,r){var i=!o&&(r||n!==l)||((t=n).nodeType?c(e,n,r):d(e,n,r));return t=null,i}];u1&&we(f),u>1&&ge(e.slice(0,u-1).concat({value:" "===e[u-2].type?"*":""})).replace(R,"$1"),n,u0,i=e.length>0,a=function(a,o,s,u,c){var d,p,v,_=0,y="0",g=a&&[],b=[],w=l,k=a||i&&r.find.TAG("*",c),L=M+=null==w?1:Math.random()||.1,x=k.length;for(c&&(l=o==h||o||c);y!==x&&null!=(d=k[y]);y++){if(i&&d){for(p=0,o||d.ownerDocument==h||(f(d),s=!m);v=e[p++];)if(v(d,o||h,s)){u.push(d);break}c&&(M=L)}n&&((d=!v&&d)&&_--,a&&g.push(d))}if(_+=y,n&&y!==_){for(p=0;v=t[p++];)v(g,b,o,s);if(a){if(_>0)for(;y--;)g[y]||b[y]||(b[y]=O.call(u));b=Me(b)}C.apply(u,b),c&&!a&&b.length>0&&_+t.length>1&&se.uniqueSort(u)}return c&&(M=L,l=w),g};return n?le(a):a}(a,i)),s.selector=e}return s},u=se.select=function(e,t,n,i){var a,u,l,c,d,f="function"==typeof e&&e,h=!i&&o(e=f.selector||e);if(n=n||[],1===h.length){if((u=h[0]=h[0].slice(0)).length>2&&"ID"===(l=u[0]).type&&9===t.nodeType&&m&&r.relative[u[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(te,ne),t)||[])[0]))return n;f&&(t=t.parentNode),e=e.slice(u.shift().value.length)}for(a=J.needsContext.test(e)?0:u.length;a--&&(l=u[a],!r.relative[c=l.type]);)if((d=r.find[c])&&(i=d(l.matches[0].replace(te,ne),ee.test(u[0].type)&&_e(t.parentNode)||t))){if(u.splice(a,1),!(e=i.length&&ge(u)))return C.apply(n,i),n;break}}return(f||s(e,h))(i,t,!m,n,!t||ee.test(e)&&_e(t.parentNode)||t),n},n.sortStable=b.split("").sort(Y).join("")===b,n.detectDuplicates=!!d,f(),n.sortDetached=ce((function(e){return 1&e.compareDocumentPosition(h.createElement("fieldset"))})),ce((function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")}))||de("type|href|height|width",(function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)})),n.attributes&&ce((function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")}))||de("value",(function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue})),ce((function(e){return null==e.getAttribute("disabled")}))||de(P,(function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),se}(r);L.find=D,L.expr=D.selectors,L.expr[":"]=L.expr.pseudos,L.uniqueSort=L.unique=D.uniqueSort,L.text=D.getText,L.isXMLDoc=D.isXML,L.contains=D.contains,L.escapeSelector=D.escape;var T=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&L(e).is(n))break;r.push(e)}return r},Y=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},S=L.expr.match.needsContext;function j(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var O=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function E(e,t,n){return _(t)?L.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?L.grep(e,(function(e){return e===t!==n})):"string"!=typeof t?L.grep(e,(function(e){return c.call(t,e)>-1!==n})):L.filter(t,e,n)}L.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?L.find.matchesSelector(r,e)?[r]:[]:L.find.matches(e,L.grep(t,(function(e){return 1===e.nodeType})))},L.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(L(e).filter((function(){for(t=0;t1?L.uniqueSort(n):n},filter:function(e){return this.pushStack(E(this,e||[],!1))},not:function(e){return this.pushStack(E(this,e||[],!0))},is:function(e){return!!E(this,"string"==typeof e&&S.test(e)?L(e):e||[],!1).length}});var C,A=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(L.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||C,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:A.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof L?t[0]:t,L.merge(this,L.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:g,!0)),O.test(r[1])&&L.isPlainObject(t))for(r in t)_(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=g.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):_(e)?void 0!==n.ready?n.ready(e):e(L):L.makeArray(e,this)}).prototype=L.fn,C=L(g);var H=/^(?:parents|prev(?:Until|All))/,P={children:!0,contents:!0,next:!0,prev:!0};function N(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}L.fn.extend({has:function(e){var t=L(e,this),n=t.length;return this.filter((function(){for(var e=0;e-1:1===n.nodeType&&L.find.matchesSelector(n,e))){a.push(n);break}return this.pushStack(a.length>1?L.uniqueSort(a):a)},index:function(e){return e?"string"==typeof e?c.call(L(e),this[0]):c.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(L.uniqueSort(L.merge(this.get(),L(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),L.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return T(e,"parentNode")},parentsUntil:function(e,t,n){return T(e,"parentNode",n)},next:function(e){return N(e,"nextSibling")},prev:function(e){return N(e,"previousSibling")},nextAll:function(e){return T(e,"nextSibling")},prevAll:function(e){return T(e,"previousSibling")},nextUntil:function(e,t,n){return T(e,"nextSibling",n)},prevUntil:function(e,t,n){return T(e,"previousSibling",n)},siblings:function(e){return Y((e.parentNode||{}).firstChild,e)},children:function(e){return Y(e.firstChild)},contents:function(e){return null!=e.contentDocument&&o(e.contentDocument)?e.contentDocument:(j(e,"template")&&(e=e.content||e),L.merge([],e.childNodes))}},(function(e,t){L.fn[e]=function(n,r){var i=L.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=L.filter(r,i)),this.length>1&&(P[e]||L.uniqueSort(i),H.test(e)&&i.reverse()),this.pushStack(i)}}));var $=/[^\x20\t\r\n\f]+/g;function I(e){return e}function F(e){throw e}function W(e,t,n,r){var i;try{e&&_(i=e.promise)?i.call(e).done(t).fail(n):e&&_(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}L.Callbacks=function(e){e="string"==typeof e?function(e){var t={};return L.each(e.match($)||[],(function(e,n){t[n]=!0})),t}(e):L.extend({},e);var t,n,r,i,a=[],o=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;o.length;s=-1)for(n=o.shift();++s-1;)a.splice(n,1),n<=s&&s--})),this},has:function(e){return e?L.inArray(e,a)>-1:a.length>0},empty:function(){return a&&(a=[]),this},disable:function(){return i=o=[],a=n="",this},disabled:function(){return!a},lock:function(){return i=o=[],n||t||(a=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],o.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l},L.extend({Deferred:function(e){var t=[["notify","progress",L.Callbacks("memory"),L.Callbacks("memory"),2],["resolve","done",L.Callbacks("once memory"),L.Callbacks("once memory"),0,"resolved"],["reject","fail",L.Callbacks("once memory"),L.Callbacks("once memory"),1,"rejected"]],n="pending",i={state:function(){return n},always:function(){return a.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return L.Deferred((function(n){L.each(t,(function(t,r){var i=_(e[r[4]])&&e[r[4]];a[r[1]]((function(){var e=i&&i.apply(this,arguments);e&&_(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[e]:arguments)}))})),e=null})).promise()},then:function(e,n,i){var a=0;function o(e,t,n,i){return function(){var s=this,u=arguments,l=function(){var r,l;if(!(e=a&&(n!==F&&(s=void 0,u=[r]),t.rejectWith(s,u))}};e?c():(L.Deferred.getStackHook&&(c.stackTrace=L.Deferred.getStackHook()),r.setTimeout(c))}}return L.Deferred((function(r){t[0][3].add(o(0,r,_(i)?i:I,r.notifyWith)),t[1][3].add(o(0,r,_(e)?e:I)),t[2][3].add(o(0,r,_(n)?n:F))})).promise()},promise:function(e){return null!=e?L.extend(e,i):i}},a={};return L.each(t,(function(e,r){var o=r[2],s=r[5];i[r[1]]=o.add,s&&o.add((function(){n=s}),t[3-e][2].disable,t[3-e][3].disable,t[0][2].lock,t[0][3].lock),o.add(r[3].fire),a[r[0]]=function(){return a[r[0]+"With"](this===a?void 0:this,arguments),this},a[r[0]+"With"]=o.fireWith})),i.promise(a),e&&e.call(a,a),a},when:function(e){var t=arguments.length,n=t,r=Array(n),i=s.call(arguments),a=L.Deferred(),o=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?s.call(arguments):n,--t||a.resolveWith(r,i)}};if(t<=1&&(W(e,a.done(o(n)).resolve,a.reject,!t),"pending"===a.state()||_(i[n]&&i[n].then)))return a.then();for(;n--;)W(i[n],o(n),a.reject);return a.promise()}});var R=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;L.Deferred.exceptionHook=function(e,t){r.console&&r.console.warn&&e&&R.test(e.name)&&r.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},L.readyException=function(e){r.setTimeout((function(){throw e}))};var z=L.Deferred();function B(){g.removeEventListener("DOMContentLoaded",B),r.removeEventListener("load",B),L.ready()}L.fn.ready=function(e){return z.then(e).catch((function(e){L.readyException(e)})),this},L.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--L.readyWait:L.isReady)||(L.isReady=!0,!0!==e&&--L.readyWait>0||z.resolveWith(g,[L]))}}),L.ready.then=z.then,"complete"===g.readyState||"loading"!==g.readyState&&!g.documentElement.doScroll?r.setTimeout(L.ready):(g.addEventListener("DOMContentLoaded",B),r.addEventListener("load",B));var V=function(e,t,n,r,i,a,o){var s=0,u=e.length,l=null==n;if("object"===M(n))for(s in i=!0,n)V(e,t,s,n[s],!0,a,o);else if(void 0!==r&&(i=!0,_(r)||(o=!0),l&&(o?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(L(e),n)})),t))for(;s1,null,!0)},removeData:function(e){return this.each((function(){Q.remove(this,e)}))}}),L.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=K.get(e,t),n&&(!r||Array.isArray(n)?r=K.access(e,t,L.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=L.queue(e,t),r=n.length,i=n.shift(),a=L._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete a.stop,i.call(e,(function(){L.dequeue(e,t)}),a)),!r&&a&&a.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return K.get(e,n)||K.access(e,n,{empty:L.Callbacks("once memory").add((function(){K.remove(e,[t+"queue",n])}))})}}),L.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]*)/i,ye=/^$|^module$|\/(?:java|ecma)script/i;pe=g.createDocumentFragment().appendChild(g.createElement("div")),(me=g.createElement("input")).setAttribute("type","radio"),me.setAttribute("checked","checked"),me.setAttribute("name","t"),pe.appendChild(me),v.checkClone=pe.cloneNode(!0).cloneNode(!0).lastChild.checked,pe.innerHTML="",v.noCloneChecked=!!pe.cloneNode(!0).lastChild.defaultValue,pe.innerHTML="",v.option=!!pe.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function be(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&j(e,t)?L.merge([e],n):n}function we(e,t){for(var n=0,r=e.length;n",""]);var Me=/<|&#?\w+;/;function ke(e,t,n,r,i){for(var a,o,s,u,l,c,d=t.createDocumentFragment(),f=[],h=0,p=e.length;h-1)i&&i.push(a);else if(l=se(a),o=be(d.appendChild(a),"script"),l&&we(o),n)for(c=0;a=o[c++];)ye.test(a.type||"")&&n.push(a);return d}var Le=/^([^.]*)(?:\.(.+)|)/;function xe(){return!0}function De(){return!1}function Te(e,t){return e===function(){try{return g.activeElement}catch(e){}}()==("focus"===t)}function Ye(e,t,n,r,i,a){var o,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ye(e,s,n,r,t[s],a);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=De;else if(!i)return e;return 1===a&&(o=i,i=function(e){return L().off(e),o.apply(this,arguments)},i.guid=o.guid||(o.guid=L.guid++)),e.each((function(){L.event.add(this,t,i,r,n)}))}function Se(e,t,n){n?(K.set(e,t,!1),L.event.add(e,t,{namespace:!1,handler:function(e){var r,i,a=K.get(this,t);if(1&e.isTrigger&&this[t]){if(a.length)(L.event.special[t]||{}).delegateType&&e.stopPropagation();else if(a=s.call(arguments),K.set(this,t,a),r=n(this,t),this[t](),a!==(i=K.get(this,t))||r?K.set(this,t,!1):i={},a!==i)return e.stopImmediatePropagation(),e.preventDefault(),i&&i.value}else a.length&&(K.set(this,t,{value:L.event.trigger(L.extend(a[0],L.Event.prototype),a.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===K.get(e,t)&&L.event.add(e,t,xe)}L.event={global:{},add:function(e,t,n,r,i){var a,o,s,u,l,c,d,f,h,p,m,v=K.get(e);if(X(e))for(n.handler&&(n=(a=n).handler,i=a.selector),i&&L.find.matchesSelector(oe,i),n.guid||(n.guid=L.guid++),(u=v.events)||(u=v.events=Object.create(null)),(o=v.handle)||(o=v.handle=function(t){return void 0!==L&&L.event.triggered!==t.type?L.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||"").match($)||[""]).length;l--;)h=m=(s=Le.exec(t[l])||[])[1],p=(s[2]||"").split(".").sort(),h&&(d=L.event.special[h]||{},h=(i?d.delegateType:d.bindType)||h,d=L.event.special[h]||{},c=L.extend({type:h,origType:m,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&L.expr.match.needsContext.test(i),namespace:p.join(".")},a),(f=u[h])||((f=u[h]=[]).delegateCount=0,d.setup&&!1!==d.setup.call(e,r,p,o)||e.addEventListener&&e.addEventListener(h,o)),d.add&&(d.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?f.splice(f.delegateCount++,0,c):f.push(c),L.event.global[h]=!0)},remove:function(e,t,n,r,i){var a,o,s,u,l,c,d,f,h,p,m,v=K.hasData(e)&&K.get(e);if(v&&(u=v.events)){for(l=(t=(t||"").match($)||[""]).length;l--;)if(h=m=(s=Le.exec(t[l])||[])[1],p=(s[2]||"").split(".").sort(),h){for(d=L.event.special[h]||{},f=u[h=(r?d.delegateType:d.bindType)||h]||[],s=s[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),o=a=f.length;a--;)c=f[a],!i&&m!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(f.splice(a,1),c.selector&&f.delegateCount--,d.remove&&d.remove.call(e,c));o&&!f.length&&(d.teardown&&!1!==d.teardown.call(e,p,v.handle)||L.removeEvent(e,h,v.handle),delete u[h])}else for(h in u)L.event.remove(e,h+t[l],n,r,!0);L.isEmptyObject(u)&&K.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,a,o,s=new Array(arguments.length),u=L.event.fix(e),l=(K.get(this,"events")||Object.create(null))[u.type]||[],c=L.event.special[u.type]||{};for(s[0]=u,t=1;t=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(a=[],o={},n=0;n-1:L.find(i,this,null,[l]).length),o[i]&&a.push(r);a.length&&s.push({elem:l,handlers:a})}return l=this,u\s*$/g;function Ce(e,t){return j(e,"table")&&j(11!==t.nodeType?t:t.firstChild,"tr")&&L(e).children("tbody")[0]||e}function Ae(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Pe(e,t){var n,r,i,a,o,s;if(1===t.nodeType){if(K.hasData(e)&&(s=K.get(e).events))for(i in K.remove(t,"handle events"),s)for(n=0,r=s[i].length;n1&&"string"==typeof p&&!v.checkClone&&Oe.test(p))return e.each((function(i){var a=e.eq(i);m&&(t[0]=p.call(this,i,a.html())),$e(a,t,n,r)}));if(f&&(a=(i=ke(t,e[0].ownerDocument,!1,e,r)).firstChild,1===i.childNodes.length&&(i=a),a||r)){for(s=(o=L.map(be(i,"script"),Ae)).length;d0&&we(o,!u&&be(e,"script")),s},cleanData:function(e){for(var t,n,r,i=L.event.special,a=0;void 0!==(n=e[a]);a++)if(X(n)){if(t=n[K.expando]){if(t.events)for(r in t.events)i[r]?L.event.remove(n,r):L.removeEvent(n,r,t.handle);n[K.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),L.fn.extend({detach:function(e){return Ie(this,e,!0)},remove:function(e){return Ie(this,e)},text:function(e){return V(this,(function(e){return void 0===e?L.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)}))}),null,e,arguments.length)},append:function(){return $e(this,arguments,(function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Ce(this,e).appendChild(e)}))},prepend:function(){return $e(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ce(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return $e(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return $e(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)}))},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(L.cleanData(be(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return L.clone(this,e,t)}))},html:function(e){return V(this,(function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!je.test(e)&&!ge[(_e.exec(e)||["",""])[1].toLowerCase()]){e=L.htmlPrefilter(e);try{for(;n=0&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-a-u-s-.5))||0),u}function nt(e,t,n){var r=We(e),i=(!v.boxSizingReliable()||n)&&"border-box"===L.css(e,"boxSizing",!1,r),a=i,o=Be(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Fe.test(o)){if(!n)return o;o="auto"}return(!v.boxSizingReliable()&&i||!v.reliableTrDimensions()&&j(e,"tr")||"auto"===o||!parseFloat(o)&&"inline"===L.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===L.css(e,"boxSizing",!1,r),(a=s in e)&&(o=e[s])),(o=parseFloat(o)||0)+tt(e,t,n||(i?"border":"content"),a,r,o)+"px"}function rt(e,t,n,r,i){return new rt.prototype.init(e,t,n,r,i)}L.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Be(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,a,o,s=G(t),u=Ze.test(t),l=e.style;if(u||(t=Ge(s)),o=L.cssHooks[t]||L.cssHooks[s],void 0===n)return o&&"get"in o&&void 0!==(i=o.get(e,!1,r))?i:l[t];"string"===(a=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=ce(e,t,i),a="number"),null!=n&&n==n&&("number"!==a||u||(n+=i&&i[3]||(L.cssNumber[s]?"":"px")),v.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),o&&"set"in o&&void 0===(n=o.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,a,o,s=G(t);return Ze.test(t)||(t=Ge(s)),(o=L.cssHooks[t]||L.cssHooks[s])&&"get"in o&&(i=o.get(e,!0,n)),void 0===i&&(i=Be(e,t,r)),"normal"===i&&t in Qe&&(i=Qe[t]),""===n||n?(a=parseFloat(i),!0===n||isFinite(a)?a||0:i):i}}),L.each(["height","width"],(function(e,t){L.cssHooks[t]={get:function(e,n,r){if(n)return!Xe.test(L.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?nt(e,t,r):Re(e,Ke,(function(){return nt(e,t,r)}))},set:function(e,n,r){var i,a=We(e),o=!v.scrollboxSize()&&"absolute"===a.position,s=(o||r)&&"border-box"===L.css(e,"boxSizing",!1,a),u=r?tt(e,t,r,s,a):0;return s&&o&&(u-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(a[t])-tt(e,t,"border",!1,a)-.5)),u&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=L.css(e,t)),et(0,n,u)}}})),L.cssHooks.marginLeft=Ve(v.reliableMarginLeft,(function(e,t){if(t)return(parseFloat(Be(e,"marginLeft"))||e.getBoundingClientRect().left-Re(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+"px"})),L.each({margin:"",padding:"",border:"Width"},(function(e,t){L.cssHooks[e+t]={expand:function(n){for(var r=0,i={},a="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+ae[r]+t]=a[r]||a[r-2]||a[0];return i}},"margin"!==e&&(L.cssHooks[e+t].set=et)})),L.fn.extend({css:function(e,t){return V(this,(function(e,t,n){var r,i,a={},o=0;if(Array.isArray(t)){for(r=We(e),i=t.length;o1)}}),L.Tween=rt,rt.prototype={constructor:rt,init:function(e,t,n,r,i,a){this.elem=e,this.prop=n,this.easing=i||L.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=a||(L.cssNumber[n]?"":"px")},cur:function(){var e=rt.propHooks[this.prop];return e&&e.get?e.get(this):rt.propHooks._default.get(this)},run:function(e){var t,n=rt.propHooks[this.prop];return this.options.duration?this.pos=t=L.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):rt.propHooks._default.set(this),this}},rt.prototype.init.prototype=rt.prototype,rt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=L.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){L.fx.step[e.prop]?L.fx.step[e.prop](e):1!==e.elem.nodeType||!L.cssHooks[e.prop]&&null==e.elem.style[Ge(e.prop)]?e.elem[e.prop]=e.now:L.style(e.elem,e.prop,e.now+e.unit)}}},rt.propHooks.scrollTop=rt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},L.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},L.fx=rt.prototype.init,L.fx.step={};var it,at,ot=/^(?:toggle|show|hide)$/,st=/queueHooks$/;function ut(){at&&(!1===g.hidden&&r.requestAnimationFrame?r.requestAnimationFrame(ut):r.setTimeout(ut,L.fx.interval),L.fx.tick())}function lt(){return r.setTimeout((function(){it=void 0})),it=Date.now()}function ct(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ae[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function dt(e,t,n){for(var r,i=(ft.tweeners[t]||[]).concat(ft.tweeners["*"]),a=0,o=i.length;a1)},removeAttr:function(e){return this.each((function(){L.removeAttr(this,e)}))}}),L.extend({attr:function(e,t,n){var r,i,a=e.nodeType;if(3!==a&&8!==a&&2!==a)return void 0===e.getAttribute?L.prop(e,t,n):(1===a&&L.isXMLDoc(e)||(i=L.attrHooks[t.toLowerCase()]||(L.expr.match.bool.test(t)?ht:void 0)),void 0!==n?null===n?void L.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=L.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!v.radioValue&&"radio"===t&&j(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match($);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),ht={set:function(e,t,n){return!1===t?L.removeAttr(e,n):e.setAttribute(n,n),n}},L.each(L.expr.match.bool.source.match(/\w+/g),(function(e,t){var n=pt[t]||L.find.attr;pt[t]=function(e,t,r){var i,a,o=t.toLowerCase();return r||(a=pt[o],pt[o]=i,i=null!=n(e,t,r)?o:null,pt[o]=a),i}}));var mt=/^(?:input|select|textarea|button)$/i,vt=/^(?:a|area)$/i;function _t(e){return(e.match($)||[]).join(" ")}function yt(e){return e.getAttribute&&e.getAttribute("class")||""}function gt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match($)||[]}L.fn.extend({prop:function(e,t){return V(this,L.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each((function(){delete this[L.propFix[e]||e]}))}}),L.extend({prop:function(e,t,n){var r,i,a=e.nodeType;if(3!==a&&8!==a&&2!==a)return 1===a&&L.isXMLDoc(e)||(t=L.propFix[t]||t,i=L.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=L.find.attr(e,"tabindex");return t?parseInt(t,10):mt.test(e.nodeName)||vt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),v.optSelected||(L.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),L.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],(function(){L.propFix[this.toLowerCase()]=this})),L.fn.extend({addClass:function(e){var t,n,r,i,a,o,s,u=0;if(_(e))return this.each((function(t){L(this).addClass(e.call(this,t,yt(this)))}));if((t=gt(e)).length)for(;n=this[u++];)if(i=yt(n),r=1===n.nodeType&&" "+_t(i)+" "){for(o=0;a=t[o++];)r.indexOf(" "+a+" ")<0&&(r+=a+" ");i!==(s=_t(r))&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,a,o,s,u=0;if(_(e))return this.each((function(t){L(this).removeClass(e.call(this,t,yt(this)))}));if(!arguments.length)return this.attr("class","");if((t=gt(e)).length)for(;n=this[u++];)if(i=yt(n),r=1===n.nodeType&&" "+_t(i)+" "){for(o=0;a=t[o++];)for(;r.indexOf(" "+a+" ")>-1;)r=r.replace(" "+a+" "," ");i!==(s=_t(r))&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):_(e)?this.each((function(n){L(this).toggleClass(e.call(this,n,yt(this),t),t)})):this.each((function(){var t,i,a,o;if(r)for(i=0,a=L(this),o=gt(e);t=o[i++];)a.hasClass(t)?a.removeClass(t):a.addClass(t);else void 0!==e&&"boolean"!==n||((t=yt(this))&&K.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":K.get(this,"__className__")||""))}))},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+_t(yt(n))+" ").indexOf(t)>-1)return!0;return!1}});var bt=/\r/g;L.fn.extend({val:function(e){var t,n,r,i=this[0];return arguments.length?(r=_(e),this.each((function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,L(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=L.map(i,(function(e){return null==e?"":e+""}))),(t=L.valHooks[this.type]||L.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))}))):i?(t=L.valHooks[i.type]||L.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(bt,""):null==n?"":n:void 0}}),L.extend({valHooks:{option:{get:function(e){var t=L.find.attr(e,"value");return null!=t?t:_t(L.text(e))}},select:{get:function(e){var t,n,r,i=e.options,a=e.selectedIndex,o="select-one"===e.type,s=o?null:[],u=o?a+1:i.length;for(r=a<0?u:o?a:0;r-1)&&(n=!0);return n||(e.selectedIndex=-1),a}}}}),L.each(["radio","checkbox"],(function(){L.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=L.inArray(L(e).val(),t)>-1}},v.checkOn||(L.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})})),v.focusin="onfocusin"in r;var wt=/^(?:focusinfocus|focusoutblur)$/,Mt=function(e){e.stopPropagation()};L.extend(L.event,{trigger:function(e,t,n,i){var a,o,s,u,l,c,d,f,p=[n||g],m=h.call(e,"type")?e.type:e,v=h.call(e,"namespace")?e.namespace.split("."):[];if(o=f=s=n=n||g,3!==n.nodeType&&8!==n.nodeType&&!wt.test(m+L.event.triggered)&&(m.indexOf(".")>-1&&(v=m.split("."),m=v.shift(),v.sort()),l=m.indexOf(":")<0&&"on"+m,(e=e[L.expando]?e:new L.Event(m,"object"==typeof e&&e)).isTrigger=i?2:3,e.namespace=v.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+v.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:L.makeArray(t,[e]),d=L.event.special[m]||{},i||!d.trigger||!1!==d.trigger.apply(n,t))){if(!i&&!d.noBubble&&!y(n)){for(u=d.delegateType||m,wt.test(u+m)||(o=o.parentNode);o;o=o.parentNode)p.push(o),s=o;s===(n.ownerDocument||g)&&p.push(s.defaultView||s.parentWindow||r)}for(a=0;(o=p[a++])&&!e.isPropagationStopped();)f=o,e.type=a>1?u:d.bindType||m,(c=(K.get(o,"events")||Object.create(null))[e.type]&&K.get(o,"handle"))&&c.apply(o,t),(c=l&&o[l])&&c.apply&&X(o)&&(e.result=c.apply(o,t),!1===e.result&&e.preventDefault());return e.type=m,i||e.isDefaultPrevented()||d._default&&!1!==d._default.apply(p.pop(),t)||!X(n)||l&&_(n[m])&&!y(n)&&((s=n[l])&&(n[l]=null),L.event.triggered=m,e.isPropagationStopped()&&f.addEventListener(m,Mt),n[m](),e.isPropagationStopped()&&f.removeEventListener(m,Mt),L.event.triggered=void 0,s&&(n[l]=s)),e.result}},simulate:function(e,t,n){var r=L.extend(new L.Event,n,{type:e,isSimulated:!0});L.event.trigger(r,null,t)}}),L.fn.extend({trigger:function(e,t){return this.each((function(){L.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return L.event.trigger(e,t,n,!0)}}),v.focusin||L.each({focus:"focusin",blur:"focusout"},(function(e,t){var n=function(e){L.event.simulate(t,e.target,L.event.fix(e))};L.event.special[t]={setup:function(){var r=this.ownerDocument||this.document||this,i=K.access(r,t);i||r.addEventListener(e,n,!0),K.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this.document||this,i=K.access(r,t)-1;i?K.access(r,t,i):(r.removeEventListener(e,n,!0),K.remove(r,t))}}}));var kt=r.location,Lt={guid:Date.now()},xt=/\?/;L.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{t=(new r.DOMParser).parseFromString(e,"text/xml")}catch(e){}return n=t&&t.getElementsByTagName("parsererror")[0],t&&!n||L.error("Invalid XML: "+(n?L.map(n.childNodes,(function(e){return e.textContent})).join("\n"):e)),t};var Dt=/\[\]$/,Tt=/\r?\n/g,Yt=/^(?:submit|button|image|reset|file)$/i,St=/^(?:input|select|textarea|keygen)/i;function jt(e,t,n,r){var i;if(Array.isArray(t))L.each(t,(function(t,i){n||Dt.test(e)?r(e,i):jt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)}));else if(n||"object"!==M(t))r(e,t);else for(i in t)jt(e+"["+i+"]",t[i],n,r)}L.param=function(e,t){var n,r=[],i=function(e,t){var n=_(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!L.isPlainObject(e))L.each(e,(function(){i(this.name,this.value)}));else for(n in e)jt(n,e[n],t,i);return r.join("&")},L.fn.extend({serialize:function(){return L.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=L.prop(this,"elements");return e?L.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!L(this).is(":disabled")&&St.test(this.nodeName)&&!Yt.test(e)&&(this.checked||!ve.test(e))})).map((function(e,t){var n=L(this).val();return null==n?null:Array.isArray(n)?L.map(n,(function(e){return{name:t.name,value:e.replace(Tt,"\r\n")}})):{name:t.name,value:n.replace(Tt,"\r\n")}})).get()}});var Ot=/%20/g,Et=/#.*$/,Ct=/([?&])_=[^&]*/,At=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ht=/^(?:GET|HEAD)$/,Pt=/^\/\//,Nt={},$t={},It="*/".concat("*"),Ft=g.createElement("a");function Wt(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,a=t.toLowerCase().match($)||[];if(_(n))for(;r=a[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Rt(e,t,n,r){var i={},a=e===$t;function o(s){var u;return i[s]=!0,L.each(e[s]||[],(function(e,s){var l=s(t,n,r);return"string"!=typeof l||a||i[l]?a?!(u=l):void 0:(t.dataTypes.unshift(l),o(l),!1)})),u}return o(t.dataTypes[0])||!i["*"]&&o("*")}function zt(e,t){var n,r,i=L.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&L.extend(!0,e,r),e}Ft.href=kt.href,L.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:kt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(kt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":It,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":L.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?zt(zt(e,L.ajaxSettings),t):zt(L.ajaxSettings,e)},ajaxPrefilter:Wt(Nt),ajaxTransport:Wt($t),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var n,i,a,o,s,u,l,c,d,f,h=L.ajaxSetup({},t),p=h.context||h,m=h.context&&(p.nodeType||p.jquery)?L(p):L.event,v=L.Deferred(),_=L.Callbacks("once memory"),y=h.statusCode||{},b={},w={},M="canceled",k={readyState:0,getResponseHeader:function(e){var t;if(l){if(!o)for(o={};t=At.exec(a);)o[t[1].toLowerCase()+" "]=(o[t[1].toLowerCase()+" "]||[]).concat(t[2]);t=o[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return l?a:null},setRequestHeader:function(e,t){return null==l&&(e=w[e.toLowerCase()]=w[e.toLowerCase()]||e,b[e]=t),this},overrideMimeType:function(e){return null==l&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)k.always(e[k.status]);else for(t in e)y[t]=[y[t],e[t]];return this},abort:function(e){var t=e||M;return n&&n.abort(t),x(0,t),this}};if(v.promise(k),h.url=((e||h.url||kt.href)+"").replace(Pt,kt.protocol+"//"),h.type=t.method||t.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match($)||[""],null==h.crossDomain){u=g.createElement("a");try{u.href=h.url,u.href=u.href,h.crossDomain=Ft.protocol+"//"+Ft.host!=u.protocol+"//"+u.host}catch(e){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=L.param(h.data,h.traditional)),Rt(Nt,h,t,k),l)return k;for(d in(c=L.event&&h.global)&&0==L.active++&&L.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!Ht.test(h.type),i=h.url.replace(Et,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(Ot,"+")):(f=h.url.slice(i.length),h.data&&(h.processData||"string"==typeof h.data)&&(i+=(xt.test(i)?"&":"?")+h.data,delete h.data),!1===h.cache&&(i=i.replace(Ct,"$1"),f=(xt.test(i)?"&":"?")+"_="+Lt.guid+++f),h.url=i+f),h.ifModified&&(L.lastModified[i]&&k.setRequestHeader("If-Modified-Since",L.lastModified[i]),L.etag[i]&&k.setRequestHeader("If-None-Match",L.etag[i])),(h.data&&h.hasContent&&!1!==h.contentType||t.contentType)&&k.setRequestHeader("Content-Type",h.contentType),k.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+It+"; q=0.01":""):h.accepts["*"]),h.headers)k.setRequestHeader(d,h.headers[d]);if(h.beforeSend&&(!1===h.beforeSend.call(p,k,h)||l))return k.abort();if(M="abort",_.add(h.complete),k.done(h.success),k.fail(h.error),n=Rt($t,h,t,k)){if(k.readyState=1,c&&m.trigger("ajaxSend",[k,h]),l)return k;h.async&&h.timeout>0&&(s=r.setTimeout((function(){k.abort("timeout")}),h.timeout));try{l=!1,n.send(b,x)}catch(e){if(l)throw e;x(-1,e)}}else x(-1,"No Transport");function x(e,t,o,u){var d,f,g,b,w,M=t;l||(l=!0,s&&r.clearTimeout(s),n=void 0,a=u||"",k.readyState=e>0?4:0,d=e>=200&&e<300||304===e,o&&(b=function(e,t,n){for(var r,i,a,o,s=e.contents,u=e.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)a=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){a=i;break}o||(o=i)}a=a||o}if(a)return a!==u[0]&&u.unshift(a),n[a]}(h,k,o)),!d&&L.inArray("script",h.dataTypes)>-1&&L.inArray("json",h.dataTypes)<0&&(h.converters["text script"]=function(){}),b=function(e,t,n,r){var i,a,o,s,u,l={},c=e.dataTypes.slice();if(c[1])for(o in e.converters)l[o.toLowerCase()]=e.converters[o];for(a=c.shift();a;)if(e.responseFields[a]&&(n[e.responseFields[a]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=a,a=c.shift())if("*"===a)a=u;else if("*"!==u&&u!==a){if(!(o=l[u+" "+a]||l["* "+a]))for(i in l)if((s=i.split(" "))[1]===a&&(o=l[u+" "+s[0]]||l["* "+s[0]])){!0===o?o=l[i]:!0!==l[i]&&(a=s[0],c.unshift(s[1]));break}if(!0!==o)if(o&&e.throws)t=o(t);else try{t=o(t)}catch(e){return{state:"parsererror",error:o?e:"No conversion from "+u+" to "+a}}}return{state:"success",data:t}}(h,b,k,d),d?(h.ifModified&&((w=k.getResponseHeader("Last-Modified"))&&(L.lastModified[i]=w),(w=k.getResponseHeader("etag"))&&(L.etag[i]=w)),204===e||"HEAD"===h.type?M="nocontent":304===e?M="notmodified":(M=b.state,f=b.data,d=!(g=b.error))):(g=M,!e&&M||(M="error",e<0&&(e=0))),k.status=e,k.statusText=(t||M)+"",d?v.resolveWith(p,[f,M,k]):v.rejectWith(p,[k,M,g]),k.statusCode(y),y=void 0,c&&m.trigger(d?"ajaxSuccess":"ajaxError",[k,h,d?f:g]),_.fireWith(p,[k,M]),c&&(m.trigger("ajaxComplete",[k,h]),--L.active||L.event.trigger("ajaxStop")))}return k},getJSON:function(e,t,n){return L.get(e,t,n,"json")},getScript:function(e,t){return L.get(e,void 0,t,"script")}}),L.each(["get","post"],(function(e,t){L[t]=function(e,n,r,i){return _(n)&&(i=i||r,r=n,n=void 0),L.ajax(L.extend({url:e,type:t,dataType:i,data:n,success:r},L.isPlainObject(e)&&e))}})),L.ajaxPrefilter((function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")})),L._evalUrl=function(e,t,n){return L.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){L.globalEval(e,t,n)}})},L.fn.extend({wrapAll:function(e){var t;return this[0]&&(_(e)&&(e=e.call(this[0])),t=L(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map((function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e})).append(this)),this},wrapInner:function(e){return _(e)?this.each((function(t){L(this).wrapInner(e.call(this,t))})):this.each((function(){var t=L(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=_(e);return this.each((function(n){L(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not("body").each((function(){L(this).replaceWith(this.childNodes)})),this}}),L.expr.pseudos.hidden=function(e){return!L.expr.pseudos.visible(e)},L.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},L.ajaxSettings.xhr=function(){try{return new r.XMLHttpRequest}catch(e){}};var Bt={0:200,1223:204},Vt=L.ajaxSettings.xhr();v.cors=!!Vt&&"withCredentials"in Vt,v.ajax=Vt=!!Vt,L.ajaxTransport((function(e){var t,n;if(v.cors||Vt&&!e.crossDomain)return{send:function(i,a){var o,s=e.xhr();if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(o in e.xhrFields)s[o]=e.xhrFields[o];for(o in e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest"),i)s.setRequestHeader(o,i[o]);t=function(e){return function(){t&&(t=n=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?a(0,"error"):a(s.status,s.statusText):a(Bt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=t(),n=s.onerror=s.ontimeout=t("error"),void 0!==s.onabort?s.onabort=n:s.onreadystatechange=function(){4===s.readyState&&r.setTimeout((function(){t&&n()}))},t=t("abort");try{s.send(e.hasContent&&e.data||null)}catch(e){if(t)throw e}},abort:function(){t&&t()}}})),L.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),L.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return L.globalEval(e),e}}}),L.ajaxPrefilter("script",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")})),L.ajaxTransport("script",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,i){t=L("':i=g.settings.video_template_callback?g.settings.video_template_callback(j):'"}return i};return{dataToHtml:g}}),g("l",["8"],function(a){return a("tinymce.util.Promise")}),g("i",["k","l"],function(a,b){var c=function(a,c,d){var e={};return new b(function(b,f){var g=function(d){return d.html&&(e[a.source1]=d),b({url:a.source1,html:d.html?d.html:c(a)})};e[a.source1]?g(e[a.source1]):d({url:a.source1},g,f)})},d=function(a,c){return new b(function(b){b({html:c(a),url:a.source1})})},e=function(b){return function(c){return a.dataToHtml(b,c)}},f=function(a,b){var f=a.settings.media_url_resolver;return f?c(b,e(a),f):d(b,e(a))};return{getEmbedHtml:f}}),g("j",[],function(){var a=function(a,b){a.state.set("oldVal",a.value()),b.state.set("oldVal",b.value())},b=function(a,b){var c=a.find("#width")[0],d=a.find("#height")[0],e=a.find("#constrain")[0];c&&d&&e&&b(c,d,e.checked())},c=function(b,c,d){var e=b.state.get("oldVal"),f=c.state.get("oldVal"),g=b.value(),h=c.value();d&&e&&f&&g&&h&&(g!==e?(h=Math.round(g/e*h),isNaN(h)||c.value(h)):(g=Math.round(h/f*g),isNaN(g)||b.value(g))),a(b,c)},d=function(c){b(c,a)},e=function(a){b(a,c)},f=function(a){var b=function(){a(function(a){e(a)})};return{type:"container",label:"Dimensions",layout:"flex",align:"center",spacing:5,items:[{name:"width",type:"textbox",maxLength:5,size:5,onchange:b,ariaLabel:"Width"},{type:"label",text:"x"},{name:"height",type:"textbox",maxLength:5,size:5,onchange:b,ariaLabel:"Height"},{name:"constrain",type:"checkbox",checked:!0,text:"Constrain proportions"}]}};return{createUi:f,syncSize:d,updateSize:e}}),g("7",["g","h","6","i","f","3","d","j"],function(a,b,c,d,e,f,g,h){var i=g.ie&&g.ie<=8?"onChange":"onInput",j=function(a){return function(b){var c=b&&b.msg?"Media embed handler error: "+b.msg:"Media embed handler threw unknown error.";a.notificationManager.open({type:"error",text:c})}},k=function(a){var c=a.selection.getNode(),d=c.getAttribute("data-ephox-embed-iri");return d?{source1:d,"data-ephox-embed-iri":d,width:e.getMaxWidth(c),height:e.getMaxHeight(c)}:c.getAttribute("data-mce-object")?b.htmlToData(a.settings.media_scripts,a.serializer.serialize(c,{selection:!0})):{}},l=function(a){var b=a.selection.getNode();if(b.getAttribute("data-mce-object")||b.getAttribute("data-ephox-embed-iri"))return a.selection.getContent()},m=function(a,c){return function(d){var e=d.html,g=a.find("#embed")[0],i=f.extend(b.htmlToData(c.settings.media_scripts,e),{source1:d.url});a.fromJSON(i),g&&(g.value(e),h.updateSize(a))}},n=function(a,b){var c,d,e=a.dom.select("img[data-mce-object]");for(c=0;c=0;d--)b[c]===e[d]&&e.splice(d,1);a.selection.select(e[0])},o=function(a,b){var c=a.dom.select("img[data-mce-object]");a.insertContent(b),n(a,c),a.nodeChanged()},p=function(a,b){var e=a.toJSON();e.embed=c.updateHtml(e.embed,e),e.embed?o(b,e.embed):d.getEmbedHtml(b,e).then(function(a){o(b,a.html)})["catch"](j(b))},q=function(a,b){f.each(b,function(b,c){a.find("#"+c).value(b)})},r=function(a){var e,g,n=[{name:"source1",type:"filepicker",filetype:"media",size:40,autofocus:!0,label:"Source",onpaste:function(){setTimeout(function(){d.getEmbedHtml(a,e.toJSON()).then(m(e,a))["catch"](j(a))},1)},onchange:function(b){d.getEmbedHtml(a,e.toJSON()).then(m(e,a))["catch"](j(a)),q(e,b.meta)},onbeforecall:function(a){a.meta=e.toJSON()}}],o=[],r=function(a){a(e),g=e.toJSON(),e.find("#embed").value(c.updateHtml(g.embed,g))};if(a.settings.media_alt_source!==!1&&o.push({name:"source2",type:"filepicker",filetype:"media",size:40,label:"Alternative source"}),a.settings.media_poster!==!1&&o.push({name:"poster",type:"filepicker",filetype:"image",size:40,label:"Poster"}),a.settings.media_dimensions!==!1){var s=h.createUi(r);n.push(s)}g=k(a);var t={id:"mcemediasource",type:"textbox",flex:1,name:"embed",value:l(a),multiline:!0,rows:5,label:"Source"},u=function(){g=f.extend({},b.htmlToData(a.settings.media_scripts,this.value())),this.parent().parent().fromJSON(g)};t[i]=u,e=a.windowManager.open({title:"Insert/edit media",data:g,bodyType:"tabpanel",body:[{title:"General",type:"form",items:n},{title:"Embed",type:"container",layout:"flex",direction:"column",align:"stretch",padding:10,spacing:10,items:[{type:"label",text:"Paste your embed code below:",forId:"mcemediasource"},t]},{title:"Advanced",type:"form",items:o}],onSubmit:function(){h.updateSize(e),p(e,a)}}),h.syncSize(e)};return{showDialog:r}}),g("0",["1","2","3","4","5","6","7"],function(a,b,c,d,e,f,g){var h=function(b){b.on("ResolveName",function(a){var b;1===a.target.nodeType&&(b=a.target.getAttribute("data-mce-object"))&&(a.name=b)}),b.on("preInit",function(){var f=b.schema.getSpecialElements();c.each("video audio iframe object".split(" "),function(a){f[a]=new RegExp("]*>","gi")});var g=b.schema.getBoolAttrs();c.each("webkitallowfullscreen mozallowfullscreen allowfullscreen".split(" "),function(a){g[a]={}}),b.parser.addNodeFilter("iframe,video,audio,object,embed,script",d.placeHolderConverter(b)),b.serializer.addAttributeFilter("data-mce-object",function(c,d){for(var f,g,h,i,j,k,l,m,n=c.length;n--;)if(f=c[n],f.parent){for(l=f.attr(d),g=new a(l,1),"audio"!==l&&"script"!==l&&(m=f.attr("class"),m&&m.indexOf("mce-preview-object")!==-1?g.attr({width:f.firstChild.attr("width"),height:f.firstChild.attr("height")}):g.attr({width:f.attr("width"),height:f.attr("height")})),g.attr({style:f.attr("style")}),i=f.attributes,h=i.length;h--;){var o=i[h].name;0===o.indexOf("data-mce-p-")&&g.attr(o.substr(11),i[h].value)}"script"===l&&g.attr("type","text/javascript"),j=f.attr("data-mce-html"),j&&(k=new a("#text",3),k.raw=!0,k.value=e.sanitize(b,unescape(j)),g.append(k)),f.replace(g)}})}),b.on("click keyup",function(){var a=b.selection.getNode();a&&b.dom.hasClass(a,"mce-preview-object")&&b.dom.getAttrib(a,"data-mce-selected")&&a.setAttribute("data-mce-selected","2")}),b.on("ObjectSelected",function(a){var b=a.target.getAttribute("data-mce-object");"audio"!==b&&"script"!==b||a.preventDefault()}),b.on("objectResized",function(a){var b,c=a.target;c.getAttribute("data-mce-object")&&(b=c.getAttribute("data-mce-html"),b&&(b=unescape(b),c.setAttribute("data-mce-html",escape(f.updateHtml(b,{width:a.width,height:a.height})))))}),this.showDialog=function(){g.showDialog(b)},b.addButton("media",{tooltip:"Insert/edit media",onclick:this.showDialog,stateSelector:["img[data-mce-object]","span[data-mce-object]","div[data-ephox-embed-iri]"]}),b.addMenuItem("media",{icon:"media",text:"Media",onclick:this.showDialog,context:"insert",prependToContext:!0}),b.on("setContent",function(){b.$("span.mce-preview-object").each(function(a,c){var d=b.$(c);0===d.find("span.mce-shim",c).length&&d.append('')})}),b.addCommand("mceMedia",this.showDialog)};return b.add("media",h),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/mention/plugin.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/mention/plugin.js new file mode 100644 index 0000000..e15cfa5 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/mention/plugin.js @@ -0,0 +1,416 @@ +/*global tinymce, module, require, define, global, self */ + +;(function (f) { + 'use strict'; + + // CommonJS + if (typeof exports === 'object' && typeof module !== 'undefined') { + module.exports = f(require('jquery')); + + // RequireJS + } else if (typeof define === 'function' && define.amd) { + define(['jquery'], f); + + // ',j=a.settings.directionality?' dir="'+a.settings.directionality+'"':"";if(b=""+f+'"+a.getContent()+i+"",e)this.getEl("body").firstChild.src="data:text/html;charset=utf-8,"+encodeURIComponent(b);else{var k=this.getEl("body").firstChild.contentWindow.document;k.open(),k.write(b),k.close()}}})}),a.addButton("preview",{title:"Preview",cmd:"mcePreview"}),a.addMenuItem("preview",{text:"Preview",cmd:"mcePreview",context:"view"})}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/print/plugin.min.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/print/plugin.min.js new file mode 100644 index 0000000..eccf5ad --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/print/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i0){var d=a[b];if(!d)throw"Invalid capture group";c+=a[0].indexOf(d),a[0]=d}return[c,c+a[0].length,[a[0]]]}function h(b){var c;if(3===b.nodeType)return b.data;if(o[b.nodeName]&&!n[b.nodeName])return"";if(c="",a(b))return"\n";if((n[b.nodeName]||p[b.nodeName])&&(c+="\n"),b=b.firstChild)do c+=h(b);while(b=b.nextSibling);return c}function i(b,c,d){var e,f,g,h,i=[],j=0,k=b,l=c.shift(),m=0;a:for(;;){if((n[k.nodeName]||p[k.nodeName]||a(k))&&j++,3===k.nodeType&&(!f&&k.length+j>=l[1]?(f=k,h=l[1]-j):e&&i.push(k),!e&&k.length+j>l[0]&&(e=k,g=l[0]-j),j+=k.length),e&&f){if(k=d({startNode:e,startNodeIndex:g,endNode:f,endNodeIndex:h,innerNodes:i,match:l[2],matchIndex:m}),j-=f.length-h,e=null,f=null,i=[],l=c.shift(),m++,!l)break}else if(o[k.nodeName]&&!n[k.nodeName]||!k.firstChild){if(k.nextSibling){k=k.nextSibling;continue}}else if(!a(k)){k=k.firstChild;continue}for(;;){if(k.nextSibling){k=k.nextSibling;break}if(k.parentNode===b)break a;k=k.parentNode}}}function j(a){var b;if("function"!=typeof a){var c=a.nodeType?a:m.createElement(a);b=function(a,b){var d=c.cloneNode(!1);return d.setAttribute("data-mce-index",b),a&&d.appendChild(m.createTextNode(a)),d}}else b=a;return function(a){var c,d,e,f=a.startNode,g=a.endNode,h=a.matchIndex;if(f===g){var i=f;e=i.parentNode,a.startNodeIndex>0&&(c=m.createTextNode(i.data.substring(0,a.startNodeIndex)),e.insertBefore(c,i));var j=b(a.match[0],h);return e.insertBefore(j,i),a.endNodeIndex0}var l=this,m=-1;l.init=function(a){a.addMenuItem("searchreplace",{text:"Find and replace",shortcut:"Meta+F",onclick:d,separator:"before",context:"edit"}),a.addButton("searchreplace",{tooltip:"Find and replace",shortcut:"Meta+F",onclick:d}),a.addCommand("SearchReplace",d),a.shortcuts.add("Meta+F","",d)},l.find=function(a,b,c){a=a.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),a=c?"\\b"+a+"\\b":a;var d=f(new RegExp(a,b?"g":"gi"));return d&&(m=-1,m=i(!0)),d},l.next=function(){var a=i(!0);a!==-1&&(m=a)},l.prev=function(){var a=i(!1);a!==-1&&(m=a)},l.replace=function(c,d,f){var i,n,o,p,q,r,s=m;for(d=d!==!1,o=a.getBody(),n=b.grep(b.toArray(o.getElementsByTagName("span")),k),i=0;im&&n[i].setAttribute("data-mce-index",q-1)}return a.undoManager.add(),m=s,d?(r=h(s+1).length>0,l.next()):(r=h(s-1).length>0,l.prev()),!f&&r},l.done=function(c){var d,f,h,i;for(f=b.toArray(a.getBody().getElementsByTagName("span")),d=0;d=i.end?(f=l,h=i.end-k):e&&j.push(l),!e&&l.length+k>i.start&&(e=l,g=i.start-k),k+=l.length),e&&f){if(l=d({startNode:e,startNodeIndex:g,endNode:f,endNodeIndex:h,innerNodes:j,match:i.text,matchIndex:m}),k-=f.length-h,e=null,f=null,j=[],i=c.shift(),m++,!i)break}else if(y[l.nodeName]&&!x[l.nodeName]||!l.firstChild){if(l.nextSibling){l=l.nextSibling;continue}}else if(!a(l)){l=l.firstChild;continue}for(;;){if(l.nextSibling){l=l.nextSibling;break}if(l.parentNode===b)break a;l=l.parentNode}}}function g(a){function b(b,c){var d=A[c];d.stencil||(d.stencil=a(d));var e=d.stencil.cloneNode(!1);return e.setAttribute("data-mce-index",c),b&&e.appendChild(B.doc.createTextNode(b)),e}return function(a){var c,d,e,f=a.startNode,g=a.endNode,h=a.matchIndex,i=B.doc;if(f===g){var j=f;e=j.parentNode,a.startNodeIndex>0&&(c=i.createTextNode(j.data.substring(0,a.startNodeIndex)),e.insertBefore(c,j));var k=b(a.match,h);return e.insertBefore(k,j),a.endNodeIndex0&&d.insertNode(c.dom.doc.createTextNode(b)),d}function u(){return A.splice(0,A.length),o(),this}var v,w,x,y,z,A=[],B=c.dom;return x=c.schema.getBlockElements(),y=c.schema.getWhiteSpaceElements(),z=c.schema.getShortEndedElements(),w=e(b),{text:w,matches:A,each:l,filter:k,reset:u,matchFromElement:p,elementFromMatch:q,find:n,add:r,wrap:m,unwrap:o,replace:t,rangeFromMatch:s,indexOf:j}}}),h("9",tinymce.util.Tools.resolve),g("2",["9"],function(a){return a("tinymce.PluginManager")}),g("3",["9"],function(a){return a("tinymce.util.Tools")}),g("4",["9"],function(a){return a("tinymce.ui.Menu")}),g("5",["9"],function(a){return a("tinymce.dom.DOMUtils")}),g("6",["9"],function(a){return a("tinymce.util.XHR")}),g("7",["9"],function(a){return a("tinymce.util.URI")}),g("8",["9"],function(a){return a("tinymce.util.JSON")}),g("0",["1","2","3","4","5","6","7","8"],function(a,b,c,d,e,f,g,h){return b.add("spellchecker",function(i,j){function k(){return F.textMatcher||(F.textMatcher=new a(i.getBody(),i)),F.textMatcher}function l(a,b){var d=[];return c.each(b,function(a){d.push({selectable:!0,text:a.name,data:a.value})}),d}function m(a){for(var b in a)return!1;return!0}function n(a,b){var f=[],g=B[a];c.each(g,function(a){f.push({text:a,onclick:function(){i.insertContent(i.dom.encode(a)),i.dom.remove(b),s()}})}),f.push({text:"-"}),E&&f.push({text:"Add to Dictionary",onclick:function(){t(a,b)}}),f.push.apply(f,[{text:"Ignore",onclick:function(){u(a,b)}},{text:"Ignore all",onclick:function(){u(a,b,!0)}}]),D=new d({items:f,context:"contextmenu",onautohide:function(a){a.target.className.indexOf("spellchecker")!=-1&&a.preventDefault()},onhide:function(){D.remove(),D=null}}),D.renderTo(document.body);var h=e.DOM.getPos(i.getContentAreaContainer()),j=i.dom.getPos(b[0]),k=i.dom.getRoot();"BODY"==k.nodeName?(j.x-=k.ownerDocument.documentElement.scrollLeft||k.scrollLeft,j.y-=k.ownerDocument.documentElement.scrollTop||k.scrollTop):(j.x-=k.scrollLeft,j.y-=k.scrollTop),h.x+=j.x,h.y+=j.y,D.moveTo(h.x,h.y+b[0].offsetHeight)}function o(){return i.getParam("spellchecker_wordchar_pattern")||new RegExp('[^\\s!"#$%&()*+,-./:;<=>?@[\\]^_{|}`\xa7\xa9\xab\xae\xb1\xb6\xb7\xb8\xbb\xbc\xbd\xbe\xbf\xd7\xf7\xa4\u201d\u201c\u201e\xa0\u2002\u2003\u2009]+',"g")}function p(a,b,d,e){var k={method:a,lang:G.spellchecker_language},l="";k["addToDictionary"==a?"word":"text"]=b,c.each(k,function(a,b){l&&(l+="&"),l+=b+"="+encodeURIComponent(a)}),f.send({url:new g(j).toAbsolute(G.spellchecker_rpc_url),type:"post",content_type:"application/x-www-form-urlencoded",data:l,success:function(a){if(a=h.parse(a))a.error?e(a.error):d(a);else{var b=i.translate("Server response wasn't proper JSON.");e(b)}},error:function(){var a=i.translate("The spelling service was not found: (")+G.spellchecker_rpc_url+i.translate(")");e(a)}})}function q(a,b,c,d){var e=G.spellchecker_callback||p;e.call(F,a,b,c,d)}function r(){function a(a){i.notificationManager.open({text:a,type:"error"}),i.setProgressState(!1),v()}v()||(i.setProgressState(!0),q("spellcheck",k().text,z,a),i.focus())}function s(){i.dom.select("span.mce-spellchecker-word").length||v()}function t(a,b){i.setProgressState(!0),q("addToDictionary",a,function(){i.setProgressState(!1),i.dom.remove(b,!0),s()},function(a){i.notificationManager.open({text:a,type:"error"}),i.setProgressState(!1)})}function u(a,b,d){i.selection.collapse(),d?c.each(i.dom.select("span.mce-spellchecker-word"),function(b){b.getAttribute("data-mce-word")==a&&i.dom.remove(b,!0)}):i.dom.remove(b,!0),s()}function v(){if(k().reset(),F.textMatcher=null,C)return C=!1,i.fire("SpellcheckEnd"),!0}function w(a){var b=a.getAttribute("data-mce-index");return"number"==typeof b?""+b:b}function x(a){var b,d=[];if(b=c.toArray(i.getBody().getElementsByTagName("span")),b.length)for(var e=0;e0){var d=i.dom.createRng();d.setStartBefore(c[0]),d.setEndAfter(c[c.length-1]),i.selection.setRng(d),n(b.getAttribute("data-mce-word"),c)}}}),i.addMenuItem("spellchecker",{text:"Spellcheck",context:"tools",onclick:r,selectable:!0,onPostRender:function(){var a=this;a.active(C),i.on("SpellcheckStart SpellcheckEnd",function(){a.active(C)})}});var I={tooltip:"Spellcheck",onclick:r,onPostRender:function(){var a=this;i.on("SpellcheckStart SpellcheckEnd",function(){a.active(C)})}};A.length>1&&(I.type="splitbutton",I.menu=A,I.onshow=y,I.onselect=function(a){G.spellchecker_language=a.control.settings.data}),i.addButton("spellchecker",I),i.addCommand("mceSpellCheck",r),i.on("remove",function(){D&&(D.remove(),D=null)}),i.on("change",s),this.getTextMatcher=k,this.getWordCharPattern=o,this.markErrors=z,this.getLanguage=function(){return G.spellchecker_language},G.spellchecker_language=G.spellchecker_language||G.language||"en"}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/tabfocus/plugin.min.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/tabfocus/plugin.min.js new file mode 100644 index 0000000..b0c95f8 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/tabfocus/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i0){for(l=h+1;l=0;l--)if(g(j[l]))return j[l];return null}var h,j,k,l;if(!(9!==b.keyCode||b.ctrlKey||b.altKey||b.metaKey||b.isDefaultPrevented())&&(k=c.explode(a.getParam("tab_focus",a.getParam("tabfocus_elements",":prev,:next"))),1==k.length&&(k[1]=k[0],k[0]=":prev"),j=b.shiftKey?":prev"==k[0]?g(-1):i.get(k[0]):":next"==k[1]?g(1):i.get(k[1]))){var m=d.get(j.id||j.name);j.id&&m?m.focus():e.setTimeout(function(){f.webkit||window.focus(),j.focus()},10),b.preventDefault()}}var i=b.DOM;a.on("init",function(){a.inline&&i.setAttrib(a.getBody(),"tabIndex",null),a.on("keyup",g),f.gecko?a.on("keypress keydown",h):a.on("keydown",h)})}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/table/plugin.min.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/table/plugin.min.js new file mode 100644 index 0000000..b9d5079 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/table/plugin.min.js @@ -0,0 +1,2 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i9)&&(b.hasChildNodes()||(b.innerHTML='
'))}var c=function(a){return function(b,c){b&&(c=parseInt(c,10),1===c||0===c?b.removeAttribute(a,1):b.setAttribute(a,c,1))}},d=function(a){return function(b){return parseInt(b.getAttribute(a)||1,10)}};return{setColSpan:c("colSpan"),setRowSpan:c("rowspan"),getColSpan:d("colSpan"),getRowSpan:d("rowSpan"),setSpanVal:function(a,b,d){c(b)(a,d)},getSpanVal:function(a,b){return d(b)(a)},paddCell:b}}),g("c",["6","b"],function(a,b){var c=function(a,b,c){return a[c]?a[c][b]:null},d=function(a,b,d){var e=c(a,b,d);return e?e.elm:null},e=function(a,b,e,f){var g,h,i=0,j=d(a,b,e);for(g=e;(f>0?g=0)&&(h=c(a,b,g),j===h.elm);g+=f)i++;return i},f=function(a,b,c){for(var d,e=a[c],f=b;f'),!1},"childNodes"),d=q(d,!1),p(d),g(d,"rowSpan",1),g(d,"colSpan",1),f?d.appendChild(f):c.paddCell(d),d}function z(){var a,b=ca.createRng();return e(ca.select("tr",i),function(a){0===a.cells.length&&ca.remove(a)}),0===ca.select("tr",i).length?(b.setStartBefore(i),b.setEndBefore(i),ba.setRng(b),void ca.remove(i)):(e(ca.select("thead,tbody,tfoot",i),function(a){0===a.rows.length&&ca.remove(a)}),n(),void(_&&(a=Z[Math.min(Z.length-1,_.y)],a&&(ba.select(a[Math.min(a.length-1,_.x)].elm,!0),ba.collapse(!0)))))}function A(a,b,c,d){var e,f,g,h,i;for(e=Z[b][a].elm.parentNode,g=1;g<=c;g++)if(e=ca.getNext(e,"tr")){for(f=a;f>=0;f--)if(i=Z[b+g][f].elm,i.parentNode==e){for(h=1;h<=d;h++)ca.insertAfter(y(i),i);break}if(f==-1)for(h=1;h<=d;h++)e.insertBefore(y(e.cells[0]),e.cells[0])}}function B(){e(Z,function(a,b){e(a,function(a,c){var d,e,h;if(u(a)&&(a=a.elm,d=f(a,"colspan"),e=f(a,"rowspan"),d>1||e>1)){for(g(a,"rowSpan",1),g(a,"colSpan",1),h=0;hc)&&d.push(a[e]);return d}function D(b){return a.grep(b,function(a){return a.real===!1})}function E(a){for(var b=[],c=0;c1&&(x=1),g(o,"colSpan",w),g(o,"rowSpan",x),m=i;m<=k;m++)for(l=h;l<=j;l++)Z[m]&&Z[m][l]&&(b=Z[m][l].elm,b!=o&&(q=a.grep(b.childNodes),e(q,function(a){o.appendChild(a)}),q.length&&(q=a.grep(o.childNodes),s=0,e(q,function(a){"BR"==a.nodeName&&s++0&&Z[b-1][h]&&(l=Z[b-1][h].elm,m=f(l,"rowSpan"),m>1)){g(l,"rowSpan",m+1);continue}}else if(m=f(c,"rowspan"),m>1){g(c,"rowSpan",m+1);continue}k=y(c),g(k,"colSpan",c.colSpan),j.appendChild(k),d=c}j.hasChildNodes()&&(a?i.parentNode.insertBefore(j,i):ca.insertAfter(j,i))}}function J(a,b){b=b||v().length||1;for(var c=0;c1?g(c,"colSpan",b-1):ca.remove(c)}),b.push(d))})}),z()}function P(){function a(a){var b,c;e(a.cells,function(a){var c=f(a,"rowSpan");c>1&&(g(a,"rowSpan",c-1),b=T(a),A(b.x,b.y,1,1))}),b=T(a.cells[0]),e(Z[b.y],function(a){var b;a=a.elm,a!=c&&(b=f(a,"rowSpan"),b<=1?ca.remove(a):g(a,"rowSpan",b-1),c=a)})}var b;b=v(),l(i)&&b.length==i.rows.length||(e(b.reverse(),function(b){a(b)}),z())}function Q(){var a=v();if(!l(i)||a.length!=i.rows.length)return ca.remove(a),z(),a}function R(){var a=v();return e(a,function(b,c){a[c]=q(b,!0)}),a}function S(b,c){var h,i,j,l=[];b&&(h=d.splitAt(Z,_.x,_.y,c),i=h.row,a.each(h.cells,p),j=a.map(b,function(a){return a.cloneNode(!0)}),e(j,function(a,b,d){var h,j,k,m,n=a.cells.length,q=0;for(o(a),h=0;h1&&(q--,b+k>d.length?(k=d.length-b,g(j,"rowSpan",k),l.push(d.length-1)):l.push(b+k-1)),p(j);for(e(l,function(a){b<=a&&q++}),h=q;h<$;h++)a.appendChild(y(a.cells[n-1]));for(h=$;h1?g(j,"colSpan",m-1):ca.remove(j);c?i.parentNode.insertBefore(a,i):i=ca.insertAfter(a,i)}),k())}function T(a){var b;return e(Z,function(c,d){return e(c,function(c,e){if(c.elm==a)return b={x:e,y:d},!1}),!b}),b}function U(a){_=T(a)}function V(){var a,b;return a=b=0,e(Z,function(c,d){e(c,function(c,e){var f,g;u(c)&&(c=Z[d][e],e>a&&(a=e),d>b&&(b=d),c.real&&(f=c.colspan-1,g=c.rowspan-1,f&&e+f>a&&(a=e+f),g&&d+g>b&&(b=d+g)))})}),{x:a,y:b}}function W(a){var b,c,d,e,f,g,h,i,j,l;if(aa=T(a),_&&aa){for(b=Math.min(_.x,aa.x),c=Math.min(_.y,aa.y),d=Math.max(_.x,aa.x),e=Math.max(_.y,aa.y),f=d,g=e,l=c;l<=e;l++)for(j=b;j<=d;j++)a=Z[l][j],a.real&&(h=a.colspan-1,i=a.rowspan-1,h&&j+h>f&&(f=j+h),i&&l+i>g&&(g=l+i));for(k(),l=c;l<=g;l++)for(j=b;j<=f;j++)Z[l][j]&&ca.setAttrib(Z[l][j].elm,"data-mce-selected","1")}}function X(a,b){var c,d,e;c=T(a),d=c.y*$+c.x;do{if(d+=b,e=r(d%$,Math.floor(d/$)),!e)break;if(e.elm!=a)return ba.select(e.elm,!0),ca.isEmpty(e.elm)&&ba.collapse(!0),!0}while(e.elm==a);return!1}function Y(b){if(_){var c=d.splitAt(Z,_.x,_.y,b);a.each(c.cells,p)}}var Z,$,_,aa,ba=h.selection,ca=ba.dom;i=i||ca.getParent(ba.getStart(!0),"table"),n(),j=j||ca.getParent(ba.getStart(!0),"th,td"),j&&(_=T(j),aa=V(),j=r(_.x,_.y)),a.extend(this,{deleteTable:x,split:B,merge:H,insertRow:I,insertRows:J,insertCol:K,insertCols:L,splitCols:Y,deleteCols:O,deleteRows:P,cutRows:Q,copyRows:R,pasteRows:S,getPos:T,setStartCell:U,setEndCell:W,moveRelIdx:X,refresh:n})}}),g("d",["a"],function(a){return a("tinymce.util.VK")}),g("e",["a"],function(a){return a("tinymce.util.Delay")}),g("2",["d","e","8","6","b"],function(a,b,c,d,e){var f=d.each,g=e.getSpanVal;return function(h){function i(){function c(c){function d(a,b){var d=a?"previousSibling":"nextSibling",f=h.dom.getParent(b,"tr"),g=f[d];if(g)return r(h,b,g,a),c.preventDefault(),!0;var i=h.dom.getParent(f,"table"),l=f.parentNode,m=l.nodeName.toLowerCase();if("tbody"===m||m===(a?"tfoot":"thead")){var n=e(a,i,l,"tbody");if(null!==n)return j(a,n,b)}return k(a,f,d,i)}function e(a,b,c,d){var e=h.dom.select(">"+d,b),f=e.indexOf(c);if(a&&0===f||!a&&f===e.length-1)return i(a,b);if(f===-1){var g="thead"===c.tagName.toLowerCase()?0:e.length-1;return e[g]}return e[f+(a?-1:1)]}function i(a,b){var c=a?"thead":"tfoot",d=h.dom.select(">"+c,b);return 0!==d.length?d[0]:null}function j(a,b,d){var e=l(b,a);return e&&r(h,d,e,a),c.preventDefault(),!0}function k(a,b,e,f){var g=f[e];if(g)return m(g),!0;var i=h.dom.getParent(f,"td,th");if(i)return d(a,i,c);var j=l(b,!a);return m(j),c.preventDefault(),!1}function l(a,b){var c=a&&a[b?"lastChild":"firstChild"];return c&&"BR"===c.nodeName?h.dom.getParent(c,"td,th"):c}function m(a){h.selection.setCursorLocation(a,0)}function n(){return u==a.UP||u==a.DOWN}function o(a){var b=a.selection.getNode(),c=a.dom.getParent(b,"tr");return null!==c}function p(a){for(var b=0,c=a;c.previousSibling;)c=c.previousSibling,b+=g(c,"colspan");return b}function q(a,b){var c=0,d=0;return f(a.children,function(a,e){if(c+=g(a,"colspan"),d=e,c>b)return!1}),d}function r(a,b,c,d){var e=p(h.dom.getParent(b,"td,th")),f=q(c,e),g=c.childNodes[f],i=l(g,d);m(i||g)}function s(a){var b=h.selection.getNode(),c=h.dom.getParent(b,"td,th"),d=h.dom.getParent(a,"td,th");return c&&c!==d&&t(c,d)}function t(a,b){return h.dom.getParent(a,"TABLE")===h.dom.getParent(b,"TABLE")}var u=c.keyCode;if(n()&&o(h)){var v=h.selection.getNode();b.setEditorTimeout(h,function(){s(v)&&d(!c.shiftKey&&u===a.UP,v,c)},0)}}h.on("KeyDown",function(a){c(a)})}function j(){function a(a,b){var c,d=b.ownerDocument,e=d.createRange();return e.setStartBefore(b),e.setEnd(a.endContainer,a.endOffset),c=d.createElement("body"),c.appendChild(e.cloneContents()),0===c.innerHTML.replace(/<(br|img|object|embed|input|textarea)[^>]*>/gi,"-").replace(/<[^>]+>/g,"").length}h.on("KeyDown",function(b){var c,d,e=h.dom;37!=b.keyCode&&38!=b.keyCode||(c=h.selection.getRng(),d=e.getParent(c.startContainer,"table"),d&&h.getBody().firstChild==d&&a(c,d)&&(c=e.createRng(),c.setStartBefore(d),c.setEndBefore(d),h.selection.setRng(c),b.preventDefault()))})}function k(){h.on("KeyDown SetContent VisualAid",function(){var a;for(a=h.getBody().lastChild;a;a=a.previousSibling)if(3==a.nodeType){if(a.nodeValue.length>0)break}else if(1==a.nodeType&&("BR"==a.tagName||!a.getAttribute("data-mce-bogus")))break;a&&"TABLE"==a.nodeName&&(h.settings.forced_root_block?h.dom.add(h.getBody(),h.settings.forced_root_block,h.settings.forced_root_block_attrs,c.ie&&c.ie<10?" ":'
'):h.dom.add(h.getBody(),"br",{"data-mce-bogus":"1"}))}),h.on("PreProcess",function(a){var b=a.node.lastChild;b&&("BR"==b.nodeName||1==b.childNodes.length&&("BR"==b.firstChild.nodeName||"\xa0"==b.firstChild.nodeValue))&&b.previousSibling&&"TABLE"==b.previousSibling.nodeName&&h.dom.remove(b)})}function l(){function a(a,b,c,d){var e,f,g,h=3,i=a.dom.getParent(b.startContainer,"TABLE");return i&&(e=i.parentNode),f=b.startContainer.nodeType==h&&0===b.startOffset&&0===b.endOffset&&d&&("TR"==c.nodeName||c==e),g=("TD"==c.nodeName||"TH"==c.nodeName)&&!d,f||g}function b(){var b=h.selection.getRng(),c=h.selection.getNode(),d=h.dom.getParent(b.startContainer,"TD,TH");if(a(h,b,c,d)){d||(d=c);for(var e=d.lastChild;e.lastChild;)e=e.lastChild;3==e.nodeType&&(b.setEnd(e,e.data.length),h.selection.setRng(b))}}h.on("KeyDown",function(){b()}),h.on("MouseDown",function(a){2!=a.button&&b()})}function m(){function b(a){h.selection.select(a,!0),h.selection.collapse(!0)}function c(a){h.$(a).empty(),e.paddCell(a)}h.on("keydown",function(e){if((e.keyCode==a.DELETE||e.keyCode==a.BACKSPACE)&&!e.isDefaultPrevented()){var f,g,i,j;if(f=h.dom.getParent(h.selection.getStart(),"table")){if(g=h.dom.select("td,th",f),i=d.grep(g,function(a){return!!h.dom.getAttrib(a,"data-mce-selected")}),0===i.length)return j=h.dom.getParent(h.selection.getStart(),"td,th"),void(h.selection.isCollapsed()&&j&&h.dom.isEmpty(j)&&(e.preventDefault(),c(j),b(j)));e.preventDefault(),h.undoManager.transact(function(){g.length==i.length?h.execCommand("mceTableDelete"):(d.each(i,c),b(i[0]))})}}})}function n(){var b="\ufeff",c=function(a){return h.dom.isEmpty(a)||a.firstChild===a.lastChild&&f(a.firstChild)},d=function(a){return a&&"CAPTION"==a.nodeName&&"TABLE"==a.parentNode.nodeName},e=function(a,b){var c=b.firstChild;do if(c===a)return!0;while(c=c.firstChild);return!1},f=function(a){if(3===a.nodeType){if(a.data===b)return!0;a=a.parentNode}return 1===a.nodeType&&a.hasAttribute("data-mce-caret")},g=function(a){var b=h.selection.getRng();return!b.startOffset&&!b.startContainer.previousSibling&&e(b.startContainer,a)},i=function(a,c){var d;d=c?h.dom.create("p",{"data-mce-caret":"after","data-mce-bogus":"all"},'
'):a.ownerDocument.createTextNode(b),a.appendChild(d)},j=function(a,d){var e=a.lastChild,g=h.selection.getRng(),j=g.startContainer,k=g.startOffset;c(a)?(a.innerHTML=b,j=a.lastChild,k=0):f(e)||i(a,h.dom.isBlock(e)),h.selection.setCursorLocation(j,k)},k=function(a){var b=h.selection.getRng(),c=h.dom.createRng(),d=a.firstChild;b.commonAncestorContainer===a.parentNode&&e(b.startContainer,a)&&(c.setStart(a,0),1===d.nodeType?c.setEnd(a,a.childNodes.length):c.setEnd(d,d.nodeValue.length),h.selection.setRng(c))};h.on("keydown",function(b){if(!(b.keyCode!==a.DELETE&&b.keyCode!==a.BACKSPACE||b.isDefaultPrevented())){var e=h.dom.getParent(h.selection.getStart(),"caption");d(e)&&(h.selection.isCollapsed()?(j(e),(c(e)||b.keyCode===a.BACKSPACE&&g(e))&&b.preventDefault()):(k(e),h.undoManager.transact(function(){h.execCommand("Delete"),j(e)}),b.preventDefault()))}})}n(),m(),c.webkit&&(i(),l()),c.gecko&&(j(),k()),c.ie>9&&(j(),k())}}),g("7",["a"],function(a){return a("tinymce.dom.TreeWalker")}),g("3",["1","7","6"],function(a,b,c){return function(d,e){function f(a){d.getBody().style.webkitUserSelect="",(a||p)&&(d.$("td[data-mce-selected],th[data-mce-selected]").removeAttr("data-mce-selected"),p=!1)}function g(a,b){return!(!a||!b)&&a===o.getParent(b,"table")}function h(b){var c,f,h=b.target;if(!m&&!n&&h!==l&&(l=h,k&&j)){if(f=o.getParent(h,"td,th"),g(k,f)||(f=o.getParent(k,"td,th")),j===f&&!p)return;if(e(!0),g(k,f)){b.preventDefault(),i||(i=new a(d,k,j),d.getBody().style.webkitUserSelect="none"),i.setEndCell(f),p=!0,c=d.selection.getSel();try{c.removeAllRanges?c.removeAllRanges():c.empty()}catch(a){}}}}var i,j,k,l,m,n,o=d.dom,p=!0,q=function(){j=i=k=l=null,e(!1)};return d.on("SelectionChange",function(a){p&&a.stopImmediatePropagation()},!0),d.on("MouseDown",function(a){2==a.button||m||n||(f(),j=o.getParent(a.target,"td,th"),k=o.getParent(j,"table"))}),d.on("mouseover",h),d.on("remove",function(){o.unbind(d.getDoc(),"mouseover",h),f()}),d.on("MouseUp",function(){function a(a,d){var f=new b(a,a);do{if(3==a.nodeType&&0!==c.trim(a.nodeValue).length)return void(d?e.setStart(a,0):e.setEnd(a,a.nodeValue.length));if("BR"==a.nodeName)return void(d?e.setStartBefore(a):e.setEndBefore(a))}while(a=d?f.next():f.prev())}var e,f,g,h,k,l=d.selection;if(j){if(i&&(d.getBody().style.webkitUserSelect=""),f=o.select("td[data-mce-selected],th[data-mce-selected]"),f.length>0){e=o.createRng(),h=f[0],e.setStartBefore(h),e.setEndAfter(h),a(h,1),g=new b(h,o.getParent(f[0],"table"));do if("TD"==h.nodeName||"TH"==h.nodeName){if(!o.getAttrib(h,"data-mce-selected"))break;k=h}while(h=g.next());a(k),l.setRng(e)}d.nodeChanged(),q()}}),d.on("KeyUp Drop SetContent",function(a){f("setcontent"==a.type),q(),m=!1}),d.on("ObjectResizeStart ObjectResized",function(a){m="objectresized"!=a.type}),d.on("dragstart",function(){n=!0}),d.on("drop dragend",function(){n=!1}),{clear:f}}}),g("4",["6","8"],function(a,b){var c=a.each;return function(d){function e(){var a=d.settings.color_picker_callback;if(a)return function(){var b=this;a.call(d,function(a){b.value(a).fire("change")},b.value())}}function f(a){return{title:"Advanced",type:"form",defaults:{onchange:function(){l(a,this.parents().reverse()[0],"style"==this.name())}},items:[{label:"Style",name:"style",type:"textbox"},{type:"form",padding:0,formItemDefaults:{layout:"grid",alignH:["start","right"]},defaults:{size:7},items:[{label:"Border color",type:"colorbox",name:"borderColor",onaction:e()},{label:"Background color",type:"colorbox",name:"backgroundColor",onaction:e()}]}]}}function g(a){return a?a.replace(/px$/,""):""}function h(a){return/^[0-9]+$/.test(a)&&(a+="px"),a}function i(a){c("left center right".split(" "),function(b){d.formatter.remove("align"+b,{},a)})}function j(a){c("top middle bottom".split(" "),function(b){d.formatter.remove("valign"+b,{},a)})}function k(b,c,d){function e(b,d){return d=d||[],a.each(b,function(a){var b={text:a.text||a.title};a.menu?b.menu=e(a.menu):(b.value=a.value,c&&c(b)),d.push(b)}),d}return e(b,d||[])}function l(a,b,c){var d=b.toJSON(),e=a.parseStyle(d.style);c?(b.find("#borderColor").value(e["border-color"]||"")[0].fire("change"),b.find("#backgroundColor").value(e["background-color"]||"")[0].fire("change")):(e["border-color"]=d.borderColor,e["background-color"]=d.backgroundColor),b.find("#style").value(a.serializeStyle(a.parseStyle(a.serializeStyle(e))))}function m(a,b,c){var d=a.parseStyle(a.getAttrib(c,"style"));d["border-color"]&&(b.borderColor=d["border-color"]),d["background-color"]&&(b.backgroundColor=d["background-color"]),b.style=a.serializeStyle(d)}function n(a,b,d){var e=a.parseStyle(a.getAttrib(b,"style"));c(d,function(a){e[a.name]=a.value}),a.setAttrib(b,"style",a.serializeStyle(a.parseStyle(a.serializeStyle(e))))}var o=this;o.tableProps=function(){o.table(!0)},o.table=function(e){function j(){function c(a,b,d){if("TD"===a.tagName||"TH"===a.tagName)v.setStyle(a,b,d);else if(a.children)for(var e=0;e',p.insertBefore(e,p.firstChild)),i(p),w.align&&d.formatter.apply("align"+w.align,{},p),d.focus(),d.addVisual()})}function o(a,b){function c(a,c){for(var d=0;d1?p={width:"",height:"",scope:"","class":"",align:"",style:"",type:o.nodeName.toLowerCase()}:(p={width:g(r.getStyle(o,"width")||r.getAttrib(o,"width")),height:g(r.getStyle(o,"height")||r.getAttrib(o,"height")),scope:r.getAttrib(o,"scope"),"class":r.getAttrib(o,"class")},p.type=o.nodeName.toLowerCase(),c("left center right".split(" "),function(a){d.formatter.matchNode(o,"align"+a)&&(p.align=a)}),c("top middle bottom".split(" "),function(a){d.formatter.matchNode(o,"valign"+a)&&(p.valign=a)}),m(r,p,o)),d.settings.table_cell_class_list&&(q={name:"class",type:"listbox",label:"Class",values:k(d.settings.table_cell_class_list,function(a){a.value&&(a.textStyle=function(){return d.formatter.getCssText({block:"td",classes:[a.value]})})})});var t={type:"form",layout:"flex",direction:"column",labelGapCalc:"children",padding:0,items:[{type:"form",layout:"grid",columns:2,labelGapCalc:!1,padding:0,defaults:{type:"textbox",maxWidth:50},items:[{label:"Width",name:"width"},{label:"Height",name:"height"},{label:"Cell type",name:"type",type:"listbox",text:"None",minWidth:90,maxWidth:null,values:[{text:"Cell",value:"td"},{text:"Header cell",value:"th"}]},{label:"Scope",name:"scope",type:"listbox",text:"None",minWidth:90,maxWidth:null,values:[{text:"None",value:""},{text:"Row",value:"row"},{text:"Column",value:"col"},{text:"Row group",value:"rowgroup"},{text:"Column group",value:"colgroup"}]},{label:"H Align",name:"align",type:"listbox",text:"None",minWidth:90,maxWidth:null,values:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]},{label:"V Align",name:"valign",type:"listbox",text:"None",minWidth:90,maxWidth:null,values:[{text:"None",value:""},{text:"Top",value:"top"},{text:"Middle",value:"middle"},{text:"Bottom",value:"bottom"}]}]},q]};d.settings.table_cell_advtab!==!1?d.windowManager.open({title:"Cell properties",bodyType:"tabpanel",data:p,body:[{title:"General",type:"form",items:t},f(r)],onsubmit:n}):d.windowManager.open({title:"Cell properties",data:p,body:t,onsubmit:n})}},o.row=function(){function b(a,b,c){(1===u.length||c)&&t.setAttrib(a,b,c)}function e(a,b,c){(1===u.length||c)&&t.setStyle(a,b,c)}function j(){var f,g,j;l(t,this),r=a.extend(r,this.toJSON()),d.undoManager.transact(function(){var a=r.type;c(u,function(c){b(c,"scope",r.scope),b(c,"style",r.style),b(c,"class",r["class"]),e(c,"height",h(r.height)),a!==c.parentNode.nodeName.toLowerCase()&&(f=t.getParent(c,"table"),g=c.parentNode,j=t.select(a,f)[0],j||(j=t.create(a),f.firstChild?f.insertBefore(j,f.firstChild):f.appendChild(j)),j.appendChild(c),g.hasChildNodes()||t.remove(g)),1===u.length&&i(c),r.align&&d.formatter.apply("align"+r.align,{},c)}),d.focus()})}var n,o,p,q,r,s,t=d.dom,u=[];n=d.dom.getParent(d.selection.getStart(),"table"),o=d.dom.getParent(d.selection.getStart(),"td,th"),c(n.rows,function(a){c(a.cells,function(b){if(t.getAttrib(b,"data-mce-selected")||b==o)return u.push(a),!1})}),p=u[0],p&&(u.length>1?r={height:"",scope:"","class":"",align:"",type:p.parentNode.nodeName.toLowerCase()}:(r={height:g(t.getStyle(p,"height")||t.getAttrib(p,"height")),scope:t.getAttrib(p,"scope"),"class":t.getAttrib(p,"class")},r.type=p.parentNode.nodeName.toLowerCase(),c("left center right".split(" "),function(a){d.formatter.matchNode(p,"align"+a)&&(r.align=a)}),m(t,r,p)),d.settings.table_row_class_list&&(q={name:"class",type:"listbox",label:"Class",values:k(d.settings.table_row_class_list,function(a){a.value&&(a.textStyle=function(){return d.formatter.getCssText({block:"tr",classes:[a.value]})})})}),s={type:"form",columns:2,padding:0,defaults:{type:"textbox"},items:[{type:"listbox",name:"type",label:"Row type",text:"Header",maxWidth:null,values:[{text:"Header",value:"thead"},{text:"Body",value:"tbody"},{text:"Footer",value:"tfoot"}]},{type:"listbox",name:"align",label:"Alignment",text:"None",maxWidth:null,values:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]},{label:"Height",name:"height"},q]},d.settings.table_row_advtab!==!1?d.windowManager.open({title:"Row properties",data:r,bodyType:"tabpanel",body:[{title:"General",type:"form",items:s},f(t)],onsubmit:j}):d.windowManager.open({title:"Row properties",data:r,body:s,onsubmit:j}))}}}),g("5",["6","d"],function(a,b){var c;return function(d){function e(a,b){return{index:a,y:d.dom.getPos(b).y}}function f(a,b){return{index:a,y:d.dom.getPos(b).y+b.offsetHeight}}function g(a,b){return{index:a,x:d.dom.getPos(b).x}}function h(a,b){return{index:a,x:d.dom.getPos(b).x+b.offsetWidth}}function i(){var a=d.getBody().dir;return"rtl"===a}function j(){return d.inline}function k(){return j?d.getBody().ownerDocument.body:d.getBody()}function l(a,b){return i()?h(a,b):g(a,b)}function m(a,b){return i()?g(a,b):h(a,b)}function n(a,b){return o(a,"width")/o(b,"width")*100}function o(a,b){var c=d.dom.getStyle(a,b,!0),e=parseInt(c,10);return e}function p(a){var b=o(a,"width"),c=o(a.parentElement,"width");return b/c*100}function q(a,b){var c=o(a,"width");return b/c*100}function r(a,b){var c=o(a.parentElement,"width");return b/c*100}function s(a,b,c){for(var d=[],e=1;e0?s(e,f,g):[],k=h.length>0?s(l,m,h):[];w(j,a.offsetWidth,i),x(k,a.offsetHeight,i)}function F(a,b,c,d){if(b<0||b>=a.length-1)return"";var e=a[b];if(e)e={value:e,delta:0};else for(var f=a.slice(0,b).reverse(),g=0;g0?e:f}function I(b,c,d){for(var e=C(b),f=a.map(e,function(a){return l(a.colIndex,a.element).x}),g=[],h=0;h1?F(f,h):H(e[h].element,c,d);j=j?j:va,g.push(j)}return g}function J(a){var b=G(a,"height"),c=parseInt(b,10);return Q(b)&&(c=0),!isNaN(c)&&c>0?c:o(a,"height")}function K(b){for(var c=D(b),d=a.map(c,function(a){return e(a.rowIndex,a.element).y}),f=[],g=0;g1?F(d,g):J(c[g].element);i=i?i:wa,f.push(i)}return f}function L(b,c,d,e,f){function g(b){return a.map(b,function(){return 0})}function h(){var a;if(f)a=[100-l[0]];else{var b=Math.max(e,l[0]+d);a=[b-l[0]]}return a}function i(a,b){var c,f=g(l.slice(0,a)),h=g(l.slice(b+1));if(d>=0){var i=Math.max(e,l[b]-d);c=f.concat([d,i-l[b]]).concat(h)}else{var j=Math.max(e,l[a]+d),k=l[a]-j;c=f.concat([j-l[a],k]).concat(h)}return c}function j(a,b){var c,f=g(l.slice(0,b));if(d>=0)c=f.concat([d]);else{var h=Math.max(e,l[b]+d);c=f.concat([h-l[b]])}return c}var k,l=b.slice(0);return k=0===b.length?[]:1===b.length?h():0===c?i(0,1):c>0&&c=1&&S(c,b,a)}else if(_(ia)){var g=parseInt(d.dom.getAttrib(ia,pa),10),h=d.dom.getPos(ia).y;a=parseInt(d.dom.getAttrib(ia,oa),10),b=h-g,Math.abs(b)>=1&&T(c,b,a)}u(c),d.nodeChanged()}}function Z(a,b){ha=ha?ha:W(),ga=!0,d.dom.addClass(a,xa),ia=a,X(ha,b),d.dom.add(k(),ha)}function $(a){return d.dom.hasClass(a,qa)}function _(a){return d.dom.hasClass(a,ma)}function aa(a){ja=void 0!==ja?ja:a.clientX;var b=a.clientX-ja;ja=a.clientX;var c=d.dom.getPos(ia).x;d.dom.setStyle(ia,"left",c+b+"px")}function ba(a){ka=void 0!==ka?ka:a.clientY;var b=a.clientY-ka;ka=a.clientY;var c=d.dom.getPos(ia).y;d.dom.setStyle(ia,"top",c+b+"px")}function ca(a){ja=void 0,Z(a,aa)}function da(a){ka=void 0,Z(a,ba)}function ea(a){var b=a.target,e=d.getBody();if(d.$.contains(e,c)||c===e)if($(b)){a.preventDefault();var f=d.dom.getPos(b).x;d.dom.setAttrib(b,ta,f),ca(b)}else if(_(b)){a.preventDefault();var g=d.dom.getPos(b).y;d.dom.setAttrib(b,pa,g),da(b)}else t()}var fa,ga,ha,ia,ja,ka,la="mce-resize-bar",ma="mce-resize-bar-row",na="row-resize",oa="data-row",pa="data-initial-top",qa="mce-resize-bar-col",ra="col-resize",sa="data-col",ta="data-initial-left",ua=4,va=10,wa=10,xa="mce-resize-bar-dragging",ya=new RegExp(/(\d+(\.\d+)?%)/),za=new RegExp(/px|em/);return d.on("init",function(){d.dom.bind(k(),"mousedown",ea)}),d.on("ObjectResized",function(b){var c=b.target;if("TABLE"===c.nodeName){var e=[];a.each(c.rows,function(b){a.each(b.cells,function(a){var b=d.dom.getStyle(a,"width",!0);e.push({cell:a,width:b})})}),a.each(e,function(a){d.dom.setStyle(a.cell,"width",a.width),d.dom.setAttrib(a.cell,"width",null)})}}),d.on("mouseover",function(a){if(!ga){var b=d.dom.getParent(a.target,"table");("TABLE"===a.target.nodeName||b)&&(c=b,u(b))}}),d.on("keydown",function(a){switch(a.keyCode){case b.LEFT:case b.RIGHT:case b.UP:case b.DOWN:t()}}),d.on("remove",function(){t(),d.dom.unbind(k(),"mousedown",ea)}),{adjustWidth:S,adjustHeight:T,clearBars:t,drawBars:E,determineDeltas:L,getTableGrid:z,getTableDetails:y,getWidths:I,getPixelHeights:K,isPercentageBasedSize:Q,isPixelBasedSize:R,recalculateWidths:N,recalculateCellHeights:O,recalculateRowHeights:P}}}),g("9",["a"],function(a){return a("tinymce.PluginManager")}),g("0",["1","2","3","4","5","6","7","8","9"],function(a,b,c,d,e,f,g,h,i){function j(f){function g(a){return function(){f.execCommand(a)}}function i(a,b){var c,d,e,g;for(e='',c=0;c",d=0;d"+(h.ie&&h.ie<10?" ":"
")+"";e+=""}return e+="
",f.undoManager.transact(function(){f.insertContent(e),g=f.dom.get("__mce"),f.dom.setAttrib(g,"id",null),f.$("tr",g).each(function(a,b){f.fire("newrow",{node:b}),f.$("th,td",b).each(function(a,b){f.fire("newcell",{node:b})})}),f.dom.setAttribs(g,f.settings.table_default_attributes||{}),f.dom.setStyles(g,f.settings.table_default_styles||{})}),g}function j(a,b,c){function d(){var d,e,g,h={},i=0;e=f.dom.select("td[data-mce-selected],th[data-mce-selected]"),d=e[0],d||(d=f.selection.getStart()),c&&e.length>0?(k(e,function(a){return h[a.parentNode.parentNode.nodeName]=1}),k(h,function(a){i+=a}),g=1!==i):g=!f.dom.getParent(d,b),a.disabled(g),f.selection.selectorChanged(b,function(b){a.disabled(!b)})}f.initialized?d():f.on("init",d)}function l(){j(this,"table")}function m(){j(this,"td,th")}function n(){j(this,"td,th",!0)}function o(){var a="";a='';for(var b=0;b<10;b++){a+="";for(var c=0;c<10;c++)a+='';a+=""}return a+="
",a+=''}function p(a,b,c){var d,e,g,h,i,j=c.getEl().getElementsByTagName("table")[0],k=c.isRtl()||"tl-tr"==c.parent().rel;for(j.nextSibling.innerHTML=a+1+" x "+(b+1),k&&(a=9-a),e=0;e<10;e++)for(d=0;d<10;d++)h=j.rows[e].childNodes[d].firstChild,i=(k?d>=a:d<=a)&&e<=b,f.dom.toggleClass(h,"mce-active",i),i&&(g=h);return g.parentNode}function q(){f.addButton("tableprops",{title:"Table properties",onclick:y.tableProps,icon:"table"}),f.addButton("tabledelete",{title:"Delete table",onclick:g("mceTableDelete")}),f.addButton("tablecellprops",{title:"Cell properties",onclick:g("mceTableCellProps")}),f.addButton("tablemergecells",{title:"Merge cells",onclick:g("mceTableMergeCells")}),f.addButton("tablesplitcells",{title:"Split cell",onclick:g("mceTableSplitCells")}),f.addButton("tableinsertrowbefore",{title:"Insert row before",onclick:g("mceTableInsertRowBefore")}),f.addButton("tableinsertrowafter",{title:"Insert row after",onclick:g("mceTableInsertRowAfter")}),f.addButton("tabledeleterow",{title:"Delete row",onclick:g("mceTableDeleteRow")}),f.addButton("tablerowprops",{title:"Row properties",onclick:g("mceTableRowProps")}),f.addButton("tablecutrow",{title:"Cut row",onclick:g("mceTableCutRow")}),f.addButton("tablecopyrow",{title:"Copy row",onclick:g("mceTableCopyRow")}),f.addButton("tablepasterowbefore",{title:"Paste row before",onclick:g("mceTablePasteRowBefore")}),f.addButton("tablepasterowafter",{title:"Paste row after",onclick:g("mceTablePasteRowAfter")}),f.addButton("tableinsertcolbefore",{title:"Insert column before",onclick:g("mceTableInsertColBefore")}),f.addButton("tableinsertcolafter",{title:"Insert column after",onclick:g("mceTableInsertColAfter")}),f.addButton("tabledeletecol",{title:"Delete column",onclick:g("mceTableDeleteCol")})}function r(a){var b=f.dom.is(a,"table")&&f.getBody().contains(a);return b}function s(){var a=f.settings.table_toolbar;""!==a&&a!==!1&&(a||(a="tableprops tabledelete | tableinsertrowbefore tableinsertrowafter tabledeleterow | tableinsertcolbefore tableinsertcolafter tabledeletecol"),f.addContextToolbar(r,a))}function t(){return v}function u(a){v=a}var v,w,x=this,y=new d(f);!f.settings.object_resizing||f.settings.table_resize_bars===!1||f.settings.object_resizing!==!0&&"table"!==f.settings.object_resizing||(w=e(f)),f.settings.table_grid===!1?f.addMenuItem("inserttable",{text:"Table",icon:"table",context:"table",onclick:y.table}):f.addMenuItem("inserttable",{text:"Table",icon:"table",context:"table",ariaHideMenu:!0,onclick:function(a){a.aria&&(this.parent().hideAll(),a.stopImmediatePropagation(),y.table())},onshow:function(){p(0,0,this.menu.items()[0])},onhide:function(){var a=this.menu.items()[0].getEl().getElementsByTagName("a");f.dom.removeClass(a,"mce-active"),f.dom.addClass(a[0],"mce-active")},menu:[{type:"container",html:o(),onPostRender:function(){this.lastX=this.lastY=0},onmousemove:function(a){var b,c,d=a.target;"A"==d.tagName.toUpperCase()&&(b=parseInt(d.getAttribute("data-mce-x"),10),c=parseInt(d.getAttribute("data-mce-y"),10),(this.isRtl()||"tl-tr"==this.parent().rel)&&(b=9-b),b===this.lastX&&c===this.lastY||(p(b,c,a.control),this.lastX=b,this.lastY=c))},onclick:function(a){var b=this;"A"==a.target.tagName.toUpperCase()&&(a.preventDefault(),a.stopPropagation(),b.parent().cancel(),f.undoManager.transact(function(){i(b.lastX+1,b.lastY+1)}),f.addVisual())}}]}),f.addMenuItem("tableprops",{text:"Table properties",context:"table",onPostRender:l,onclick:y.tableProps}),f.addMenuItem("deletetable",{text:"Delete table",context:"table",onPostRender:l,cmd:"mceTableDelete"}),f.addMenuItem("cell",{separator:"before",text:"Cell",context:"table",menu:[{text:"Cell properties",onclick:g("mceTableCellProps"),onPostRender:m},{text:"Merge cells",onclick:g("mceTableMergeCells"),onPostRender:n},{text:"Split cell",onclick:g("mceTableSplitCells"),onPostRender:m}]}),f.addMenuItem("row",{text:"Row",context:"table",menu:[{text:"Insert row before",onclick:g("mceTableInsertRowBefore"),onPostRender:m},{text:"Insert row after",onclick:g("mceTableInsertRowAfter"),onPostRender:m},{text:"Delete row",onclick:g("mceTableDeleteRow"),onPostRender:m},{text:"Row properties",onclick:g("mceTableRowProps"),onPostRender:m},{text:"-"},{text:"Cut row",onclick:g("mceTableCutRow"),onPostRender:m},{text:"Copy row",onclick:g("mceTableCopyRow"),onPostRender:m},{text:"Paste row before",onclick:g("mceTablePasteRowBefore"),onPostRender:m},{text:"Paste row after",onclick:g("mceTablePasteRowAfter"),onPostRender:m}]}),f.addMenuItem("column",{text:"Column",context:"table",menu:[{text:"Insert column before",onclick:g("mceTableInsertColBefore"),onPostRender:m},{text:"Insert column after",onclick:g("mceTableInsertColAfter"),onPostRender:m},{text:"Delete column",onclick:g("mceTableDeleteCol"),onPostRender:m}]});var z=[];k("inserttable tableprops deletetable | cell row column".split(" "),function(a){"|"==a?z.push({text:"-"}):z.push(f.menuItems[a])}),f.addButton("table",{type:"menubutton",title:"Table",menu:z}),h.isIE||f.on("click",function(a){a=a.target,"TABLE"===a.nodeName&&(f.selection.select(a),f.nodeChanged())}),x.quirks=new b(f),f.on("Init",function(){x.cellSelection=new c(f,function(a){a&&w&&w.clearBars()}),x.resizeBars=w}),f.on("PreInit",function(){f.serializer.addAttributeFilter("data-mce-cell-padding,data-mce-border,data-mce-border-color",function(a,b){for(var c=a.length;c--;)a[c].attr(b,null)})}),k({mceTableSplitCells:function(a){a.split()},mceTableMergeCells:function(a){var b;b=f.dom.getParent(f.selection.getStart(),"th,td"),f.dom.select("td[data-mce-selected],th[data-mce-selected]").length?a.merge():y.merge(a,b)},mceTableInsertRowBefore:function(a){a.insertRows(!0)},mceTableInsertRowAfter:function(a){a.insertRows()},mceTableInsertColBefore:function(a){a.insertCols(!0)},mceTableInsertColAfter:function(a){a.insertCols()},mceTableDeleteCol:function(a){a.deleteCols()},mceTableDeleteRow:function(a){a.deleteRows()},mceTableCutRow:function(a){v=a.cutRows()},mceTableCopyRow:function(a){v=a.copyRows()},mceTablePasteRowBefore:function(a){a.pasteRows(v,!0)},mceTablePasteRowAfter:function(a){a.pasteRows(v)},mceSplitColsBefore:function(a){a.splitCols(!0)},mceSplitColsAfter:function(a){a.splitCols(!1)},mceTableDelete:function(a){w&&w.clearBars(),a.deleteTable()}},function(b,c){f.addCommand(c,function(){var c=new a(f);c&&(b(c),f.execCommand("mceRepaint"),x.cellSelection.clear())})}),k({mceInsertTable:y.table,mceTableProps:function(){y.table(!0)},mceTableRowProps:y.row,mceTableCellProps:y.cell},function(a,b){f.addCommand(b,function(b,c){a(c)})}),q(),s(),f.settings.table_tab_navigation!==!1&&f.on("keydown",function(b){var c,d,e;9==b.keyCode&&(c=f.dom.getParent(f.selection.getStart(),"th,td"),c&&(b.preventDefault(),d=new a(f),e=b.shiftKey?-1:1,f.undoManager.transact(function(){!d.moveRelIdx(c,e)&&e>0&&(d.insertRow(),d.refresh(),d.moveRelIdx(c,e))})))}),x.insertTable=i,x.setClipboardRows=u,x.getClipboardRows=t}var k=f.each;return i.add("table",j),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/template/plugin.min.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/template/plugin.min.js new file mode 100644 index 0000000..e097c3f --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/template/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i")==-1){var c="";d.each(b.contentCSS,function(a){c+=''});var e=b.settings.body_class||"";e.indexOf("=")!=-1&&(e=b.getParam("body_class","","hash"),e=e[b.id]||""),a=""+c+''+a+""}a=j(a,"template_preview_replace_values");var f=g.find("iframe")[0].getEl().contentWindow.document;f.open(),f.write(a),f.close()}var f=a.control.value();f.url?e.send({url:f.url,success:function(a){h=a,c(h)}}):(h=f.content,c(h)),g.find("#description")[0].text(a.control.value().description)}var g,h,i=[];if(!c||0===c.length){var l=b.translate("No templates defined.");return void b.notificationManager.open({text:l,type:"info"})}d.each(c,function(a){i.push({selected:!i.length,text:a.title,value:{url:a.url,content:a.content,description:a.description}})}),g=b.windowManager.open({title:"Insert template",layout:"flex",direction:"column",align:"stretch",padding:15,spacing:10,items:[{type:"form",flex:0,padding:0,items:[{type:"container",label:"Templates",items:{type:"listbox",label:"Templates",name:"template",values:i,onselect:f}}]},{type:"label",name:"description",label:"Description",text:"\xa0"},{type:"iframe",flex:1,border:1}],onsubmit:function(){k(!1,h)},minWidth:Math.min(a.DOM.getViewPort().w,b.getParam("template_popup_width",600)),minHeight:Math.min(a.DOM.getViewPort().h,b.getParam("template_popup_height",500))}),g.find("listbox")[0].fire("select")}function h(a,c){function d(a,b){if(a=""+a,a.length0&&(f=k.create("div",null),f.appendChild(g[0].cloneNode(!0))),d.each(k.select("*",f),function(a){e(a,b.getParam("template_cdate_classes","cdate").replace(/\s+/g,"|"))&&(a.innerHTML=h(b.getParam("template_cdate_format",b.getLang("template.cdate_format")))),e(a,b.getParam("template_mdate_classes","mdate").replace(/\s+/g,"|"))&&(a.innerHTML=h(b.getParam("template_mdate_format",b.getLang("template.mdate_format")))),e(a,b.getParam("template_selected_content_classes","selcontent").replace(/\s+/g,"|"))&&(a.innerHTML=l)}),i(f),b.execCommand("mceInsertContent",!1,f.innerHTML),b.addVisual()}b.addCommand("mceInsertTemplate",k),b.addButton("template",{title:"Insert template",onclick:f(g)}),b.addMenuItem("template",{text:"Template",onclick:f(g),context:"insert"}),b.on("PreProcess",function(a){var c=b.dom;d.each(c.select("div",a.node),function(a){c.hasClass(a,"mceTmpl")&&(d.each(c.select("*",a),function(a){c.hasClass(a,b.getParam("template_mdate_classes","mdate").replace(/\s+/g,"|"))&&(a.innerHTML=h(b.getParam("template_mdate_format",b.getLang("template.mdate_format"))))}),i(a))})})}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/textcolor/plugin.min.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/textcolor/plugin.min.js new file mode 100644 index 0000000..4b2f012 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/textcolor/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i
'+(c?"×":"")+"
"}var c,d,g,h,i,j,k,n,o=this,p=o._id,q=0;for(n=o.settings.origin,c=f(n),c.push({text:e("No color"),color:"transparent"}),g='',h=c.length-1,j=0;j",i=0;ih?g+="":(d=c[k],g+=a(d.color,d.text));g+=""}if(b.settings.color_picker_callback){for(g+='",g+="",i=0;ib.start.length?-1:a.start.length0},e=function(b,e,f,g){var h,i,j=a(b);for(i=0;i0?a.splitText(d):a,a.splitText(c-d-e),a.deleteData(0,b.start.length),a.deleteData(a.data.length-b.end.length,b.end.length),a},e=function(a,b,e){var f,g,h,i,j,k,l,m,n,o,p;if(f=a.selection,g=a.dom,f.isCollapsed()&&(h=f.getRng(!0),i=h.startContainer,j=h.startOffset,l=i.data,o=e===!0?1:0,3==i.nodeType&&(n=c.findEndPattern(b,l,j,o),void 0!==n&&(k=Math.max(0,j-o),k=l.lastIndexOf(n.start,k-n.end.length-1),k!==-1&&(m=g.createRng(),m.setStart(i,k),m.setEnd(i,j-o),n=c.findPattern(b,m.toString()),n&&n.end&&!(i.data.length<=n.start.length+n.end.length))))))return p=a.formatter.get(n.format),p&&p[0].inline?(a.undoManager.transact(function(){i=d(i,n,j,k,o),a.formatter.apply(n.format,{},i)}),i):void 0},f=function(d,e){var f,g,h,i,j,k,l,m,n,o,p;if(f=d.selection,g=d.dom,f.isCollapsed()&&(l=g.getParent(f.getStart(),"p"))){for(n=new a(l,l);j=n.next();)if(3==j.nodeType){i=j;break}if(i){if(m=c.findPattern(e,i.data),!m)return;if(o=f.getRng(!0),h=o.startContainer,p=o.startOffset,i==h&&(p=Math.max(0,p-m.start.length)),b.trim(i.data).length==m.start.length)return;m.format&&(k=d.formatter.get(m.format),k&&k[0].block&&(i.deleteData(0,m.start.length),d.formatter.apply(m.format,{},i),o.setStart(h,p),o.collapse(!0),f.setRng(o))),m.cmd&&d.undoManager.transact(function(){i.deleteData(0,m.start.length),d.execCommand(m.cmd)})}}};return{applyInlineFormat:e,applyBlockFormat:f}}),g("5",["3","4"],function(a,b){function c(a,c){var d,e;e=b.applyInlineFormat(a,c,!1),e&&(d=a.dom.createRng(),d.setStart(e,e.data.length),d.setEnd(e,e.data.length),a.selection.setRng(d)),b.applyBlockFormat(a,c)}function d(a,c){var d,e,f,g,h;d=b.applyInlineFormat(a,c,!0),d&&(h=a.dom,e=d.data.slice(-1),/[\u00a0 ]/.test(e)&&(d.deleteData(d.data.length-1,1),f=h.doc.createTextNode(e),d.nextSibling?h.insertAfter(f,d.nextSibling):d.parentNode.appendChild(f),g=h.createRng(),g.setStart(f,1),g.setEnd(f,1),a.selection.setRng(g)))}var e=function(a,b,c){for(var d=0;d',e="";return d+a.dom.encode(c)+e}function l(a){var b=m(a);return'
'+b+"
"}function m(a){var c,d,e,f,g="",h=i(a),l=j(h)-1;if(!h.length)return"";for(g+=k(a.headerTag,b.translate("Table of Contents")),c=0;c";else for(d=l;d
  • ";if(g+=''+e.title+"",f!==e.level&&f)for(d=e.level;d>f;d--)g+="
  • ";else g+="
  • ",f||(g+="");l=e.level}return g}var n,o=a.$,p={depth:3,headerTag:"h2",className:"mce-toc"},q=function(a){var b=0;return function(){var c=(new Date).getTime().toString(32);return a+c+(b++).toString(32)}},r=q("mcetoc_");a.on("PreInit",function(){var b=a.settings,c=parseInt(b.toc_depth,10)||0;n={depth:c>=1&&c<=9?c:p.depth,headerTag:d(b.toc_header)?b.toc_header:p.headerTag,className:b.toc_class?a.dom.encode(b.toc_class):p.className}}),a.on("PreProcess",function(a){var b=o("."+n.className,a.node);b.length&&(b.removeAttr("contentEditable"),b.find("[contenteditable]").removeAttr("contentEditable"))}),a.on("SetContent",function(){var a=o("."+n.className);a.length&&(a.attr("contentEditable",!1),a.children(":first-child").attr("contentEditable",!0))});var s=function(b){return!b.length||a.dom.getParents(b[0],".mce-offscreen-selection").length>0};a.addCommand("mceInsertToc",function(){var b=o("."+n.className);s(b)?a.insertContent(l(n)):a.execCommand("mceUpdateToc")}),a.addCommand("mceUpdateToc",function(){var b=o("."+n.className);b.length&&a.undoManager.transact(function(){b.html(m(n))})}),a.addButton("toc",{tooltip:"Table of Contents",cmd:"mceInsertToc",icon:"toc",onPostRender:f}),a.addButton("tocupdate",{tooltip:"Update",cmd:"mceUpdateToc",icon:"reload"}),a.addContextToolbar(e,"tocupdate"),a.addMenuItem("toc",{text:"Table of Contents",context:"insert",cmd:"mceInsertToc",onPostRender:f})}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/visualblocks/css/visualblocks.css b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/visualblocks/css/visualblocks.css new file mode 100644 index 0000000..1df311a --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/visualblocks/css/visualblocks.css @@ -0,0 +1,154 @@ +.mce-visualblocks p { + padding-top: 10px; + border: 1px dashed #BBB; + margin-left: 3px; + background-image: url(data:image/gif;base64,R0lGODlhCQAJAJEAAAAAAP///7u7u////yH5BAEAAAMALAAAAAAJAAkAAAIQnG+CqCN/mlyvsRUpThG6AgA7); + background-repeat: no-repeat; +} + +.mce-visualblocks h1 { + padding-top: 10px; + border: 1px dashed #BBB; + margin-left: 3px; + background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGu1JuxHoAfRNRW3TWXyF2YiRUAOw==); + background-repeat: no-repeat; +} + +.mce-visualblocks h2 { + padding-top: 10px; + border: 1px dashed #BBB; + margin-left: 3px; + background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8Hybbx4oOuqgTynJd6bGlWg3DkJzoaUAAAOw==); + background-repeat: no-repeat; +} + +.mce-visualblocks h3 { + padding-top: 10px; + border: 1px dashed #BBB; + margin-left: 3px; + background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIZjI8Hybbx4oOuqgTynJf2Ln2NOHpQpmhAAQA7); + background-repeat: no-repeat; +} + +.mce-visualblocks h4 { + padding-top: 10px; + border: 1px dashed #BBB; + margin-left: 3px; + background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxInR0zqeAdhtJlXwV1oCll2HaWgAAOw==); + background-repeat: no-repeat; +} + +.mce-visualblocks h5 { + padding-top: 10px; + border: 1px dashed #BBB; + margin-left: 3px; + background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjane4iq5GlW05GgIkIZUAAAOw==); + background-repeat: no-repeat; +} + +.mce-visualblocks h6 { + padding-top: 10px; + border: 1px dashed #BBB; + margin-left: 3px; + background-image: url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjan04jep1iZ1XRlAo5bVgAAOw==); + background-repeat: no-repeat; +} + +.mce-visualblocks div:not([data-mce-bogus]) { + padding-top: 10px; + border: 1px dashed #BBB; + margin-left: 3px; + background-image: url(data:image/gif;base64,R0lGODlhEgAKAIABALu7u////yH5BAEAAAEALAAAAAASAAoAAAIfjI9poI0cgDywrhuxfbrzDEbQM2Ei5aRjmoySW4pAAQA7); + background-repeat: no-repeat; +} + +.mce-visualblocks section { + padding-top: 10px; + border: 1px dashed #BBB; + margin: 0 0 1em 3px; + background-image: url(data:image/gif;base64,R0lGODlhKAAKAIABALu7u////yH5BAEAAAEALAAAAAAoAAoAAAI5jI+pywcNY3sBWHdNrplytD2ellDeSVbp+GmWqaDqDMepc8t17Y4vBsK5hDyJMcI6KkuYU+jpjLoKADs=); + background-repeat: no-repeat; +} + +.mce-visualblocks article { + padding-top: 10px; + border: 1px dashed #BBB; + margin: 0 0 1em 3px; + background-image: url(data:image/gif;base64,R0lGODlhKgAKAIABALu7u////yH5BAEAAAEALAAAAAAqAAoAAAI6jI+pywkNY3wG0GBvrsd2tXGYSGnfiF7ikpXemTpOiJScasYoDJJrjsG9gkCJ0ag6KhmaIe3pjDYBBQA7); + background-repeat: no-repeat; +} + +.mce-visualblocks blockquote { + padding-top: 10px; + border: 1px dashed #BBB; + background-image: url(data:image/gif;base64,R0lGODlhPgAKAIABALu7u////yH5BAEAAAEALAAAAAA+AAoAAAJPjI+py+0Knpz0xQDyuUhvfoGgIX5iSKZYgq5uNL5q69asZ8s5rrf0yZmpNkJZzFesBTu8TOlDVAabUyatguVhWduud3EyiUk45xhTTgMBBQA7); + background-repeat: no-repeat; +} + +.mce-visualblocks address { + padding-top: 10px; + border: 1px dashed #BBB; + margin: 0 0 1em 3px; + background-image: url(data:image/gif;base64,R0lGODlhLQAKAIABALu7u////yH5BAEAAAEALAAAAAAtAAoAAAI/jI+pywwNozSP1gDyyZcjb3UaRpXkWaXmZW4OqKLhBmLs+K263DkJK7OJeifh7FicKD9A1/IpGdKkyFpNmCkAADs=); + background-repeat: no-repeat; +} + +.mce-visualblocks pre { + padding-top: 10px; + border: 1px dashed #BBB; + margin-left: 3px; + background-image: url(data:image/gif;base64,R0lGODlhFQAKAIABALu7uwAAACH5BAEAAAEALAAAAAAVAAoAAAIjjI+ZoN0cgDwSmnpz1NCueYERhnibZVKLNnbOq8IvKpJtVQAAOw==); + background-repeat: no-repeat; +} + +.mce-visualblocks figure { + padding-top: 10px; + border: 1px dashed #BBB; + margin: 0 0 1em 3px; + background-image: url(data:image/gif;base64,R0lGODlhJAAKAIAAALu7u////yH5BAEAAAEALAAAAAAkAAoAAAI0jI+py+2fwAHUSFvD3RlvG4HIp4nX5JFSpnZUJ6LlrM52OE7uSWosBHScgkSZj7dDKnWAAgA7); + background-repeat: no-repeat; +} + +.mce-visualblocks hgroup { + padding-top: 10px; + border: 1px dashed #BBB; + margin: 0 0 1em 3px; + background-image: url(data:image/gif;base64,R0lGODlhJwAKAIABALu7uwAAACH5BAEAAAEALAAAAAAnAAoAAAI3jI+pywYNI3uB0gpsRtt5fFnfNZaVSYJil4Wo03Hv6Z62uOCgiXH1kZIIJ8NiIxRrAZNMZAtQAAA7); + background-repeat: no-repeat; +} + +.mce-visualblocks aside { + padding-top: 10px; + border: 1px dashed #BBB; + margin: 0 0 1em 3px; + background-image: url(data:image/gif;base64,R0lGODlhHgAKAIABAKqqqv///yH5BAEAAAEALAAAAAAeAAoAAAItjI+pG8APjZOTzgtqy7I3f1yehmQcFY4WKZbqByutmW4aHUd6vfcVbgudgpYCADs=); + background-repeat: no-repeat; +} + +.mce-visualblocks figcaption { + border: 1px dashed #BBB; +} + +.mce-visualblocks ul { + padding-top: 10px; + border: 1px dashed #BBB; + margin: 0 0 1em 3px; + background-image: url(data:image/gif;base64,R0lGODlhDQAKAIAAALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGuYnqUVSjvw26DzzXiqIDlVwAAOw==); + background-repeat: no-repeat; +} + +.mce-visualblocks ol { + padding-top: 10px; + border: 1px dashed #BBB; + margin: 0 0 1em 3px; + background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybH6HHt0qourxC6CvzXieHyeWQAAOw==); + background-repeat: no-repeat; +} + +.mce-visualblocks dl { + padding-top: 10px; + border: 1px dashed #BBB; + margin: 0 0 1em 3px; + background-image: url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybEOnmOvUoWznTqeuEjNSCqeGRUAOw==); + background-repeat: no-repeat; +} diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/visualblocks/plugin.min.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/visualblocks/plugin.min.js new file mode 100644 index 0000000..067eaac --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/visualblocks/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i-1},h=function(a,b){return t(a,b).isSome()},i=function(a,b){for(var c=[],d=0;d=0;c--){var d=a[c];b(d,c,a)}},n=function(a,b){for(var c=[],d=[],e=0,f=a.length;e1)throw c.error("HTML does not have a single root node",a),"HTML must have a single root node";return h(f.childNodes[0])},f=function(a,b){var c=b||d,e=c.createElement(a);return h(e)},g=function(a,b){var c=b||d,e=c.createTextNode(a);return h(e)},h=function(c){if(null===c||void 0===c)throw new b("Node cannot be null or undefined");return{dom:a.constant(c)}};return{fromHtml:e,fromTag:f,fromText:g,fromDom:h}}),g("e",[],function(){var a={"\xa0":"nbsp","\xad":"shy"},b=function(a,b){var c,d="";for(c in a)d+=c;return new RegExp("["+d+"]",b?"g":"")},c=function(a){var b,c="";for(b in a)c&&(c+=","),c+="span.mce-"+a[b];return c};return{charMap:a,regExp:b(a),regExpGlobal:b(a,!0),selector:c(a),charMapToRegExp:b,charMapToSelector:c}}),g("i",[],function(){return{ATTRIBUTE:2,CDATA_SECTION:4,COMMENT:8,DOCUMENT:9,DOCUMENT_TYPE:10,DOCUMENT_FRAGMENT:11,ELEMENT:1,TEXT:3,PROCESSING_INSTRUCTION:7,ENTITY_REFERENCE:5,ENTITY:6,NOTATION:12}}),g("g",["i"],function(a){var b=function(a){var b=a.dom().nodeName;return b.toLowerCase()},c=function(a){return a.dom().nodeType},d=function(a){return a.dom().nodeValue},e=function(a){return function(b){return c(b)===a}},f=function(d){return c(d)===a.COMMENT||"#comment"===b(d)},g=e(a.ELEMENT),h=e(a.TEXT),i=e(a.DOCUMENT);return{name:b,type:c,value:d,isElement:g,isText:h,isDocument:i,isComment:f}}),g("j",["e"],function(a){var b=function(b){return''+b+""};return{wrapCharWithSpan:b}}),g("f",["3","4","g","e","j"],function(a,b,c,d,e){var f=function(a){return c.isText(a)&&void 0!==c.value(a)&&d.regExp.test(c.value(a))},g=function(c,d){var e=[],f=c.dom(),h=a.map(f.childNodes,b.fromDom);return a.each(h,function(a){d(a)&&(e=e.concat([a])),e=e.concat(g(a,d))}),e},h=function(a,b){for(;a.parentNode;){if(a.parentNode===b)return a;a=a.parentNode}},i=function(a){return a.replace(d.regExpGlobal,e.wrapCharWithSpan)};return{isMatch:f,filterDescendants:g,findParentElm:h,replaceWithSpans:i}}),g("5",["e","f","3","4","g"],function(a,b,c,d,e){var f=function(a,f){var g,h,i=b.filterDescendants(d.fromDom(f),b.isMatch);c.each(i,function(c){var d=b.replaceWithSpans(e.value(c));for(h=a.dom.create("div",null,d);g=h.lastChild;)a.dom.insertAfter(g,c.dom());a.dom.remove(c.dom())})},g=function(b,d){var e=b.dom.select(a.selector,d);c.each(e,function(a){b.dom.remove(a,1)})},h=function(a){var c=a.getBody(),d=a.selection.getBookmark(),e=b.findParentElm(a.selection.getNode(),c);e=void 0!==e?e:c,g(a,e),f(a,e),a.selection.moveToBookmark(d)};return{show:f,hide:g,toggle:h}}),g("0",["1","2","3","4","5"],function(a,b,c,d,e){return a.add("visualchars",function(a){var c,d=this,f=function(){var b=this;a.on("VisualChars",function(a){b.active(a.state)})},g=b.debounce(function(){e.toggle(a)},300);a.settings.forced_root_block!==!1&&a.on("keydown",function(b){d.state===!0&&(13===b.keyCode?e.toggle(a):g())}),a.addCommand("mceVisualChars",function(){var b,f=a.getBody(),g=a.selection;c=!c,d.state=c,a.fire("VisualChars",{state:c}),b=g.getBookmark(),c===!0?e.show(a,f):e.hide(a,f),g.moveToBookmark(b)}),a.addButton("visualchars",{title:"Show invisible characters",cmd:"mceVisualChars",onPostRender:f}),a.addMenuItem("visualchars",{text:"Show invisible characters",cmd:"mceVisualChars",onPostRender:f,selectable:!0,context:"view",prependToContext:!0})}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/wordcount/plugin.min.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/wordcount/plugin.min.js new file mode 100644 index 0000000..32c197c --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/plugins/wordcount/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;ia.length-1&&0!==c)&&((f!==b.ALETTER||g!==b.ALETTER)&&(e=a[c+2],(f!==b.ALETTER||g!==b.MIDLETTER&&g!==b.MIDNUMLET&&g!==b.AT||e!==b.ALETTER)&&(d=a[c-1],(f!==b.MIDLETTER&&f!==b.MIDNUMLET&&g!==b.AT||g!==b.ALETTER||d!==b.ALETTER)&&((f!==b.NUMERIC&&f!==b.ALETTER||g!==b.NUMERIC&&g!==b.ALETTER)&&((f!==b.MIDNUM&&f!==b.MIDNUMLET||g!==b.NUMERIC||d!==b.NUMERIC)&&((f!==b.NUMERIC||g!==b.MIDNUM&&g!==b.MIDNUMLET||e!==b.NUMERIC)&&(f!==b.EXTEND&&f!==b.FORMAT&&d!==b.EXTEND&&d!==b.FORMAT&&g!==b.EXTEND&&g!==b.FORMAT&&((f!==b.CR||g!==b.LF)&&(f===b.NEWLINE||f===b.CR||f===b.LF||(g===b.NEWLINE||g===b.CR||g===b.LF||(f!==b.KATAKANA||g!==b.KATAKANA)&&((g!==b.EXTENDNUMLET||f!==b.ALETTER&&f!==b.NUMERIC&&f!==b.KATAKANA&&f!==b.EXTENDNUMLET)&&((f!==b.EXTENDNUMLET||g!==b.ALETTER&&g!==b.NUMERIC&&g!==b.KATAKANA)&&f!==b.AT))))))))))))};return{isWordBoundary:c}}),g("3",["5","6","7"],function(a,b,c){var d=a.EMPTY_STRING,e=a.WHITESPACE,f=a.PUNCTUATION,g=function(a){return"http"===a||"https"===a},h=function(a,b){var c;for(c=b;c + + + Generated by IcoMoon + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce-small.ttf b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce-small.ttf new file mode 100644 index 0000000..a983e2d Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce-small.ttf differ diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce-small.woff b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce-small.woff new file mode 100644 index 0000000..d8962df Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce-small.woff differ diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.eot b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.eot new file mode 100644 index 0000000..f99c13f Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.eot differ diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.svg b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.svg new file mode 100644 index 0000000..8d4fcbd --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.svg @@ -0,0 +1,245 @@ + + + + Generated by IcoMoon + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.ttf b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.ttf new file mode 100644 index 0000000..16536bf Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.ttf differ diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.woff b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.woff new file mode 100644 index 0000000..74b50f4 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/fonts/tinymce.woff differ diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/anchor.gif b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/anchor.gif new file mode 100644 index 0000000..606348c Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/anchor.gif differ diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/loader.gif b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/loader.gif new file mode 100644 index 0000000..c69e937 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/loader.gif differ diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/object.gif b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/object.gif new file mode 100644 index 0000000..cccd7f0 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/object.gif differ diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/trans.gif b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/trans.gif new file mode 100644 index 0000000..3884865 Binary files /dev/null and b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/img/trans.gif differ diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/skin.min.css b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/skin.min.css new file mode 100644 index 0000000..f7f5cd8 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/skins/lightgray/skin.min.css @@ -0,0 +1 @@ +.mce-container,.mce-container *,.mce-widget,.mce-widget *,.mce-reset{margin:0;padding:0;border:0;outline:0;vertical-align:top;background:transparent;text-decoration:none;color:#333;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;text-shadow:none;float:none;position:static;width:auto;height:auto;white-space:nowrap;cursor:inherit;-webkit-tap-highlight-color:transparent;line-height:normal;font-weight:normal;text-align:left;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;direction:ltr;max-width:none}.mce-widget button{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.mce-container *[unselectable]{-moz-user-select:none;-webkit-user-select:none;-o-user-select:none;user-select:none}.mce-fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.mce-fade.mce-in{opacity:1}.mce-tinymce{visibility:inherit !important;position:relative}.mce-fullscreen{border:0;padding:0;margin:0;overflow:hidden;height:100%;z-index:100}div.mce-fullscreen{position:fixed;top:0;left:0;width:100%;height:auto}.mce-tinymce{display:block}.mce-wordcount{position:absolute;top:0;right:0;padding:8px}div.mce-edit-area{background:#FFF;filter:none}.mce-statusbar{position:relative}.mce-statusbar .mce-container-body{position:relative}.mce-fullscreen .mce-resizehandle{display:none}.mce-charmap{border-collapse:collapse}.mce-charmap td{cursor:default;border:1px solid rgba(0,0,0,0.2);width:20px;height:20px;line-height:20px;text-align:center;vertical-align:middle;padding:2px}.mce-charmap td div{text-align:center}.mce-charmap td:hover{background:#D9D9D9}.mce-grid td.mce-grid-cell div{border:1px solid #d6d6d6;width:15px;height:15px;margin:0;cursor:pointer}.mce-grid td.mce-grid-cell div:focus{border-color:#3498db}.mce-grid td.mce-grid-cell div[disabled]{cursor:not-allowed}.mce-grid{border-spacing:2px;border-collapse:separate}.mce-grid a{display:block;border:1px solid transparent}.mce-grid a:hover,.mce-grid a:focus{border-color:#3498db}.mce-grid-border{margin:0 4px 0 4px}.mce-grid-border a{border-color:#d6d6d6;width:13px;height:13px}.mce-grid-border a:hover,.mce-grid-border a.mce-active{border-color:#3498db;background:#3498db}.mce-text-center{text-align:center}div.mce-tinymce-inline{width:100%}.mce-colorbtn-trans div{text-align:center;vertical-align:middle;font-weight:bold;font-size:20px;line-height:16px;color:#707070}.mce-monospace{font-family:"Courier New",Courier,monospace}.mce-toolbar-grp{padding:2px 0}.mce-toolbar-grp .mce-flow-layout-item{margin-bottom:0}.mce-rtl .mce-wordcount{left:0;right:auto}.mce-container b{font-weight:bold}.mce-container p{margin-bottom:5px}.mce-container a{cursor:pointer;color:#2980b9}.mce-container a:hover{text-decoration:underline}.mce-container ul{margin-left:15px}.mce-container .mce-table-striped{border-collapse:collapse;margin:10px}.mce-container .mce-table-striped thead>tr{background-color:#fafafa}.mce-container .mce-table-striped thead>tr th{font-weight:bold}.mce-container .mce-table-striped td,.mce-container .mce-table-striped th{padding:5px}.mce-container .mce-table-striped tr:nth-child(even){background-color:#fafafa}.mce-container .mce-table-striped tbody>tr:hover{background-color:#e1e1e1}.mce-branding-powered-by{background-color:#f0f0f0;position:absolute;right:0;bottom:0;width:91px;height:9px;margin-right:-1px;margin-bottom:-1px;border:1px solid #c5c5c5;border-width:1px 1px 0 1px;padding:6px 6px 0 6px;background-image:url('data:image/gif;base64,R0lGODlhXwAJAIABAIiIiAAAACH5BAEKAAEALAAAAABfAAkAAAJxhBGpy+2PUnzqGNpmPNJqDIZSJY4m+KXLF3At2V6xPFfuvMF6J6fINTnhTr9XcaRC6pKvFYlZjDIszaXRSA3ijlXo9AlWindaldSJthJ55XAz6+ZWbVCOdojP77p8J8vlUSI4SHEnaEiYqOhARdhIWAAAOw');background-repeat:no-repeat;background-position:center center}.mce-croprect-container{position:absolute;top:0;left:0}.mce-croprect-handle{position:absolute;top:0;left:0;width:20px;height:20px;border:2px solid white}.mce-croprect-handle-nw{border-width:2px 0 0 2px;margin:-2px 0 0 -2px;cursor:nw-resize;top:100px;left:100px}.mce-croprect-handle-ne{border-width:2px 2px 0 0;margin:-2px 0 0 -20px;cursor:ne-resize;top:100px;left:200px}.mce-croprect-handle-sw{border-width:0 0 2px 2px;margin:-20px 2px 0 -2px;cursor:sw-resize;top:200px;left:100px}.mce-croprect-handle-se{border-width:0 2px 2px 0;margin:-20px 0 0 -20px;cursor:se-resize;top:200px;left:200px}.mce-croprect-handle-move{position:absolute;cursor:move;border:0}.mce-croprect-block{opacity:.3;filter:alpha(opacity=30);zoom:1;position:absolute;background:black}.mce-croprect-handle:focus{border-color:#3498db}.mce-croprect-handle-move:focus{outline:1px solid #3498db}.mce-imagepanel{overflow:auto;background:black}.mce-imagepanel-bg{position:absolute;background:url('data:image/gif;base64,R0lGODdhDAAMAIABAMzMzP///ywAAAAADAAMAAACFoQfqYeabNyDMkBQb81Uat85nxguUAEAOw==')}.mce-imagepanel img{position:absolute}.mce-imagetool.mce-btn .mce-ico{display:block;width:20px;height:20px;text-align:center;line-height:20px;font-size:20px;padding:5px}.mce-arrow-up{margin-top:12px}.mce-arrow-down{margin-top:-12px}.mce-arrow:before,.mce-arrow:after{position:absolute;left:50%;display:block;width:0;height:0;border-style:solid;border-color:transparent;content:""}.mce-arrow.mce-arrow-up:before{top:-9px;border-bottom-color:rgba(0,0,0,0.2);border-width:0 9px 9px;margin-left:-9px}.mce-arrow.mce-arrow-down:before{bottom:-9px;border-top-color:rgba(0,0,0,0.2);border-width:9px 9px 0;margin-left:-9px}.mce-arrow.mce-arrow-up:after{top:-8px;border-bottom-color:#f0f0f0;border-width:0 8px 8px;margin-left:-8px}.mce-arrow.mce-arrow-down:after{bottom:-8px;border-top-color:#f0f0f0;border-width:8px 8px 0;margin-left:-8px}.mce-arrow.mce-arrow-left:before,.mce-arrow.mce-arrow-left:after{margin:0}.mce-arrow.mce-arrow-left:before{left:8px}.mce-arrow.mce-arrow-left:after{left:9px}.mce-arrow.mce-arrow-right:before,.mce-arrow.mce-arrow-right:after{left:auto;margin:0}.mce-arrow.mce-arrow-right:before{right:8px}.mce-arrow.mce-arrow-right:after{right:9px}.mce-arrow.mce-arrow-center.mce-arrow.mce-arrow-left:before{left:-9px;top:50%;border-right-color:rgba(0,0,0,0.2);border-width:9px 9px 9px 0;margin-top:-9px}.mce-arrow.mce-arrow-center.mce-arrow.mce-arrow-left:after{left:-8px;top:50%;border-right-color:#f0f0f0;border-width:8px 8px 8px 0;margin-top:-8px}.mce-arrow.mce-arrow-center.mce-arrow.mce-arrow-left{margin-left:12px}.mce-arrow.mce-arrow-center.mce-arrow.mce-arrow-right:before{right:-9px;top:50%;border-left-color:rgba(0,0,0,0.2);border-width:9px 0 9px 9px;margin-top:-9px}.mce-arrow.mce-arrow-center.mce-arrow.mce-arrow-right:after{right:-8px;top:50%;border-left-color:#f0f0f0;border-width:8px 0 8px 8px;margin-top:-8px}.mce-arrow.mce-arrow-center.mce-arrow.mce-arrow-right{margin-left:-14px}.mce-edit-aria-container>.mce-container-body{display:flex}.mce-edit-aria-container>.mce-container-body .mce-edit-area{flex:1}.mce-edit-aria-container>.mce-container-body .mce-sidebar>.mce-container-body{display:flex;align-items:stretch;height:100%}.mce-edit-aria-container>.mce-container-body .mce-sidebar-panel{min-width:250px;max-width:250px;position:relative}.mce-edit-aria-container>.mce-container-body .mce-sidebar-panel>.mce-container-body{position:absolute;width:100%;height:100%;overflow:auto;top:0;left:0}.mce-sidebar-toolbar{border:0 solid rgba(0,0,0,0.2);border-left-width:1px}.mce-sidebar-toolbar .mce-btn.mce-active,.mce-sidebar-toolbar .mce-btn.mce-active:hover{border:1px solid transparent;border-color:transparent;background-color:#2d8ac7}.mce-sidebar-toolbar .mce-btn.mce-active button,.mce-sidebar-toolbar .mce-btn.mce-active:hover button,.mce-sidebar-toolbar .mce-btn.mce-active button i,.mce-sidebar-toolbar .mce-btn.mce-active:hover button i{color:#fff;text-shadow:1px 1px none}.mce-sidebar-panel{border:0 solid rgba(0,0,0,0.2);border-left-width:1px}.mce-container,.mce-container-body{display:block}.mce-autoscroll{overflow:hidden}.mce-scrollbar{position:absolute;width:7px;height:100%;top:2px;right:2px;opacity:.4;filter:alpha(opacity=40);zoom:1}.mce-scrollbar-h{top:auto;right:auto;left:2px;bottom:2px;width:100%;height:7px}.mce-scrollbar-thumb{position:absolute;background-color:#000;border:1px solid #888;border-color:rgba(85,85,85,0.6);width:5px;height:100%}.mce-scrollbar-h .mce-scrollbar-thumb{width:100%;height:5px}.mce-scrollbar:hover,.mce-scrollbar.mce-active{background-color:#AAA;opacity:.6;filter:alpha(opacity=60);zoom:1}.mce-scroll{position:relative}.mce-panel{border:0 solid #cacaca;border:0 solid rgba(0,0,0,0.2);background-color:#f0f0f0}.mce-floatpanel{position:absolute}.mce-floatpanel.mce-fixed{position:fixed}.mce-floatpanel .mce-arrow,.mce-floatpanel .mce-arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.mce-floatpanel .mce-arrow{border-width:11px}.mce-floatpanel .mce-arrow:after{border-width:10px;content:""}.mce-floatpanel.mce-popover{filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);background:transparent;top:0;left:0;background:#FFF;border:1px solid rgba(0,0,0,0.2);border:1px solid rgba(0,0,0,0.25)}.mce-floatpanel.mce-popover.mce-bottom{margin-top:10px;*margin-top:0}.mce-floatpanel.mce-popover.mce-bottom>.mce-arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:rgba(0,0,0,0.2);border-bottom-color:rgba(0,0,0,0.25);top:-11px}.mce-floatpanel.mce-popover.mce-bottom>.mce-arrow:after{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#FFF}.mce-floatpanel.mce-popover.mce-bottom.mce-start{margin-left:-22px}.mce-floatpanel.mce-popover.mce-bottom.mce-start>.mce-arrow{left:20px}.mce-floatpanel.mce-popover.mce-bottom.mce-end{margin-left:22px}.mce-floatpanel.mce-popover.mce-bottom.mce-end>.mce-arrow{right:10px;left:auto}.mce-fullscreen{border:0;padding:0;margin:0;overflow:hidden;height:100%}div.mce-fullscreen{position:fixed;top:0;left:0}#mce-modal-block{opacity:0;filter:alpha(opacity=0);zoom:1;position:fixed;left:0;top:0;width:100%;height:100%;background:#000}#mce-modal-block.mce-in{opacity:.3;filter:alpha(opacity=30);zoom:1}.mce-window-move{cursor:move}.mce-window{filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);background:transparent;background:#FFF;position:fixed;top:0;left:0;opacity:0;transform:scale(.1);transition:transform 100ms ease-in,opacity 150ms ease-in}.mce-window.mce-in{transform:scale(1);opacity:1}.mce-window-head{padding:9px 15px;border-bottom:1px solid #c5c5c5;position:relative}.mce-window-head .mce-close{position:absolute;right:0;top:0;height:38px;width:38px;text-align:center;cursor:pointer}.mce-window-head .mce-close i{color:#858585}.mce-close:hover i{color:#adadad}.mce-window-head .mce-title{line-height:20px;font-size:20px;font-weight:bold;text-rendering:optimizelegibility;padding-right:20px}.mce-window .mce-container-body{display:block}.mce-foot{display:block;background-color:#FFF;border-top:1px solid #c5c5c5}.mce-window-head .mce-dragh{position:absolute;top:0;left:0;cursor:move;width:90%;height:100%}.mce-window iframe{width:100%;height:100%}.mce-window-body .mce-listbox{border-color:#ccc}.mce-rtl .mce-window-head .mce-close{position:absolute;right:auto;left:15px}.mce-rtl .mce-window-head .mce-dragh{left:auto;right:0}.mce-rtl .mce-window-head .mce-title{direction:rtl;text-align:right}.mce-tooltip{position:absolute;padding:5px;opacity:.8;filter:alpha(opacity=80);zoom:1}.mce-tooltip-inner{font-size:11px;background-color:#000;color:white;max-width:200px;padding:5px 8px 4px 8px;text-align:center;white-space:normal}.mce-tooltip-arrow{position:absolute;width:0;height:0;line-height:0;border:5px dashed #000}.mce-tooltip-arrow-n{border-bottom-color:#000}.mce-tooltip-arrow-s{border-top-color:#000}.mce-tooltip-arrow-e{border-left-color:#000}.mce-tooltip-arrow-w{border-right-color:#000}.mce-tooltip-nw,.mce-tooltip-sw{margin-left:-14px}.mce-tooltip-ne,.mce-tooltip-se{margin-left:14px}.mce-tooltip-n .mce-tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.mce-tooltip-nw .mce-tooltip-arrow{top:0;left:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.mce-tooltip-ne .mce-tooltip-arrow{top:0;right:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.mce-tooltip-s .mce-tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.mce-tooltip-sw .mce-tooltip-arrow{bottom:0;left:10px;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.mce-tooltip-se .mce-tooltip-arrow{bottom:0;right:10px;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.mce-tooltip-e .mce-tooltip-arrow{right:0;top:50%;margin-top:-5px;border-left-style:solid;border-right:none;border-top-color:transparent;border-bottom-color:transparent}.mce-tooltip-w .mce-tooltip-arrow{left:0;top:50%;margin-top:-5px;border-right-style:solid;border-left:none;border-top-color:transparent;border-bottom-color:transparent}.mce-progress{display:inline-block;position:relative;height:20px}.mce-progress .mce-bar-container{display:inline-block;width:100px;height:100%;margin-right:8px;border:1px solid #ccc;overflow:hidden}.mce-progress .mce-text{display:inline-block;margin-top:auto;margin-bottom:auto;font-size:14px;width:40px;color:#333}.mce-bar{display:block;width:0;height:100%;background-color:#d7d7d7;-webkit-transition:width .2s ease;transition:width .2s ease}.mce-notification{position:absolute;background-color:#F0F0F0;padding:5px;margin-top:5px;border-width:1px;border-style:solid;border-color:#CCCCCC;transition:transform 100ms ease-in,opacity 150ms ease-in;opacity:0}.mce-notification.mce-in{opacity:1}.mce-notification-success{background-color:#dff0d8;border-color:#d6e9c6}.mce-notification-info{background-color:#d9edf7;border-color:#779ECB}.mce-notification-warning{background-color:#fcf8e3;border-color:#faebcc}.mce-notification-error{background-color:#f2dede;border-color:#ebccd1}.mce-notification.mce-has-close{padding-right:15px}.mce-notification .mce-ico{margin-top:5px}.mce-notification-inner{display:inline-block;font-size:14px;margin:5px 8px 4px 8px;text-align:center;white-space:normal;color:#31708f}.mce-notification-inner a{text-decoration:underline;cursor:pointer}.mce-notification .mce-progress{margin-right:8px}.mce-notification .mce-progress .mce-text{margin-top:5px}.mce-notification *,.mce-notification .mce-progress .mce-text{color:#333333}.mce-notification .mce-progress .mce-bar-container{border-color:#CCCCCC}.mce-notification .mce-progress .mce-bar-container .mce-bar{background-color:#333333}.mce-notification-success *,.mce-notification-success .mce-progress .mce-text{color:#3c763d}.mce-notification-success .mce-progress .mce-bar-container{border-color:#d6e9c6}.mce-notification-success .mce-progress .mce-bar-container .mce-bar{background-color:#3c763d}.mce-notification-info *,.mce-notification-info .mce-progress .mce-text{color:#31708f}.mce-notification-info .mce-progress .mce-bar-container{border-color:#779ECB}.mce-notification-info .mce-progress .mce-bar-container .mce-bar{background-color:#31708f}.mce-notification-warning *,.mce-notification-warning .mce-progress .mce-text{color:#8a6d3b}.mce-notification-warning .mce-progress .mce-bar-container{border-color:#faebcc}.mce-notification-warning .mce-progress .mce-bar-container .mce-bar{background-color:#8a6d3b}.mce-notification-error *,.mce-notification-error .mce-progress .mce-text{color:#a94442}.mce-notification-error .mce-progress .mce-bar-container{border-color:#ebccd1}.mce-notification-error .mce-progress .mce-bar-container .mce-bar{background-color:#a94442}.mce-notification .mce-close{position:absolute;top:6px;right:8px;font-size:20px;font-weight:bold;line-height:20px;color:#858585;cursor:pointer;height:20px;overflow:hidden}.mce-abs-layout{position:relative}body .mce-abs-layout-item,.mce-abs-end{position:absolute}.mce-abs-end{width:1px;height:1px}.mce-container-body.mce-abs-layout{overflow:hidden}.mce-btn{border:1px solid #b1b1b1;border-color:transparent transparent transparent transparent;position:relative;text-shadow:0 1px 1px rgba(255,255,255,0.75);display:inline-block;*display:inline;*zoom:1;background-color:#f0f0f0}.mce-btn:hover,.mce-btn:focus{color:#333;background-color:#e3e3e3;border-color:#ccc}.mce-btn.mce-disabled button,.mce-btn.mce-disabled:hover button{cursor:default;opacity:.4;filter:alpha(opacity=40);zoom:1}.mce-btn.mce-active,.mce-btn.mce-active:hover{background-color:#dbdbdb;border-color:#ccc}.mce-btn:active{background-color:#e0e0e0;border-color:#ccc}.mce-btn button{padding:4px 8px;font-size:14px;line-height:20px;*line-height:16px;cursor:pointer;color:#333;text-align:center;overflow:visible;-webkit-appearance:none}.mce-btn button::-moz-focus-inner{border:0;padding:0}.mce-btn i{text-shadow:1px 1px none}.mce-primary.mce-btn-has-text{min-width:50px}.mce-primary{color:#fff;border:1px solid transparent;border-color:transparent;background-color:#2d8ac7}.mce-primary:hover,.mce-primary:focus{background-color:#257cb6;border-color:transparent}.mce-primary.mce-disabled button,.mce-primary.mce-disabled:hover button{cursor:default;opacity:.4;filter:alpha(opacity=40);zoom:1}.mce-primary.mce-active,.mce-primary.mce-active:hover,.mce-primary:not(.mce-disabled):active{background-color:#206ea1}.mce-primary button,.mce-primary button i{color:#fff;text-shadow:1px 1px none}.mce-btn .mce-txt{font-size:inherit;line-height:inherit;color:inherit}.mce-btn-large button{padding:9px 14px;font-size:16px;line-height:normal}.mce-btn-large i{margin-top:2px}.mce-btn-small button{padding:1px 5px;font-size:12px;*padding-bottom:2px}.mce-btn-small i{line-height:20px;vertical-align:top;*line-height:18px}.mce-btn .mce-caret{margin-top:8px;margin-left:0}.mce-btn-small .mce-caret{margin-top:8px;margin-left:0}.mce-caret{display:inline-block;*display:inline;*zoom:1;width:0;height:0;vertical-align:top;border-top:4px solid #333;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.mce-disabled .mce-caret{border-top-color:#aaa}.mce-caret.mce-up{border-bottom:4px solid #333;border-top:0}.mce-btn-flat{border:0;background:transparent;filter:none}.mce-btn-flat:hover,.mce-btn-flat.mce-active,.mce-btn-flat:focus,.mce-btn-flat:active{border:0;background:#e6e6e6;filter:none}.mce-btn-has-text .mce-ico{padding-right:5px}.mce-rtl .mce-btn button{direction:rtl}.mce-btn-group .mce-btn{border-width:1px;margin:0;margin-left:2px}.mce-btn-group:not(:first-child){border-left:1px solid #d9d9d9;padding-left:3px;margin-left:3px}.mce-btn-group .mce-first{margin-left:0}.mce-btn-group .mce-btn.mce-flow-layout-item{margin:0}.mce-rtl .mce-btn-group .mce-btn{margin-left:0;margin-right:2px}.mce-rtl .mce-btn-group .mce-first{margin-right:0}.mce-rtl .mce-btn-group:not(:first-child){border-left:none;border-right:1px solid #d9d9d9;padding-right:4px;margin-right:4px}.mce-checkbox{cursor:pointer}i.mce-i-checkbox{margin:0 3px 0 0;border:1px solid #c5c5c5;background-color:#f0f0f0;text-indent:-10em;*font-size:0;*line-height:0;*text-indent:0;overflow:hidden}.mce-checked i.mce-i-checkbox{color:#333;font-size:16px;line-height:16px;text-indent:0}.mce-checkbox:focus i.mce-i-checkbox,.mce-checkbox.mce-focus i.mce-i-checkbox{border:1px solid rgba(82,168,236,0.8)}.mce-checkbox.mce-disabled .mce-label,.mce-checkbox.mce-disabled i.mce-i-checkbox{color:#acacac}.mce-checkbox .mce-label{vertical-align:middle}.mce-rtl .mce-checkbox{direction:rtl;text-align:right}.mce-rtl i.mce-i-checkbox{margin:0 0 0 3px}.mce-combobox{position:relative;display:inline-block;*display:inline;*zoom:1;*height:32px}.mce-combobox input{border:1px solid #c5c5c5;border-right-color:#c5c5c5;height:28px}.mce-combobox.mce-disabled input{color:#adadad}.mce-combobox .mce-btn{border:1px solid #c5c5c5;border-left:0;margin:0}.mce-combobox button{padding-right:8px;padding-left:8px}.mce-combobox.mce-disabled .mce-btn button{cursor:default;opacity:.4;filter:alpha(opacity=40);zoom:1}.mce-combobox .mce-status{position:absolute;right:2px;top:50%;line-height:16px;margin-top:-8px;font-size:12px;width:15px;height:15px;text-align:center;cursor:pointer}.mce-combobox.mce-has-status input{padding-right:20px}.mce-combobox.mce-has-open .mce-status{right:37px}.mce-combobox .mce-status.mce-i-warning{color:#c09853}.mce-combobox .mce-status.mce-i-checkmark{color:#468847}.mce-menu.mce-combobox-menu{border-top:0;margin-top:0;max-height:200px}.mce-menu.mce-combobox-menu .mce-menu-item{padding:4px 6px 4px 4px;font-size:11px}.mce-menu.mce-combobox-menu .mce-menu-item-sep{padding:0}.mce-menu.mce-combobox-menu .mce-text{font-size:11px}.mce-menu.mce-combobox-menu .mce-menu-item-link,.mce-menu.mce-combobox-menu .mce-menu-item-link b{font-size:11px}.mce-menu.mce-combobox-menu .mce-text b{font-size:11px}.mce-colorbox i{border:1px solid #c5c5c5;width:14px;height:14px}.mce-colorbutton .mce-ico{position:relative}.mce-colorbutton-grid{margin:4px}.mce-colorbutton button{padding-right:6px;padding-left:6px}.mce-colorbutton .mce-preview{padding-right:3px;display:block;position:absolute;left:50%;top:50%;margin-left:-17px;margin-top:7px;background:gray;width:13px;height:2px;overflow:hidden}.mce-colorbutton.mce-btn-small .mce-preview{margin-left:-16px;padding-right:0;width:16px}.mce-colorbutton .mce-open{padding-left:4px;padding-right:4px;border-left:1px solid transparent}.mce-colorbutton:hover .mce-open{border-color:#ccc}.mce-colorbutton.mce-btn-small .mce-open{padding:0 3px 0 3px}.mce-rtl .mce-colorbutton{direction:rtl}.mce-rtl .mce-colorbutton .mce-preview{margin-left:0;padding-right:0;padding-left:3px}.mce-rtl .mce-colorbutton.mce-btn-small .mce-preview{margin-left:0;padding-right:0;padding-left:2px}.mce-rtl .mce-colorbutton .mce-open{padding-left:4px;padding-right:4px;border-left:0}.mce-colorpicker{position:relative;width:250px;height:220px}.mce-colorpicker-sv{position:absolute;top:0;left:0;width:90%;height:100%;border:1px solid #c5c5c5;cursor:crosshair;overflow:hidden}.mce-colorpicker-h-chunk{width:100%}.mce-colorpicker-overlay1,.mce-colorpicker-overlay2{width:100%;height:100%;position:absolute;top:0;left:0}.mce-colorpicker-overlay1{filter:progid:DXImageTransform.Microsoft.gradient(GradientType=1, startColorstr='#ffffff', endColorstr='#00ffffff');-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr='#ffffff', endColorstr='#00ffffff')";background:linear-gradient(to right, #fff, rgba(255,255,255,0))}.mce-colorpicker-overlay2{filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#00000000', endColorstr='#000000');-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#00000000', endColorstr='#000000')";background:linear-gradient(to bottom, rgba(0,0,0,0), #000)}.mce-colorpicker-selector1{background:none;position:absolute;width:12px;height:12px;margin:-8px 0 0 -8px;border:1px solid black;border-radius:50%}.mce-colorpicker-selector2{position:absolute;width:10px;height:10px;border:1px solid white;border-radius:50%}.mce-colorpicker-h{position:absolute;top:0;right:0;width:6.5%;height:100%;border:1px solid #c5c5c5;cursor:crosshair}.mce-colorpicker-h-marker{margin-top:-4px;position:absolute;top:0;left:-1px;width:100%;border:1px solid #333;background:#fff;height:4px;z-index:100}.mce-path{display:inline-block;*display:inline;*zoom:1;padding:8px;white-space:normal}.mce-path .mce-txt{display:inline-block;padding-right:3px}.mce-path .mce-path-body{display:inline-block}.mce-path-item{display:inline-block;*display:inline;*zoom:1;cursor:pointer;color:#333}.mce-path-item:hover{text-decoration:underline}.mce-path-item:focus{background:#666;color:#fff}.mce-path .mce-divider{display:inline}.mce-disabled .mce-path-item{color:#aaa}.mce-rtl .mce-path{direction:rtl}.mce-fieldset{border:0 solid #9E9E9E}.mce-fieldset>.mce-container-body{margin-top:-15px}.mce-fieldset-title{margin-left:5px;padding:0 5px 0 5px}.mce-fit-layout{display:inline-block;*display:inline;*zoom:1}.mce-fit-layout-item{position:absolute}.mce-flow-layout-item{display:inline-block;*display:inline;*zoom:1}.mce-flow-layout-item{margin:2px 0 2px 2px}.mce-flow-layout-item.mce-last{margin-right:2px}.mce-flow-layout{white-space:normal}.mce-tinymce-inline .mce-flow-layout{white-space:nowrap}.mce-rtl .mce-flow-layout{text-align:right;direction:rtl}.mce-rtl .mce-flow-layout-item{margin:2px 2px 2px 0}.mce-rtl .mce-flow-layout-item.mce-last{margin-left:2px}.mce-iframe{border:0 solid rgba(0,0,0,0.2);width:100%;height:100%}.mce-infobox{display:inline-block;*display:inline;*zoom:1;text-shadow:0 1px 1px rgba(255,255,255,0.75);overflow:hidden;border:1px solid red}.mce-infobox div{display:block;margin:5px}.mce-infobox div button{position:absolute;top:50%;right:4px;cursor:pointer;margin-top:-8px;display:none}.mce-infobox div button:focus{outline:2px solid #ccc}.mce-infobox.mce-has-help div{margin-right:25px}.mce-infobox.mce-has-help button{display:block}.mce-infobox.mce-success{background:#dff0d8;border-color:#d6e9c6}.mce-infobox.mce-success div{color:#3c763d}.mce-infobox.mce-warning{background:#fcf8e3;border-color:#faebcc}.mce-infobox.mce-warning div{color:#8a6d3b}.mce-infobox.mce-error{background:#f2dede;border-color:#ebccd1}.mce-infobox.mce-error div{color:#a94442}.mce-rtl .mce-infobox div{text-align:right;direction:rtl}.mce-label{display:inline-block;*display:inline;*zoom:1;text-shadow:0 1px 1px rgba(255,255,255,0.75);overflow:hidden}.mce-label.mce-autoscroll{overflow:auto}.mce-label.mce-disabled{color:#aaa}.mce-label.mce-multiline{white-space:pre-wrap}.mce-label.mce-success{color:#468847}.mce-label.mce-warning{color:#c09853}.mce-label.mce-error{color:#b94a48}.mce-rtl .mce-label{text-align:right;direction:rtl}.mce-menubar .mce-menubtn{border-color:transparent;background:transparent;filter:none}.mce-menubar .mce-menubtn button{color:#333}.mce-menubar{border:1px solid rgba(217,217,217,0.52)}.mce-menubar .mce-menubtn button span{color:#333}.mce-menubar .mce-caret{border-top-color:#333}.mce-menubar .mce-menubtn:hover,.mce-menubar .mce-menubtn.mce-active,.mce-menubar .mce-menubtn:focus{border-color:#ccc;background:#fff;filter:none}.mce-menubtn button{color:#333}.mce-menubtn.mce-btn-small span{font-size:12px}.mce-menubtn.mce-fixed-width span{display:inline-block;overflow-x:hidden;text-overflow:ellipsis;width:90px}.mce-menubtn.mce-fixed-width.mce-btn-small span{width:70px}.mce-menubtn .mce-caret{*margin-top:6px}.mce-rtl .mce-menubtn button{direction:rtl;text-align:right}.mce-menu-item{display:block;padding:6px 15px 6px 12px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap;cursor:pointer;line-height:normal;border-left:4px solid transparent;margin-bottom:1px}.mce-menu-item .mce-ico,.mce-menu-item .mce-text{color:#333}.mce-menu-item.mce-disabled .mce-text,.mce-menu-item.mce-disabled .mce-ico{color:#adadad}.mce-menu-item:hover .mce-text,.mce-menu-item.mce-selected .mce-text,.mce-menu-item:focus .mce-text{color:white}.mce-menu-item:hover .mce-ico,.mce-menu-item.mce-selected .mce-ico,.mce-menu-item:focus .mce-ico{color:white}.mce-menu-item.mce-disabled:hover{background:#CCC}.mce-menu-shortcut{display:inline-block;color:#adadad}.mce-menu-shortcut{display:inline-block;*display:inline;*zoom:1;padding:0 15px 0 20px}.mce-menu-item:hover .mce-menu-shortcut,.mce-menu-item.mce-selected .mce-menu-shortcut,.mce-menu-item:focus .mce-menu-shortcut{color:white}.mce-menu-item .mce-caret{margin-top:4px;*margin-top:3px;margin-right:6px;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:4px solid #333}.mce-menu-item.mce-selected .mce-caret,.mce-menu-item:focus .mce-caret,.mce-menu-item:hover .mce-caret{border-left-color:white}.mce-menu-align .mce-menu-shortcut{*margin-top:-2px}.mce-menu-align .mce-menu-shortcut,.mce-menu-align .mce-caret{position:absolute;right:0}.mce-menu-item.mce-active i{visibility:visible}.mce-menu-item-normal.mce-active{background-color:#3498db}.mce-menu-item-preview.mce-active{border-left:5px solid #aaa}.mce-menu-item-normal.mce-active .mce-text{color:white}.mce-menu-item-normal.mce-active:hover .mce-text,.mce-menu-item-normal.mce-active:hover .mce-ico{color:white}.mce-menu-item-normal.mce-active:focus .mce-text,.mce-menu-item-normal.mce-active:focus .mce-ico{color:white}.mce-menu-item:hover,.mce-menu-item.mce-selected,.mce-menu-item:focus{text-decoration:none;color:white;background-color:#2d8ac7}.mce-menu-item-link{color:#093;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mce-menu-item-link b{color:#093}.mce-menu-item-ellipsis{display:block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mce-menu-item:hover *,.mce-menu-item.mce-selected *,.mce-menu-item:focus *{color:white}div.mce-menu .mce-menu-item-sep,.mce-menu-item-sep:hover{border:0;padding:0;height:1px;margin:9px 1px;overflow:hidden;background:transparent;border-bottom:1px solid rgba(0,0,0,0.1);cursor:default;filter:none}div.mce-menu .mce-menu-item b{font-weight:bold}.mce-menu-item-indent-1{padding-left:20px}.mce-menu-item-indent-2{padding-left:35px}.mce-menu-item-indent-2{padding-left:35px}.mce-menu-item-indent-3{padding-left:40px}.mce-menu-item-indent-4{padding-left:45px}.mce-menu-item-indent-5{padding-left:50px}.mce-menu-item-indent-6{padding-left:55px}.mce-menu.mce-rtl{direction:rtl}.mce-rtl .mce-menu-item{text-align:right;direction:rtl;padding:6px 12px 6px 15px}.mce-menu-align.mce-rtl .mce-menu-shortcut,.mce-menu-align.mce-rtl .mce-caret{right:auto;left:0}.mce-rtl .mce-menu-item .mce-caret{margin-left:6px;margin-right:0;border-right:4px solid #333;border-left:0}.mce-rtl .mce-menu-item.mce-selected .mce-caret,.mce-rtl .mce-menu-item:focus .mce-caret,.mce-rtl .mce-menu-item:hover .mce-caret{border-left-color:transparent;border-right-color:white}.mce-throbber{position:absolute;top:0;left:0;width:100%;height:100%;opacity:.6;filter:alpha(opacity=60);zoom:1;background:#fff url('img/loader.gif') no-repeat center center}.mce-throbber-inline{position:static;height:50px}.mce-menu .mce-throbber-inline{height:25px;background-size:contain}.mce-menu{position:absolute;left:0;top:0;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);background:transparent;z-index:1000;padding:5px 0 5px 0;margin:-1px 0 0;min-width:160px;background:#fff;border:1px solid #989898;border:1px solid rgba(0,0,0,0.2);z-index:1002;max-height:400px;overflow:auto;overflow-x:hidden}.mce-menu i{display:none}.mce-menu-has-icons i{display:inline-block;*display:inline}.mce-menu-sub-tr-tl{margin:-6px 0 0 -1px}.mce-menu-sub-br-bl{margin:6px 0 0 -1px}.mce-menu-sub-tl-tr{margin:-6px 0 0 1px}.mce-menu-sub-bl-br{margin:6px 0 0 1px}.mce-listbox button{text-align:left;padding-right:20px;position:relative}.mce-listbox .mce-caret{position:absolute;margin-top:-2px;right:8px;top:50%}.mce-rtl .mce-listbox .mce-caret{right:auto;left:8px}.mce-rtl .mce-listbox button{padding-right:10px;padding-left:20px}.mce-container-body .mce-resizehandle{position:absolute;right:0;bottom:0;width:16px;height:16px;visibility:visible;cursor:s-resize;margin:0}.mce-container-body .mce-resizehandle-both{cursor:se-resize}i.mce-i-resize{color:#333}.mce-selectbox{background:#fff;border:1px solid #c5c5c5}.mce-slider{border:1px solid #AAA;background:#EEE;width:100px;height:10px;position:relative;display:block}.mce-slider.mce-vertical{width:10px;height:100px}.mce-slider-handle{border:1px solid #BBB;background:#DDD;display:block;width:13px;height:13px;position:absolute;top:0;left:0;margin-left:-1px;margin-top:-2px}.mce-slider-handle:focus{background:#BBB}.mce-spacer{visibility:hidden}.mce-splitbtn .mce-open{border-left:1px solid transparent}.mce-splitbtn:hover .mce-open{border-left-color:#ccc}.mce-splitbtn button{padding-right:6px;padding-left:6px}.mce-splitbtn .mce-open{padding-right:4px;padding-left:4px}.mce-splitbtn .mce-open.mce-active{background-color:#dbdbdb;outline:1px solid #ccc}.mce-splitbtn.mce-btn-small .mce-open{padding:0 3px 0 3px}.mce-rtl .mce-splitbtn{direction:rtl;text-align:right}.mce-rtl .mce-splitbtn button{padding-right:4px;padding-left:4px}.mce-rtl .mce-splitbtn .mce-open{border-left:0}.mce-stack-layout-item{display:block}.mce-tabs{display:block;border-bottom:1px solid #c5c5c5}.mce-tabs,.mce-tabs+.mce-container-body{background:#FFF}.mce-tab{display:inline-block;*display:inline;*zoom:1;border:1px solid #c5c5c5;border-width:0 1px 0 0;background:#ffffff;padding:8px;text-shadow:0 1px 1px rgba(255,255,255,0.75);height:13px;cursor:pointer}.mce-tab:hover{background:#FDFDFD}.mce-tab.mce-active{background:#FDFDFD;border-bottom-color:transparent;margin-bottom:-1px;height:14px}.mce-rtl .mce-tabs{text-align:right;direction:rtl}.mce-rtl .mce-tab{border-width:0 0 0 1px}.mce-textbox{background:#fff;border:1px solid #c5c5c5;display:inline-block;-webkit-transition:border linear .2s, box-shadow linear .2s;transition:border linear .2s, box-shadow linear .2s;height:28px;resize:none;padding:0 4px 0 4px;white-space:pre-wrap;*white-space:pre;color:#333}.mce-textbox:focus,.mce-textbox.mce-focus{border-color:#3498db}.mce-placeholder .mce-textbox{color:#aaa}.mce-textbox.mce-multiline{padding:4px;height:auto}.mce-textbox.mce-disabled{color:#adadad}.mce-rtl .mce-textbox{text-align:right;direction:rtl}@font-face{font-family:'tinymce';src:url('fonts/tinymce.eot');src:url('fonts/tinymce.eot?#iefix') format('embedded-opentype'),url('fonts/tinymce.woff') format('woff'),url('fonts/tinymce.ttf') format('truetype'),url('fonts/tinymce.svg#tinymce') format('svg');font-weight:normal;font-style:normal}@font-face{font-family:'tinymce-small';src:url('fonts/tinymce-small.eot');src:url('fonts/tinymce-small.eot?#iefix') format('embedded-opentype'),url('fonts/tinymce-small.woff') format('woff'),url('fonts/tinymce-small.ttf') format('truetype'),url('fonts/tinymce-small.svg#tinymce') format('svg');font-weight:normal;font-style:normal}.mce-ico{font-family:'tinymce',Arial;font-style:normal;font-weight:normal;font-variant:normal;font-size:16px;line-height:16px;speak:none;vertical-align:text-top;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;background:transparent center center;background-size:cover;width:16px;height:16px;color:#333}.mce-btn-small .mce-ico{font-family:'tinymce-small',Arial}.mce-i-save:before{content:"\e000"}.mce-i-newdocument:before{content:"\e001"}.mce-i-fullpage:before{content:"\e002"}.mce-i-alignleft:before{content:"\e003"}.mce-i-aligncenter:before{content:"\e004"}.mce-i-alignright:before{content:"\e005"}.mce-i-alignjustify:before{content:"\e006"}.mce-i-alignnone:before{content:"\e003"}.mce-i-cut:before{content:"\e007"}.mce-i-paste:before{content:"\e008"}.mce-i-searchreplace:before{content:"\e009"}.mce-i-bullist:before{content:"\e00a"}.mce-i-numlist:before{content:"\e00b"}.mce-i-indent:before{content:"\e00c"}.mce-i-outdent:before{content:"\e00d"}.mce-i-blockquote:before{content:"\e00e"}.mce-i-undo:before{content:"\e00f"}.mce-i-redo:before{content:"\e010"}.mce-i-link:before{content:"\e011"}.mce-i-unlink:before{content:"\e012"}.mce-i-anchor:before{content:"\e013"}.mce-i-image:before{content:"\e014"}.mce-i-media:before{content:"\e015"}.mce-i-help:before{content:"\e016"}.mce-i-code:before{content:"\e017"}.mce-i-insertdatetime:before{content:"\e018"}.mce-i-preview:before{content:"\e019"}.mce-i-forecolor:before{content:"\e01a"}.mce-i-backcolor:before{content:"\e01a"}.mce-i-table:before{content:"\e01b"}.mce-i-hr:before{content:"\e01c"}.mce-i-removeformat:before{content:"\e01d"}.mce-i-subscript:before{content:"\e01e"}.mce-i-superscript:before{content:"\e01f"}.mce-i-charmap:before{content:"\e020"}.mce-i-emoticons:before{content:"\e021"}.mce-i-print:before{content:"\e022"}.mce-i-fullscreen:before{content:"\e023"}.mce-i-spellchecker:before{content:"\e024"}.mce-i-nonbreaking:before{content:"\e025"}.mce-i-template:before{content:"\e026"}.mce-i-pagebreak:before{content:"\e027"}.mce-i-restoredraft:before{content:"\e028"}.mce-i-bold:before{content:"\e02a"}.mce-i-italic:before{content:"\e02b"}.mce-i-underline:before{content:"\e02c"}.mce-i-strikethrough:before{content:"\e02d"}.mce-i-visualchars:before{content:"\e02e"}.mce-i-visualblocks:before{content:"\e02e"}.mce-i-ltr:before{content:"\e02f"}.mce-i-rtl:before{content:"\e030"}.mce-i-copy:before{content:"\e031"}.mce-i-resize:before{content:"\e032"}.mce-i-browse:before{content:"\e034"}.mce-i-pastetext:before{content:"\e035"}.mce-i-rotateleft:before{content:"\eaa8"}.mce-i-rotateright:before{content:"\eaa9"}.mce-i-crop:before{content:"\ee78"}.mce-i-editimage:before{content:"\e915"}.mce-i-options:before{content:"\ec6a"}.mce-i-flipv:before{content:"\eaaa"}.mce-i-fliph:before{content:"\eaac"}.mce-i-zoomin:before{content:"\eb35"}.mce-i-zoomout:before{content:"\eb36"}.mce-i-sun:before{content:"\eccc"}.mce-i-moon:before{content:"\eccd"}.mce-i-arrowleft:before{content:"\edc0"}.mce-i-arrowright:before{content:"\e93c"}.mce-i-drop:before{content:"\e935"}.mce-i-contrast:before{content:"\ecd4"}.mce-i-sharpen:before{content:"\eba7"}.mce-i-resize2:before{content:"\edf9"}.mce-i-orientation:before{content:"\e601"}.mce-i-invert:before{content:"\e602"}.mce-i-gamma:before{content:"\e600"}.mce-i-remove:before{content:"\ed6a"}.mce-i-tablerowprops:before{content:"\e604"}.mce-i-tablecellprops:before{content:"\e605"}.mce-i-table2:before{content:"\e606"}.mce-i-tablemergecells:before{content:"\e607"}.mce-i-tableinsertcolbefore:before{content:"\e608"}.mce-i-tableinsertcolafter:before{content:"\e609"}.mce-i-tableinsertrowbefore:before{content:"\e60a"}.mce-i-tableinsertrowafter:before{content:"\e60b"}.mce-i-tablesplitcells:before{content:"\e60d"}.mce-i-tabledelete:before{content:"\e60e"}.mce-i-tableleftheader:before{content:"\e62a"}.mce-i-tabletopheader:before{content:"\e62b"}.mce-i-tabledeleterow:before{content:"\e800"}.mce-i-tabledeletecol:before{content:"\e801"}.mce-i-codesample:before{content:"\e603"}.mce-i-fill:before{content:"\e902"}.mce-i-borderwidth:before{content:"\e903"}.mce-i-line:before{content:"\e904"}.mce-i-count:before{content:"\e905"}.mce-i-translate:before{content:"\e907"}.mce-i-drag:before{content:"\e908"}.mce-i-home:before{content:"\e90b"}.mce-i-upload:before{content:"\e914"}.mce-i-bubble:before{content:"\e91c"}.mce-i-user:before{content:"\e91d"}.mce-i-lock:before{content:"\e926"}.mce-i-unlock:before{content:"\e927"}.mce-i-settings:before{content:"\e928"}.mce-i-remove2:before{content:"\e92a"}.mce-i-menu:before{content:"\e92d"}.mce-i-warning:before{content:"\e930"}.mce-i-question:before{content:"\e931"}.mce-i-pluscircle:before{content:"\e932"}.mce-i-info:before{content:"\e933"}.mce-i-notice:before{content:"\e934"}.mce-i-arrowup:before{content:"\e93b"}.mce-i-arrowdown:before{content:"\e93d"}.mce-i-arrowup2:before{content:"\e93f"}.mce-i-arrowdown2:before{content:"\e940"}.mce-i-menu2:before{content:"\e941"}.mce-i-newtab:before{content:"\e961"}.mce-i-a11y:before{content:"\e900"}.mce-i-plus:before{content:"\e93a"}.mce-i-insert:before{content:"\e93a"}.mce-i-minus:before{content:"\e939"}.mce-i-books:before{content:"\e911"}.mce-i-reload:before{content:"\e906"}.mce-i-toc:before{content:"\e901"}.mce-i-checkmark:before{content:"\e033"}.mce-i-checkbox:before,.mce-i-selected:before{content:"\e033"}.mce-i-insert{font-size:14px}.mce-i-selected{visibility:hidden}i.mce-i-backcolor{text-shadow:none;background:#BBB} \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/themes/inlite/theme.min.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/themes/inlite/theme.min.js new file mode 100644 index 0000000..25996d2 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/themes/inlite/theme.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i0})},e=function(b,c){var e=function(a){return"string"==typeof a?d(a,/[ ,]/):a},f=function(a,b){return a===!1?[]:b};return a.isArray(b)?b:a.isString(b)?e(b):a.isBoolean(b)?f(b,c):c},f=function(a){return function(c,d,f){var g=d in c.settings?c.settings[d]:f;return b(f,a),e(g,f)}};return{getStringOr:c(a.isString),getBoolOr:c(a.isBoolean),getNumberOr:c(a.isNumber),getHandlerOr:c(a.isFunction),getToolbarItemsOr:f(a.isArray)}}),g("7",[],function(){var a=function(a,b){return{id:a,rect:b}},b=function(a,b){for(var c=0;c",c=0;c
    ";e+="
    "}return e+="",e+="
    "},d=function(a){var b=a.dom.select("*[data-mce-id]");return b[0]},e=function(a,b,e){a.undoManager.transact(function(){var f,g;a.insertContent(c(b,e)),f=d(a),f.removeAttribute("data-mce-id"),g=a.dom.select("td,th",f),a.selection.setCursorLocation(g[0],0)})},f=function(a,b){a.execCommand("FormatBlock",!1,b)},g=function(b,c,d){var e,f;e=b.editorUpload.blobCache,f=e.create(a.uuid("mceu"),d,c),e.add(f),b.insertContent(b.dom.createHTML("img",{src:f.blobUri()}))},h=function(a){a.selection.collapse(!1)},i=function(a){a.focus(),b.unlinkSelection(a),h(a)},j=function(a,b,c){a.focus(),a.dom.setAttrib(b,"href",c),h(a)},k=function(a,b){a.execCommand("mceInsertLink",!1,{href:b}),h(a)},l=function(a,b){var c=a.dom.getParent(a.selection.getStart(),"a[href]");c?j(a,c,b):k(a,b)},m=function(a,b){0===b.trim().length?i(a):l(a,b)};return{insertTable:e,formatBlock:f,insertBlob:g,createLink:m,unlink:i}}),g("v",[],function(){var a=function(a){return/^www\.|\.(com|org|edu|gov|uk|net|ca|de|jp|fr|au|us|ru|ch|it|nl|se|no|es|mil)$/i.test(a.trim())},b=function(a){return/^https?:\/\//.test(a.trim())};return{isDomainLike:a,isAbsolute:b}}),g("l",["g","j","s","p","v"],function(a,b,c,d,e){var f=function(a){a.find("textbox").eq(0).each(function(a){a.focus()})},g=function(c,d){var e=b.create(a.extend({type:"form",layout:"flex",direction:"row",padding:5,name:c,spacing:3},d));return e.on("show",function(){f(e)}),e},h=function(a,b){return b?a.show():a.hide()},i=function(a,b){return new c(function(c){a.windowManager.confirm("The URL you entered seems to be an external link. Do you want to add the required http:// prefix?",function(a){var d=a===!0?"http://"+b:b;c(d)})})},j=function(a,b){return!e.isAbsolute(b)&&e.isDomainLike(b)?i(a,b):c.resolve(b)},k=function(a,b){var c={},e=function(){a.focus(),d.unlink(a),b()},f=function(a){var b=a.meta;b&&b.attach&&(c={href:this.value(),attach:b.attach})},i=function(b){if(b.control===this){var c,d="";c=a.dom.getParent(a.selection.getStart(),"a[href]"),c&&(d=a.dom.getAttrib(c,"href")),this.fromJSON({linkurl:d}),h(this.find("#unlink"),c),this.find("#linkurl")[0].focus()}};return g("quicklink",{items:[{type:"button",name:"unlink",icon:"unlink",onclick:e,tooltip:"Remove link"},{type:"filepicker",name:"linkurl",placeholder:"Paste or type a link",filetype:"file",onchange:f},{type:"button",icon:"checkmark",subtype:"primary",tooltip:"Ok",onclick:"submit"}],onshow:i,onsubmit:function(e){j(a,e.data.linkurl).then(function(e){a.undoManager.transact(function(){e===c.href&&(c.attach(),c={}),d.createLink(a,e)}),b()})}})};return{createQuickLinkForm:k}}),g("m",["q","r"],function(a,b){var c=function(a,b){return{rect:a,position:b}},d=function(a,b){return{x:b.x,y:b.y,w:a.w,h:a.h}},e=function(b,e,f,g,h){var i,j,k;return i=a.findBestRelativePosition(h,f,g,b),f=a.clamp(f,g),i?(j=a.relativePosition(h,f,i),k=d(h,j),c(k,i)):(f=a.intersect(g,f),f?(i=a.findBestRelativePosition(h,f,g,e))?(j=a.relativePosition(h,f,i),k=d(h,j),c(k,i)):(k=d(h,f),c(k,i)):null)},f=function(a,b,c){return e(["cr-cl","cl-cr"],["bc-tc","bl-tl","br-tr"],a,b,c)},g=function(a,b,c){return e(["tc-bc","bc-tc","tl-bl","bl-tl","tr-br","br-tr"],["bc-tc","bl-tl","br-tr"],a,b,c)},h=function(a,c,d,e){var f;return"function"==typeof a?(f=a({elementRect:b.toClientRect(c),contentAreaRect:b.toClientRect(d),panelRect:b.toClientRect(e)}),b.fromClientRect(f)):e},i=function(a){return a.panelRect};return{calcInsert:f,calc:g,userConstrain:h,defaultHandler:i}}),g("c",["g","j","i","k","l","f","m","5"],function(a,b,c,d,e,f,g,h){return function(){var i,j,k=["bold","italic","|","quicklink","h2","h3","blockquote"],l=["quickimage","quicktable"],m=function(b,c){return a.map(c,function(a){return d.create(b,a.id,a.items)})},n=function(a){return h.getToolbarItemsOr(a,"selection_toolbar",k)},o=function(a){return h.getToolbarItemsOr(a,"insert_toolbar",l)},p=function(a){return a.items().length>0},q=function(c,f){var g=m(c,f).concat([d.create(c,"text",n(c)),d.create(c,"insert",o(c)),e.createQuickLinkForm(c,B)]);return b.create({type:"floatpanel",role:"dialog",classes:"tinymce tinymce-inline arrow",ariaLabel:"Inline toolbar",layout:"flex",direction:"column",align:"stretch",autohide:!1,autofix:!0,fixed:!0,border:1,items:a.grep(g,p),oncancel:function(){c.focus()}})},r=function(a){a&&a.show()},s=function(a,b){a.moveTo(b.x,b.y)},t=function(b,c){c=c?c.substr(0,2):"",a.each({t:"down",b:"up",c:"center"},function(a,d){b.classes.toggle("arrow-"+a,d===c.substr(0,1))}),"cr"===c?(b.classes.toggle("arrow-left",!0),b.classes.toggle("arrow-right",!1)):"cl"===c?(b.classes.toggle("arrow-left",!0),b.classes.toggle("arrow-right",!0)):a.each({l:"left",r:"right"},function(a,d){b.classes.toggle("arrow-"+a,d===c.substr(1,1))})},u=function(a,b){var c=a.items().filter("#"+b);return c.length>0&&(c[0].show(),a.reflow(),!0)},v=function(a,b,d,e){var i,k,l,m;return m=h.getHandlerOr(d,"inline_toolbar_position_handler",g.defaultHandler),i=f.getContentAreaRect(d),k=c.DOM.getRect(a.getEl()),l="insert"===b?g.calcInsert(e,i,k):g.calc(e,i,k),!!l&&(k=l.rect,j=e,s(a,g.userConstrain(m,e,i,k)),t(a,l.position),!0)},w=function(a,b,c,d){return r(a),a.items().hide(),u(a,b)?void(v(a,b,c,d)===!1&&B(a)):void B(a)},x=function(){return i.items().filter("form:visible").length>0},y=function(a,b){if(i){if(i.items().hide(),!u(i,b))return void B(i);var d,e,k,l;r(i),i.items().hide(),u(i,b),l=h.getHandlerOr(a,"inline_toolbar_position_handler",g.defaultHandler),d=f.getContentAreaRect(a),e=c.DOM.getRect(i.getEl()),k=g.calc(j,d,e),k&&(e=k.rect,s(i,g.userConstrain(l,j,d,e)),t(i,k.position))}},z=function(a,b,c,d){i||(i=q(a,d),i.renderTo(document.body).reflow().moveTo(c.x,c.y),a.nodeChanged()),w(i,b,a,c)},A=function(a,b,c){i&&v(i,b,a,c)},B=function(){i&&i.hide()},C=function(){i&&i.find("toolbar:visible").eq(0).each(function(a){a.focus(!0)})},D=function(){i&&(i.remove(),i=null)},E=function(){return i&&i.visible()&&x()};return{show:z,showForm:y,reposition:A,inForm:E,hide:B,focus:C,remove:D}}}),g("n",["s"],function(a){var b=function(b){return new a(function(a){var c=new FileReader;c.onloadend=function(){a(c.result.split(",")[1])},c.readAsDataURL(b)})};return{blobToBase64:b}}),g("o",["s"],function(a){var b=function(){return new a(function(a){var b;b=document.createElement("input"),b.type="file",b.style.position="fixed",b.style.left=0,b.style.top=0,b.style.opacity=.001,document.body.appendChild(b),b.onchange=function(b){a(Array.prototype.slice.call(b.target.files))},b.click(),b.parentNode.removeChild(b)})};return{pickFile:b}}),g("b",["c","n","o","p"],function(a,b,c,d){var e=function(a){for(var b=function(b){return function(){d.formatBlock(a,b)}},c=1;c<6;c++){var e="h"+c;a.addButton(e,{text:e.toUpperCase(),tooltip:"Heading "+c,stateSelector:e,onclick:b(e),onPostRender:function(){var a=this.getEl().firstChild.firstChild;a.style.fontWeight="bold"}})}},f=function(a,f){a.addButton("quicklink",{icon:"link",tooltip:"Insert/Edit link",stateSelector:"a[href]",onclick:function(){f.showForm(a,"quicklink")}}),a.addButton("quickimage",{icon:"image",tooltip:"Insert image",onclick:function(){c.pickFile().then(function(c){var e=c[0];b.blobToBase64(e).then(function(b){d.insertBlob(a,b,e)})})}}),a.addButton("quicktable",{icon:"table",tooltip:"Insert table",onclick:function(){f.hide(),d.insertTable(a,2,2)}}),e(a)};return{addToEditor:f}}),g("0",["1","2","3","4","5","6","7","8","9","a","b","c"],function(a,b,c,d,e,f,g,h,i,j,k,l){var m=function(a){var b=a.selection.getNode(),c=a.dom.getParents(b);return c},n=function(a,b,c,d){var e=function(c){return a.dom.is(c,b)};return{predicate:e,id:c,items:d}},o=function(a){var b=a.contextToolbars;return d.flatten([b?b:[],n(a,"img","image","alignleft aligncenter alignright")])},p=function(a,b){var c,d,e;return d=m(a),e=h.fromContextToolbars(b),c=g.match(a,[f.element(d[0],e),i.textSelection("text"),i.emptyTextBlock(d,"insert"),f.parent(d,e)]),c&&c.rect?c:null},q=function(a,b){var c=function(){var c=o(a),d=p(a,c);d?b.show(a,d.id,d.rect,c):b.hide()};return function(){a.removed||c()}},r=function(a,b){return function(){var c=o(a),d=p(a,c);d&&b.reposition(a,d.id,d.rect)}},s=function(a,b,c){return function(){a.removed||b.inForm()||c()}},t=function(a,b){var d=c.throttle(q(a,b),0),e=c.throttle(s(a,b,q(a,b)),0);a.on("blur hide ObjectResizeStart",b.hide),a.on("click",d),a.on("nodeChange mouseup",e),a.on("ResizeEditor keyup",d),a.on("ResizeWindow",r(a,b)),a.on("remove",b.remove),a.shortcuts.add("Alt+F10","",b.focus)},u=function(a,b){a.shortcuts.remove("meta+k"),a.shortcuts.add("meta+k","",function(){var c=o(a),d=d=g.match(a,[i.textSelection("quicklink")]);d&&b.show(a,d.id,d.rect,c)})},v=function(a,b){return j.load(a,function(){t(a,b),u(a,b)}),{}},w=function(a){throw new Error(a)};return a.add("inlite",function(a){var b=new l;k.addToEditor(a,b);var c=function(){return a.inline?v(a,b):w("inlite theme only supports inline mode.")};return{renderUI:c}}),b.appendTo(window.tinymce?window.tinymce:{}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/themes/modern/theme.min.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/themes/modern/theme.min.js new file mode 100644 index 0000000..7dda013 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/themes/modern/theme.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i=0;c--)for(d=f.length-1;d>=0;d--)if(f[d].predicate(e[c]))return{toolbar:f[d],element:e[c]};return null};a.on("click keyup setContent ObjectResized",function(b){("setcontent"!==b.type||b.selection)&&c.setEditorTimeout(a,function(){var b;b=u(a.selection.getNode()),b?(t(),s(b)):t()})}),a.on("blur hide contextmenu",t),a.on("ObjectResizeStart",function(){var b=u(a.selection.getNode());b&&b.toolbar.panel&&b.toolbar.panel.hide()}),a.on("ResizeEditor ResizeWindow",q(!0)),a.on("nodeChange",q(!1)),a.on("remove",function(){b.each(n(),function(a){a.panel&&a.panel.remove()}),a.contextToolbars={}}),a.shortcuts.add("ctrl+shift+e > ctrl+shift+p","",function(){var b=u(a.selection.getNode());b&&b.toolbar.panel&&b.toolbar.panel.items()[0].focus()})};return{addContextualToolbars:m}}),g("h",["d"],function(a){var b={file:{title:"File",items:"newdocument"},edit:{title:"Edit",items:"undo redo | cut copy paste pastetext | selectall"},insert:{title:"Insert",items:"|"},view:{title:"View",items:"visualaid |"},format:{title:"Format",items:"bold italic underline strikethrough superscript subscript | formats | removeformat"},table:{title:"Table"},tools:{title:"Tools"}},c=function(a,b){var c;return"|"==b?{text:"|"}:c=a[b]},d=function(d,e,f){var g,h,i,j,k;if(k=a.makeMap((e.removed_menuitems||"").split(/[ ,]/)),e.menu?(h=e.menu[f],j=!0):h=b[f],h){g={text:h.title},i=[],a.each((h.items||"").split(/[ ,]/),function(a){var b=c(d,a);b&&!k[a]&&i.push(c(d,a))}),j||a.each(d,function(a){a.context==f&&("before"==a.separator&&i.push({text:"|"}),a.prependToContext?i.unshift(a):i.push(a),"after"==a.separator&&i.push({text:"|"}))});for(var l=0;l=11},k=function(a){return!(!j()||!a.sidebars)&&a.sidebars.length>0},l=function(b){var c=a.map(b.sidebars,function(a){var c=a.settings;return{type:"button",icon:c.icon,image:c.image,tooltip:c.tooltip,onclick:i(b,a.name,b.sidebars)}});return{type:"panel",name:"sidebar",layout:"stack",classes:"sidebar",items:[{type:"toolbar",layout:"stack",classes:"sidebar-toolbar",items:c}]}};return{hasSidebar:k,createSidebar:l}}),g("j",[],function(){var a=function(a){var b=function(){a._skinLoaded=!0,a.fire("SkinLoaded")};return function(){a.initialized?b():a.on("init",b)}};return{fireSkinLoaded:a}}),g("6",["b","c","d","e","f","g","h","9","i","j","k"],function(a,b,c,d,e,f,g,h,i,j,k){var l=a.DOM,m=function(a){return function(b){a.find("*").disabled("readonly"===b.mode)}},n=function(a){return{type:"panel",name:"iframe",layout:"stack",classes:"edit-area",border:a,html:""}},o=function(a){return{type:"panel",layout:"stack",classes:"edit-aria-container",border:"1 0 0 0",items:[n("0"),i.createSidebar(a)]}},p=function(a,c,p){var q,r,s,t=a.settings;return p.skinUiCss&&l.styleSheetLoader.load(p.skinUiCss,j.fireSkinLoaded(a)),q=c.panel=b.create({type:"panel",role:"application",classes:"tinymce",style:"visibility: hidden",layout:"stack",border:1,items:[t.menubar===!1?null:{type:"menubar",border:"0 0 1 0",items:g.createMenuButtons(a)},k.createToolbars(a,t.toolbar_items_size),i.hasSidebar(a)?o(a):n("1 0 0 0")]}),t.resize!==!1&&(r={type:"resizehandle",direction:t.resize,onResizeStart:function(){var b=a.getContentAreaContainer().firstChild;s={width:b.clientWidth,height:b.clientHeight}},onResize:function(b){"both"===t.resize?h.resizeTo(a,s.width+b.deltaX,s.height+b.deltaY):h.resizeTo(a,null,s.height+b.deltaY)}}),t.statusbar!==!1&&q.add({type:"panel",name:"statusbar",classes:"statusbar",layout:"flow",border:"1 0 0 0",ariaRoot:!0,items:[{type:"elementpath",editor:a},r]}),a.fire("BeforeRenderUI"),a.on("SwitchMode",m(q)),q.renderBefore(p.targetNode).reflow(),t.readonly&&a.setMode("readonly"),p.width&&l.setStyle(q.getEl(),"width",p.width),a.on("remove",function(){q.remove(),q=null}),d.addKeys(a,q),f.addContextualToolbars(a),e.setup(a),{iframeContainer:q.find("#iframe")[0].getEl(),editorContainer:q.getEl()}};return{render:p}}),g("l",["a"],function(a){return a("tinymce.ui.FloatPanel")}),g("7",["d","c","b","l","k","h","g","e","j"],function(a,b,c,d,e,f,g,h,i){var j=function(a,j,k){var l,m,n=a.settings,o=c.DOM;n.fixed_toolbar_container&&(m=o.select(n.fixed_toolbar_container)[0]);var p=function(){if(l&&l.moveRel&&l.visible()&&!l._fixed){var b=a.selection.getScrollContainer(),c=a.getBody(),d=0,e=0;if(b){var f=o.getPos(c),g=o.getPos(b);d=Math.max(0,g.x-f.x),e=Math.max(0,g.y-f.y)}l.fixed(!1).moveRel(c,a.rtl?["tr-br","br-tr"]:["tl-bl","bl-tl","tr-br"]).moveBy(d,e)}},q=function(){l&&(l.show(),p(),o.addClass(a.getBody(),"mce-edit-focus"))},r=function(){l&&(l.hide(),d.hideAll(),o.removeClass(a.getBody(),"mce-edit-focus"))},s=function(){return l?void(l.visible()||q()):(l=j.panel=b.create({type:m?"panel":"floatpanel",role:"application",classes:"tinymce tinymce-inline",layout:"flex",direction:"column",align:"stretch",autohide:!1,autofix:!0,fixed:!!m,border:1,items:[n.menubar===!1?null:{type:"menubar",border:"0 0 1 0",items:f.createMenuButtons(a)},e.createToolbars(a,n.toolbar_items_size)]}),a.fire("BeforeRenderUI"),l.renderTo(m||document.body).reflow(),h.addKeys(a,l),q(),g.addContextualToolbars(a),a.on("nodeChange",p),a.on("activate",q),a.on("deactivate",r),void a.nodeChanged())};return n.content_editable=!0,a.on("focus",function(){k.skinUiCss?o.styleSheetLoader.load(k.skinUiCss,s,s):s()}),a.on("blur hide",r),a.on("remove",function(){l&&(l.remove(),l=null)}),k.skinUiCss&&o.styleSheetLoader.load(k.skinUiCss,i.fireSkinLoaded(a)),{}};return{render:j}}),g("m",["a"],function(a){return a("tinymce.ui.Throbber")}),g("8",["m"],function(a){var b=function(b,c){var d;b.on("ProgressState",function(b){d=d||new a(c.panel.getEl("body")),b.state?d.show(b.time):d.hide()})};return{setup:b}}),g("0",["1","2","3","4","5","6","7","8","9"],function(a,b,c,d,e,f,g,h,i){var j=b.ThemeManager;e.appendTo(a.tinymce?a.tinymce:{});var k=function(a,b,d){var e=a.settings,i=e.skin!==!1&&(e.skin||"lightgray");if(i){var j=e.skin_url;j=j?a.documentBaseURI.toAbsolute(j):c.baseURL+"/skins/"+i,d.skinUiCss=j+"/skin.min.css",a.contentCSS.push(j+"/content"+(a.inline?".inline":"")+".min.css")}return h.setup(a,b),e.inline?g.render(a,b,d):f.render(a,b,d)};return j.add("modern",function(a){return{renderUI:function(b){return k(a,this,b)},resizeTo:function(b,c){return i.resizeTo(a,b,c)},resizeBy:function(b,c){return i.resizeBy(a,b,c)}}}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/tinyMCE/tinymce.min.js b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/tinymce.min.js new file mode 100644 index 0000000..a5707d1 --- /dev/null +++ b/packages/Webkul/Admin/publishable/assets/js/tinyMCE/tinymce.min.js @@ -0,0 +1,16 @@ +// 4.6.1 (2017-05-10) +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i=d.x&&f.x+f.w<=d.w+d.x&&f.y>=d.y&&f.y+f.h<=d.h+d.y)return e[g];return null}function c(a,b,c){return f(a.x-b,a.y-c,a.w+2*b,a.h+2*c)}function d(a,b){var c,d,e,g;return c=i(a.x,b.x),d=i(a.y,b.y),e=h(a.x+a.w,b.x+b.w),g=h(a.y+a.h,b.y+b.h),e-c<0||g-d<0?null:f(c,d,e-c,g-d)}function e(a,b,c){var d,e,g,h,j,k,l,m,n,o;return j=a.x,k=a.y,l=a.x+a.w,m=a.y+a.h,n=b.x+b.w,o=b.y+b.h,d=i(0,b.x-j),e=i(0,b.y-k),g=i(0,l-n),h=i(0,m-o),j+=d,k+=e,c&&(l+=d,m+=e,j-=g,k-=h),l-=g,m-=h,f(j,k,l-j,m-k)}function f(a,b,c,d){return{x:a,y:b,w:c,h:d}}function g(a){return f(a.left,a.top,a.width,a.height)}var h=Math.min,i=Math.max,j=Math.round;return{inflate:c,relativePosition:a,findBestRelativePosition:b,intersect:d,clamp:e,create:f,fromClientRect:g}}),g("4",[],function(){function a(a,b){return function(){a.apply(b,arguments)}}function b(b){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");if("function"!=typeof b)throw new TypeError("not a function");this._state=null,this._value=null,this._deferreds=[],h(b,a(d,this),a(e,this))}function c(a){var b=this;return null===this._state?void this._deferreds.push(a):void i(function(){var c=b._state?a.onFulfilled:a.onRejected;if(null===c)return void(b._state?a.resolve:a.reject)(b._value);var d;try{d=c(b._value)}catch(b){return void a.reject(b)}a.resolve(d)})}function d(b){try{if(b===this)throw new TypeError("A promise cannot be resolved with itself.");if(b&&("object"==typeof b||"function"==typeof b)){var c=b.then;if("function"==typeof c)return void h(a(c,b),a(d,this),a(e,this))}this._state=!0,this._value=b,f.call(this)}catch(a){e.call(this,a)}}function e(a){this._state=!1,this._value=a,f.call(this)}function f(){for(var a=0,b=this._deferreds.length;a=534;return{opera:b,webkit:c,ie:d,gecko:g,mac:h,iOS:i,android:j,contentEditable:q,transparentSrc:"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",caretAfter:8!=d,range:window.getSelection&&"Range"in window,documentMode:d&&!f?document.documentMode||7:10,fileApi:k,ceFalse:d===!1||d>8,canHaveCSP:d===!1||d>11,desktop:!l&&!m,windowsPhone:n}}),g("7",["5","6"],function(a,b){"use strict";function c(a,b,c,d){a.addEventListener?a.addEventListener(b,c,d||!1):a.attachEvent&&a.attachEvent("on"+b,c)}function d(a,b,c,d){a.removeEventListener?a.removeEventListener(b,c,d||!1):a.detachEvent&&a.detachEvent("on"+b,c)}function e(a,b){var c,d=b;return c=a.path,c&&c.length>0&&(d=c[0]),a.deepPath&&(c=a.deepPath(),c&&c.length>0&&(d=c[0])),d}function f(a,c){var d,f,g=c||{};for(d in a)k[d]||(g[d]=a[d]);if(g.target||(g.target=g.srcElement||document),b.experimentalShadowDom&&(g.target=e(a,g.target)),a&&j.test(a.type)&&a.pageX===f&&a.clientX!==f){var h=g.target.ownerDocument||document,i=h.documentElement,o=h.body;g.pageX=a.clientX+(i&&i.scrollLeft||o&&o.scrollLeft||0)-(i&&i.clientLeft||o&&o.clientLeft||0),g.pageY=a.clientY+(i&&i.scrollTop||o&&o.scrollTop||0)-(i&&i.clientTop||o&&o.clientTop||0)}return g.preventDefault=function(){g.isDefaultPrevented=n,a&&(a.preventDefault?a.preventDefault():a.returnValue=!1)},g.stopPropagation=function(){g.isPropagationStopped=n,a&&(a.stopPropagation?a.stopPropagation():a.cancelBubble=!0)},g.stopImmediatePropagation=function(){g.isImmediatePropagationStopped=n,g.stopPropagation()},l(g)===!1&&(g.isDefaultPrevented=m,g.isPropagationStopped=m,g.isImmediatePropagationStopped=m),"undefined"==typeof g.metaKey&&(g.metaKey=!1),g}function g(e,f,g){function h(){return"complete"===l.readyState||"interactive"===l.readyState&&l.body}function i(){g.domLoaded||(g.domLoaded=!0,f(m))}function j(){h()&&(d(l,"readystatechange",j),i())}function k(){try{l.documentElement.doScroll("left")}catch(b){return void a.setTimeout(k)}i()}var l=e.document,m={type:"ready"};return g.domLoaded?void f(m):(!l.addEventListener||b.ie&&b.ie<11?(c(l,"readystatechange",j),l.documentElement.doScroll&&e.self===e.top&&k()):h()?i():c(e,"DOMContentLoaded",i),void c(e,"load",i))}function h(){function a(a,b){var c,d,e,f,g=m[b];if(c=g&&g[a.type])for(d=0,e=c.length;dv.cacheLength&&delete a[b.shift()],a[c+" "]=d}var b=[];return a}function c(a){return a[M]=!0,a}function d(a){var b=F.createElement("div");try{return!!a(b)}catch(a){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function e(a,b){for(var c=a.split("|"),d=a.length;d--;)v.attrHandle[c[d]]=b}function f(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||V)-(~a.sourceIndex||V);if(d)return d;if(c)for(;c=c.nextSibling;)if(c===b)return-1;return a?1:-1}function g(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function h(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function i(a){return c(function(b){return b=+b,c(function(c,d){for(var e,f=a([],c.length,b),g=f.length;g--;)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function j(a){return a&&typeof a.getElementsByTagName!==U&&a}function k(){}function l(a){for(var b=0,c=a.length,d="";b1?function(b,c,d){for(var e=a.length;e--;)if(!a[e](b,c,d))return!1;return!0}:a[0]}function o(b,c,d){for(var e=0,f=c.length;e-1&&(c[j]=!(g[j]=l))}}else t=p(t===g?t.splice(q,t.length):t),f?f(null,g,t,i):$.apply(g,t)})}function r(a){for(var b,c,d,e=a.length,f=v.relative[a[0].type],g=f||v.relative[" "],h=f?1:0,i=m(function(a){return a===b},g,!0),j=m(function(a){return aa.call(b,a)>-1},g,!0),k=[function(a,c,d){return!f&&(d||c!==B)||((b=c).nodeType?i(a,c,d):j(a,c,d))}];h1&&n(k),h>1&&l(a.slice(0,h-1).concat({value:" "===a[h-2].type?"*":""})).replace(ga,"$1"),c,h0,f=b.length>0,g=function(c,g,h,i,j){var k,l,m,n=0,o="0",q=c&&[],r=[],s=B,t=c||f&&v.find.TAG("*",j),u=O+=null==s?1:Math.random()||.1,w=t.length;for(j&&(B=g!==F&&g);o!==w&&null!=(k=t[o]);o++){if(f&&k){for(l=0;m=b[l++];)if(m(k,g,h)){i.push(k);break}j&&(O=u)}e&&((k=!m&&k)&&n--,c&&q.push(k))}if(n+=o,e&&o!==n){for(l=0;m=d[l++];)m(q,r,g,h);if(c){if(n>0)for(;o--;)q[o]||r[o]||(r[o]=Y.call(i));r=p(r)}$.apply(i,r),j&&!c&&r.length>0&&n+d.length>1&&a.uniqueSort(i)}return j&&(O=u,B=s),q};return e?c(g):g}var t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M="sizzle"+-new Date,N=window.document,O=0,P=0,Q=b(),R=b(),S=b(),T=function(a,b){return a===b&&(D=!0),0},U="undefined",V=1<<31,W={}.hasOwnProperty,X=[],Y=X.pop,Z=X.push,$=X.push,_=X.slice,aa=X.indexOf||function(a){for(var b=0,c=this.length;b+~]|"+ca+")"+ca+"*"),ja=new RegExp("="+ca+"*([^\\]'\"]*?)"+ca+"*\\]","g"),ka=new RegExp(fa),la=new RegExp("^"+da+"$"),ma={ID:new RegExp("^#("+da+")"),CLASS:new RegExp("^\\.("+da+")"),TAG:new RegExp("^("+da+"|[*])"),ATTR:new RegExp("^"+ea),PSEUDO:new RegExp("^"+fa),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ca+"*(even|odd|(([+-]|)(\\d*)n|)"+ca+"*(?:([+-]|)"+ca+"*(\\d+)|))"+ca+"*\\)|)","i"),bool:new RegExp("^(?:"+ba+")$","i"),needsContext:new RegExp("^"+ca+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ca+"*((?:-\\d)?\\d*)"+ca+"*\\)|)(?=[^-]|$)","i")},na=/^(?:input|select|textarea|button)$/i,oa=/^h\d$/i,pa=/^[^{]+\{\s*\[native \w/,qa=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ra=/[+~]/,sa=/'|\\/g,ta=new RegExp("\\\\([\\da-f]{1,6}"+ca+"?|("+ca+")|.)","ig"),ua=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:d<0?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)};try{$.apply(X=_.call(N.childNodes),N.childNodes),X[N.childNodes.length].nodeType}catch(a){$={apply:X.length?function(a,b){Z.apply(a,_.call(b))}:function(a,b){for(var c=a.length,d=0;a[c++]=b[d++];);a.length=c-1}}}u=a.support={},x=a.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return!!b&&"HTML"!==b.nodeName},E=a.setDocument=function(a){function b(a){try{return a.top}catch(a){}return null}var c,e=a?a.ownerDocument||a:N,g=e.defaultView;return e!==F&&9===e.nodeType&&e.documentElement?(F=e,G=e.documentElement,H=!x(e),g&&g!==b(g)&&(g.addEventListener?g.addEventListener("unload",function(){E()},!1):g.attachEvent&&g.attachEvent("onunload",function(){E()})),u.attributes=d(function(a){return a.className="i",!a.getAttribute("className")}),u.getElementsByTagName=d(function(a){return a.appendChild(e.createComment("")),!a.getElementsByTagName("*").length}),u.getElementsByClassName=pa.test(e.getElementsByClassName),u.getById=d(function(a){return G.appendChild(a).id=M,!e.getElementsByName||!e.getElementsByName(M).length}),u.getById?(v.find.ID=function(a,b){if(typeof b.getElementById!==U&&H){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},v.filter.ID=function(a){var b=a.replace(ta,ua);return function(a){return a.getAttribute("id")===b}}):(delete v.find.ID,v.filter.ID=function(a){var b=a.replace(ta,ua);return function(a){var c=typeof a.getAttributeNode!==U&&a.getAttributeNode("id");return c&&c.value===b}}),v.find.TAG=u.getElementsByTagName?function(a,b){if(typeof b.getElementsByTagName!==U)return b.getElementsByTagName(a)}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){for(;c=f[e++];)1===c.nodeType&&d.push(c);return d}return f},v.find.CLASS=u.getElementsByClassName&&function(a,b){if(H)return b.getElementsByClassName(a)},J=[],I=[],(u.qsa=pa.test(e.querySelectorAll))&&(d(function(a){a.innerHTML="",a.querySelectorAll("[msallowcapture^='']").length&&I.push("[*^$]="+ca+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||I.push("\\["+ca+"*(?:value|"+ba+")"),a.querySelectorAll(":checked").length||I.push(":checked")}),d(function(a){var b=e.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&I.push("name"+ca+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||I.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),I.push(",.*:")})),(u.matchesSelector=pa.test(K=G.matches||G.webkitMatchesSelector||G.mozMatchesSelector||G.oMatchesSelector||G.msMatchesSelector))&&d(function(a){u.disconnectedMatch=K.call(a,"div"),K.call(a,"[s!='']:x"),J.push("!=",fa)}),I=I.length&&new RegExp(I.join("|")),J=J.length&&new RegExp(J.join("|")),c=pa.test(G.compareDocumentPosition),L=c||pa.test(G.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)for(;b=b.parentNode;)if(b===a)return!0;return!1},T=c?function(a,b){if(a===b)return D=!0,0;var c=!a.compareDocumentPosition-!b.compareDocumentPosition;return c?c:(c=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&c||!u.sortDetached&&b.compareDocumentPosition(a)===c?a===e||a.ownerDocument===N&&L(N,a)?-1:b===e||b.ownerDocument===N&&L(N,b)?1:C?aa.call(C,a)-aa.call(C,b):0:4&c?-1:1)}:function(a,b){if(a===b)return D=!0,0;var c,d=0,g=a.parentNode,h=b.parentNode,i=[a],j=[b];if(!g||!h)return a===e?-1:b===e?1:g?-1:h?1:C?aa.call(C,a)-aa.call(C,b):0;if(g===h)return f(a,b);for(c=a;c=c.parentNode;)i.unshift(c);for(c=b;c=c.parentNode;)j.unshift(c);for(;i[d]===j[d];)d++;return d?f(i[d],j[d]):i[d]===N?-1:j[d]===N?1:0},e):F},a.matches=function(b,c){return a(b,null,null,c)},a.matchesSelector=function(b,c){if((b.ownerDocument||b)!==F&&E(b),c=c.replace(ja,"='$1']"),u.matchesSelector&&H&&(!J||!J.test(c))&&(!I||!I.test(c)))try{var d=K.call(b,c);if(d||u.disconnectedMatch||b.document&&11!==b.document.nodeType)return d}catch(a){}return a(c,F,null,[b]).length>0},a.contains=function(a,b){return(a.ownerDocument||a)!==F&&E(a),L(a,b)},a.attr=function(a,b){(a.ownerDocument||a)!==F&&E(a);var c=v.attrHandle[b.toLowerCase()],d=c&&W.call(v.attrHandle,b.toLowerCase())?c(a,b,!H):void 0;return void 0!==d?d:u.attributes||!H?a.getAttribute(b):(d=a.getAttributeNode(b))&&d.specified?d.value:null},a.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},a.uniqueSort=function(a){var b,c=[],d=0,e=0;if(D=!u.detectDuplicates,C=!u.sortStable&&a.slice(0),a.sort(T),D){for(;b=a[e++];)b===a[e]&&(d=c.push(e));for(;d--;)a.splice(c[d],1)}return C=null,a},w=a.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(1===e||9===e||11===e){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=w(a)}else if(3===e||4===e)return a.nodeValue}else for(;b=a[d++];)c+=w(b);return c},v=a.selectors={cacheLength:50,createPseudo:c,match:ma,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ta,ua),a[3]=(a[3]||a[4]||a[5]||"").replace(ta,ua),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(b){return b[1]=b[1].toLowerCase(),"nth"===b[1].slice(0,3)?(b[3]||a.error(b[0]),b[4]=+(b[4]?b[5]+(b[6]||1):2*("even"===b[3]||"odd"===b[3])),b[5]=+(b[7]+b[8]||"odd"===b[3])):b[3]&&a.error(b[0]),b},PSEUDO:function(a){var b,c=!a[6]&&a[2];return ma.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&ka.test(c)&&(b=y(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ta,ua).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=Q[a+" "];return b||(b=new RegExp("(^|"+ca+")"+a+"("+ca+"|$)"))&&Q(a,function(a){return b.test("string"==typeof a.className&&a.className||typeof a.getAttribute!==U&&a.getAttribute("class")||"")})},ATTR:function(b,c,d){return function(e){var f=a.attr(e,b);return null==f?"!="===c:!c||(f+="","="===c?f===d:"!="===c?f!==d:"^="===c?d&&0===f.indexOf(d):"*="===c?d&&f.indexOf(d)>-1:"$="===c?d&&f.slice(-d.length)===d:"~="===c?(" "+f+" ").indexOf(d)>-1:"|="===c&&(f===d||f.slice(0,d.length+1)===d+"-"))}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){for(;p;){for(l=b;l=l[p];)if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){for(k=q[M]||(q[M]={}),j=k[a]||[],n=j[0]===O&&j[1],m=j[0]===O&&j[2],l=n&&q.childNodes[n];l=++n&&l&&l[p]||(m=n=0)||o.pop();)if(1===l.nodeType&&++m&&l===b){k[a]=[O,n,m];break}}else if(s&&(j=(b[M]||(b[M]={}))[a])&&j[0]===O)m=j[1];else for(;(l=++n&&l&&l[p]||(m=n=0)||o.pop())&&((h?l.nodeName.toLowerCase()!==r:1!==l.nodeType)||!++m||(s&&((l[M]||(l[M]={}))[a]=[O,m]),l!==b)););return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(b,d){var e,f=v.pseudos[b]||v.setFilters[b.toLowerCase()]||a.error("unsupported pseudo: "+b);return f[M]?f(d):f.length>1?(e=[b,b,"",d],v.setFilters.hasOwnProperty(b.toLowerCase())?c(function(a,b){for(var c,e=f(a,d),g=e.length;g--;)c=aa.call(a,e[g]),a[c]=!(b[c]=e[g])}):function(a){return f(a,0,e)}):f}},pseudos:{not:c(function(a){var b=[],d=[],e=z(a.replace(ga,"$1"));return e[M]?c(function(a,b,c,d){for(var f,g=e(a,null,d,[]),h=a.length;h--;)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,c,f){return b[0]=a,e(b,null,f,d),!d.pop()}}),has:c(function(b){return function(c){return a(b,c).length>0}}),contains:c(function(a){return a=a.replace(ta,ua),function(b){return(b.textContent||b.innerText||w(b)).indexOf(a)>-1}}),lang:c(function(b){return la.test(b||"")||a.error("unsupported lang: "+b),b=b.replace(ta,ua).toLowerCase(),function(a){var c;do if(c=H?a.lang:a.getAttribute("xml:lang")||a.getAttribute("lang"))return c=c.toLowerCase(),c===b||0===c.indexOf(b+"-");while((a=a.parentNode)&&1===a.nodeType);return!1}}),target:function(a){var b=window.location&&window.location.hash;return b&&b.slice(1)===a.id},root:function(a){return a===G},focus:function(a){return a===F.activeElement&&(!F.hasFocus||F.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!v.pseudos.empty(a)},header:function(a){return oa.test(a.nodeName)},input:function(a){return na.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:i(function(){return[0]}),last:i(function(a,b){return[b-1]}),eq:i(function(a,b,c){return[c<0?c+b:c]}),even:i(function(a,b){for(var c=0;c=0;)a.push(d);return a}),gt:i(function(a,b,c){for(var d=c<0?c+b:c;++d2&&"ID"===(g=f[0]).type&&u.getById&&9===b.nodeType&&H&&v.relative[f[1].type]){if(b=(v.find.ID(g.matches[0].replace(ta,ua),b)||[])[0],!b)return c;k&&(b=b.parentNode),a=a.slice(f.shift().value.length)}for(e=ma.needsContext.test(a)?0:f.length;e--&&(g=f[e],!v.relative[h=g.type]);)if((i=v.find[h])&&(d=i(g.matches[0].replace(ta,ua),ra.test(f[0].type)&&j(b.parentNode)||b))){if(f.splice(e,1),a=d.length&&l(f),!a)return $.apply(c,d),c;break}}return(k||z(a,m))(d,b,!H,c,ra.test(a)&&j(b.parentNode)||b),c},u.sortStable=M.split("").sort(T).join("")===M,u.detectDuplicates=!!D,E(),u.sortDetached=d(function(a){return 1&a.compareDocumentPosition(F.createElement("div"))}),d(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||e("type|href|height|width",function(a,b,c){if(!c)return a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),u.attributes&&d(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||e("value",function(a,b,c){if(!c&&"input"===a.nodeName.toLowerCase())return a.defaultValue}),d(function(a){return null==a.getAttribute("disabled")})||e(ba,function(a,b,c){var d;if(!c)return a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),a}),g("1g",[],function(){function a(a){var b,c,d=a;if(!j(a))for(d=[],b=0,c=a.length;b=0;e--)i(a,b[e],c,d);else for(e=0;e)[^>]*$|#([\w\-]*)$)/,A=a.Event,B=c.makeMap("children,contents,next,prev"),C=c.makeMap("fillOpacity fontWeight lineHeight opacity orphans widows zIndex zoom"," "),D=c.makeMap("checked compact declare defer disabled ismap multiple nohref noshade nowrap readonly selected"," "),E={"for":"htmlFor","class":"className",readonly:"readOnly"},F={"float":"cssFloat"},G={},H={},I=/^\s*|\s*$/g;return l.fn=l.prototype={constructor:l,selector:"",context:null,length:0,init:function(a,b){var c,d,e=this;if(!a)return e;if(a.nodeType)return e.context=e[0]=a,e.length=1,e;if(b&&b.nodeType)e.context=b;else{if(b)return l(a).attr(b);e.context=b=document}if(f(a)){if(e.selector=a,c="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:z.exec(a),!c)return l(b).find(a);if(c[1])for(d=h(a,q(b)).firstChild;d;)x.call(e,d),d=d.nextSibling;else{if(d=q(b).getElementById(c[2]),!d)return e;if(d.id!==c[2])return e.find(a);e.length=1,e[0]=d}}else this.add(a,!1);return e},toArray:function(){return c.toArray(this)},add:function(a,b){var c,d,e=this;if(f(a))return e.add(l(a));if(b!==!1)for(c=l.unique(e.toArray().concat(l.makeArray(a))),e.length=c.length,d=0;d1&&(B[a]||(e=l.unique(e)),0===a.indexOf("parents")&&(e=e.reverse())),e=l(e),c?e.filter(c):e}}),o({parentsUntil:function(a,b){return r(a,"parentNode",b)},nextUntil:function(a,b){return s(a,"nextSibling",1,b).slice(1)},prevUntil:function(a,b){return s(a,"previousSibling",1,b).slice(1)}},function(a,b){l.fn[a]=function(c,d){var e=this,f=[];return e.each(function(){var a=b.call(f,this,c,f);a&&(l.isArray(a)?f.push.apply(f,a):f.push(a))}),this.length>1&&(f=l.unique(f),0!==a.indexOf("parents")&&"prevUntil"!==a||(f=f.reverse())),f=l(f),d?f.filter(d):f}}),l.fn.is=function(a){return!!a&&this.filter(a).length>0},l.fn.init.prototype=l.fn,l.overrideDefaults=function(a){function b(d,e){return c=c||a(),0===arguments.length&&(d=c.element),e||(e=c.context),new b.fn.init(d,e)}var c;return l.extend(b,this),b},d.ie&&d.ie<8&&(u(G,"get",{maxlength:function(a){var b=a.maxLength;return 2147483647===b?v:b},size:function(a){var b=a.size;return 20===b?v:b},"class":function(a){return a.className},style:function(a){var b=a.style.cssText;return 0===b.length?v:b}}),u(G,"set",{"class":function(a,b){a.className=b},style:function(a,b){a.style.cssText=b}})),d.ie&&d.ie<9&&(F["float"]="styleFloat",u(H,"set",{opacity:function(a,b){var c=a.style;null===b||""===b?c.removeAttribute("filter"):(c.zoom=1,c.filter="alpha(opacity="+100*b+")")}})),l.attrHooks=G,l.cssHooks=H,l}),g("b",[],function(){return function(a,b){function c(a,b,c,d){function e(a){return a=parseInt(a,10).toString(16),a.length>1?a:"0"+a}return"#"+e(b)+e(c)+e(d)}var d,e,f,g,h=/rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi,i=/(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi,j=/\s*([^:]+):\s*([^;]+);?/g,k=/\s+$/,l={},m="\ufeff";for(a=a||{},b&&(f=b.getValidStyles(),g=b.getInvalidStyles()),e=("\\\" \\' \\; \\: ; : "+m).split(" "),d=0;d-1&&c||(w[a+b]=d==-1?i[0]:i.join(" "),delete w[a+"-top"+b],delete w[a+"-right"+b],delete w[a+"-bottom"+b],delete w[a+"-left"+b])}}function f(a){var b,c=w[a];if(c){for(c=c.split(" "),b=c.length;b--;)if(c[b]!==c[0])return!1;return w[a]=c[0],!0}}function g(a,b,c,d){f(b)&&f(c)&&f(d)&&(w[a]=w[b]+" "+w[c]+" "+w[d],delete w[b],delete w[c],delete w[d])}function n(a){return v=!0,l[a]}function o(a,b){return v&&(a=a.replace(/\uFEFF[0-9]/g,function(a){return l[a]})),b||(a=a.replace(/\\([\'\";:])/g,"$1")),a}function p(a){return String.fromCharCode(parseInt(a.slice(1),16))}function q(a){return a.replace(/\\[0-9a-f]+/gi,p)}function r(b,c,d,e,f,g){if(f=f||g)return f=o(f),"'"+f.replace(/\'/g,"\\'")+"'";if(c=o(c||d||e),!a.allow_script_urls){var h=c.replace(/[\s\r\n]+/g,"");if(/(java|vb)script:/i.test(h))return"";if(!a.allow_svg_data_urls&&/^data:image\/svg/i.test(h))return""}return x&&(c=x.call(y,c,"style")),"url('"+c.replace(/\'/g,"\\'")+"')"}var s,t,u,v,w={},x=a.url_converter,y=a.url_converter_scope||this;if(b){for(b=b.replace(/[\u0000-\u001F]/g,""),b=b.replace(/\\[\"\';:\uFEFF]/g,n).replace(/\"[^\"]+\"|\'[^\']+\'/g,function(a){return a.replace(/[;:]/g,n)});s=j.exec(b);)if(j.lastIndex=s.index+s[0].length,t=s[1].replace(k,"").toLowerCase(),u=s[2].replace(k,""),t&&u){if(t=q(t),u=q(u),t.indexOf(m)!==-1||t.indexOf('"')!==-1)continue;if(!a.allow_script_urls&&("behavior"==t||/expression\s*\(|\/\*|\*\//.test(u)))continue;"font-weight"===t&&"700"===u?u="bold":"color"!==t&&"background-color"!==t||(u=u.toLowerCase()),u=u.replace(h,c),u=u.replace(i,r),w[t]=v?o(u,!0):u}e("border","",!0),e("border","-width"),e("border","-color"),e("border","-style"),e("padding",""),e("margin",""),g("border","border-width","border-style","border-color"),"medium none"===w.border&&delete w.border,"none"===w["border-image"]&&delete w["border-image"]}return w},serialize:function(a,b){function c(b){var c,d,e,g;if(c=f[b])for(d=0,e=c.length;d0?" ":"")+b+": "+g+";")}function d(a,b){var c;return c=g["*"],(!c||!c[a])&&(c=g[b],!c||!c[a])}var e,h,i="";if(b&&f)c("*"),c(b);else for(e in a)h=a[e],!h||g&&!d(e,b)||(i+=(i.length>0?" ":"")+e+": "+h+";");return i}}}}),g("c",[],function(){return function(a,b){function c(a,c,d,e){var f,g;if(a){if(!e&&a[c])return a[c];if(a!=b){if(f=a[d])return f;for(g=a.parentNode;g&&g!=b;g=g.parentNode)if(f=g[d])return f}}}function d(a,c,d,e){var f,g,h;if(a){if(f=a[d],b&&f===b)return;if(f){if(!e)for(h=f[c];h;h=h[c])if(!h[c])return h;return f}if(g=a.parentNode,g&&g!==b)return g}}var e=a;this.current=function(){return e},this.next=function(a){return e=c(e,"firstChild","nextSibling",a)},this.prev=function(a){return e=c(e,"lastChild","previousSibling",a)},this.prev2=function(a){return e=d(e,"lastChild","previousSibling",a)}}}),g("d",["9"],function(a){function b(a){var b;return b=document.createElement("div"),b.innerHTML=a,b.textContent||b.innerText||a}function c(a,b){var c,d,f,g={};if(a){for(a=a.split(","),b=b||10,c=0;c\"\u0060\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,i=/[<>&\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,j=/[<>&\"\']/g,k=/&#([a-z0-9]+);?|&([a-z0-9]+);/gi,l={128:"\u20ac",130:"\u201a",131:"\u0192",132:"\u201e",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02c6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017d",145:"\u2018",146:"\u2019",147:"\u201c",148:"\u201d",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02dc",153:"\u2122",154:"\u0161",155:"\u203a",156:"\u0153",158:"\u017e",159:"\u0178"};e={'"':""","'":"'","<":"<",">":">","&":"&","`":"`"},f={"<":"<",">":">","&":"&",""":'"',"'":"'"},d=c("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32);var m={encodeRaw:function(a,b){return a.replace(b?h:i,function(a){return e[a]||a})},encodeAllRaw:function(a){return(""+a).replace(j,function(a){return e[a]||a})},encodeNumeric:function(a,b){return a.replace(b?h:i,function(a){return a.length>1?"&#"+(1024*(a.charCodeAt(0)-55296)+(a.charCodeAt(1)-56320)+65536)+";":e[a]||"&#"+a.charCodeAt(0)+";"})},encodeNamed:function(a,b,c){return c=c||d,a.replace(b?h:i,function(a){return e[a]||c[a]||a})},getEncodeFunc:function(a,b){function f(a,c){return a.replace(c?h:i,function(a){return void 0!==e[a]?e[a]:void 0!==b[a]?b[a]:a.length>1?"&#"+(1024*(a.charCodeAt(0)-55296)+(a.charCodeAt(1)-56320)+65536)+";":"&#"+a.charCodeAt(0)+";"})}function j(a,c){return m.encodeNamed(a,c,b)}return b=c(b)||d,a=g(a.replace(/\+/g,",")),a.named&&a.numeric?f:a.named?b?j:m.encodeNamed:a.numeric?m.encodeNumeric:m.encodeRaw},decode:function(a){return a.replace(k,function(a,c){return c?(c="x"===c.charAt(0).toLowerCase()?parseInt(c.substr(1),16):parseInt(c,10),c>65535?(c-=65536,String.fromCharCode(55296+(c>>10),56320+(1023&c))):l[c]||String.fromCharCode(c)):f[a]||d[a]||b(a)})}};return m}),g("1h",["9"],function(a){function b(c){function d(){return J.createDocumentFragment()}function e(a,b){x(N,a,b)}function f(a,b){x(O,a,b)}function g(a){e(a.parentNode,U(a))}function h(a){e(a.parentNode,U(a)+1)}function i(a){f(a.parentNode,U(a))}function j(a){f(a.parentNode,U(a)+1)}function k(a){a?(I[R]=I[Q],I[S]=I[P]):(I[Q]=I[R],I[P]=I[S]),I.collapsed=N}function l(a){g(a),j(a)}function m(a){e(a,0),f(a,1===a.nodeType?a.childNodes.length:a.nodeValue.length)}function n(a,b){var c=I[Q],d=I[P],e=I[R],f=I[S],g=b.startContainer,h=b.startOffset,i=b.endContainer,j=b.endOffset;return 0===a?w(c,d,g,h):1===a?w(e,f,g,h):2===a?w(e,f,i,j):3===a?w(c,d,i,j):void 0}function o(){y(M)}function p(){return y(K)}function q(){return y(L)}function r(a){var b,d,e=this[Q],f=this[P];3!==e.nodeType&&4!==e.nodeType||!e.nodeValue?(e.childNodes.length>0&&(d=e.childNodes[f]),d?e.insertBefore(a,d):3==e.nodeType?c.insertAfter(a,e):e.appendChild(a)):f?f>=e.nodeValue.length?c.insertAfter(a,e):(b=e.splitText(f),e.parentNode.insertBefore(a,b)):e.parentNode.insertBefore(a,e)}function s(a){var b=I.extractContents();I.insertNode(a),a.appendChild(b),I.selectNode(a)}function t(){return T(new b(c),{startContainer:I[Q],startOffset:I[P],endContainer:I[R],endOffset:I[S],collapsed:I.collapsed,commonAncestorContainer:I.commonAncestorContainer})}function u(a,b){var c;if(3==a.nodeType)return a;if(b<0)return a;for(c=a.firstChild;c&&b>0;)--b,c=c.nextSibling;return c?c:a}function v(){return I[Q]==I[R]&&I[P]==I[S]}function w(a,b,d,e){var f,g,h,i,j,k;if(a==d)return b==e?0:b0&&I.collapse(a):I.collapse(a),I.collapsed=v(),I.commonAncestorContainer=c.findCommonAncestor(I[Q],I[R])}function y(a){var b,c,d,e,f,g,h,i=0,j=0;if(I[Q]==I[R])return z(a);for(b=I[R],c=b.parentNode;c;b=c,c=c.parentNode){if(c==I[Q])return A(b,a);++i}for(b=I[Q],c=b.parentNode;c;b=c,c=c.parentNode){if(c==I[R])return B(b,a);++j}for(d=j-i,e=I[Q];d>0;)e=e.parentNode,d--;for(f=I[R];d<0;)f=f.parentNode,d++;for(g=e.parentNode,h=f.parentNode;g!=h;g=g.parentNode,h=h.parentNode)e=g,f=h;return C(e,f,a)}function z(a){var b,c,e,f,g,h,i,j,k;if(a!=M&&(b=d()),I[P]==I[S])return b;if(3==I[Q].nodeType){if(c=I[Q].nodeValue,e=c.substring(I[P],I[S]),a!=L&&(f=I[Q],j=I[P],k=I[S]-I[P],0===j&&k>=f.nodeValue.length-1?f.parentNode.removeChild(f):f.deleteData(j,k),I.collapse(N)),a==M)return;return e.length>0&&b.appendChild(J.createTextNode(e)),b}for(f=u(I[Q],I[P]),g=I[S]-I[P];f&&g>0;)h=f.nextSibling,i=G(f,a),b&&b.appendChild(i),--g,f=h;return a!=L&&I.collapse(N),b}function A(a,b){var c,e,f,g,h,i;if(b!=M&&(c=d()),e=D(a,b),c&&c.appendChild(e),f=U(a),g=f-I[P],g<=0)return b!=L&&(I.setEndBefore(a),I.collapse(O)),c;for(e=a.previousSibling;g>0;)h=e.previousSibling,i=G(e,b),c&&c.insertBefore(i,c.firstChild),--g,e=h;return b!=L&&(I.setEndBefore(a),I.collapse(O)),c}function B(a,b){var c,e,f,g,h,i;for(b!=M&&(c=d()),f=E(a,b),c&&c.appendChild(f),e=U(a),++e,g=I[S]-e,f=a.nextSibling;f&&g>0;)h=f.nextSibling,i=G(f,b),c&&c.appendChild(i),--g,f=h;return b!=L&&(I.setStartAfter(a),I.collapse(N)),c}function C(a,b,c){var e,f,g,h,i,j,k;for(c!=M&&(f=d()),e=E(a,c),f&&f.appendChild(e),g=U(a),h=U(b),++g,i=h-g,j=a.nextSibling;i>0;)k=j.nextSibling,e=G(j,c),f&&f.appendChild(e),j=k,--i;return e=D(b,c),f&&f.appendChild(e),c!=L&&(I.setStartAfter(a),I.collapse(N)),f}function D(a,b){var c,d,e,f,g,h=u(I[R],I[S]-1),i=h!=I[R];if(h==a)return F(h,i,O,b);for(c=h.parentNode,d=F(c,O,O,b);c;){for(;h;)e=h.previousSibling,f=F(h,i,O,b),b!=M&&d.insertBefore(f,d.firstChild),i=N,h=e;if(c==a)return d;h=c.previousSibling,c=c.parentNode,g=F(c,O,O,b),b!=M&&g.appendChild(d),d=g}}function E(a,b){var c,d,e,f,g,h=u(I[Q],I[P]),i=h!=I[Q];if(h==a)return F(h,i,N,b);for(c=h.parentNode,d=F(c,O,N,b);c;){for(;h;)e=h.nextSibling,f=F(h,i,N,b),b!=M&&d.appendChild(f),i=N,h=e;if(c==a)return d;h=c.nextSibling,c=c.parentNode,g=F(c,O,N,b),b!=M&&g.appendChild(d),d=g}}function F(a,b,d,e){var f,g,h,i,j;if(b)return G(a,e);if(3==a.nodeType){if(f=a.nodeValue,d?(i=I[P],g=f.substring(i),h=f.substring(0,i)):(i=I[S],g=f.substring(0,i),h=f.substring(i)),e!=L&&(a.nodeValue=h),e==M)return;return j=c.clone(a,O),j.nodeValue=g,j}if(e!=M)return c.clone(a,O)}function G(a,b){return b!=M?b==L?c.clone(a,N):a:void a.parentNode.removeChild(a)}function H(){return c.create("body",null,q()).outerText}var I=this,J=c.doc,K=0,L=1,M=2,N=!0,O=!1,P="startOffset",Q="startContainer",R="endContainer",S="endOffset",T=a.extend,U=c.nodeIndex;return T(I,{startContainer:J,startOffset:0,endContainer:J,endOffset:0,collapsed:N,commonAncestorContainer:J,START_TO_START:0,START_TO_END:1,END_TO_END:2,END_TO_START:3,setStart:e,setEnd:f,setStartBefore:g,setStartAfter:h,setEndBefore:i,setEndAfter:j,collapse:k,selectNode:l,selectNodeContents:m,compareBoundaryPoints:n,deleteContents:o,extractContents:p,cloneContents:q,insertNode:r,surroundContents:s,cloneRange:t,toStringIE:H}),I}return b.prototype.toString=function(){return this.toStringIE()},b}),h("4i",Array),h("4j",Error),g("3s",["4i","4j"],function(a,b){var c=function(){},d=function(a,b){return function(){return a(b.apply(null,arguments))}},e=function(a){return function(){return a}},f=function(a){return a},g=function(a,b){return a===b},h=function(b){for(var c=new a(arguments.length-1),d=1;d-1},h=function(a,b){return t(a,b).isSome()},i=function(a,b){for(var c=[],d=0;d=0;c--){var d=a[c];b(d,c,a)}},n=function(a,b){for(var c=[],d=[],e=0,f=a.length;e=b.length&&c(d)}};0===b.length?c([]):a.each(b,function(a,b){a.get(f(b))})})};return{par:b}}),g("3u",["3r","3t","4n"],function(a,b,c){var d=function(a){return c.par(a,b.nu)},e=function(b,c){var e=a.map(b,c);return d(e)},f=function(a,b){return function(c){return b(c).bind(a)}};return{par:d,mapM:e,compose:f}}),g("3v",["3s","4h"],function(a,b){var c=function(d){var e=function(a){return d===a},f=function(a){return c(d)},g=function(a){return c(d)},h=function(a){return c(a(d))},i=function(a){a(d)},j=function(a){return a(d)},k=function(a,b){return b(d)},l=function(a){return a(d)},m=function(a){return a(d)},n=function(){return b.some(d)};return{is:e,isValue:a.constant(!0),isError:a.constant(!1),getOr:a.constant(d),getOrThunk:a.constant(d),getOrDie:a.constant(d),or:f,orThunk:g,fold:k,map:h,each:i,bind:j,exists:l,forall:m,toOption:n}},d=function(c){var e=function(a){return a()},f=function(){return a.die(c)()},g=function(a){return a},h=function(a){return a()},i=function(a){return d(c)},j=function(a){return d(c)},k=function(a,b){return a(c)};return{is:a.constant(!1),isValue:a.constant(!1),isError:a.constant(!0),getOr:a.identity,getOrThunk:e,getOrDie:f,or:g,orThunk:h,fold:k,map:i,each:a.noop,bind:j,exists:a.constant(!1),forall:a.constant(!0),toOption:b.none}};return{value:c,error:d}}),g("1i",["3r","3s","3t","3u","3v","5","9"],function(a,b,c,d,e,f,g){"use strict";return function(h,i){function j(a){h.getElementsByTagName("head")[0].appendChild(a)}function k(a,b,c){function d(){for(var a=t.passed,b=a.length;b--;)a[b]();t.status=2,t.passed=[],t.failed=[]}function e(){for(var a=t.failed,b=a.length;b--;)a[b]();t.status=3,t.passed=[],t.failed=[]}function i(){var a=navigator.userAgent.match(/WebKit\/(\d*)/);return!!(a&&a[1]<536)}function k(a,b){a()||((new Date).getTime()-s0)return r=h.createElement("style"), +r.textContent='@import "'+a+'"',p(),void j(r);o()}j(q),q.href=a}}var l,m=0,n={};i=i||{},l=i.maxLoadTime||5e3;var o=function(a){return c.nu(function(c){k(a,b.compose(c,b.constant(e.value(a))),b.compose(c,b.constant(e.error(a))))})},p=function(a){return a.fold(b.identity,b.identity)},q=function(b,c,e){d.par(a.map(b,o)).get(function(b){var d=a.partition(b,function(a){return a.isValue()});d.fail.length>0?e(d.fail.map(p)):c(d.pass.map(p))})};return{load:k,loadAll:q}}}),g("j",["9"],function(a){function b(b,c){return b=a.trim(b),b?b.split(c||" "):[]}function c(a){function c(a,c,d){function e(a,b){var c,d,e={};for(c=0,d=a.length;c