Version 5.0.0 beta 9

This commit is contained in:
Neo committed 2025-12-19 17:47:00 -08:00
1 parent 214f649f1d
commit 56979f8ee8
202 files changed
+4403 -1123

No files matched your search

+1 -1
View File
@@ -69,7 +69,7 @@ Enum
FontAwesome
Description: General icons for UI
Location: applications/core/interface/fontawesome
Included version: 6.5.1
Included version: 6.7.1
Website: https://fontawesome.com
License: https://fontawesome.com/license/free
+1 -1
View File
@@ -719,5 +719,5 @@ $lang = array(
'advise_removal_of_php8_incompatible_code' => <<<TEXT
<div style="text-align: left">We are currently in the process of migrating our platform from PHP7 to PHP8 in order to provide you with the greatest level of performance and security. We've identified and disabled one or more Applications currently installed on your site which contain PHP8 incompatible code. Refer to the AdminCP &gt; Support &gt; Get Support page for more information.<br><br>You can re-enable these Applications via the AdminCP &gt; Applications page. Please make a note of the following Applications so you are clear which have been automatically disabled via the upgrader.</div>
TEXT,
'107783_pbr_captcha' => "Post Before Register Changes"
);
+2 -2
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<javascript app="blog">
<file javascript_app="blog" javascript_location="front" javascript_path="controllers/view" javascript_name="ips.view.manageCategories.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000100"><![CDATA[/**
<file javascript_app="blog" javascript_location="front" javascript_path="controllers/view" javascript_name="ips.view.manageCategories.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000100"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -277,7 +277,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="blog" javascript_location="front" javascript_path="templates" javascript_name="ips.templates.view.js" javascript_type="template" javascript_version="5000036" javascript_position="1000050"><![CDATA[/* CLASS LIST TEMPLATES */
<file javascript_app="blog" javascript_location="front" javascript_path="templates" javascript_name="ips.templates.view.js" javascript_type="template" javascript_version="5000039" javascript_position="1000050"><![CDATA[/* CLASS LIST TEMPLATES */
ips.templates.set('blog.view.addButton', "\
<li><button type=\"button\" class=\"ipsButton ipsButton--primary ipsHide\" data-action=\"addNew\">{{#lang}}manage_cats_new_row{{/lang}}</button></li>\
");
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<language>
<app key="blog" version="5000036">
<app key="blog" version="5000039">
<word key="__app_blog" js="0">Blogs</word>
<word key="frontnavigation_blogs" js="0">Blogs</word>
<word key="__indefart_blog_entry_comment" js="0">a comment on a blog entry</word>
+4 -1
View File
@@ -285,5 +285,8 @@
"5000033": "5.0.0 Beta 7",
"5000034": "5.0.0 Beta 7",
"5000035": "5.0.0 Beta 7",
"5000036": "5.0.0 Beta 8"
"5000036": "5.0.0 Beta 8",
"5000037": "5.0.0 Beta 8",
"5000038": "5.0.0 Beta 9",
"5000039": "5.0.0 Beta 9.1"
}
@@ -11,8 +11,6 @@
namespace IPS\blog\extensions\core\GroupForm;
/* To prevent PHP errors (extending class does not exist) revealing path */
use IPS\Extensions\GroupFormAbstract;
use IPS\Helpers\Form;
use IPS\Helpers\Form\Number;
@@ -22,6 +20,7 @@ use IPS\Member\Group;
use IPS\Settings;
use function defined;
/* To prevent PHP errors (extending class does not exist) revealing path */
if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
{
header( ( $_SERVER['SERVER_PROTOCOL'] ?? 'HTTP/1.0' ) . ' 403 Forbidden' );
@@ -52,7 +51,7 @@ class Blog extends GroupFormAbstract
}
$form->add(new YesNo('g_blog_allowcomment', $group->g_blog_allowcomment));
if( $group->g_id == Settings::i()->guest_group AND Settings::i()->post_before_registering )
if( $group->g_id == Settings::i()->guest_group AND Settings::i()->post_before_registering and Settings::i()->bot_antispam_type !== 'none' )
{
Member::loggedIn()->language()->words['g_blog_allowcomment_desc'] = Member::loggedIn()->language()->addToStack('g_blog_allowcomment_guestreg');
}
@@ -0,0 +1,22 @@
{
"id": 5000037,
"name": "5.0.0 Beta 8",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": true,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,14 @@
{
"categories": {
"added": [],
"edited": [],
"removed": []
},
"settings": {
"added": [],
"edited": [
"layout_blog_view"
],
"removed": []
}
}
@@ -0,0 +1,22 @@
{
"id": 5000038,
"name": "5.0.0 Beta 9",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": true,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,14 @@
{
"categories": {
"added": [],
"edited": [],
"removed": []
},
"settings": {
"added": [],
"edited": [
"layout_blog_view"
],
"removed": []
}
}
@@ -0,0 +1,22 @@
{
"id": 5000039,
"name": "5.0.0 Beta 9.1",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": true,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,14 @@
{
"categories": {
"added": [],
"edited": [],
"removed": []
},
"settings": {
"added": [],
"edited": [
"layout_blog_view"
],
"removed": []
}
}
+2 -1
View File
@@ -804,7 +804,8 @@ class Entry extends Item implements
$response = parent::canComment( $member, $considerPostBeforeRegistering );
if( $response )
{
if ( !$member->member_id and $considerPostBeforeRegistering and Settings::i()->post_before_registering and Login::registrationType() != 'disabled' )
if ( !$member->member_id and $considerPostBeforeRegistering and Settings::i()->post_before_registering
and Login::registrationType() != 'disabled'and Settings::i()->bot_antispam_type !== 'none' )
{
return (bool) Group::load( Settings::i()->member_group )->g_blog_allowcomment;
}
+11 -11
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<javascript app="calendar">
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/browse" javascript_name="ips.browse.main.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000250"><![CDATA[/**
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/browse" javascript_name="ips.browse.main.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000250"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -110,7 +110,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/browse" javascript_name="ips.browse.monthView.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000250"><![CDATA[/**
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/browse" javascript_name="ips.browse.monthView.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000250"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -229,7 +229,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/overview" javascript_name="ips.overview.eventList.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000300"><![CDATA[/**
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/overview" javascript_name="ips.overview.eventList.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000300"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -347,7 +347,7 @@ var PER_PAGE = 16;
}
});
}(jQuery, _));]]></file>
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/overview" javascript_name="ips.overview.nearMe.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000300"><![CDATA[/**
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/overview" javascript_name="ips.overview.nearMe.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000300"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -711,7 +711,7 @@ var PER_PAGE = 16;
}
});
}(jQuery, _));]]></file>
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/overview" javascript_name="ips.overview.search.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000300"><![CDATA[/**
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/overview" javascript_name="ips.overview.search.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000300"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -1265,7 +1265,7 @@ var PER_PAGE = 16;
});
}(jQuery, _));
]]></file>
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/submit" javascript_name="ips.submit.dates.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000100"><![CDATA[/**
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/submit" javascript_name="ips.submit.dates.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000100"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -1813,7 +1813,7 @@ var PER_PAGE = 16;
}
});
}(jQuery, _));]]></file>
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/venue" javascript_name="ips.venue.main.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000200"><![CDATA[/**
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/venue" javascript_name="ips.venue.main.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000200"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -1920,7 +1920,7 @@ var PER_PAGE = 16;
}
});
}(jQuery, _));]]></file>
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/view" javascript_name="ips.view.reminderButton.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000150"><![CDATA[/**
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/view" javascript_name="ips.view.reminderButton.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000150"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -2003,7 +2003,7 @@ var PER_PAGE = 16;
}
});
}(jQuery, _));]]></file>
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/view" javascript_name="ips.view.reminderForm.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000150">/**
<file javascript_app="calendar" javascript_location="front" javascript_path="controllers/view" javascript_name="ips.view.reminderForm.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000150">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -2113,7 +2113,7 @@ var PER_PAGE = 16;
});
}(jQuery, _));
</file>
<file javascript_app="calendar" javascript_location="front" javascript_path="templates" javascript_name="ips.calendar.templates.js" javascript_type="framework" javascript_version="5000036" javascript_position="1000050"><![CDATA[/**
<file javascript_app="calendar" javascript_location="front" javascript_path="templates" javascript_name="ips.calendar.templates.js" javascript_type="framework" javascript_version="5000039" javascript_position="1000050"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*/
@@ -2122,7 +2122,7 @@ var PER_PAGE = 16;
ips.templates.set('calendar.reminder.loading', " \
<div class='ipsLoading ipsLoading--tiny'></div>\
");]]></file>
<file javascript_app="calendar" javascript_location="front" javascript_path="templates" javascript_name="ips.templates.overview.js" javascript_type="template" javascript_version="5000036" javascript_position="1000050"><![CDATA[ips.templates.set("eventLoading", `
<file javascript_app="calendar" javascript_location="front" javascript_path="templates" javascript_name="ips.templates.overview.js" javascript_type="template" javascript_version="5000039" javascript_position="1000050"><![CDATA[ips.templates.set("eventLoading", `
<li class='ipsData__item ipsData__item--loading'>
<div class="ipsData__image"></div>
<div class="ipsData__content">
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<language>
<app key="calendar" version="5000036">
<app key="calendar" version="5000039">
<word key="__app_calendar" js="0">Events</word>
<word key="frontnavigation_calendar" js="0">Events</word>
<word key="__indefart_calendar_event_comment" js="0">a comment on an event</word>
+4 -1
View File
@@ -285,5 +285,8 @@
"5000033": "5.0.0 Beta 7",
"5000034": "5.0.0 Beta 7",
"5000035": "5.0.0 Beta 7",
"5000036": "5.0.0 Beta 8"
"5000036": "5.0.0 Beta 8",
"5000037": "5.0.0 Beta 8",
"5000038": "5.0.0 Beta 9",
"5000039": "5.0.0 Beta 9.1"
}
@@ -0,0 +1,22 @@
{
"id": 5000037,
"name": "5.0.0 Beta 8",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": false,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,22 @@
{
"id": 5000038,
"name": "5.0.0 Beta 9",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": false,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,22 @@
{
"id": 5000039,
"name": "5.0.0 Beta 9.1",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": false,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
+19 -19
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<javascript app="cms">
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/blocks" javascript_name="ips.blocks.form.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000100"><![CDATA[/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/blocks" javascript_name="ips.blocks.form.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000100"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -67,7 +67,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="front" javascript_path="controllers/blocks" javascript_name="ips.blocks.navigation.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000050"><![CDATA[/**
<file javascript_app="cms" javascript_location="front" javascript_path="controllers/blocks" javascript_name="ips.blocks.navigation.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000050"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -111,7 +111,7 @@
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/databases" javascript_name="ips.databases.download.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000150">/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/databases" javascript_name="ips.databases.download.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000150">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -156,7 +156,7 @@
}
});
}(jQuery, _));</file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/databases" javascript_name="ips.databases.form.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000150"><![CDATA[/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/databases" javascript_name="ips.databases.form.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000150"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -232,7 +232,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="front" javascript_path="controllers/external" javascript_name="ips.external.communication.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000150"><![CDATA[/**
<file javascript_app="cms" javascript_location="front" javascript_path="controllers/external" javascript_name="ips.external.communication.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000150"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -367,7 +367,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/fields" javascript_name="ips.fields.form.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000200"><![CDATA[/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/fields" javascript_name="ips.fields.form.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000200"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -457,7 +457,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/media" javascript_name="ips.media.main.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000300"><![CDATA[/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/media" javascript_name="ips.media.main.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000300"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -1096,7 +1096,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/pages" javascript_name="ips.pages.embed.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000250"><![CDATA[/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/pages" javascript_name="ips.pages.embed.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000250"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -1131,7 +1131,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/pages" javascript_name="ips.pages.form.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000250"><![CDATA[/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/pages" javascript_name="ips.pages.form.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000250"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -1253,7 +1253,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="front" javascript_path="controllers/records" javascript_name="ips.records.form.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000100"><![CDATA[/**
<file javascript_app="cms" javascript_location="front" javascript_path="controllers/records" javascript_name="ips.records.form.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000100"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -1365,7 +1365,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="front" javascript_path="controllers/records" javascript_name="ips.records.revisions.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000100">/**
<file javascript_app="cms" javascript_location="front" javascript_path="controllers/records" javascript_name="ips.records.revisions.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000100">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -1420,7 +1420,7 @@
}
});
}(jQuery, _));</file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.addForm.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000050">/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.addForm.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000050">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -1470,7 +1470,7 @@
}
});
}(jQuery, _));</file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.conflict.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000050">/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.conflict.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000050">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -1542,7 +1542,7 @@
}
});
}(jQuery, _));</file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.fileEditor.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000050"><![CDATA[/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.fileEditor.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000050"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -2503,7 +2503,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.fileList.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000050"><![CDATA[/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.fileList.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000050"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -2795,7 +2795,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.main.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000050"><![CDATA[/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.main.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000050"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -2964,7 +2964,7 @@
});
}(jQuery, _));]]></file>
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.variablesDialog.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000050">/**
<file javascript_app="cms" javascript_location="admin" javascript_path="controllers/templates" javascript_name="ips.templates.variablesDialog.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000050">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -3009,7 +3009,7 @@
}
});
}(jQuery, _));</file>
<file javascript_app="cms" javascript_location="admin" javascript_path="templates" javascript_name="ips.templates.media.js" javascript_type="template" javascript_version="5000036" javascript_position="1000050"><![CDATA[ips.templates.set( 'templates.media.grid', "\
<file javascript_app="cms" javascript_location="admin" javascript_path="templates" javascript_name="ips.templates.media.js" javascript_type="template" javascript_version="5000039" javascript_position="1000050"><![CDATA[ips.templates.set( 'templates.media.grid', "\
<ul class='ipsGrid ipsGrid--pages-media'>\
{{{contents}}}\
</ul>\
@@ -3026,7 +3026,7 @@ ips.templates.set( 'templates.media.noSearchResults', "\
{{#lang}}mediaNoResults{{/lang}}\
</div>\
");]]></file>
<file javascript_app="cms" javascript_location="admin" javascript_path="templates" javascript_name="ips.templates.templates.js" javascript_type="template" javascript_version="5000036" javascript_position="1000050"><![CDATA[/* TEMPLATE EDITOR TEMPLATES */
<file javascript_app="cms" javascript_location="admin" javascript_path="templates" javascript_name="ips.templates.templates.js" javascript_type="template" javascript_version="5000039" javascript_position="1000050"><![CDATA[/* TEMPLATE EDITOR TEMPLATES */
/* TEMPLATECEPTION */
ips.templates.set('templates.editor.newTab', " \
<a href='#' class='ipsTabs__tab' id='ipsTabs_elTemplateEditor_tabbar_tab_{{fileid}}' role='tab' aria-controls='ipsTabs_elTemplateEditor_tabbar_tab_{{fileid}}_panel' aria-selected='false' data-fileid='{{fileid}}' data-location='{{location}}'>{{title}} <span data-action='closeTab'><i class='fa-solid fa-xmark'></i></span></a>\
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<language>
<app key="cms" version="5000036">
<app key="cms" version="5000039">
<word key="__app_cms" js="0">Pages</word>
<word key="menutab__cms" js="0">Pages</word>
<word key="menutab__cms_icon" js="0">file</word>
+4 -1
View File
@@ -603,5 +603,8 @@
"5000033": "5.0.0 Beta 7",
"5000034": "5.0.0 Beta 7",
"5000035": "5.0.0 Beta 7",
"5000036": "5.0.0 Beta 8"
"5000036": "5.0.0 Beta 8",
"5000037": "5.0.0 Beta 8",
"5000038": "5.0.0 Beta 9",
"5000039": "5.0.0 Beta 9.1"
}
@@ -27,6 +27,7 @@ use IPS\Member;
use IPS\Node\Controller;
use IPS\Node\Model;
use IPS\Output;
use IPS\Platform\Bridge;
use IPS\Request;
use IPS\Session;
use IPS\Theme;
@@ -149,13 +150,20 @@ class blocks extends Controller
Dispatcher::i()->checkAcpPermission( 'block_add' );
$form = new Form( 'block_add_first_step', 'next');
$blockTypes = [
'plugin' => 'content_block_add_type_plugin',
'editor' => 'content_block_add_custom_type_wysiwyg',
'html' => 'content_block_add_custom_type_html',
];
if( Bridge::i()->featureIsEnabled( 'phpblocks' ) )
{
$blockTypes['php'] = 'content_block_add_custom_type_php';
}
$form->add( new Radio( 'content_block_add_type', 'plugin', FALSE, array(
'options' => array(
'plugin' => 'content_block_add_type_plugin',
'editor' => 'content_block_add_custom_type_wysiwyg',
'html' => 'content_block_add_custom_type_html',
),
'options' => $blockTypes,
'toggles' => array(
'plugin' => array( 'content_block_add_type_plugin' )
)
@@ -0,0 +1,22 @@
{
"id": 5000037,
"name": "5.0.0 Beta 8",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": false,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,22 @@
{
"id": 5000038,
"name": "5.0.0 Beta 9",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": false,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,22 @@
{
"id": 5000039,
"name": "5.0.0 Beta 9.1",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": false,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
+37 -1
View File
@@ -14,6 +14,7 @@ namespace IPS\cms\Blocks;
/* To prevent PHP errors (extending class does not exist) revealing path */
use DomainException;
use Exception;
use InvalidArgumentException;
use IPS\Application;
use IPS\cms\Pages\Page;
@@ -37,6 +38,7 @@ use IPS\Node\Model;
use IPS\Node\Permissions;
use IPS\Output;
use IPS\Patterns\ActiveRecord;
use IPS\Platform\Bridge;
use IPS\Request;
use IPS\Theme;
use IPS\Widget;
@@ -242,6 +244,20 @@ class Block extends Model implements Permissions
if ( ! isset( Store::i()->$functionName ) )
{
$content = $block->content;
if( $block->getConfig('editor') == 'php' )
{
/* If PHP blocks are disabled, stop here */
if( !Bridge::i()->featureIsEnabled( 'phpblocks' ) )
{
throw new OutOfRangeException;
}
ob_start();
eval( $content );
$content = ob_get_clean();
}
Store::i()->$functionName = Theme::compileTemplate( $content, $functionName );
}
@@ -515,6 +531,12 @@ EOF;
$block_editor = ( isset( Request::i()->block_editor ) ) ? Request::i()->block_editor : ( $this->id ? $this->getConfig('editor') : null );
$block_plugin = ( isset( Request::i()->block_plugin ) ) ? Request::i()->block_plugin : ( $this->id ? $this->plugin : null );
/* Double check that we didn't force the PHP blocks */
if( $block_editor == 'php' and !Bridge::i()->featureIsEnabled( 'phpblocks' ) )
{
$block_editor = 'html';
}
/* Build form */
$form->addTab( 'content_block_form_tab__details' );
$form->add( new Translatable( 'block_name', NULL, TRUE, array(
@@ -692,7 +714,21 @@ EOF;
}
else
{
$form->add( new Codemirror( 'block_content', htmlentities( (string) $this->content, ENT_DISALLOWED, 'UTF-8' ), FALSE, array( 'tagSource' => Url::internal( "app=cms&module=pages&controller=blocks&do=loadTags" ), "codeModeAllowedLanguages" => ["ipsphtml"]), function($val ) {
$form->add( new Codemirror( 'block_content', htmlentities( (string) $this->content, ENT_DISALLOWED, 'UTF-8' ), FALSE, array( 'tagSource' => Url::internal( "app=cms&module=pages&controller=blocks&do=loadTags" ), "codeModeAllowedLanguages" => ( $block_editor == 'php' ) ? [ "php"] : ["ipsphtml"] ), function( $val ) use( $block_editor ) {
if( $block_editor == 'php' )
{
try
{
ob_start();
@eval( $val );
ob_get_clean();
}
catch ( ParseError|Exception $e )
{
throw new DomainException( $e->getMessage() );
}
}
if ( mb_strpos( $val, '{block="' . Request::i()->block_key . '"}' ) !== FALSE )
{
throw new DomainException('block_content_recursive_error');
+28 -1
View File
@@ -18,6 +18,7 @@ use ErrorException;
use Exception;
use InvalidArgumentException;
use IPS\Application;
use IPS\Application\Module;
use IPS\cms\Databases;
use IPS\cms\extensions\core\FrontNavigation\Pages;
use IPS\cms\Templates;
@@ -1690,6 +1691,32 @@ class Page extends Model implements Permissions
) );
}
/**
* Check permissions
*
* @param mixed $permission A key which has a value in static::$permissionMap['view'] matching a column ID in core_permission_index
* @param Group|Member|null $member The member or group to check (NULL for currently logged in member)
* @param bool $considerPostBeforeRegistering If TRUE, and $member is a guest, will return TRUE if "Post Before Registering" feature is enabled
* @return bool
* @throws OutOfBoundsException If $permission does not exist in static::$permissionMap
*/
public function can( mixed $permission, Group|Member $member=NULL, bool $considerPostBeforeRegistering = TRUE ): bool
{
/* If this is a database page, check the Database module permissions.
The Dispatcher thinks we are in the Pages module and so the permission check is done on the
wrong module. */
if( ( Dispatcher::hasInstance() AND Dispatcher::i()->controllerLocation == 'front' ) and $database = $this->getDatabase() )
{
$member = $member ?: Member::loggedIn();
if( !$member->canAccessModule( Module::get( 'cms', 'database' ) ) )
{
return false;
}
}
return parent::can( $permission, $member, $considerPostBeforeRegistering );
}
/**
* Get the Database from the page
*
@@ -1984,7 +2011,7 @@ class Page extends Model implements Permissions
*/
public function getSortableName() : string
{
return $this->seo_name;
return $this->seo_name ?? '';
}
/**
+11 -1
View File
@@ -3804,7 +3804,17 @@ class Records extends Item implements
*/
public function getForumId() : int
{
return $this->_forum_forum;
return ( $this->useForumComments() ) ? $this->_forum_forum : 0;
}
/**
* Determine if the topic sync is enabled
*
* @return bool
*/
public function isTopicSyncEnabled() : bool
{
return $this->useForumComments();
}
/**
+2 -2
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<javascript app="convert">
<file javascript_app="convert" javascript_location="admin" javascript_path="controllers/convert" javascript_name="ips.convert.menu.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000100">/**
<file javascript_app="convert" javascript_location="admin" javascript_path="controllers/convert" javascript_name="ips.convert.menu.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000100">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -45,7 +45,7 @@
}
} );
}(jQuery, _));</file>
<file javascript_app="convert" javascript_location="admin" javascript_path="controllers/forms" javascript_name="ips.forms.reactionmapper.js" javascript_type="controller" javascript_version="5000036" javascript_position="1000050">/**
<file javascript_app="convert" javascript_location="admin" javascript_path="controllers/forms" javascript_name="ips.forms.reactionmapper.js" javascript_type="controller" javascript_version="5000039" javascript_position="1000050">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<language>
<app key="convert" version="5000036">
<app key="convert" version="5000039">
<word key="__app_convert" js="0">Converter</word>
<word key="menu__convert_manage" js="0">Conversions</word>
<word key="menu__convert_manage_manage_start" js="0">Start New Conversion</word>
+4 -1
View File
@@ -285,5 +285,8 @@
"5000033": "5.0.0 Beta 7",
"5000034": "5.0.0 Beta 7",
"5000035": "5.0.0 Beta 7",
"5000036": "5.0.0 Beta 8"
"5000036": "5.0.0 Beta 8",
"5000037": "5.0.0 Beta 8",
"5000038": "5.0.0 Beta 9",
"5000039": "5.0.0 Beta 9.1"
}
@@ -91,7 +91,7 @@ class RebuildGalleryImages extends QueueAbstract
$last = NULL;
foreach( new ActiveRecordIterator( Db::i()->select( '*', 'gallery_images', array( "image_id>?", $offset ), 'image_id ASC', array( 0, REBUILD_SLOW ) ), 'IPS\gallery\Image' ) AS $image )
foreach( new ActiveRecordIterator( Db::i()->select( '*', 'gallery_images', array( "image_id>?", $offset ), 'image_id ASC', array( 0, REBUILD_INTENSE ) ), 'IPS\gallery\Image' ) AS $image )
{
$data['completed']++;
@@ -149,7 +149,7 @@ class manage extends Controller
try
{
$classname = get_class( $app->getSource() );
$classname = get_class( $app->getSource( true, false ) );
/* @var Software $classname */
return $classname::softwareName();
@@ -0,0 +1,22 @@
{
"id": 5000037,
"name": "5.0.0 Beta 8",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": false,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,22 @@
{
"id": 5000038,
"name": "5.0.0 Beta 9",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": false,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,22 @@
{
"id": 5000039,
"name": "5.0.0 Beta 9.1",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": false,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -1419,7 +1419,7 @@ class Core extends Library
}
catch( OutOfRangeException $e )
{
Db::i()->delete( 'core_attachments', array( "attach_id=?", $id ) );
Db::i()->delete( 'core_attachments', array( "attach_id=?", $inserted_id ) );
$this->software->app->log( 'attachment_missing_parent', __METHOD__, App::LOG_WARNING, $id );
return FALSE;
}
@@ -350,22 +350,24 @@ class Smf extends Software
$poll_data = $this->db->select( '*', 'polls', array( "id_poll=?", $row['id_poll'] ) )->first();
$options = $this->db->select( '*', 'poll_choices', array( "id_poll=?", $poll_data['id_poll'] ) );
$choices = array();
$votes = 0;
$choices = $votes = $search = [];
$index = 1;
foreach( $options AS $option )
{
$choices[ $option['id_choice'] ] = $option['label'];
$votes += $option['votes'];
$choices[ $index ] = $option['label'];
$votes[ $index ] = $option['votes'];
$search[ $index ] = $option['id_choice'];
$index++;
}
$member_votes = array();
foreach( $this->db->select( '*', 'log_polls', array( "id_poll=?", $poll_data['id_poll'] ) ) AS $vote )
{
$member_votes[$vote['id_member']] = array(
$member_votes[ $vote['id_member'] ] = [
'member_id' => $vote['id_member'],
'member_choices' => array( $vote['id_choice'] )
);
'member_choices' => [ 1 => array_search( $vote['id_choice'], $search ) ]
];
}
$poll = array(
+37 -24
View File
@@ -206,6 +206,7 @@
"geo",
"giphy",
"indexnow",
"integration",
"mapbox",
"maps",
"matomo",
@@ -216,8 +217,7 @@
"sendgrid",
"spam",
"tag manager",
"zapier",
"integration"
"zapier"
]
},
"app=core&module=applications&controller=enhancements&do=edit&id=core_FacebookPixel": {
@@ -266,8 +266,8 @@
"lang_key": "menu__core_applications_menu",
"restriction": "menu_manage",
"keywords": [
"menu manager",
"header",
"menu manager",
"navigation"
]
},
@@ -455,9 +455,9 @@
"lang_key": "menu__core_discovery_streams",
"restriction": "streams_manage",
"keywords": [
"activity stream",
"stream subscriptions",
"streams",
"activity stream"
"streams"
]
},
"app=core&module=discovery&controller=tags": {
@@ -794,8 +794,8 @@
"keywords": [
"karma",
"like",
"reputation",
"reactions"
"reactions",
"reputation"
]
},
"app=core&module=members&controller=groups&searchResult=g_search_flood": {
@@ -1488,7 +1488,11 @@
"restriction": "spam_manage",
"keywords": [
"spam",
"spammers"
"spammers",
"delete guest content",
"delete guest posts",
"guest content",
"guest posts"
]
},
"app=core&module=moderation&controller=spam&do=serviceLogs": {
@@ -1508,16 +1512,6 @@
"security question"
]
},
"app=core&module=moderation&controller=spam&searchResult=guest_captcha": {
"lang_key": "guest_captcha_search_target",
"restriction": "spam_manage",
"keywords": [
"delete guest content",
"delete guest posts",
"guest content",
"guest posts"
]
},
"app=core&module=moderation&controller=spam&tab=captcha": {
"lang_key": "spamprevention_captcha",
"restriction": "spam_manage",
@@ -1662,9 +1656,9 @@
"restriction": "mycharts_manage",
"keywords": [
"charts",
"saved charts",
"statistics",
"stats",
"saved charts"
"stats"
]
},
"app=core&module=overview&controller=notifications&do=settings": {
@@ -1757,7 +1751,8 @@
"reddit",
"share links",
"stumbleupon",
"twitter"
"twitter",
"tiktok"
]
},
"app=core&module=settings&controller=advanced": {
@@ -2076,7 +2071,10 @@
"facebook",
"social profile",
"twitter",
"x"
"x",
"bluesky",
"youtube",
"tiktok"
]
},
"app=core&module=settings&controller=general&searchResult=form_site_twitter_id": {
@@ -2179,6 +2177,14 @@
"coppa"
]
},
"app=core&module=settings&controller=login&tab=settings&searchResult=form_login_after_inactivity_notification": {
"lang_key": "login_after_inactivity_notification",
"restriction": "login_access",
"keywords": [
"dormant",
"email"
]
},
"app=core&module=settings&controller=login&tab=settings&searchResult=form_new_device_email": {
"lang_key": "new_device_email",
"restriction": "login_manage",
@@ -2255,8 +2261,8 @@
"restriction": null,
"keywords": [
"editor",
"posting",
"editor permissions"
"editor permissions",
"posting"
]
},
"app=core&module=settings&controller=posting&searchResult=attach_allowed_extensions": {
@@ -2547,6 +2553,13 @@
"iframe"
]
},
"app=core&module=settings&controller=posting&tab=simplifiedMode&searchResult=form_editor_r__table": {
"lang_key": "editor_r__table",
"restriction": null,
"keywords": [
"table"
]
},
"app=core&module=settings&controller=posting&tab=tags&searchResult=tags_can_prefix": {
"lang_key": "tags_can_prefix",
"restriction": "tags_manage",
+12 -11
View File
@@ -234,7 +234,6 @@
<setting key="googletag_head_code"><![CDATA[{"key":"googletag_head_code","default":"","report":"none"}]]></setting>
<setting key="googletag_noscript_code"><![CDATA[{"key":"googletag_noscript_code","default":"","report":"none"}]]></setting>
<setting key="group_formatting"><![CDATA[{"key":"group_formatting","default":"global","report":"full"}]]></setting>
<setting key="guest_captcha"><![CDATA[{"key":"guest_captcha","default":"1","report":"full"}]]></setting>
<setting key="guest_terms_bar"><![CDATA[{"key":"guest_terms_bar","default":"","report":"full"}]]></setting>
<setting key="hcaptcha_secret"><![CDATA[{"key":"hcaptcha_secret","default":"","report":"none"}]]></setting>
<setting key="hcaptcha_sitekey"><![CDATA[{"key":"hcaptcha_sitekey","default":"","report":"bool"}]]></setting>
@@ -277,6 +276,7 @@
<setting key="letter_photos"><![CDATA[{"key":"letter_photos","default":"letters","report":"full"}]]></setting>
<setting key="link_default"><![CDATA[{"key":"link_default","default":"unread","report":"full"}]]></setting>
<setting key="links_external"><![CDATA[{"key":"links_external","default":"1","report":"full"}]]></setting>
<setting key="login_after_inactivity_notification"><![CDATA[{"key":"login_after_inactivity_notification","default":"1","report":"full"}]]></setting>
<setting key="mail_method"><![CDATA[{"key":"mail_method","default":"php","report":"full"}]]></setting>
<setting key="manifest_details"><![CDATA[{"key":"manifest_details","default":"{\"cache_key\":1692875360}","report":"bool"}]]></setting>
<setting key="mapbox"><![CDATA[{"key":"mapbox","default":"","report":"full"}]]></setting>
@@ -542,13 +542,13 @@
<acpsearch key="app=core&amp;module=applications&amp;controller=api&amp;tab=webhooks"><![CDATA[{"lang_key":"webhooks","restriction":"api_splash","keywords":["webhook"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=api&amp;tab=webhooks&amp;do=settings&amp;searchResult=webhook_logs_success"><![CDATA[{"lang_key":"webhook_logs_success","restriction":"api_splash","keywords":["webhook"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=applications"><![CDATA[{"lang_key":"menu__core_applications_applications","restriction":"app_manage","keywords":["applications","install","modules","offline","online"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=enhancements"><![CDATA[{"lang_key":"menu__core_applications_enhancements","restriction":"enhancements_manage","keywords":["analytics","bulk mail","easypost","email","enhancements","enom","geo","giphy","indexnow","mapbox","maps","matomo","maxmind","omniture","piwik","pixabay","sendgrid","spam","tag manager","zapier","integration"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=enhancements"><![CDATA[{"lang_key":"menu__core_applications_enhancements","restriction":"enhancements_manage","keywords":["analytics","bulk mail","easypost","email","enhancements","enom","geo","giphy","indexnow","integration","mapbox","maps","matomo","maxmind","omniture","piwik","pixabay","sendgrid","spam","tag manager","zapier"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=enhancements&amp;do=edit&amp;id=core_FacebookPixel"><![CDATA[{"lang_key":"enhancements__core_FacebookPixel","restriction":"enhancements_manage","keywords":["facebook","pixel"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=enhancements&amp;do=edit&amp;id=core_GoogleMaps&amp;searchResult=form_googlemaps"><![CDATA[{"lang_key":"googlemaps","restriction":"enhancements_manage","keywords":["google","maps"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=enhancements&amp;do=edit&amp;id=core_Pixabay"><![CDATA[{"lang_key":"enhancements__core_Pixabay","restriction":"enhancements_manage","keywords":["photos","pixabay","stock","stock photo"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=enhancements&amp;do=edit&amp;searchResult=form_ga_enabled"><![CDATA[{"lang_key":"ga_enabled","restriction":"enhancements_manage","keywords":["analytics","google analytics"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=enhancements&amp;do=edit&amp;searchResult=ga_code"><![CDATA[{"lang_key":"ga_code","restriction":"enhancements_manage","keywords":["analytics","google analytics"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=menu"><![CDATA[{"lang_key":"menu__core_applications_menu","restriction":"menu_manage","keywords":["menu manager","header","navigation"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=menu"><![CDATA[{"lang_key":"menu__core_applications_menu","restriction":"menu_manage","keywords":["header","menu manager","navigation"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=applications&amp;controller=rss"><![CDATA[{"lang_key":"menu__core_applications_rss","restriction":"rss_manage","keywords":["atom feed","feed import","rss feed"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=bulkmail&amp;controller=bulkmail"><![CDATA[{"lang_key":"menu__core_bulkmail_bulkmail","restriction":"bulkmail_manage","keywords":["announce","blast","bulk","bulk mail","campaign","email","mail","mass","newsletter","sendgrid"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=clubs&amp;controller=clubs"><![CDATA[{"lang_key":"menu__core_clubs_clubs","restriction":"clubs_manage","keywords":["circles","clubs","social groups"]}]]></acpsearch>
@@ -569,7 +569,7 @@
<acpsearch key="app=core&amp;module=discovery&amp;controller=search&amp;searchResult=form_search_method"><![CDATA[{"lang_key":"search_method","restriction":"search_manage","keywords":["elastic","elasticsearch","mysql","search"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=discovery&amp;controller=search&amp;searchResult=search_index_timeframe"><![CDATA[{"lang_key":"search_index_timeframe","restriction":"search_manage","keywords":["search","search content","search cutoff","search limit","search results"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=discovery&amp;controller=search&amp;searchResult=searchlog_exclude_groups"><![CDATA[{"lang_key":"searchlog_exclude_groups","restriction":"search_manage","keywords":["exclude groups","exclude groups from search"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=discovery&amp;controller=streams&amp;do=allActivitySettings"><![CDATA[{"lang_key":"menu__core_discovery_streams","restriction":"streams_manage","keywords":["stream subscriptions","streams","activity stream"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=discovery&amp;controller=streams&amp;do=allActivitySettings"><![CDATA[{"lang_key":"menu__core_discovery_streams","restriction":"streams_manage","keywords":["activity stream","stream subscriptions","streams"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=discovery&amp;controller=tags"><![CDATA[{"lang_key":"menu__core_discovery_tags","restriction":"tags_manage","keywords":["prefix","tagging","tags"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=discovery&amp;controller=tags&amp;do=settings"><![CDATA[{"lang_key":"tag_settings","restriction":"tags_manage","keywords":["prefix","tagging","tags"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=editor&amp;controller=emoticons"><![CDATA[{"lang_key":"menu__core_editor_emoticons","restriction":"emoticons_manage","keywords":["emoticons","smileys","smilies"]}]]></acpsearch>
@@ -607,7 +607,7 @@
<acpsearch key="app=core&amp;module=members&amp;controller=groups&amp;searchResult=g_ppd_unit"><![CDATA[{"lang_key":"g_ppd_unit","restriction":"groups_manage","keywords":["posting limit"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=members&amp;controller=groups&amp;searchResult=g_prefixsuffix"><![CDATA[{"lang_key":"g_prefixsuffix","restriction":"groups_manage","keywords":["group color","group colour","group formatting"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=members&amp;controller=groups&amp;searchResult=g_promote_exclude"><![CDATA[{"lang_key":"g_promote_exclude","restriction":"groups_manage","keywords":["group promotion","member promotions","member upgrades"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=members&amp;controller=groups&amp;searchResult=g_rep_max_positive"><![CDATA[{"lang_key":"g_rep_max_positive","restriction":"groups_manage","keywords":["karma","like","reputation","reactions"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=members&amp;controller=groups&amp;searchResult=g_rep_max_positive"><![CDATA[{"lang_key":"g_rep_max_positive","restriction":"groups_manage","keywords":["karma","like","reactions","reputation"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=members&amp;controller=groups&amp;searchResult=g_search_flood"><![CDATA[{"lang_key":"g_search_flood","restriction":"groups_manage","keywords":["search flood control"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=members&amp;controller=groups&amp;searchResult=g_sig_max_image_size"><![CDATA[{"lang_key":"g_sig_max_image_size","restriction":"groups_manage","keywords":["signature images","signatures"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=members&amp;controller=groups&amp;searchResult=g_sig_max_images"><![CDATA[{"lang_key":"g_sig_max_images","restriction":"groups_manage","keywords":["signature images","signatures"]}]]></acpsearch>
@@ -683,10 +683,9 @@
<acpsearch key="app=core&amp;module=messengerstats&amp;controller=pmstats"><![CDATA[{"lang_key":"menu__core_members_pmstats","restriction":null,"keywords":["message statistics","Messenger Statistics","private messages"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=moderation&amp;controller=reportedContent"><![CDATA[{"lang_key":"menu__core_moderation_reportedContent","restriction":"reportedContent_manage","keywords":["moderation","report","report types"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=moderation&amp;controller=reportedContentTypes"><![CDATA[{"lang_key":"r__reportedContentTypes","restriction":null,"keywords":["report","report types"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=moderation&amp;controller=spam"><![CDATA[{"lang_key":"menu__core_moderation_spam","restriction":"spam_manage","keywords":["spam","spammers"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=moderation&amp;controller=spam"><![CDATA[{"lang_key":"menu__core_moderation_spam","restriction":"spam_manage","keywords":["spam","spammers","delete guest content","delete guest posts","guest content","guest posts"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=moderation&amp;controller=spam&amp;do=serviceLogs"><![CDATA[{"lang_key":"spamlogs","restriction":"spam_service_log","keywords":["spam logs"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=moderation&amp;controller=spam&amp;searchResult=bot_antispam_type"><![CDATA[{"lang_key":"bot_antispam_type","restriction":"spam_manage","keywords":["bot prevention","CAPTCHA","hCaptcha","security question"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=moderation&amp;controller=spam&amp;searchResult=guest_captcha"><![CDATA[{"lang_key":"guest_captcha_search_target","restriction":"spam_manage","keywords":["delete guest content","delete guest posts","guest content","guest posts"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=moderation&amp;controller=spam&amp;tab=captcha"><![CDATA[{"lang_key":"spamprevention_captcha","restriction":"spam_manage","keywords":["captcha","keycaptcha","recaptcha"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=moderation&amp;controller=spam&amp;tab=flagging"><![CDATA[{"lang_key":"spamprevention_flagging","restriction":"spam_manage","keywords":["flagging"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=moderation&amp;controller=spam&amp;tab=qanda"><![CDATA[{"lang_key":"qanda_settings","restriction":"qanda_manage","keywords":["answers","challenge","question","registration"]}]]></acpsearch>
@@ -703,7 +702,7 @@
<acpsearch key="app=core&amp;module=overview&amp;controller=files&amp;do=imagesettings&amp;searchResult=image_png_quality_gd"><![CDATA[{"lang_key":"image_png_quality_gd","restriction":"files_view","keywords":["png"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=overview&amp;controller=files&amp;do=imagesettings&amp;searchResult=imagick_strip_exif"><![CDATA[{"lang_key":"imagick_strip_exif","restriction":"files_view","keywords":["exif"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=overview&amp;controller=files&amp;do=settings"><![CDATA[{"lang_key":"storage_settings","restriction":"files_view","keywords":["amazon","files","ftp","photos","storage","uploads"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=overview&amp;controller=mycharts"><![CDATA[{"lang_key":"menu__core_overview_mycharts","restriction":"mycharts_manage","keywords":["charts","statistics","stats","saved charts"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=overview&amp;controller=mycharts"><![CDATA[{"lang_key":"menu__core_overview_mycharts","restriction":"mycharts_manage","keywords":["charts","saved charts","statistics","stats"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=overview&amp;controller=notifications&amp;do=settings"><![CDATA[{"lang_key":"menu__core_overview_notifications","restriction":null,"keywords":["notification","notifications"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=promotion&amp;controller=advertisements"><![CDATA[{"lang_key":"menu__core_promotion_advertisements","restriction":"advertisements_manage","keywords":["ads","adsense","advertisements","adverts","adwords","google"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=promotion&amp;controller=seo"><![CDATA[{"lang_key":"menu__core_promotion_seo","restriction":"seo_manage","keywords":["analytics","furl","search","search engine optimization","seo"]}]]></acpsearch>
@@ -712,7 +711,7 @@
<acpsearch key="app=core&amp;module=promotion&amp;controller=seo&amp;tab=robotstxt&amp;searchResult=use_robotstxt"><![CDATA[{"lang_key":"use_robotstxt","restriction":null,"keywords":["robots","robots.txt"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=promotion&amp;controller=seo&amp;tab=sitemap"><![CDATA[{"lang_key":"seo_tab_sitemap","restriction":"seo_sitemap","keywords":["google","priority","site map","sitemap","xml"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=promotion&amp;controller=seo&amp;tab=urls"><![CDATA[{"lang_key":"seo_tab_furls","restriction":"seo_furls","keywords":["friendly url","furls","htaccess","mod_rewrite","urls"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=promotion&amp;controller=sharelinks"><![CDATA[{"lang_key":"menu__core_promotion_sharelinks","restriction":"sharelinks_manage","keywords":["facebook","linkedin","reddit","share links","stumbleupon","twitter"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=promotion&amp;controller=sharelinks"><![CDATA[{"lang_key":"menu__core_promotion_sharelinks","restriction":"sharelinks_manage","keywords":["facebook","linkedin","reddit","share links","stumbleupon","twitter","tiktok"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=advanced"><![CDATA[{"lang_key":"menu__core_settings_advanced","restriction":"advanced_manage","keywords":["advanced","cache","furl","storage","tasks"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=advanced&amp;do=tasks"><![CDATA[{"lang_key":"task_manager","restriction":null,"keywords":["cron","cronjob","task","tasklog","tasks"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=advanced&amp;searchResult=form_auto_polling_enabled"><![CDATA[{"lang_key":"auto_polling_enabled","restriction":"advanced_manage","keywords":["auto","automatic","polling"]}]]></acpsearch>
@@ -748,7 +747,7 @@
<acpsearch key="app=core&amp;module=settings&amp;controller=general&amp;searchResult=form_diagnostics_reporting"><![CDATA[{"lang_key":"diagnostics_reporting","restriction":"general_manage","keywords":["diagnostics","reports"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=general&amp;searchResult=form_site_address"><![CDATA[{"lang_key":"site_address","restriction":"general_manage","keywords":["address","mail"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=general&amp;searchResult=form_site_online"><![CDATA[{"lang_key":"site_online","restriction":"general_manage","keywords":["offline","online"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=general&amp;searchResult=form_site_social_profiles"><![CDATA[{"lang_key":"site_social_profiles","restriction":"general_manage","keywords":["facebook","social profile","twitter","x"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=general&amp;searchResult=form_site_social_profiles"><![CDATA[{"lang_key":"site_social_profiles","restriction":"general_manage","keywords":["facebook","social profile","twitter","x","bluesky","youtube","tiktok"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=general&amp;searchResult=form_site_twitter_id"><![CDATA[{"lang_key":"site_twitter_id","restriction":"general_manage","keywords":["site twitter","twitter","twitter id","x"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=licensekey"><![CDATA[{"lang_key":"menu__core_settings_licensekey","restriction":"licensekey_manage","keywords":["license key"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=login"><![CDATA[{"lang_key":"menu__core_settings_login","restriction":"login_manage","keywords":["accounts","facebook","google","https","ips connect","ldap","locking","login","microsoft","twitter","windows"]}]]></acpsearch>
@@ -759,12 +758,13 @@
<acpsearch key="app=core&amp;module=settings&amp;controller=login&amp;tab=registration&amp;searchResult=quick_register"><![CDATA[{"lang_key":"quick_register","restriction":"registration_manage","keywords":["quick register","register"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=login&amp;tab=registration&amp;searchResult=reg_auth_type"><![CDATA[{"lang_key":"reg_auth_type","restriction":"login_access","keywords":["email","validation"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=login&amp;tab=registration&amp;searchResult=use_coppa"><![CDATA[{"lang_key":"use_coppa","restriction":"registration_manage","keywords":["coppa"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=login&amp;tab=settings&amp;searchResult=form_login_after_inactivity_notification"><![CDATA[{"lang_key":"login_after_inactivity_notification","restriction":"login_access","keywords":["dormant","email"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=login&amp;tab=settings&amp;searchResult=form_new_device_email"><![CDATA[{"lang_key":"new_device_email","restriction":"login_manage","keywords":["new authorised device email","new authorized device email","new browser email","new device email","new log in email","new login email","new sign in email","new signin email"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=login&amp;tab=settings&amp;searchResult=ipb_bruteforce_attempts"><![CDATA[{"lang_key":"ipb_bruteforce_attempts","restriction":"login_manage","keywords":["brute","bruteforce","failed","lock","logins"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=login&amp;tab=settings&amp;searchResult=ipb_bruteforce_period"><![CDATA[{"lang_key":"ipb_bruteforce_period","restriction":"login_access","keywords":["failed","login"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=login&amp;tab=settings&amp;searchResult=ipb_bruteforce_unlock"><![CDATA[{"lang_key":"ipb_bruteforce_unlock","restriction":"login_access","keywords":["failed","login"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=mfa"><![CDATA[{"lang_key":"menu__core_settings_mfa","restriction":"mfa_manage","keywords":["2 factor authentication","2 factor verification","2-factor authentication","2-factor verification","2fa","account authentication","account verification","authentication","google authentication","google authenticator","mfa","multi factor authentication","multi factor verification","multi-factor authentication","multi-factor verification","multifactor authentication","multifactor verification","security","security questions","two factor authentication","two factor verification","two-factor authentication","two-factor verification","verification"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting"><![CDATA[{"lang_key":"menu__core_settings_posting","restriction":null,"keywords":["editor","posting","editor permissions"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting"><![CDATA[{"lang_key":"menu__core_settings_posting","restriction":null,"keywords":["editor","editor permissions","posting"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting&amp;searchResult=attach_allowed_extensions"><![CDATA[{"lang_key":"attach_allowed_extensions","restriction":"posting_manage","keywords":["extensions"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting&amp;searchResult=form_dellog_retention_period"><![CDATA[{"lang_key":"dellog_retention_period","restriction":"posting_manage","keywords":["content","delete"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting&amp;searchResult=form_ip_address_prune"><![CDATA[{"lang_key":"ip_address_prune","restriction":"posting_manage","keywords":["gdpr","ip address","prune"]}]]></acpsearch>
@@ -799,6 +799,7 @@
<acpsearch key="app=core&amp;module=settings&amp;controller=posting&amp;tab=simplifiedMode&amp;searchResult=form_editor_r__heading_1"><![CDATA[{"lang_key":"editor_r__heading_1","restriction":null,"keywords":["heading"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting&amp;tab=simplifiedMode&amp;searchResult=form_editor_r__internal_embed"><![CDATA[{"lang_key":"editor_r__internal_embed","restriction":null,"keywords":["embed"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting&amp;tab=simplifiedMode&amp;searchResult=form_editor_r__raw_embed"><![CDATA[{"lang_key":"editor_r__raw_embed","restriction":null,"keywords":["iframe"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting&amp;tab=simplifiedMode&amp;searchResult=form_editor_r__table"><![CDATA[{"lang_key":"editor_r__table","restriction":null,"keywords":["table"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting&amp;tab=tags&amp;searchResult=tags_can_prefix"><![CDATA[{"lang_key":"tags_can_prefix","restriction":"tags_manage","keywords":["prefix","prefixes"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting&amp;tab=urlFilters"><![CDATA[{"lang_key":"ipb_url_filter_option","restriction":"posting_manage_url","keywords":["blacklist","links","urls","whitelist"]}]]></acpsearch>
<acpsearch key="app=core&amp;module=settings&amp;controller=posting&amp;tab=urlFilters&amp;searchResult=form_links_external"><![CDATA[{"lang_key":"links_external","restriction":"posting_manage","keywords":["blank","link","tab","target","window"]}]]></acpsearch>
+32 -1
View File
@@ -26,6 +26,30 @@
"src": "src/assets/icons/spoiler.svg",
"isDynamicEntry": true
},
"src/assets/icons/table-base.svg": {
"file": "assets/table-base-D1cd7bGZ.js",
"name": "table-base",
"src": "src/assets/icons/table-base.svg",
"isDynamicEntry": true
},
"src/assets/icons/table-cell.svg": {
"file": "assets/table-cell-DVOKSKb6.js",
"name": "table-cell",
"src": "src/assets/icons/table-cell.svg",
"isDynamicEntry": true
},
"src/assets/icons/table-columns.svg": {
"file": "assets/table-columns-BC6EiFm4.js",
"name": "table-columns",
"src": "src/assets/icons/table-columns.svg",
"isDynamicEntry": true
},
"src/assets/icons/table-rows.svg": {
"file": "assets/table-rows-_EhIjim3.js",
"name": "table-rows",
"src": "src/assets/icons/table-rows.svg",
"isDynamicEntry": true
},
"src/assets/icons/wrap.svg": {
"file": "assets/wrap-BOz3U5J1.js",
"name": "wrap",
@@ -45,7 +69,7 @@
"isDynamicEntry": true
},
"src/main.jsx": {
"file": "assets/main-0gprcJBY.js",
"file": "assets/main-Ce8dEiGN.js",
"name": "main",
"src": "src/main.jsx",
"isEntry": true,
@@ -54,9 +78,16 @@
"src/assets/icons/box.svg",
"src/assets/icons/katex.svg",
"src/assets/icons/spoiler.svg",
"src/assets/icons/table-base.svg",
"src/assets/icons/table-cell.svg",
"src/assets/icons/table-columns.svg",
"src/assets/icons/table-rows.svg",
"src/assets/icons/wrap.svg",
"src/assets/icons/wrapInverted.svg",
"src/assets/icons/wrapNone.svg"
],
"css": [
"assets/main-D9k5Klkm.css"
]
}
}
+127 -6
View File
@@ -132,7 +132,7 @@
</table>
<br /><br />
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$member, $vid, $securityKey, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("email_registration_validate", FALSE)}
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$member, $vid, $securityKey, $newEmail, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("email_registration_validate", FALSE)}
=====
{$email->language->addToStack("email_validate_link", FALSE)}: {url="app=core&module=system&controller=register&do=validate&vid={$vid}&mid={$member->member_id}&security_key={$securityKey}" plain="true" base="front"}
@@ -1377,7 +1377,7 @@ URL: {$content->url()}
<td dir='{dir}' height='6' style='line-height: 6px'><img src="{setting="base_url"}applications/core/interface/email/spacer.png" alt='' width="1" height="1" /></td>
</tr>
<tr>
<td dir='{dir}' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 22px;">{$member->email}</td>
<td dir='{dir}' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 22px;">{$newEmail}</td>
</tr>
<tr>
<td dir='{dir}' height='20' style='line-height: 20px'><img src="{setting="base_url"}applications/core/interface/email/spacer.png" alt='' width="1" height="1" /></td>
@@ -1393,10 +1393,10 @@ URL: {$content->url()}
</table>
<br /><br />
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$member, $vid, $securityKey, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("email_complete_email_plain", FALSE)}
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$member, $vid, $securityKey, $newEmail, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("email_complete_email_plain", FALSE)}
=====
{$email->language->addToStack("email_new_email", FALSE)}: {$member->email}
{$email->language->addToStack("email_new_email", FALSE)}: {$newEmail}
{$email->language->addToStack("email_confirm_address", FALSE)}: {url="app=core&module=system&controller=register&do=validate&vid={$vid}&mid={$member->member_id}&security_key={$securityKey}" seoTemplate="register" base="front" plain="true"}
=====
@@ -1450,7 +1450,128 @@ URL: {$content->url()}
{$email->language->addToStack("email_lost_pass_timelimit", FALSE)}
=====
-- {setting="board_name"}]]></template_content_plaintext><template_pinned>0</template_pinned></template><template><template_app>core</template_app><template_name>admin_reg</template_name><template_content_html><![CDATA[
-- {setting="board_name"}]]></template_content_plaintext><template_pinned>0</template_pinned></template><template><template_app>core</template_app><template_name>loginAfterInactivity</template_name><template_content_html><![CDATA[<br />
{$email->language->addToStack('login_after_inactivity_email_intro')}
<br />
<br />
<table width='100%' cellpadding='15' cellspacing='0' border='0' style='background: #f9f9f9;'>
<tr>
<td dir='{dir}'>
<table width='100%' cellpadding='0' cellspacing='0' border='0' style='background: #f9f9f9;' class='responsive_table'>
<tr class='responsive_row' height="35">
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;"><strong>{$email->language->addToStack('members_device')}</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">
<table width="100%" cellpadding="0" cellspacing="0" border="0" bgcolor="#f9f9f9">
<tr>
<td dir='{dir}' width="40" valign="top" class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
{{if $device->userAgent()->platform === 'Macintosh'}}
<img src="{resource="logos/devices/mac.png" location="interface" app="core"}" width="30" height="30" alt="{$device->userAgent()->platform}" style='border: 0; vertical-align: middle;'>
{{elseif $device->userAgent()->platform === 'Android' or $device->userAgent()->platform === 'Windows Phone'}}
<img src="{resource="logos/devices/android.png" location="interface" app="core"}" width="30" height="30" alt="{$device->userAgent()->platform}" style='border: 0; vertical-align: middle;'>
{{elseif $device->userAgent()->platform === 'iPad'}}
<img src="{resource="logos/devices/ipad.png" location="interface" app="core"}" width="30" height="30" alt="{$device->userAgent()->platform}" style='border: 0; vertical-align: middle;'>
{{elseif $device->userAgent()->platform === 'iPhone'}}
<img src="{resource="logos/devices/iphone.png" location="interface" app="core"}" width="30" height="30" alt="{$device->userAgent()->platform}" style='border: 0; vertical-align: middle;'>
{{else}}
<img src="{resource="logos/devices/pc.png" location="interface" app="core"}" width="30" height="30" alt="{$device->userAgent()->platform}" style='border: 0; vertical-align: middle;'>
{{endif}}
</td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">
{$device->userAgent()->platform}
</td>
</tr>
</table>
</td>
</tr>
<tr class='responsive_row' height="35">
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;"><strong>{$email->language->addToStack('device_table_user_agent')}</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">
<table width="100%" cellpadding="0" cellspacing="0" border="0" bgcolor="#f9f9f9">
<tr>
{{if \in_array( $device->userAgent()->browser, array( 'Android Browser', 'AppleWebKit', 'Camino', 'Chrome', 'Edge', 'Firefox', 'IEMobile', 'Midori', 'MSIE', 'Opera', 'Puffin', 'Safari', 'SamsungBrowser', 'Silk', 'UCBrowser', 'Vivaldi' ) )}}
<td dir='{dir}' width="40" valign="top" class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
{{$img = str_replace( ' ', '', $device->userAgent()->browser );}}
&nbsp;<img src="{resource="logos/browsers/{$img}.png" location="interface" app="core"}" width="20" height="20" alt="{$device->userAgent()->browser}" style='border: 0; vertical-align: middle;'>
</td>
{{endif}}
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">
{$device->userAgent()->browser}
</td>
</tr>
</table>
</td>
</td>
</tr>
{{if $loginMethod = $device->loginMethod() and $logo = $loginMethod->logoForDeviceInformation()}}
<tr class='responsive_row' height="35">
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;"><strong>{$email->language->addToStack('device_table_login_handler')}</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">
<table width="100%" cellpadding="0" cellspacing="0" border="0" bgcolor="#f9f9f9">
<tr>
<td dir='{dir}' width="40" valign="top" class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
&nbsp;<img src="{$logo}" width="20" height="20" alt="{$email->language->addToStack( 'login_method_' . $loginMethod->id )}" style='border: 0; vertical-align: middle;'>
</td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">
{$email->language->addToStack( 'login_method_' . $loginMethod->id )}
</td>
</tr>
</table>
</td>
</td>
</tr>
{{endif}}
{{if $location}}
<tr class='responsive_row' height="35">
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;"><strong>{$email->language->addToStack('device_table_location')}</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">
{$location}
</td>
</tr>
{{endif}}
</table>
</td>
</tr>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 10px;">
* {$email->language->addToStack('ip_geolocation_info')}
</td>
</tr>
</table>
<br />
{$email->language->addToStack('new_device_email_footer')}
<br /><br />
<table width='100%' cellpadding='15' cellspacing='0' border='0' style='background: #f9f9f9;'>
<tr>
<td dir='{dir}' align='center'>
{{if settings.device_management}}
<a href='{url="app=core&module=system&controller=settings&area=devices" seoTemplate="settings_devices" base="front"}' style="color: #ffffff; font-family: 'Helvetica Neue', helvetica, sans-serif; text-decoration: none; font-size: 14px; background: {setting="email_color"}; line-height: 32px; padding: 0 10px; display: inline-block; border-radius: 3px;">{$email->language->addToStack("new_device_email_action_1", FALSE)}</a>
{{else}}
<a href='{url="app=core&module=system&controller=settings&do=secureAccount" seoTemplate="settings_secure" base="front"}' style="color: #ffffff; font-family: 'Helvetica Neue', helvetica, sans-serif; text-decoration: none; font-size: 14px; background: {setting="email_color"}; line-height: 32px; padding: 0 10px; display: inline-block; border-radius: 3px;">{$email->language->addToStack("new_device_email_action_2", FALSE)}</a>
{{endif}}
</td>
</tr>
</table>
{{if \IPS\Member\PrivacyAction::canDeleteAccount() AND !$member->isDeletionPending}}
<table width='100%' cellpadding='15' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 10px;">
{$email->language->addToStack('login_after_inactivity_delete_text', FALSE, [ 'sprintf' => [ \IPS\Settings::i()->board_name ] ])}
</td>
</tr>
</table>
{{endif}}]]></template_content_html><template_data>$member, $device, $location, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack('login_after_inactivity_email_intro')}
{$email->language->addToStack('members_device')}: {$device->userAgent()->platform}
{$email->language->addToStack('device_table_user_agent')}: {$device->userAgent()->browser}
{{if $loginMethod = $device->loginMethod() and $logo = $loginMethod->logoForDeviceInformation()}}{$email->language->addToStack('device_table_login_handler')}: {$email->language->addToStack( 'login_method_' . $loginMethod->id )}{{endif}}
{{if $location}}{$email->language->addToStack('device_table_location')}: {$location}
* {$email->language->addToStack('ip_geolocation_info')}{{endif}}
{$email->language->addToStack('new_device_email_footer')}
{{if settings.device_management}}{$email->language->addToStack("new_device_email_action_1", FALSE)}: {url="app=core&module=system&controller=settings&area=devices" seoTemplate="settings_devices" base="front" plain="true"}{{else}}{$email->language->addToStack("new_device_email_action_2", FALSE)}: {url="app=core&module=system&controller=settings&do=secureAccount" seoTemplate="settings_secure" base="front" plain="true"}{{endif}}
{{if \IPS\Member\PrivacyAction::canDeleteAccount() AND !$member->isDeletionPending}}{$email->language->addToStack('request_account_deletion')} {url="app=core&module=system&controller=settings&area=mfa" plain="true"}{{endif}}]]></template_content_plaintext><template_pinned>0</template_pinned></template><template><template_app>core</template_app><template_name>admin_reg</template_name><template_content_html><![CDATA[
{expression="$email->language->addToStack( 'email_admin_reg', FALSE, array( 'sprintf' => array( \IPS\Settings::i()->board_name ) ) )"}
<br />
<br />
@@ -1852,7 +1973,7 @@ URL: {$content->url()}
{{endif}}
{{if \IPS\Settings::i()->site_social_profiles AND \IPS\Settings::i()->social_links_in_email AND $links = json_decode( \IPS\Settings::i()->site_social_profiles, TRUE ) AND \count( $links )}}
{{$socialColors = array('x' => '#1d9bf0;', 'internal' => '#008b00;', 'deviantart' => '#16A085;', 'email' => '#444;', 'facebook' => '#0866ff;', 'linkedin' => '#007FB1;', 'reddit' => '#FF4500;', 'stumble' => '#EB4924;', 'vk' => '#507299;', 'weibo' => '#D32F2F;', 'youtube' => '#ff0000;', 'foursquare' => '#2D5BE3;', 'etsy' => '#ec5500;', 'flickr' => '#0060d4;', 'github' => '#010101;', 'instagram' => '#d12a72;', 'pinterest' => '#df0018;', 'slack' => '#2db079;', 'xing' => '#B0D400;', 'tumblr' => '#EB4924;', 'twitch' => '#772ce8;', 'discord' => '#5d6af2;');}}
{{$socialColors = array('x' => '#1d9bf0;', 'internal' => '#008b00;', 'deviantart' => '#16A085;', 'email' => '#444;', 'facebook' => '#0866ff;', 'linkedin' => '#007FB1;', 'reddit' => '#FF4500;', 'stumble' => '#EB4924;', 'vk' => '#507299;', 'weibo' => '#D32F2F;', 'youtube' => '#ff0000;', 'foursquare' => '#2D5BE3;', 'etsy' => '#ec5500;', 'flickr' => '#0060d4;', 'github' => '#010101;', 'instagram' => '#d12a72;', 'pinterest' => '#df0018;', 'slack' => '#2db079;', 'xing' => '#B0D400;', 'tumblr' => '#EB4924;', 'twitch' => '#772ce8;', 'discord' => '#5d6af2;', 'bluesky' => '#0a7aff', 'tiktok' => '#000000');}}
<tr>
<td dir='{dir}' valign="top"><img src='{setting="base_url"}applications/core/interface/email/spacer.png' width='1' height='1' alt=''></td>
<td dir='{dir}' valign='top' width='800' align='center' style="font-size: 0px; line-height: 18px; padding-top: 10px;">
File diff suppressed because it is too large. Load diff
+40 -8
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<language>
<app key="core" version="5000036">
<app key="core" version="5000039">
<word key="__app_core" js="0">System</word>
<word key="__indefart_personal_conversation" js="0">a personal conversation</word>
<word key="__indefart_personal_conversation_message" js="0">a message in a personal conversation</word>
@@ -233,7 +233,7 @@
<word key="q_and_a_incorrect" js="0">Your answer to the challenge question was not valid. Please try again.</word>
<word key="spam_denied_account" js="0">You are not permitted to register a user account with this site.</word>
<word key="reg_confirm_email" js="0">Please confirm your email</word>
<word key="reg_confirm_email_desc" js="0"><![CDATA[We sent an email to <strong>%s</strong>. It contains a link you need to click in order to confirm your account.]]></word>
<word key="reg_confirm_email_desc" js="0">We sent an email to your current email address. It contains a link you need to click in order to confirm your account.</word>
<word key="reg_confirm_email_must" js="0">You will need to do this before you will be able to access our site as a registered member.</word>
<word key="reg_resend_email" js="0">Resend Confirmation Email</word>
<word key="reg_email_resent" js="0">Confirmation email resent</word>
@@ -2558,6 +2558,8 @@
<word key="siteprofilelink_discord" js="0">Discord</word>
<word key="siteprofilelink_twitch" js="0">Twitch</word>
<word key="siteprofilelink_x" js="0">X</word>
<word key="siteprofilelink_bluesky" js="0">Bluesky</word>
<word key="siteprofilelink_tiktok" js="0">TikTok</word>
<word key="site_social_profiles" js="0">Social Profiles</word>
<word key="site_social_profiles_desc" js="0">Displays social media icons in the footer of your site, linking to the entered social profile URLs.</word>
<word key="site_twitter_id" js="0">Website X ID</word>
@@ -3154,7 +3156,7 @@
<word key="language_export_version" js="0">Version</word>
<word key="language_export_long_version" js="0">Version ID</word>
<word key="langauge_export_button" js="0">Download</word>
<word key="enhancements_ips" js="0">Invision Community Enhancements</word>
<word key="enhancements_ips" js="0">Invision Community Integrations</word>
<word key="enhancements_thirdparty" js="0">All Integrations</word>
<word key="enhancements_configure" js="0">Configure Service</word>
<word key="enhancements__core_SpamMonitoring" js="0">Spam Defense</word>
@@ -3286,7 +3288,7 @@
<word key="spm_post_days_suffix" js="0">days before</word>
<word key="spamprevention_captcha" js="0">CAPTCHA</word>
<word key="bot_antispam_type" js="0">CAPTCHA Type</word>
<word key="bot_antispam_type_desc" js="0"><![CDATA[Computer programs known as <em>spam bots</em> may attempt to register on your site to post unwanted content. CAPTCHA is a test designed to be simple for humans to answer correctly, but difficult for computer programs. The selected CAPTCHA type will display on the registration form of your site and will need to be completed successfully in order to register an account.]]></word>
<word key="bot_antispam_type_desc" js="0"><![CDATA[Computer programs known as <em>spam bots</em> may attempt to register on your site to post unwanted content. CAPTCHA is a test designed to be simple for humans to answer correctly, but difficult for computer programs. The selected CAPTCHA type will display on the registration form of your site and will need to be completed successfully in order to register an account. A CAPTCHA type must be selected to use the Post Before Registering feature.]]></word>
<word key="captcha_type_none" js="0">None</word>
<word key="captcha_type_invisible" js="0">Invisible reCAPTCHA</word>
<word key="captcha_type_invisible_desc" js="0"><![CDATA[Users do not need to do anything. The system intelligently detects if the user is human in the background. <a href='{external.captcha_recaptcha_invisible}' target='_blank' rel='noopener'>Learn more</a>]]></word>
@@ -3300,8 +3302,6 @@
<word key="recaptcha2_private_key_desc" js="0"><![CDATA[You do not need to change the default key unless you specifically want to use <a href='{external.captcha_recaptcha2_keys}' target='_blank' rel='noopener'>your own reCAPTCHA account</a> which will allow you to change the security preference settings.]]></word>
<word key="keycaptcha_privatekey" js="0">keyCAPTCHA Key</word>
<word key="keycaptcha_privatekey_desc" js="0"><![CDATA[In order to use keyCAPTCHA, you must <a href='{external.captcha_keykeptcha_signup}' target='_blank' rel='noopener'>create an account</a> and provide your key.]]></word>
<word key="guest_captcha" js="0">Guests must complete CAPTCHA in order to post?</word>
<word key="guest_captcha_desc" js="0">If you allow guests to post, it is recommended you enable this setting.</word>
<word key="guest_captcha_search_target" js="0">Guest posts</word>
<word key="acplogs__spamprev_settings" js="0">Edited spam prevention settings</word>
<word key="spamservice_inter_header" js="0">Spam Defense</word>
@@ -4140,6 +4140,7 @@
<word key="lin_text" js="0">Share on LinkedIn</word>
<word key="pinterest_text" js="0">Share on Pinterest</word>
<word key="reddit_text" js="0">Share on Reddit</word>
<word key="bluesky_text" js="0">Share on Bluesky</word>
<word key="x_text" js="0">Share on X</word>
<word key="x_hashtag" js="0">Default hashtag</word>
<word key="x_hashtag_desc" js="0">If this is left blank no hashtag will automatically be applied to the shared content, however users can still manually apply one.</word>
@@ -4171,6 +4172,7 @@
<word key="post_before_registering_on_desc" js="0"><![CDATA[Guests will see the ability to submit content and then will immediately be prompted to register an account before the content is actually submitted and viewable. This is useful for encouraging guests to register.<br>Guest users will have up to one week to complete their registration before their content will be permanently removed. If the guest user does not complete their registration immediately, they will be sent a reminder email shortly after making the post.]]></word>
<word key="post_before_registering_off" js="0">Disabled</word>
<word key="post_before_registering_off_desc" js="0">Guests will only be see the ability to post if the Guests group specifically has permission to do so in that area.</word>
<word key="post_before_registering_captcha_req" js="0"><![CDATA[<div class='ipsMessage ipsMessage_info'><a href='{internal.app=core&module=moderation&controller=spam&searchResult=bot_antispam_type}'>Enabling a CAPTCHA</a> is required to use this feature. 'Guests must complete CAPTCHA' must also be enabled.</div>]]></word>
<word key="max_title_length" js="0">Maximum title length</word>
<word key="max_title_length_suffix" js="0">characters</word>
<word key="attachments" js="0">Attachments</word>
@@ -4232,6 +4234,7 @@
<word key="editor_r__font_color" js="0">Can change Font Color</word>
<word key="editor_r__giphy" js="0">Can use Giphy</word>
<word key="editor_r__dependency" js="0">This feature also requires &quot;%s&quot;</word>
<word key="editor_r__tables" js="0">Can use tables?</word>
<word key="editor_extensions" js="0">Third Party Editor Extensions</word>
<word key="dependent_less_strict_than_dependency" js="0">This restriction cannot be less strict than its dependency.</word>
<word key="g_editor_mode_default" js="0">Default (recommended)</word>
@@ -8549,7 +8552,7 @@ In PHP8, altering overloaded method signatures within a subclass results in a fa
<word key="login_handler_Live" js="0">Microsoft</word>
<word key="login_handler_Ldap" js="0">LDAP</word>
<word key="login_handler_Facebook" js="0">Facebook</word>
<word key="login_handler_Twitter" js="0">X (formerly Twitter)</word>
<word key="login_handler_Twitter" js="0">X</word>
<word key="login_handler_Convert" js="0">Converter</word>
<word key="login_handler_custom_oauth" js="0">Other OAuth 2.0</word>
<word key="login_app_help" js="0">Click here for instructions on how to set up %s login.</word>
@@ -8817,6 +8820,10 @@ In PHP8, altering overloaded method signatures within a subclass results in a fa
<word key="ipb_bruteforce_unlock" js="0">Automatically unlock locked accounts when failed login count is reset?</word>
<word key="ipb_bruteforce_unlock_desc" js="0">If disabled, you will need to manually unlock locked accounts in the AdminCP.</word>
<word key="new_device_email" js="0">Send an email when a user logs in from a new device?</word>
<word key="login_after_inactivity_notification" js="0">Send an email when a user signs into a dormant account?</word>
<word key="mailsub__core_loginAfterInactivity" js="0">We've Missed You! Your Account is Active Again</word>
<word key="login_after_inactivity_email_intro" js="0">Welcome back! We've noticed your account has been inactive for a while, and we just wanted to make sure it's really you.</word>
<word key="login_after_inactivity_delete_text" js="0"><![CDATA[If you no longer require an account at %s, you can <a href="{internal.app=core&module=system&controller=settings&area=mfa}">request account deletion</a>.]]></word>
<word key="login_err_no_account" js="0">The email or password was incorrect. Please try again (make sure your caps lock is off).</word>
<word key="login_err_bad_password" js="0">The email or password was incorrect. Please try again (make sure your caps lock is off).</word>
<word key="login_bad_username_or_password" js="0">The email or password was incorrect. Please try again (make sure your caps lock is off).</word>
@@ -9185,6 +9192,7 @@ In PHP8, altering overloaded method signatures within a subclass results in a fa
<word key="club_remove_member_confirm" js="0">They will not be able to join the club again unless invited by a Leader.</word>
<word key="club_remove_invitation" js="0">Revoke Invitation</word>
<word key="club_remove_invitation_confirm" js="0">They may have already seen the notification inviting them.</word>
<word key="club_resend_invitation" js="0">Resend Invitation</word>
<word key="club_remove_accepted_confirm" js="0">They may have already seen the notification accepting their request to join.</word>
<word key="club_make_leader" js="0">Make Leader</word>
<word key="club_make_leader_confirm" js="0">Leaders can moderate content and manage members in the group, including making other members Leaders.</word>
@@ -10822,7 +10830,12 @@ In PHP8, altering overloaded method signatures within a subclass results in a fa
<word key="log_member" js="0">Member</word>
<word key="log_app" js="0">Application</word>
<word key="history_removed_from_club" js="0"><![CDATA[Removed from <strong>%s</strong> %s.]]></word>
<word key="history_added_to_club" js="0"><![CDATA[Invited to <strong>%s</strong> %s]]></word>
<word key="history_added_to_club" js="0"><![CDATA[Joined <strong>%s</strong>]]></word>
<word key="history_invited_to_club" js="0"><![CDATA[Invited to <strong>%s</strong> %s]]></word>
<word key="history_invite_club_canceled" js="0"><![CDATA[Invitation to <strong>%s</strong> revoked %s]]></word>
<word key="history_left_club" js="0"><![CDATA[Left <strong>%s</strong>]]></word>
<word key="history_request_club" js="0"><![CDATA[Requested to join <strong>%s</strong>]]></word>
<word key="history_decline_club" js="0"><![CDATA[Declined invitation to <strong>%s</strong>]]></word>
<word key="log_type_title_club_membership" js="0">Club Memberships</word>
<word key="log_type_title_badges" js="0">Badges</word>
<word key="log_type_title_points" js="0">Achievement Points</word>
@@ -12103,6 +12116,25 @@ In PHP8, altering overloaded method signatures within a subclass results in a fa
<word key="editor_tool--float-left" js="1">Left Wrap</word>
<word key="editor_tool--float-right" js="1">Right Wrap</word>
<word key="editor_tool--float-regular" js="1">Inline</word>
<word key="editor_tool--table" js="1">Table</word>
<word key="editor_tool--tableOptions" js="1">Configure Table</word>
<word key="editor_tool--globalTableOptions" js="1">Table Actions</word>
<word key="editor_tool--tableRowOptions" js="1">Row Actions</word>
<word key="editor_tool--tableCellOptions" js="1">Cell Actions</word>
<word key="editor_tool--tableColumnOptions" js="1">Column Actions</word>
<word key="editor_tool--table-deleteTable" js="1">Delete Table</word>
<word key="editor_tool--table-deleteTable--confirm" js="1">Are you sure you want to delete this table?</word>
<word key="editor_tool--table-addRowBefore" js="1">Insert Row Before</word>
<word key="editor_tool--table-addRowAfter" js="1">Insert Row After</word>
<word key="editor_tool--table-deleteRow" js="1">Delete Row</word>
<word key="editor_tool--table-toggleHeaderRow" js="1">Toggle Header Row</word>
<word key="editor_tool--table-addColumnBefore" js="1">Insert Column Before</word>
<word key="editor_tool--table-addColumnAfter" js="1">Insert Column After</word>
<word key="editor_tool--table-deleteColumn" js="1">Delete Column</word>
<word key="editor_tool--table-toggleHeaderColumn" js="1">Toggle Header Column</word>
<word key="editor_tool--table-splitCell" js="1">Split Cell</word>
<word key="editor_tool--table-mergeCells" js="1">Merge Cells</word>
<word key="editor_tool--table-toggleHeaderCell" js="1">Toggle Header Cell</word>
<word key="editor_code--plaintext" js="1">Plain Text</word>
<word key="editor_code--c" js="1">C</word>
<word key="editor_code--xml" js="1">HTML/XML</word>
+79 -110
View File
@@ -3002,7 +3002,6 @@
"vid": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "",
@@ -3010,97 +3009,83 @@
"name": "vid",
"type": "VARCHAR",
"unsigned": false,
"values": [],
"zerofill": false
"values": []
},
"member_id": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "0",
"length": 20,
"length": 0,
"name": "member_id",
"type": "BIGINT",
"unsigned": true,
"values": [],
"zerofill": false
"values": []
},
"entry_date": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "0",
"length": 10,
"length": 0,
"name": "entry_date",
"type": "INT",
"unsigned": false,
"values": [],
"zerofill": false
"values": []
},
"coppa_user": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "0",
"length": 1,
"length": 0,
"name": "coppa_user",
"type": "TINYINT",
"unsigned": false,
"values": [],
"zerofill": false
"values": []
},
"lost_pass": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "0",
"length": 1,
"length": 0,
"name": "lost_pass",
"type": "TINYINT",
"unsigned": false,
"values": [],
"zerofill": false
"values": []
},
"new_reg": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "0",
"length": 1,
"length": 0,
"name": "new_reg",
"type": "TINYINT",
"unsigned": false,
"values": [],
"zerofill": false
"values": []
},
"email_chg": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "0",
"length": 1,
"length": 0,
"name": "email_chg",
"type": "TINYINT",
"unsigned": false,
"values": [],
"zerofill": false
"values": []
},
"ip_address": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "0",
@@ -3108,132 +3093,115 @@
"name": "ip_address",
"type": "VARCHAR",
"unsigned": false,
"values": [],
"zerofill": false
"values": []
},
"user_verified": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "0",
"length": 1,
"length": 0,
"name": "user_verified",
"type": "TINYINT",
"unsigned": false,
"values": [],
"zerofill": false
"values": []
},
"prev_email": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "0",
"length": 150,
"name": "prev_email",
"new_email": {
"name": "new_email",
"type": "VARCHAR",
"unsigned": false,
"length": 150,
"decimals": null,
"values": [],
"zerofill": false
"allow_null": false,
"default": "0",
"comment": "",
"unsigned": false,
"auto_increment": false
},
"spam_flag": {
"allow_null": false,
"auto_increment": false,
"binary": false,
"comment": "",
"decimals": null,
"default": "0",
"length": 4,
"length": 0,
"name": "spam_flag",
"type": "TINYINT",
"unsigned": false,
"values": [],
"zerofill": false
"values": []
},
"email_sent": {
"allow_null": true,
"auto_increment": false,
"comment": "Timestamp of when the confirmation email was last sent",
"decimals": null,
"default": null,
"length": 0,
"name": "email_sent",
"type": "INT",
"length": 10,
"decimals": null,
"values": null,
"allow_null": true,
"default": null,
"comment": "Timestamp of when the confirmation email was last sent",
"unsigned": false,
"zerofill": false,
"auto_increment": false,
"binary": false
"values": []
},
"forgot_security": {
"allow_null": false,
"auto_increment": false,
"comment": "",
"decimals": null,
"default": "0",
"length": 0,
"name": "forgot_security",
"type": "TINYINT",
"length": 1,
"decimals": null,
"values": null,
"allow_null": false,
"default": "0",
"comment": "",
"unsigned": true,
"zerofill": false,
"auto_increment": false,
"binary": false
"values": []
},
"do_not_delete": {
"allow_null": false,
"auto_increment": false,
"comment": "A flag to specify that the account should not be deleted in the normal cleanup of unvalidated accounts. Used for accounts created in Commerce checkout.",
"decimals": null,
"default": "0",
"length": 0,
"name": "do_not_delete",
"type": "TINYINT",
"length": 1,
"decimals": null,
"values": null,
"allow_null": false,
"default": "0",
"comment": "A flag to specify that the account should not be deleted in the normal cleanup of unvalidated accounts. Used for accounts created in Commerce checkout.",
"unsigned": true,
"zerofill": false,
"auto_increment": false,
"binary": false
"values": []
},
"reg_cancelled": {
"allow_null": false,
"auto_increment": false,
"comment": "Flag to see if the user likes soup. Kidding, timestamp of when they have cancelled their reg.",
"decimals": null,
"default": "0",
"length": 0,
"name": "reg_cancelled",
"type": "INT",
"length": 10,
"decimals": null,
"values": null,
"allow_null": false,
"default": "0",
"comment": "Flag to see if the user likes soup. Kidding, timestamp of when they have cancelled their reg.",
"unsigned": true,
"zerofill": false,
"auto_increment": false,
"binary": false
"values": []
},
"ref": {
"allow_null": true,
"auto_increment": false,
"comment": "URL to redirect the user to after validation is complete",
"decimals": null,
"default": null,
"length": 0,
"name": "ref",
"type": "TEXT",
"length": null,
"decimals": null,
"values": null,
"allow_null": true,
"default": null,
"comment": "URL to redirect the user to after validation is complete",
"unsigned": false,
"zerofill": false,
"auto_increment": false,
"binary": false
"values": []
},
"security_key": {
"allow_null": true,
"auto_increment": false,
"comment": "",
"decimals": null,
"default": null,
"length": 0,
"name": "security_key",
"type": "TEXT",
"length": null,
"decimals": null,
"values": null,
"allow_null": true,
"default": null,
"comment": "",
"unsigned": false,
"auto_increment": false
"values": []
}
},
"indexes": {
@@ -3270,13 +3238,13 @@
"lost_pass": {
"type": "key",
"name": "lost_pass",
"columns": [
"lost_pass",
"entry_date"
],
"length": [
null,
null
],
"columns": [
"lost_pass",
"entry_date"
]
},
"coppa_user": {
@@ -3312,16 +3280,17 @@
"user_verified": {
"type": "key",
"name": "user_verified",
"columns": [
"user_verified",
"entry_date"
],
"length": [
null,
null
],
"columns": [
"user_verified",
"entry_date"
]
}
}
},
"collation": "utf8mb4_unicode_ci"
},
"core_sys_lang": {
"name": "core_sys_lang",
+5 -5
View File
@@ -804,11 +804,6 @@
"default": "global",
"report": "full"
},
{
"key": "guest_captcha",
"default": "1",
"report": "full"
},
{
"key": "guest_terms_bar",
"default": "",
@@ -1019,6 +1014,11 @@
"default": "1",
"report": "full"
},
{
"key": "login_after_inactivity_notification",
"default": "1",
"report": "full"
},
{
"key": "mail_method",
"default": "php",
+183 -63
View File
@@ -2504,6 +2504,7 @@
<li class="ipsMenu_item" ><a href="{$club->url()->setQueryString( array( 'do' => 'removeMember', 'member' => $member['core_members']['member_id'] ) )->csrf()}" data-confirm data-confirmSubMessage="{lang="club_remove_member_confirm"}">{lang="club_remove_member"}</a></li>
{{else}}
<li class="ipsMenu_item" ><a href="{$club->url()->setQueryString( array( 'do' => 'removeMember', 'member' => $member['core_members']['member_id'] ) )->csrf()}" data-confirm data-confirmSubMessage="{{if $member['core_clubs_memberships']['status'] === \IPS\Member\Club::STATUS_INVITED}}{lang="club_remove_accepted_confirm"}{{else}}{lang="club_remove_invitation_confirm"}{{endif}}">{lang="club_remove_invitation"}</a></li>
<li class="ipsMenu_item"><a href="{$club->url()->setQueryString( array( 'do' => 'resendInvite', 'member' => $member['core_members']['member_id'] ) )->csrf()}" data-confirm>{lang="club_resend_invitation"}</a></li>
{{endif}}
{{endif}}
</ul>
@@ -6646,21 +6647,25 @@
</div>
{{endif}}
{{elseif $modQueued}}
<div class="ipsMessage ipsMessage--warning">
<h4 class='i-font-weight_600'>{lang="mod_queue_message"}</h4>
{{$warnings = member.warnings( 1, NULL, 'mq' );}}
{{if \count( $warnings ) and member.mod_posts > time()}}
<p class="i-color_soft">
{{if \count( $warnings )}}
{lang="this_will_be_moderated"}
<div class="ipsMessage ipsMessage--warning i-margin-bottom_2">
<div class="i-flex i-justify-content_space-between i-align-items_center i-flex-wrap_wrap i-gap_1">
<div class="i-flex_91">
<h4 class='i-font-weight_600'>{lang="mod_queue_message"}</h4>
{{$warnings = member.warnings( 1, NULL, 'mq' );}}
{{if \count( $warnings ) and member.mod_posts > time()}}
<p class="i-color_soft">
{{if \count( $warnings )}}
{lang="this_will_be_moderated"}
{{endif}}
{lang="restriction_ends" sprintf="\IPS\DateTime::ts( \IPS\Member::loggedIn()->mod_posts )->relative()"}
</p>
{{endif}}
{lang="restriction_ends" sprintf="\IPS\DateTime::ts( \IPS\Member::loggedIn()->mod_posts )->relative()"}
</p>
{{endif}}
<div class='ipsButtons'>
{{foreach $warnings as $idx => $warning}}
<a href="{$warning->url()}" class='ipsButton ipsButton--small ipsButton--inherit' data-ipsDialog data-ipsDialog-size='narrow'>{lang="view_warning_details"}</a>
{{endforeach}}
</div>
<div class='ipsButtons'>
{{foreach $warnings as $idx => $warning}}
<a href="{$warning->url()}" class='ipsButton ipsButton--small ipsButton--inherit' data-ipsDialog data-ipsDialog-size='narrow'>{lang="view_warning_details"}</a>
{{endforeach}}
</div>
</div>
</div>
{{endif}}]]></template>
@@ -7060,20 +7065,18 @@
{{$i++;}}
<li class='ipsField_stackItem' data-role="stackItem">
<input type="hidden" name="{$name}[{$id}]" value="{$val}">
<div class="i-cursor_move" data-action='stackDrag'>
<span class="ipsField_stackDrag ipsDrag ipsJS_show">
<i class='fa-solid fa-bars ipsDrag_dragHandle'></i>
</span>
<div data-ipsStack-wrapper class="i-padding_2">
{{if $options['checkboxes']}}
<input type="checkbox" name="{$name}_checkboxes[{$id}]" value="1" {{if $val}}checked{{endif}} id="elCheckbox_{$name}_{$id}" class="ipsInput ipsInput--toggle">
<label for="elCheckbox_{$name}_{$id}">
{lang="{$options['checkboxes']}{$id}"}
</label>
{{else}}
{$val}
{{endif}}
</div>
<span class='ipsField_stackDrag ipsDrag' data-action='stackDrag'>
<i class='fa-solid fa-bars ipsDrag_dragHandle'></i>
</span>
<div data-ipsStack-wrapper>
{{if $options['checkboxes']}}
<input type="checkbox" name="{$name}_checkboxes[{$id}]" value="1" {{if $val}}checked{{endif}} id="elCheckbox_{$name}_{$id}" class="ipsInput ipsInput--toggle">
<label for="elCheckbox_{$name}_{$id}">
{lang="{$options['checkboxes']}{$id}"}
</label>
{{else}}
<div data-action='stackDrag'>{$val}</div>
{{endif}}
</div>
</li>
{{endforeach}}
@@ -7352,12 +7355,14 @@
{{endforeach}}
{{else}}
{{if $textarea}}
{{foreach $languages as $lang}}
<span class="{$lang->_icon}"></span> {$lang->_title} {{if $required and $lang->default}}<span class="ipsFieldRow__required">{lang="required"}</span>{{endif}}<br>
<br>
<textarea name="{$name}[{$lang->id}]" aria-label='{$lang->title}' class='ipsInput ipsInput--text {{if !$required || !$lang->default}} ipsFieldRow_errorExclude{{endif}}'>{{if isset( $values[ $lang->id ])}}{$values[ $lang->id ]}{{endif}}</textarea><br>
<br>
{{endforeach}}
<div class="ipsFieldRow__languages">
{{foreach $languages as $lang}}
<div>
<div class="ipsFieldRow__language"><span class="{$lang->_icon}"></span> {$lang->_title} {{if $required and $lang->default}}<span class="ipsFieldRow__required">{lang="required"}</span>{{endif}}</div>
<textarea name="{$name}[{$lang->id}]" aria-label='{$lang->title}' class='ipsInput ipsInput--text {{if !$required || !$lang->default}} ipsFieldRow_errorExclude{{endif}}'>{{if isset( $values[ $lang->id ])}}{$values[ $lang->id ]}{{endif}}</textarea>
</div>
{{endforeach}}
</div>
{{else}}
<ul class='ipsForm ipsForm--translatable'>
{{foreach $languages as $lang}}
@@ -8235,8 +8240,8 @@
</li>
{{endforeach}}
</ul>]]></template>
<template template_group="global" template_name="cachingLog" template_data="$log" template_location="front" template_app="core"><![CDATA[<div id="elCachingLog">
{{foreach $log as $i => $log}}
<template template_group="global" template_name="cachingLog" template_data="$cacheLog" template_location="front" template_app="core"><![CDATA[<div id="elCachingLog">
{{foreach $cacheLog as $i => $log}}
{{$i = \str_replace( '.', '_', $i);}}
<div class="cCachingLog" data-ipsDialog data-ipsDialog-content="#elCachingLog{$i}_menu">
{{if $log[0] === 'get'}}
@@ -8252,6 +8257,9 @@
<span class="cCachingLogMethod cCachingLogMethod_delete">delete</span>
<span class="cCachingLogKey">{$log[1]}</span>
{{else}}
{{if count( array_keys( $cacheLog, $log ) ) > 1}}
<i class="fa fa-exclamation-triangle cCachingLogMethod_delete" title="Possible Duplicate"></i>
{{endif}}
<span class="cCachingLogMethod">Redis</span>
<span class="cCachingLogKey">{$log[1]}</span>
{{endif}}
@@ -10213,7 +10221,7 @@ data-ips-layout='{theme="view.global_view_mode"}'
{{if !\IPS\Request::i()->isAjax()}}
<!--!Font Awesome Free 6 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<link rel='stylesheet' href='{url="applications/core/interface/fontawesome/css/all.min.css?v=6.5.1" base="none" noprotocol="true"}'>
<link rel='stylesheet' href='{url="applications/core/interface/fontawesome/css/all.min.css?v=6.7.1" base="none" noprotocol="true"}'>
{{endif}}
{{if \IPS\Dispatcher::i()->controllerLocation == 'front' and ! \IPS\Request::i()->isAjax()}}
@@ -13867,7 +13875,7 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $review->getVie
<span class='ipsUsername ipsUsername--anonymous'>{lang="post_anonymously_placename"}</span>
{{else}}
{{$groupFormatting = ( $groupFormatting === NULL ) ? ( ( \IPS\Settings::i()->group_formatting == 'global' ) ? TRUE : FALSE ) : $groupFormatting;}}
{{if $member->member_id AND \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'members', 'front' ) ) }}<a href='{{if $warningRef}}{$member->url()->setQueryString( 'wr', $warningRef )}{{else}}{$member->url()}{{endif}}' rel="nofollow" data-ipsHover data-ipsHover-width='370' data-ipsHover-target='{$member->url()->setQueryString( array( 'do' => 'hovercard', 'wr' => $warningRef, 'referrer' => urlencode( \IPS\Request::i()->url() ) ) )}' title="{lang="view_user_profile" sprintf="$member->name"}" class="ipsUsername">{{if $groupFormatting && $member->group['prefix']}}{$member->group['prefix']|raw}{{endif}}{$member->name}{{if $groupFormatting && $member->group['suffix']}}{$member->group['suffix']|raw}{{endif}}</a>{{else}}{{if $groupFormatting && $member->group['prefix']}}{$member->group['prefix']|raw}{{endif}}{$member->name}{{if $groupFormatting && $member->group['suffix']}}{$member->group['suffix']|raw}{{endif}}{{endif}}{{endif}}]]></template>
{{if $member->member_id AND \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'members', 'front' ) ) }}<a href='{{if $warningRef}}{$member->url()->setQueryString( 'wr', $warningRef )}{{else}}{$member->url()}{{endif}}' rel="nofollow" data-ipsHover data-ipsHover-width='370' data-ipsHover-target='{$member->url()->setQueryString( array( 'do' => 'hovercard', 'wr' => $warningRef, 'referrer' => urlencode( \IPS\Request::i()->url() ) ) )}' title="{lang="view_user_profile" sprintf="$member->name"}" class="ipsUsername" translate="no">{{if $groupFormatting && $member->group['prefix']}}{$member->group['prefix']|raw}{{endif}}{$member->name}{{if $groupFormatting && $member->group['suffix']}}{$member->group['suffix']|raw}{{endif}}</a>{{else}}<span class="ipsUsername" translate="no">{{if $groupFormatting && $member->group['prefix']}}{$member->group['prefix']|raw}{{endif}}{$member->name}{{if $groupFormatting && $member->group['suffix']}}{$member->group['suffix']|raw}{{endif}}</span>{{endif}}{{endif}}]]></template>
<template template_group="global" template_name="userLinkFromData" template_data="$id, $name, $seoName, $groupIdForFormatting=NULL, $groupFormatting=NULL, $anonymous=FALSE" template_location="front" template_app="core"><![CDATA[{{if $anonymous}}{lang="post_anonymously_placename"}{{else}}{{if $id AND \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'members', 'front' ) ) }}<a href='{url="app=core&module=members&controller=profile&id={$id}" seoTemplate="profile" seoTitle="$seoName ?: \IPS\Http\Url::seoTitle( $name )"}' rel="nofollow" data-ipsHover data-ipsHover-width="370" data-ipsHover-target='{url="app=core&module=members&controller=profile&id={$id}&do=hovercard" seoTemplate="profile" seoTitle="$seoName ?: \IPS\Http\Url::seoTitle( $name )"}' title="{lang="view_user_profile" sprintf="$name"}" class="ipsUsername">{{if $groupIdForFormatting AND ( $groupFormatting === TRUE OR ( $groupFormatting === NULL AND \IPS\Settings::i()->group_formatting == 'global' ) )}}{expression="\IPS\Member\Group::load( $groupIdForFormatting )->formatName( $name )" raw="true"}{{else}}{$name}{{endif}}</a>{{else}}{{if $groupIdForFormatting AND ( $groupFormatting === TRUE OR ( $groupFormatting === NULL AND \IPS\Settings::i()->group_formatting == 'global' ) )}}{expression="\IPS\Member\Group::load( $groupIdForFormatting )->formatName( $name )" raw="true"}{{else}}{$name}{{endif}}{{endif}}{{endif}}]]></template>
<template template_group="global" template_name="userLinkWithPhoto" template_data="$member, $location='admin', $size='tiny'" template_location="admin" template_app="core">
{template=&quot;userPhoto&quot; app=&quot;core&quot; group=&quot;global&quot; params=&quot;$member, $size&quot;} {template=&quot;userLink&quot; app=&quot;core&quot; group=&quot;global&quot; params=&quot;$member&quot;}</template>
@@ -23150,6 +23158,9 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $review->getVie
<label for="search_decay-unlimitedCheck" id="search_decay_label" class="ipsField_unlimited">{lang="search_decay_unlimited"}</label>
</div>]]></template>
<template template_group="settings" template_name="verifySetupProtection" template_data="$value" template_location="admin" template_app="core"><![CDATA[{lang="verify_setup_protection_1"} <input name="verify_setup_protection[0]" type="number" class="ipsInput ipsField_tiny" min="1" value="{$value[0]}"> {lang="verify_setup_protection_2"} <input name="verify_setup_protection[1]" type="number" class="ipsInput ipsField_tiny" value="{$value[1]}"> {lang="verify_setup_protection_3"}]]></template>
<template template_group="sharelinks" template_name="bluesky" template_data="$url, $title" template_location="front" template_app="core"><![CDATA[<a href="https://bsky.app/intent/compose?text={{if $title}}{$title}%20-%20{{endif}}{$url}" class="ipsShareLink ipsShareLink--bluesky" target="_blank" data-role="shareLink" title='{lang="bluesky_text"}' data-ipsTooltip rel='nofollow noopener'>
<i class="fa-brands fa-bluesky"></i>
</a>]]></template>
<template template_group="sharelinks" template_name="email" template_data="$url, $title" template_location="front" template_app="core"><![CDATA[<a href="mailto:?subject={$title}&body={$url}" rel='nofollow' class='ipsShareLink ipsShareLink--email' title='{lang="email_text"}' data-ipsTooltip>
<i class="fa-solid fa-envelope"></i>
</a>]]></template>
@@ -26364,7 +26375,7 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $review->getVie
<i class='ipsLargeIcon fa-solid fa-envelope'></i>
<h1 class='ipsTitle ipsTitle--h2'>{lang="reg_confirm_email"}</h1>
<div class="ipsRichText i-font-size_2 i-margin-block_3">
<p>{lang="reg_confirm_email_desc" sprintf="\IPS\Member::loggedIn()->email"}</p>
<p>{lang="reg_confirm_email_desc"}</p>
<p>{lang="reg_confirm_email_must"}</p>
</div>
<ul class='ipsButtons ipsButtons--small'>
@@ -26439,6 +26450,7 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $review->getVie
{{endif}}]]></template>
<template template_group="system" template_name="reauthenticate" template_data="$login, $error, $blurb=NULL" template_location="front" template_app="core"><![CDATA[<form accept-charset='utf-8' method='post' action='{$login->url}'>
<input type="hidden" name="csrfKey" value="{expression="\IPS\Session::i()->csrfKey"}">
<input type="hidden" name="mergeAccount" value="1">
{{$usernamePasswordMethods = $login->usernamePasswordMethods();}}
{{$buttonMethods = $login->buttonMethods();}}
{{if $blurb}}
@@ -30905,6 +30917,7 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $review->getVie
/* Hovercards */
.ipsHovercard[data-role="advicePopup"] {
display: none;
width: 300px;
}
.ipsHovercard[data-role="advicePopup"] > div {
@@ -30987,6 +31000,7 @@ data-view-tracking-data="{expression="base64_encode(json_encode( $review->getVie
.ipsShareLink--twitch { background: #772ce8; }
.ipsShareLink--discord { background: #5865f2; }
.ipsShareLink--x { background: #000000; }
.ipsShareLink--bluesky { background: #59baff; }
/* Status update widget */
.ipsWidget .cStatusUpdateWidget .ipsComposeArea_dummy {
@@ -32958,6 +32972,7 @@ body:not( .cAdminHideMenu ) #elHideMenu [data-action="toggleOpen"] {
background: var(--i-background_3);
}
.ipsHovercard[data-role="advicePopup"] {
display: none;
width: 300px;
}
.ipsHovercard[data-role="advicePopup"] > div {
@@ -37776,7 +37791,7 @@ a:has(.ipsBadge){
}
.ipsSocial--twitter {
background-color: #00abf0;
background-color: #000000;
}
.ipsSocial--linkedIn {
@@ -38067,7 +38082,7 @@ a:has(.ipsBadge){
border-bottom-width: 0 !important;
top: 19px;
inset-inline-end: calc(100% - 5px);
transform: rotate(-45deg);
transform: rotate(calc(-45deg * var(--i-lang-dir)));
background: var(--i-background_1);
box-sizing: content-box;
}
@@ -38852,15 +38867,9 @@ a:has(.ipsBadge){
height: 100%;
width: 100%;
object-fit: cover;
object-position: 50% max(0%, min(var(--offset, 50) * 1%, 100%));
object-position: 50% calc(clamp(0, var(--offset), 100) * 1%);
user-select: none;
}
/* Fix reversed alignment bug in Firefox */
@supports(-moz-osx-font-smoothing: grayscale){
.ipsCoverPhoto__image{
object-position: 50% min(0%, max(var(--offset, 50) * 1%, 100%));
}
}
/* Editing using scroll */
.ipsCoverPhoto--editing .ipsCoverPhoto__container{
@@ -39145,6 +39154,14 @@ a:has(.ipsBadge){
}
}
/* Flip the arrow direction in RTL */
[dir="rtl"] .ipsPagination__first .fa-angles-left{
--i: "\f101";
}
[dir="rtl"] .ipsPagination__last .fa-angles-right{
--i: "\f100";
}
/*
----------------
- Data filters
@@ -41419,6 +41436,8 @@ a:has(.ipsContainerTitle){
border-bottom: 2px solid var(--i-background_3);
margin: 0 .4em;
padding: .4em 0;
container-type: inline-size;
container-name: toolbar;
/* We do this to create a new stacking context. This makes sure that fixed positioning of anchored children (e.g. dropdowns) is effectively RELATIVE, so scrolling and stuff will make those children automatically reposition */
transform: translate(0);
@@ -41441,7 +41460,7 @@ a:has(.ipsContainerTitle){
}
/* Main toolbar icons */
.ipsEditor__toolbar--main > li > .ipsEditor__toolbar-item{
:is(.ipsEditor__toolbar--main, .ipsEditor__toolbar--row) > li > .ipsEditor__toolbar-item{
min-width: 2.4em;
min-height: 2.4em;
justify-content: center;
@@ -41470,7 +41489,7 @@ a:has(.ipsContainerTitle){
/* Active main toolbar items */
.ipsEditor__toolbar--main > li > .ipsEditor__toolbar-item--active{
:is(.ipsEditor__toolbar--main, .ipsEditor__toolbar--row) > li > .ipsEditor__toolbar-item--active{
background-color: color-mix(in srgb, currentColor 25%, transparent);
}
@@ -41547,6 +41566,11 @@ a:has(.ipsContainerTitle){
min-width: 220px;
}
/* Dropdown Menu: Mention */
.ipsEditor__toolbar-select-options--mentionSuggestions:not(#x) {
z-index: var(--ips-js-zindex-top, var(--i-editor-panel-zi));
}
/* Dropdown menus (Insert), Select menus (Font-size) and colors */
.ipsEditor__toolbar--nested .ipsEditor__toolbar-item,
.ipsEditor__toolbar-select-option,
@@ -41587,13 +41611,15 @@ a:has(.ipsContainerTitle){
/* Animate the submenus if discrete transitions are supported */
@supports (transition-behavior: allow-discrete){
.ipsEditor__toolbar .ipsEditor__toolbar--row[hidden],
.ipsEditor__toolbar--nested .ipsEditor__anchored-panel[hidden]{
max-height: 0px;
overflow: clip;
opacity: 0;
}
.ipsEditor__toolbar .ipsEditor__toolbar--row,
.ipsEditor__toolbar--nested .ipsEditor__anchored-panel{
interpolate-size: allow-keywords;
max-height: 200px;
@@ -41635,6 +41661,24 @@ a:has(.ipsContainerTitle){
width: 100%;
}
/* Add support for row of buttons */
.ipsEditor__toolbar--row {
width: 100%;
display: flex;
gap: 2px;
flex-direction: row;
background-color: var(--i-background_2);
}
.ipsEditor__toolbar--main .ipsEditor__toolbar--row {
margin-bottom: -0.4em; /* This moves the bottom border of the containing toolbar up */
padding-block: 0.2em;
}
@container toolbar (min-width: 0) {
.ipsEditor__toolbar--row {
width: 100cqw;
}
}
[data-tippy-root] {
z-index: calc(var(--ips-js-zindex-top) - 10) !important;
}
@@ -41734,16 +41778,21 @@ a:has(.ipsContainerTitle){
/* margin-inline-start: 0.5em;*/
/*}*/
.tiptap .ipsEditor__table-wrapper > .ipsEditor__create-sibling-wrapper > .ipsEditor__create-sibling,
.tiptap .react-renderer :is(.ipsEditor__node-options--media > .ipsEditor__toolbar-item--media-options, .ipsEditor__create-sibling, .ipsEditor__toolbar-item--escapeembed, .ipsEditor__toolbar-item--embeddimensions):not(.ipsEditor__node-options--open > *) {
display: none;
}
:is(.react-renderer > [data-node-view-wrapper]:hover, .ProseMirror-selectednode > [data-node-view-wrapper]):not(.react-renderer--no-indicators > [data-node-view-wrapper]) > :is(.ipsEditor__node-options--media, .ipsEditor__create-sibling-wrapper, .ipsEditor__node-options--embed) > :is(.ipsEditor__toolbar-item--media-options, .ipsEditor__create-sibling, .ipsEditor__toolbar-item--escapeembed, .ipsEditor__toolbar-item--embeddimensions),
.ipsEditor__node-options--media.ipsEditor__node-options--open > .ipsEditor__toolbar-item--media-options {
.ipsEditor__node-options--media.ipsEditor__node-options--open > .ipsEditor__toolbar-item--media-options,
.tiptap .ipsEditor__table-wrapper:is(:hover, :focus, :focus-within, .ProseMirror-selectednode) > .ipsEditor__create-sibling-wrapper > .ipsEditor__create-sibling {
display: flex;
justify-content: center;
align-items: center;
}
/*.ipsEditor__create-sibling:hover {*/
/* display: flex !important;*/
/*}*/
.tiptap [data-node-view-wrapper][data-is-resizing] :is(.ipsEditor__create-sibling-wrapper, .ipsEditor__node-options--media, .ipsEditor__node-options),
.ipsEditor__nodewrap--narrow .ipsEditor__node-options--media:not(.ProseMirror-selectednode > [data-node-view-wrapper] > *) {
display: none !important;
@@ -43709,6 +43758,20 @@ hr.ipsUnreadBar{
margin-inline-start: auto;
}
/* Language labels (with flags) */
.ipsFieldRow__languages{
display: grid;
gap: 2em;
}
.ipsFieldRow__language{
font-weight: 500;
color: var(--i-color_hard);
margin-bottom: .5em;
}
.ipsFieldRow__language .ipsFlag{
margin-inline-end: .3em;
}
/* Descriptions */
.ipsFieldRow__desc {
font-size: 0.9em;
@@ -43931,6 +43994,11 @@ hr.ipsUnreadBar{
color: var(--i-color_soft);
}
/* Sometimes the data-action attribute is added to divs instead of the drag handle */
[data-action="stackDrag"]{
cursor: move;
}
.ipsField_stackItem_keyValue{
display: flex;
gap: .5em;
@@ -46196,8 +46264,12 @@ textarea.ipsField_codeInput {
.ipsInputIcon__icon{
position: absolute;
top: calc(50% - .5em);
inset-inline-start: .5em;
margin-top: auto;
margin-bottom: auto;
top: 0;
bottom: 0;
inset-inline-start: .8em;
pointer-events: none;
}
.ipsInputIcon .ipsInput{
@@ -48979,7 +49051,7 @@ a.ipsPixabayAttribution {
}
:is(.ipsPager_next, .ipsPager_prev) a::after {
content: '\f061';
content: "\f061";
font-family: var(--i-font-awesome);
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
@@ -48997,10 +49069,17 @@ a.ipsPixabayAttribution {
}
.ipsPager_prev a::after{
content: '\f060';
content: "\f060";
inset-inline-start: 0;
}
[dir="rtl"] .ipsPager_prev a::after {
content: "\f061";
}
[dir="rtl"] .ipsPager_next a::after {
content: "\f060";
}
.ipsPager_title,
.ipsPager_type {
display: block;
@@ -51059,6 +51138,43 @@ details.ipsQuote > .ipsQuote_contents{
/* Restrict width of embedded content (iframes, etc) */
.ipsRichText :where(iframe:not(.ipsEmbeddedBrightcove_frame, .ipsEmbeddedVideo, .ipsEmbeddedPhoto, .ipsEmbeddedOther)){
max-width: min(100%,var(--i-embed-max-width, 500px));
}
.ipsRichText :is(.ipsRichText__table-wrapper) {
max-width: calc(100% + var(--i-ta--bo-wi) * 2);
overflow-x: auto;
overflow-y: visible;
width: min-content;
}
.ipsRichText table, .ipsRichText__table-wrapper {
--i-ta--bo-co: var(--i-color_root);
--i-ta--ba-co: transparent;
--i-ta--bo-wi: 1px;
}
.ipsRichText table {
border-collapse: collapse;
border-spacing: 0;
overflow: hidden;
outline: var(--i-ta--bo-wi) solid var(--i-ta--bo-co);
outline-offset: calc(-1 * var(--i-ta--bo-wi));
border-radius: var(--i-box--bo-ra);
table-layout: fixed;
}
.ipsRichText :is(table, tr,th,td) {
border: var(--i-ta--bo-wi) solid var(--i-ta--bo-co);
background-color: var(--i-ta--ba-co);
}
.ipsRichText th {
--i-ta--ba-co: oklch(from var(--i-color_root) l c h / calc(alpha * 0.1));
font-weight: 600;
}
.ipsRichText :is(th,td) {
padding: 0.5em;
position: relative;
}]]></css>
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="3-social-icons.css"><![CDATA[.ipsSocialIcons{
display: flex;
@@ -51104,7 +51220,7 @@ details.ipsQuote > .ipsQuote_contents{
.ipsSocialIcons__icon--facebook{ --_brand: #1778F2; }
.ipsSocialIcons__icon--linkedin{ --_brand: #0a66c2; }
.ipsSocialIcons__icon--reddit{ --_brand: #FF4500; }
.ipsSocialIcons__icon--twitter, .ipsSocialIcons__icon--x{ --_brand: #1d9bf0; }
.ipsSocialIcons__icon--twitter, .ipsSocialIcons__icon--x{ --_brand: #000000; }
.ipsSocialIcons__icon--vk{ --_brand: #507299; }
.ipsSocialIcons__icon--weibo{ --_brand: #D32F2F; }
.ipsSocialIcons__icon--youtube{ --_brand: #ff0000; }
@@ -51118,7 +51234,9 @@ details.ipsQuote > .ipsQuote_contents{
.ipsSocialIcons__icon--xing{ --_brand: #B0D400; }
.ipsSocialIcons__icon--tumblr{ --_brand: #36465D; }
.ipsSocialIcons__icon--twitch{ --_brand: #772ce8; }
.ipsSocialIcons__icon--discord{ --_brand: #5865f2; }]]></css>
.ipsSocialIcons__icon--discord{ --_brand: #5865f2; }
.ipsSocialIcons__icon--bluesky{ --_brand: #59baff; }
.ipsSocialIcons__icon--tiktok{ --_brand: #000000; }]]></css>
<css css_location="global" css_app="core" css_attributes="" css_path="framework" css_name="3-step-bar.css"><![CDATA[/*
----------------
- Steps/wizard
@@ -52488,7 +52606,7 @@ html .ipsTruncate_more{
}
.ipsBreadcrumb ol li:not(:last-child)::after{
content: '\f054';
content: "\f054";
margin: 0 1em;
color: color-mix(in srgb, currentColor 80%, transparent);
font-size: .8em;
@@ -52498,6 +52616,9 @@ html .ipsTruncate_more{
-webkit-font-smoothing: antialiased;
text-rendering: auto;
}
:where([dir="rtl"]) .ipsBreadcrumb ol li:not(:last-child)::after{
content: "\f053";
}
.ipsBreadcrumb a{
color: inherit;
@@ -59695,16 +59816,15 @@ html[dir] .ipsHovercard .ipsForm--horizontal .ipsFieldRow > .ipsFieldRow__label
<resource name="jsapi.png" app="core" location="admin" path="/enhancements/google_maps/">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 truncated
<resource name="staticapi.png" app="core" location="admin" path="/enhancements/google_maps/">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 truncated
<resource name="viglink.png" app="core" location="admin" path="/enhancements/">iVBORw0KGgoAAAANSUhEUgAAAEsAAABLCAYAAAA4TnrqAAAJOUlEQVR42u2ba1BU5xnH3xqLhhrFKKjgZNppPjDGpNZEi6LctJRakjrRxHqpYRovaBVxQUVHazEsyrr3XW4iIhjltstt2V2WZblIACGlCWPVJq1aNWhUvKBWp/2Qf897nM75gAi7+67sZvY/8x8+cYb98TzP+b/POUu88sorr7zyyiuvvHIv3X/0ZBTxamjh1Ecac5Fm7SmdIba0vCLGU1yuq4guKdcv8UuwXHkxoP7VFQzxGx3faX6JElMLqgwmVHuIT9cbEZlmwUvx5nu7Ky6kuB6WfIERqkhAGYrzBSkoMzV7BKg6kwmyIgN8ExoQmGwFWWfody2oRlUcDv/CCs0iQM1ZEQJ9WRmqai1uDaqm1gSLoQqBSRZMTW5A0I4GTEq0XJ4r/szqGlD/vjsaB3/WykPSLH5qdQRuKd9DYY17V1djnQkfpuvht91GQfEO5Dx6g/FOaVdvDHtYBauyoVjIQxLMgVPNgylzP/RGm1uCMpstyM47zrVfEwL5qhI8NcmKH/3RfIMtqK+aZuPgrBYKaIDVUYAqAtq8ItSarW4FqtZkQVXxCczYaUBAEl9VAzx+a921uIIvVexgSedZoIqkcAZxGL5UxCGzSE//QLcAZTDWoUqvw8a0fIzf/v+qGmg67H+wvrb//PUH050HZTqQCGmIhUIZ1Pwcm4ccqRgnSivoHzrCA92MqmoDNHIpJiU3YRoPanD7b6/HT3c3fuEcqP4bvkgXhvrzgUXisTYW+yTZKNNVUmAjBor+zFVKsWh/JSYlNVIgQ3rMJtNtte1SnOOwjiwthDJcADJkdS1Ao1qEVIkGuopqCmxEYKnkCuyV5mK8qFlovyHsVPZCT3UEMmY3CVU1TGDaMEgVGmRIlS8UGIVELVeo+ap6PaUeU3hQw/fEbZYrv1J2lhN7xYdPVRSFYJ/V4ejVrsJ+2REcliqg01cJwFwMSsaB0ipkWCM+BT9Rkx2ghOoataH2XvPf+2YPH1R1yh7I5psFCPaYVuJ8FKs+wSG5FhKJDKVlehhMFtcN8xojZHIV5HIFFEoNJiS1CO1np2n2emVLXe/wQPVdmgzxzLbhtt9g2es7bTQOyHMhlauRwQE7VVKOWnM983hAW10qU0LGOU8lQ8g+A/yFTOWQx20x9yaWnEsdGlbOuycHDHVHqku9EN2aTfhEnkP/6zyw/IIiGCkwRoGzuFRHr8tfX6NQQCQ5hle2DxjqDrfj1TuP/QYH9fmpWGS83eQopIF3x1BolEoclCj4D5V+UAKVOpPLQLWoqDJA74Dp71FYOUeOQpyewV9XwjlHJUPgzkYhUznpyYn1mJXa0jI4rLQ3OmgLOQ9LOGjf1byPk4bmWJ2+Mlqnq4wuK9PH6CuqFre1d85s6+DcfsYud5zpmlFjMEaUlupi6PWoG4zVER9m1ORNFA7KTEyrK7/16vJnwyr6SCMclhlVl+Rt4FpnMHGxfDZbbtP2YQVqGnetlzYY791//N9Rz4b1qM+HHpiF4c7AqkjQhSFxoULSP7PQ/RTLqvLlthH7a74SDX0WlM3jz4LMTM+WdeItxAXS/eV6NK0AllU1JclKZ9ZFMhzhEE3uUWzbUfxmG+73jiOMRfdRNBuxrKrRG4139N3XFw8PVteJ9yB5x8a0upRhwNFlBYSh6B6K7qNYgqIbiOB9TZ3EHiEzphTKCDAFRiu2pzKKMND5Gw+m0z0Uo/YT8tX62nv/vPUowP5HXsLOnY1pa6e/1UoY6Mcpth5aBSyryi+h7srKI925xBGhcC3bKEEtDzVDl5hKnJDcenEd3T+xAyVEBSeWf9/6Iv3NNrbVtQh8xV4/N93hTBVvvE0/HOuo8OdqGhWcEMx0rcw4SqgiOEdWEwcUq+46OZF7/M4S1BSRFQGi+n8QFoJkjo1plKA+PNeK01lriB06/XXfLLKODvUGpkOdRgXz2ZvzCQMxjxJCO85qIXaIG+gXp4jYtt/k7fWYk9ZqIyzFfbhKqBhHCcVCIz2PkmEoRX9hDw2gjCAJe/ePDf3f3H0ynvHbM53B/JMezSLm1YWvm5+7xu17+B8f1pmKekJC3bXVeX/NJq4QPv2DgnmUUEXx84s8R2+ltrTS/RLTqJBkxcubTDeJq4SHt32QNqODZZSgpndbetclz1DJ59eX/JAbwKyr6uXNppuy+ovriCsF434R660EhU+TPe5cGbDGHbu28Oa0ZBvYRoV6BlFhJKOEMhx0/0+IoBWSmjzfVdk3gnY1MRzqDfz5z3r+1lziWgm7eholmLcj3f9/oedXI+eu9k0nvz7U779Gg6CUZmawuCUhFmS0MVhGMogSLI5ChFPQuqMXJq7SwH+1CoEiCwNQwhszN+4/8X2xsC6fmfE0SixmDCzM0J2xMpcsO9rv//ss0MqaurUCQTudn1t097W+qEdGRkCsH3AIzxyz52HplgPwXZ3LwdJiyvpCDlaT01FhTLzpNhkp4eGtsSwfcAiOArRRICvzMZlWF+egXc7NLbrS0douryUjKRj27hTei2DorDAU7IsH+V0+N7fUCBSZuQ/tUCvSmICf7Lb1EHcQzUjsq2sRkBOKGR8rMGF1JqbGF3Ot2OgQLLqpaL94d6Z7wOr6lP1WglobiV75uyAfHEdAXC5o3nIkKoRL2g3EnQRNdDnrKEFNq2ubaBd8VmRxrVjHICq4gXCpfSYO/rzFJe2YFY5xq7LhH19iVyvS96y2Fv9NTNxROLYiD4ow9tWVGQ5D6lqQFfn0rjjsqDCWOywTdxV9V8Jlw/5ICBauF8Nvq3FYd0UfLlMdb7v2PnFnwfCnZFdECZq7HimjQdYUI3BX85BR4bVdDWeJJ+jpITvKBcl+AcQ7NmNMQtOQb+11XboX7Bmw2o8tp2sclrAEYPMxfWMhAna2PBPWq9ssl6MVZ8qJJwnKiGqoIl0w7CPQk74UJKEdgYM8gCCeJlzuCmZ8bhScHYJlyQr4JbcOeMt4R/n5vcQTheNrMoUowfigrQ7HmG0tmLbDNuC7gx4p+q4E/fK5S6orcwFOpCXCR9TBr4rp+w/Fnb1LCFt5/lZCSPZz6Bcv+a/zvr6nsZt8H4SMd2z8klAZztaqUHwr+w1IXHP/2W8evPb9gNVdsgRHl+fTGcbevz2hK9dFE6+88sorr7zyyiuvPFb/A62oY924fO4EAAAAAElFTkSuQmCC</resource>
<resource name="communityhive.svg" app="core" location="admin" path="/enhancements/">PHN2ZyB3aWR0aD0iMzU5IiBoZWlnaHQ9Ijg3IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3BhY2U9InByZXNlcnZlIiBvdmVyZmxvdz0iaGlkZGVuIj48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cmVjdCB4PSI0NTciIHk9IjMxNyIgd2lkdGg9IjM1OSIgaGVpZ2h0PSI4NyIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC00NTcgLTMxNykiPjxwYXRoIGQ9Ik0wIDAgMzk5LjkxNSAwIDM5OS45MTUgMzk5LjkxNSAwIDM5OS45MTVaIiBmaWxsPSIjRkZGRkZGIiB0cmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAxLjAwMDk1IDQzOS42OTYgMTU5LjQ4KSIvPjxwYXRoIGQ9Ik0yOS4wOTM4IDIwMC4xNThDMjguOTkzOSAxODIuNDYxIDQzLjI5MDggMTY4LjA2NCA2MC45ODcxIDE2OC4wNjRMODMuMTgyNCAxNjguMDY0IDgzLjE4MjQgMTkzLjg1OSA3MS4wODUgMTkzLjg1OSA3MS4wODUgMTcxLjU2NCA2NC45ODYyIDE3MS41NjRDNjQuODg2MyAxNzEuNTY0IDY0Ljc4NjMgMTcxLjU2NCA2NC42ODYzIDE3MS41NjQgNjMuOTg2NSAxNzEuNTY0IDYzLjI4NjYgMTcxLjc2NCA2Mi42ODY3IDE3MS45NjRMNjIuNzg2NyAxNzEuOTY0QzYwLjU4NzIgMTcyLjg2MyA1OS4wODc1IDE3NS4wNjMgNTkuMDg3NSAxNzcuNTYyTDU5LjA4NzUgMjIyLjQ1M0M1OS4wODc1IDIyNS43NTIgNjEuNzg2OSAyMjguNDUyIDY1LjA4NjIgMjI4LjQ1Mkw3MS4xODQ5IDIyOC40NTIgNzEuMTg0OSAyMDYuMTU2IDgzLjI4MjQgMjA2LjE1NiA4My4yODI0IDIzMS45NTEgNjEuMzg3IDIzMS45NTFDNDMuNzkwNyAyMzEuODUxIDI5LjE5MzggMjE3Ljg1NCAyOS4wOTM4IDIwMC4xNThaIiBmaWxsPSIjMkE5QzY2IiB0cmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAxLjAwMDk1IDQzOS42OTYgMTU5LjQ4KSIvPjxwYXRoIGQ9Ik02Mi42ODY3IDE3MS45NjRDNjMuMjg2NiAxNzEuNjY0IDYzLjk4NjUgMTcxLjU2NCA2NC42ODYzIDE3MS41NjQgNjQuMDg2NCAxNzEuNTY0IDYzLjM4NjYgMTcxLjc2NCA2Mi42ODY3IDE3MS45NjRMNjIuNjg2NyAxNzEuOTY0WiIgZmlsbD0iIzJBOUM2NiIgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMS4wMDA5NSA0MzkuNjk2IDE1OS40OCkiLz48cGF0aCBkPSJNOTUuMzc5OCAyMzEuODUxIDk1LjM3OTggMTY3Ljk2NCAxMDEuNDc5IDE2Ny45NjRDMTA0Ljc3OCAxNjcuOTY0IDEwNy40NzcgMTcwLjY2NCAxMDcuNDc3IDE3My45NjNMMTA3LjQ3NyAyMjUuODUyQzEwNy40NzcgMjI5LjE1MSAxMDQuNzc4IDIzMS44NTEgMTAxLjQ3OSAyMzEuODUxTDk1LjM3OTggMjMxLjg1MVoiIGZpbGw9IiMyQTlDNjYiIHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIDEuMDAwOTUgNDM5LjY5NiAxNTkuNDgpIi8+PHBhdGggZD0iTTEyNC4zNzQgMTgxLjM2MkMxMjQuMzc0IDE3My43NjMgMTMwLjE3MiAxNjguMzY0IDEzOC4wNzEgMTY4LjM2NCAxNDIuNDcgMTY4LjM2NCAxNDYuMDY5IDE2OS45NjQgMTQ4LjQ2OSAxNzIuODYzTDE0NC43NjkgMTc2LjM2M0MxNDMuMDcgMTc0LjQ2MyAxNDAuOTcgMTczLjM2MyAxMzguNDcxIDE3My4zNjMgMTMzLjc3MiAxNzMuMzYzIDEzMC4zNzIgMTc2LjY2MyAxMzAuMzcyIDE4MS40NjIgMTMwLjM3MiAxODYuMjYxIDEzMy42NzIgMTg5LjU2IDEzOC40NzEgMTg5LjU2IDE0MC45NyAxODkuNTYgMTQzLjA3IDE4OC41NiAxNDQuNzY5IDE4Ni41NjFMMTQ4LjQ2OSAxOTAuMDZDMTQ2LjA2OSAxOTIuOTU5IDE0Mi40NyAxOTQuNTU5IDEzOC4wNzEgMTk0LjU1OSAxMzAuMTcyIDE5NC4zNTkgMTI0LjM3NCAxODguOTYgMTI0LjM3NCAxODEuMzYyWiIgZmlsbD0iIzE4MjAzRCIgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMS4wMDA5NSA0MzkuNjk2IDE1OS40OCkiLz48cGF0aCBkPSJNMTUwLjc2OCAxODEuMzYyQzE1MC43NjggMTczLjg2MyAxNTYuNTY3IDE2OC4zNjQgMTY0LjU2NSAxNjguMzY0IDE3Mi40NjMgMTY4LjM2NCAxNzguMzYyIDE3My44NjMgMTc4LjM2MiAxODEuMzYyIDE3OC4zNjIgMTg4Ljg2IDE3Mi40NjMgMTk0LjM1OSAxNjQuNTY1IDE5NC4zNTkgMTU2LjU2NyAxOTQuMzU5IDE1MC43NjggMTg4Ljg2IDE1MC43NjggMTgxLjM2MlpNMTcyLjM2NCAxODEuMzYyQzE3Mi4zNjQgMTc2LjU2MyAxNjguOTY0IDE3My4yNjMgMTY0LjQ2NSAxNzMuMjYzIDE1OS45NjYgMTczLjI2MyAxNTYuNTY3IDE3Ni41NjMgMTU2LjU2NyAxODEuMzYyIDE1Ni41NjcgMTg2LjE2MSAxNTkuOTY2IDE4OS40NiAxNjQuNDY1IDE4OS40NiAxNjkuMDY0IDE4OS4zNiAxNzIuMzY0IDE4Ni4xNjEgMTcyLjM2NCAxODEuMzYyWiIgZmlsbD0iIzE4MjAzRCIgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMS4wMDA5NSA0MzkuNjk2IDE1OS40OCkiLz48cGF0aCBkPSJNMjA2LjM1NiAxOTMuOTU5IDIwNi4zNTYgMTc4Ljg2MiAxOTguOTU4IDE5MS4zNTkgMTk2LjM1OCAxOTEuMzU5IDE4OC45NiAxNzkuMjYyIDE4OC45NiAxOTMuOTU5IDE4My40NjEgMTkzLjk1OSAxODMuNDYxIDE2OC43NjQgMTg4LjI2IDE2OC43NjQgMTk3LjY1OCAxODQuNDYxIDIwNi45NTYgMTY4Ljc2NCAyMTEuNzU1IDE2OC43NjQgMjExLjg1NSAxOTMuOTU5IDIwNi4zNTYgMTkzLjk1OVoiIGZpbGw9IiMxODIwM0QiIHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIDEuMDAwOTUgNDM5LjY5NiAxNTkuNDgpIi8+PHBhdGggZD0iTTI0MS4zNDkgMTkzLjk1OSAyNDEuMzQ5IDE3OC44NjIgMjMzLjk1IDE5MS4zNTkgMjMxLjM1MSAxOTEuMzU5IDIyMy45NTMgMTc5LjI2MiAyMjMuOTUzIDE5My45NTkgMjE4LjQ1NCAxOTMuOTU5IDIxOC40NTQgMTY4Ljc2NCAyMjMuMjUzIDE2OC43NjQgMjMyLjY1MSAxODQuNDYxIDI0MS45NDkgMTY4Ljc2NCAyNDYuNzQ4IDE2OC43NjQgMjQ2Ljg0OCAxOTMuOTU5IDI0MS4zNDkgMTkzLjk1OVoiIGZpbGw9IiMxODIwM0QiIHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIDEuMDAwOTUgNDM5LjY5NiAxNTkuNDgpIi8+PHBhdGggZD0iTTI1My4yNDYgMTgyLjg2MSAyNTMuMjQ2IDE2OC43NjQgMjU5LjA0NSAxNjguNzY0IDI1OS4wNDUgMTgyLjY2MUMyNTkuMDQ1IDE4Ny40NiAyNjEuMTQ1IDE4OS40NiAyNjQuNjQ0IDE4OS40NiAyNjguMjQzIDE4OS40NiAyNzAuMjQzIDE4Ny40NiAyNzAuMjQzIDE4Mi42NjFMMjcwLjI0MyAxNjguNzY0IDI3Ni4wNDIgMTY4Ljc2NCAyNzYuMDQyIDE4Mi44NjFDMjc2LjA0MiAxOTAuMjYgMjcxLjg0MiAxOTQuMzU5IDI2NC42NDQgMTk0LjM1OSAyNTcuNDQ1IDE5NC4zNTkgMjUzLjI0NiAxOTAuMjYgMjUzLjI0NiAxODIuODYxWiIgZmlsbD0iIzE4MjAzRCIgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMS4wMDA5NSA0MzkuNjk2IDE1OS40OCkiLz48cGF0aCBkPSJNMzA1LjUzNSAxNjguNzY0IDMwNS41MzUgMTkzLjk1OSAzMDAuNzM2IDE5My45NTkgMjg4LjEzOSAxNzguNjYyIDI4OC4xMzkgMTkzLjk1OSAyODIuMzQgMTkzLjk1OSAyODIuMzQgMTY4Ljc2NCAyODcuMTM5IDE2OC43NjQgMjk5LjYzNyAxODQuMDYxIDI5OS42MzcgMTY4Ljc2NCAzMDUuNTM1IDE2OC43NjRaIiBmaWxsPSIjMTgyMDNEIiB0cmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAxLjAwMDk1IDQzOS42OTYgMTU5LjQ4KSIvPjxwYXRoIGQ9Ik0zMTIuMjM0IDE2OC43NjQgMzE4LjAzMLine truncated
<resource name="zapier.png" app="core" location="admin" path="/enhancements/">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 truncated
<resource name="google_maps.jpeg" app="core" location="admin" path="/enhancements/">/9j/4AAQSkZJRgABAQAASABIAAD/4QCARXhpZgAATU0AKgAAAAgABAESAAMAAAABAAEAAAEaAAUAAAABAAAAPgEbAAUAAAABAAAARodpAAQAAAABAAAATgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAMigAwAEAAAAAQAAAMgAAAAA/8AAEQgAyADIAwERAAIRAQMRAf/EAB8AAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKC//EALUQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+v/EAB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKC//EALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/bAEMAAwICAwICAwMDAwQDAwQFCAUFBAQFCgcHBggMCgwMCwoLCw0OEhANDhEOCwsQFhARExQVFRUMDxcYFhQYEhQVFP/bAEMBAwQEBQQFCQUFCRQNCw0UFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFP/dAAQAGf/aAAwDAQACEQMRAD8A/VKgAoAKACgAoAKACgAoAqapq1lollLeahdw2VpENzz3EgRFHuTxWtOlOtJQpxbb6IidSFOLlN2R4J45/bW8HaA0kGgW914ouVOPNgHk2318xvvD/dBr7rA8GY/E2liGqa89X9y2+dj47F8VYOjeNBOo/Lb73o/lc8R8R/tofEDWWddOXTNAhPAEEBuJB/wNyBn/AIDX22G4Ly2j/Gcpv1svuV/zPlK/FOPqP92owXo2/vdvyPP9R+OnxE1TP2nxrrLA9RFMsI/8cVa9+nkOVUvhw8fnd/mzxp5xmNT4q8vwX5JGX/ws3xgW3HxZru71/tKb/wCKrq/snL9vYQ/8BRz/ANoYu9/bS/8AAmamnfHT4iaUR9m8a6yoHRZZlmH5OjVzVMhyqqrSw8fldfkzeGb5hD4a8vwf5pnovhT9sn4h6fcRQ3semeIUJxtngNvJj/fQkf8AjtfO4rgzLaibpOUH63X3O35nuYbifMIu01GfycX96v8AkfQHg/8Aav8AC+tskOswz+H5zx5kv72DP++vIH+8BXweM4TxuHvKi1UXlo/uf6H2+Gz7DVfdqe4/Pb7z2bTtTtNWtI7qyuYru2kGUmgcOjD2Ir4ydOdKThNWa6M+jjOM1zRd0WazLCgAoAKACgAoAKACgD//0P1SoAKACgAoAKACgAJwKAPDvjd+1LofwvebSdLSPXfEq8NbJJiG1OP+Wzjv0+QfN9BzX2uS8MYnNLVqvuUu/V+i/XY+TzXiHD5felT9+p26L1f6b+Vj4r8efEzxL8TNQN34i1SW+w2Y7YfJbw/7kQ4H1OT71+0ZfleEyyHJhoW8+r9X/lZeR+W4zMMTjpc2Infy2S+X+d35nME5OTya9U80SgAoAKAFUF2CqCWPAAo2Gk27I6zRtLFhDvcAzt1P932FcNSfM7I9mhS5Fd7mjnFYHXY6HwZ8QNe8AXwudE1CS0BOZLc/NDL/ALyHg/UYPvXmY7LcLmMOXEQv59V6M7cNjK2ElzUZW8uj+R9Y/CX9ofSfiC0Wm6iiaPrx4WBn/dXB/wCmbHv/ALJ5+tfkeb8O18tvVp+/T79V6r9dj77L83pYz93U92f4P0PXetfIn0AUAFABQAUAFABQB//R/VKgAoAKACgAoAM4oA+Uf2lf2on02a78JeDbvbdpmG/1aE5MR6GKE9Nw/if+HoOc4/UeG+GPbqONxy93eMe/m/Lsuvofnme8QezcsJg372zl28l59302PkEksxZiWYksSxySSckknkknkk8mv2FJJWSPzLV7iUAFABQAUABNMDpNB0nyFW5mH7wj5FP8I9frXHVqX91HrYajyrnkbVcp3hQAUAKrFCCpKkEEEHBBHQj3o0asxptO6Pp/4B/tCvqElt4a8U3G65bEdnqUhx5p7RyH+96N36Hnr+VcQcOKini8Gvd6x7ea8u66H3OU5xz2w+IevR9/U+jx0r83PsQoAKACgAoAKAP/0v1SoAKACgAoAKAPA/2n/ja/gjS18N6LcbNev49006H5rSA8ZHo7chfQAnsK8XMMxlg2o0vj372P0LhXhuOcSliMWn7GOnbmfa/Zdfkj4YvLI23zLlo/XqR9fX6/n61++cJ8bYbPYxw2JtCuunSXnH/L7j8V458OcVwvKWMwl6mFb33cPKXdf3vv7lWv1A/FwoAKACgAoGbOhaT57LczD90D8in+I+v0rnq1Le6jvw9Dm99nS1xHqhQAUAFABQAZo30GfX/7N/xjbxnph8PavNu1uxjzFM55uoRxn3deAfUYPrX4zxJk31Cr9Zor93L8H/k+n3H6Hk2Y/WYexqP3l+KPcK+IPpwoAKACgAoA/9P9UqACgAoAKAMLxz4usvAnhPU9dvz/AKNZQmQoOrt0VB7sSAPrWFetGhTlUl0PQwGCqZjiqeFo/FJ29PP5H5xeJfEd94t1+/1jUpPNv72UzSnOQCeij/ZUAKPYV+aVqsq83Unuz+q8Fg6WAw8MNQXuxVvXzfm3qZtTCpOlJTg7NbNdDpqU4VoOnUV09GjNvNPKnfCPl7p/h/hX9H8H8frE8uAzeVp7Rn0flLs/PqfyNx94WywjlmmQxvT3lTW8fOHdd49OnYoHg1+73vsfzNJcrswoJCgDR0fSzqEu58iBD8x/vewrGpPlVjroUXUld7HWKoRQqgADgAdq4W76s9lJLRC0hhQAUAFABQAUAaPhzxBe+FddsdW0+Ty7y0lEsZzwcdVPsRkH61yYvDU8XQnRq/DJf0/kb0K88PUVSnuj9BPBvii18Z+GdP1mzP7i7iD7CeUboyH3ByPwr+cqsY06koRkpJNq62dj9bw1eGJpRqw2ZtDisjpCgAoAKAP/1P1SoAKACgAoA+U/20PHLPcaR4Rt5PkA/tG8APfJWFT+O5v+Aivlc6xFuWgvV/ofsfAGXK9XMZr+7H85P8l8z5er5E/ZQoAKAKd3YLKS6fK/cdjX7Twhx9Uy3lwOZtypbKW7j694/ij+eOPfDCjm/PmeTxUK+8obRn5rtL8H1MsgqSGGCOor+m6NaniIKrSkpReqa2Z/G1fD1sLVlQrxcZxdmno0+zNXw14a1DxZq8OnabaT3l1Kflit0LuR9P6nioxOJpYSm6taSil1ZeGw9XE1FTpq7Ppvwf8Asga/d2kTarqFrocWP9RGpnlH1wQoP4mvzXGcY4aEmsPBz83ov8z9Cw3DlblXtJKPluzsf+GNdL2f8jRqG/1+zRY/LGf1rx/9dK//AD4j97/zPR/1bp2/iy+5f5HJeKf2SPEWlRNNouo2utIoz5MimCU/TJKn8xXrYXjDDVXy4iDh5rVf5nDX4frQV6MlL8GeKarpN7od/LY6haTWN5CcSQXCFHX8PT3HBr7qhXpYmmqtGSlF9UfMVac6MuSas+zKlbGYUAFABQAhfb061+Q8Z8TfV4yy3By95/E10XZeb6nJVq20ifSX7H3jVhNq3hW4k+Uj7faAn/gMqj8drfia/JMuq7036n2nC2M+PCSf95fr/n8z6er3D9CCgAoAKAP/1f1SoAKACgAPSgD85PjF4nbxf8T/ABLqe8vE168EOe0cX7tQPbKsf+BV+bY6q62IqS8/y0P6n4fwiwOV0KNteVN+stfyaXyONrgPoQoAKACgDQ8OeCb7x94hstG0uHzdRu32IcfKoHVn9EUck/lyRX6TwhxbjclrrDWdSjJ/D284vp59D8Z8Q+DMrzrBzzCo1SrwWk7fF2jJdb9Oq77n338HPgxo3wf8PraWSi61OZQbzUnUCSdvQf3UHZR+pr67N84xGb1vaVdIraPRL/Puz8EyzK6OW0uSnrLq+r/4HkehV4B7IYoAKAOJ+KHwp0j4naM1veRrDfxKfst+i/vIW/qp7qf517WV5rXyurz0neL3XR/8HzPNx2ApY2HLNa9H2PhvxR4Zv/B+vXmj6nF5N7avscD7rDsynupHINfvGExdLHUI16Lun/Vn6H5diKE8NUdKotUZVdZzhQAhIA5r4DiviSOT0fYUHetJaf3V3f6HPVqcqsiMnJr+aqk5VJOc3ds4L3Ou+EXiRvCnxL8O6jvKRi6WGXHeOT5GB9vmB/CujC1PZ1os9TK6/wBWxtKp52fo9PzsfoMOlfXn7cFABQAUAf/W/VKgAoAKAM7xJf8A9l+HtTvc4+z2ss2f91Cf6VnUlywcuyOnDU/bVoU+7S+9n5hLK8yLLIcySAOxPdjyf1Nfljk3q+p/X/Koe7HZafcLSAKACgCS3t5LqeOGGNpZpGCJGgyWJ6AVnUqwowdSo7JETnGnFyk9Efav7Lvwsg8HaFdavcokurXh8ppeuxF6op9N3fvivU4OqSzGFXMmvccnGH+GOjfq5X+SR/P/ABjnEsdiI4eGkI62831fyPdK/SD86CgAoAKACgD51/a78FLine truncated
<resource name="meta.png" app="core" location="admin" path="/enhancements/">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 truncated
<resource name="google_analytics.png" app="core" location="admin" path="/enhancements/">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 truncated
<resource name="pixabay.png" app="core" location="admin" path="/enhancements/">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 truncated
<resource name="sendgrid.png" app="core" location="admin" path="/enhancements/">iVBORw0KGgoAAAANSUhEUgAAAFUAAABQCAYAAABoODnpAAAFgUlEQVR4Xu2bPY8kVxWGn/fcqt6Z/bCE1ruWAUNAxkKAFjIEDhDECPX8BOfEBDtDQERCahE4dqcghABpCAiQLJx4iBCyBbu2dsAre3d2e7q77ouESqrRDuyqq6t7p+X7SNWnVVeq4NE9p7rOqeYCUigUCoVCoVAoiBeNLQ4PE0PxR4bj6NhM9hq2Cltlpw4tVPJXfnv3NWW+j6ScnUMIMsvStPHaBzD6GKjpTbYahS5Xob/9+cev/g7J2EIyz4eKF0Sb8ot/zptveHT5l0TAYgaRwCyJsQSGGzZ1YxwCszQSeDEjrt2kPvnw9+PJ5A8TaF4/OEyHsLjAUjtOszOzU4iAZmG0EMviLudmM8McDL2kIrA9T/NpHWZOy42vvm6ArZCKbZxNRkCDHXjJwuQuCiNWwELQKOcaRUMH2yM1VQAiBAsCEUtbURdXxwCBAnDQg+AiIZmLRIZBpRYMbFRqYfulFqnluSjKY2upqWWnlppaKOlf0n9DT1Rlpx63XZ9msWYnm6eiB2+/7fTXMeKQ3rzP+9Vb0Hw+RbrnpyT06VKJDgEaIPtjg1L39tSwOguAe3Om1IDUV0Qn0e3RGEJg+tOAmk3u1COPTi4TrMAHj4+r/Vs3H31tR1feWxhsyH5G7grws88ZFKBKkPo3qXF7jXVLtS1JBnhw7eRnQt/B+SFICJG7Kk1uI9138tkcNa9e2dVb957M/v7R41feO/oYEDsipvZzRD7b98nLI05vBl6xjOgq7JzArfHYE2CyDqkHXYJB5tvXv3z5W48eQATdSufhuRvLhksjuHoimN4H5BQIsxIn1w07QAZEPwy8JE4THE0mAmC8Bqkc0AKGB5/cz8yn0yfYCbE0NiyqYProcZCiwsgBmNXIoAXYoB4u1UYWUDd0TNYh9Q6wDwASVTUK5qceAQlWvcEYDKBBeiBWG/tfAgR54w0VAwaB6YWx3dkdAjEo8aIaKrZ1YSy4NFSGt6EiFfDwNopUlX7q9lJqapEqyaUMrP0nVSE+q2lf7v5FapmmVkMksOiLu6juOhpGhVH7Kfz0fw262K77bNPSm59RZRsb3PVGl8YG2mMkMTPsCLxK+hieQG7AAPi86c6Z/v86NORMFnljUke1qEewqPvvLRvqOogkZrMMNv9edq6ks6kig2G0G3Flh5x7dqkFzGe7XHsJpg+vwhgAbhxqrU3qu3fn7HySOX00w89p8z+LJPHptOGHX9gFhEQvDBYI4B+avfvu4/lHr0Dd9J5RecH9u5+rE3+6NcYTgONjDy51n46f//pTtAM+fdgr9w1cDfHhw8yPvn6JH3z3ZSJBbugnVlgKIYHzT9547cpvfmGnPalhRfa7EXKz1vTfESjAAkLGaFmpdQAJQiBAA0ypAZKdAVqh2/MyxaUEEuQA2SJEL6mt0YyRhW0scX4U2n09u3a2wkS7OM1NBfDGO+/Ub/7qdsMdzMGB6MOdO0byRqQ2BgG5jZilpWZ3QkSHzn6c5/yauihEgAG+d/t2fvObym3+mj7s72+2oSJAg79UptL57/FKeelSrf/1R//PWAZ/g0xTVdJ/KyhSXeb+W0GRqgEvUzE4Jf0XZUa19qJYZlT6LEsVRgOKEBIrYF2kmlrRB5HlDDgbaYjbkk1/pOycKyMCvJVSs5VQIqMKJCTAYEACG6TOltRGwAKMJSCDAkUQIYx77VjnHFFVSMLNQlsp9RKuoqppUpKUWBYDdQIqk1JFSokIgYz09AuWAtydO1eGjBWklEBiPtsmqfuYluu78dO8+NeXVKdT57kQIpLJTRdbzp1v4yiSv1jPlJDzbJZpxykklkYkN08WQQLQXwDGkBmOgm1t36PMvoMjxACMx/89BmMP8vl2ZKFQKBQKhUKhUPgPD5hesqiYZLQAAAAASUVORK5CYII=</resource>
<resource name="google_tag_manager.png" app="core" location="admin" path="/enhancements/">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 truncated
<resource name="mapbox.png" app="core" location="admin" path="/enhancements/">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 truncated
<resource name="matomo.png" app="core" location="admin" path="/enhancements/">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 truncated
<resource name="facebook.png" app="core" location="admin" path="/enhancements/">iVBORw0KGgoAAAANSUhEUgAAAEsAAABLCAYAAAA4TnrqAAAEy0lEQVR4Ae3cA5RbWxQG4Cw/G7Vtj1nbtm3bNjJ5N1Pbtm3bGutO7fZ/Z5+6DW4eGu291h/zC+7BXUdXpmUnXfGmfX/yrzNxsm8tww2fmspdn5p/JYjEu3ESXjsYbgbVHxNSvEm/38lJV7JZzx/9autveVabAe8aRogbvg5HeCjwqDYTAi6ydItuv+kC6o4P9ZQXGBjIZAzwqDoTgfXGzNOJM6pPTcvfKI5CuSewlAeavlUM9kAnTqgMoSmJjMVYjMVY/18bicJY7+Jb63XyV5qC9EVHI5nfcCT1G4YUASOQMlBEHNPp5P7D312X1HeYPE2X5as4GYF1ja6N5VdLga84Tl9kNJL4DJVYdbouwsApWxG65AiWbT6LNdsvYNW281i++RwWrT+N2SuPQ1l4CONm7MXgkO3oMXYjSjWdQfd1XayAOkZkLTVeIlVsMxczVxzD9TAV/6SGKzvxp88w18PyFfGvrcifUIHKesxfexL/toYadoif5XDXwyKoP7yGoJL4NkXH3cd/UYP12wnftbAC6hqRxHcYKrWdCwvFWH61FWQoNgYe1ULw+MlzxrIUr+oGJPEZhgMnb8NCMZZvLUW2h1r2XwkrxVjeNQwCa4SWbxVjZS05HmVazML/VaNCd+NP76GugUUNz0H6bfin9eLFS8QmPJBNjZj4B+8jLotTH6L3+M2iWzTSNbCoH7dk4xnYWtSi7zRiHUo2nfH65/z6/++j0FbWp5aLdKSpqZCp+FgcOhUGW+rslRjZ1Pgh/wBkKTkOeSpMQl6RPJ+m/CR6DkJzfqz8lafIUYFrYQmwpep3X4KfCg6kPqT7jGflrTAZntUMCI++C60Vn/gQBavo6b70GO6F5V3dgIgY7VhnLkcje5kJKFRV735YXjZiHT8fiWylxzOWljp5Icqe3yzGYizGYizG8q9jpFb2uykpU/mpwEDZ3bkVkQitdfBUGL7O3Q+/ew2hx7CY1EEj380UOSwWDbsUqDwFLQeuwoDJW9FnwmaT6Tpqg+zoqnceQWvdFLCdhq9Dz7GbzD4upd+kLXIqzL+2ER5V9Y6L5VktBOmLjsGlG/GwZz189EzOEuWtONmxsWQH+XQY7FkHT92mvwJ6PY6PRaOf9qylm88ihf8IeFt/zYyln3cQf/poGiVlrL4Tt9COIoylpZr2XY40wSMZy1q9egW5U0nmkuMYS8sgITVGc5efyFjW6sK1WOQsO5FGVR0fK0PRMXJiwV61/8QtmgKjvqfjY9Gsy8Y9lxGX+JDm9UwmJv6+PH7x8hW01rPnLxAdL+cIzT4u/QSVRYcF1ginGXV4N3dHx6ZCMzu0A62Now7086IpLrOP619boW8U9VGdAUtCyX05c5enOTzToa5ILvHGw6PvQGsdOxeJ1MGjkL30eLOPS89J/1X0QbnKeBa9MR7PYizGYizGYizGYizGYizGYizGYizGYizGYizGYizGYizGYiwTYSzlAWNpX5ktUZxgLC1r/gXVGz3To6r51SQZywDParSa5NglutItuv4i1KI8xAXen3zDGEsRUDPEsTG+VLMeSV6vgNuk3x9CzihuEPZmBVzV3hFYqsBSw6PvqgDUly9fWQzd5sSFSFVgqQLrP3gN0iFCuEwv2nhQcnL6GxSz10pc8bb1AAAAAElFTkSuQmCC</resource>
<resource name="google_maps.png" app="core" location="admin" path="/enhancements/">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 truncated
<resource name="giphy.png" app="core" location="admin" path="/enhancements/">iVBORw0KGgoAAAANSUhEUgAAAH0AAACXCAMAAAAPgaTzAAAAjVBMVEUAAAD//7L/4qn/jIz/xcX//5n/2Iz/Zmb/srLv/5n1/5n/n5//2Nj/4OAA/5knn28AAAAXExP/hIT/dXX/srL/2Nj/srIAAAAIBwcwJC9XHISzkMwXFBpMGH+tjswVEhlyJb+8k+UTEBeZM//Mmf8A+58fpHoBAQEXFyKPPP/Hnf8AzP9/5f8/2P+f6/8OwMTMAAAAL3RSTlMAr7CvQf///1///2kQDP+5/8jM5X8nT/baufxaw/9bxP9VyP9P/7vtwv9Q/0+PLC9rVGAAAAC1SURBVHgB7c3ToQNQFACw+2wbtbn/eP3tqc1kgaTtOlmt07PgfMp+sVqXV8G1/ah3u91uvwluV7zf3fd7GNofg6fnJb3EPXo90N1ut9vt9rf34GON+3Sfe7Tb7Xa73f71PcHPb/A3vK/TfybI2u12u92+Orl8UNjsXiwFZbvdbrfb7Xa73W632+12u91ut9vtdrvdbrfb7Xb7bOx2eyWo1tap3giaKbW2p2232+32dbJ3tqebeqxgLHOamQDNAAAAAElFTkSuQmCC</resource>
<resource name="ips.png" app="core" location="admin" path="/enhancements/">iVBORw0KGgoAAAANSUhEUgAAAEsAAABLCAYAAAA4TnrqAAADoUlEQVR4Ae2cAWRbXxTG/4RQQgl/RhmllDJKGKVTRsEoowyMUUYZo3RGGWWUUUooo4xRSimtUkoZpZQQQhihlDBCGKGEcPddnknt8LK77+Td93LxUyDv5Nd3b27O+fL+M8YEBiRI+BdZT96dTINS4GRalBVJmgF1YAK/qVkvkqzTIEfkmyTrMogRuZJkrQcxIh8kWQXQCnLu0QbFP2RFwlaDoHusxRwdwt4VcQ1ycbKmwN2Ii+qCmfgTfNjsLRvWw6CycuB6REVVQX5gWX0n+u4ILr9Zpy/S9owxYrI+yi4Gk5UH1RERVQd5Z1mRsFnQy7ioHnhM6WfZ2zPjsrZpzb9oOX7PqKgGGKPJioTNZXQ5zqu0le3tmjFRZbUefNSZaGRE1A0o8GTJwhYyImuRP92Rhe2mXNSe6ihMWI63KRXVBON6smRhiymVtaQ/ZJWFfUmZqK+27qRkFUEzJaJaoEiV5SDseUpkLTPG9wxhB56LOmRmHRjLse3xOOsBSxZL2AtPZb1kpmiYwo48E3Vq6/JV1oRHy/EnmGDLYgt75YmsFZ0wG1/YecKiLmwdaZH1EHQSEtUBk/7L8iNk8iaVAVybmhuyqEuQS6usqSEuxzswpfNe5DBbSUHY2pBkrSvUXgIFSdYhMGCVfMEcuBpGlopc92tgwIEkq9Y3nZ0jX1gOmRCzVOw7qq/emihLmPszC9jQDMgykPMd8bIsmwrLsUrPUun/U2VZUlaJXMgscTn2FOqbBl0XWZaKwsa5yc9S8T+IXGRZ1hX2hLqLIOU99S0w7rKUDns2C+USMlH8tJ4EHYYsy6XCge8TK0tFqOUCGJYsjcPqGGiws1QOdawAw5bVARPkQuf/UtaCfmeXI8typrAEyoQsleu1j4HhyyJOS4SQyU3MNW/lLBV/GsWW1Qb/kwtfdM9SOc85W3xZMgcKS2ILGIEthWvtA6MjS2ZJ4U0cCmN39jWeATNsWU1QVDhOvAf16C/7mDAOmhRZ3LghH4Ksz8DQZDnw1Csp/OAwVVYDFDwXVQANuixHdjyXtQ2ML7LonQB+h4Mrq+Jbj4nTO4tuAncqkqwz9xfk9e097MqeS7LKrN8YeyLqEanfX5ZkLRNe2KFvT4b/9IBlSVYe/NAfpfNRfC6F9ZGnPYuG0LdnwH/iidAdjv8y6045IVk7pPqPBnnmX4602e8nJGuPUPuudAyKC0fsgIoDxwkuw0lw7Fi3lVQihNkCQUKQpcMv8tywDsyfxOgAAAAASUVORK5CYII=</resource>
<resource name="tiny_loading.gif" app="core" location="admin" path="/">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</resource>
+4 -1
View File
@@ -285,5 +285,8 @@
"5000033": "5.0.0 Beta 7",
"5000034": "5.0.0 Beta 7",
"5000035": "5.0.0 Beta 7",
"5000036": "5.0.0 Beta 8"
"5000036": "5.0.0 Beta 8",
"5000037": "5.0.0 Beta 8",
"5000038": "5.0.0 Beta 9",
"5000039": "5.0.0 Beta 9.1"
}
@@ -56,7 +56,7 @@ class FacebookPixel extends CommunityEnhancementsAbstract
/**
* @brief Icon data
*/
public string $icon = "facebook.png";
public string $icon = "meta.png";
/**
* Constructor
@@ -58,7 +58,7 @@ class GoogleMaps extends CommunityEnhancementsAbstract
/**
* @brief Icon data
*/
public string $icon = "google_maps.jpeg";
public string $icon = "google_maps.png";
/**
* Constructor
@@ -791,10 +791,23 @@ class Core extends MemberHistoryAbstract
$club = Club::load( $jsonValue['club_id'] );
switch( $jsonValue['type'] )
{
case Club::STATUS_INVITED:
case Club::STATUS_INVITED_BYPASSING_PAYMENT:
if( isset( $jsonValue['remove'] ) and $jsonValue['remove'] )
{
return Member::loggedIn()->language()->addToStack( 'history_invite_club_canceled', false, [ 'htmlsprintf' => [ $club->name, $byStaff ] ] );
}
return Member::loggedIn()->language()->addToStack( 'history_invited_to_club', false, array( 'htmlsprintf' => array( $club->name, $byStaff ) ) );
case Club::STATUS_BANNED:
return Member::loggedIn()->language()->addToStack( 'history_removed_from_club', FALSE, array('htmlsprintf' => array( $club->name, $byStaff ) ) );
case Club::STATUS_MEMBER:
return Member::loggedIn()->language()->addToStack( 'history_added_to_club', FALSE, array('htmlsprintf' => array( $club->name, $byStaff ) ) );
case Club::STATUS_LEFT:
return Member::loggedIn()->language()->addToStack( 'history_left_club', false, [ 'htmlsprintf' => [ $club->name ] ] );
case Club::STATUS_REQUESTED:
return Member::loggedIn()->language()->addToStack( 'history_request_club', false, [ 'htmlsprintf' => [ $club->name ] ] );
case Club::STATUS_DECLINED:
return Member::loggedIn()->language()->addToStack( 'history_decline_club', false, [ 'htmlsprintf' => [ $club->name ] ] );
}
}
catch ( Exception $e ) { }
@@ -75,18 +75,21 @@ class FeaturedComments
{
$member = $member ?: Member::loggedIn();
$commentIdField = $comment::$databaseColumnId;
$idToRemove = FALSE;
foreach( $item->getMeta()['core_FeaturedComments'] AS $key => $data )
$metaData = $item->getMeta();
if( isset( $metaData['core_FeaturedComments'] ) )
{
if ( $data['comment'] == $comment->$commentIdField )
$idToRemove = FALSE;
foreach( $metaData['core_FeaturedComments'] AS $key => $data )
{
$idToRemove = $key;
break;
if ( $data['comment'] == $comment->$commentIdField )
{
$idToRemove = $key;
break;
}
}
$item->deleteMeta( $idToRemove );
}
$item->deleteMeta( $idToRemove );
}
/**
@@ -22,7 +22,7 @@ use IPS\Member;
use IPS\Patterns\ActiveRecordIterator;
use OutOfRangeException;
use function defined;
use const IPS\REBUILD_NORMAL;
use const IPS\REBUILD_SLOW;
if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
{
@@ -60,6 +60,8 @@ class MemberContent extends QueueAbstract
{
return NULL;
}
$data['last_id'] = 0;
/* Get count - only do this if we're deleting member content, not guest content */
if ( $data['member_id'] )
@@ -93,18 +95,22 @@ class MemberContent extends QueueAbstract
public function run( array &$data, int $offset ): int
{
$classname = $data['class'];
$idColumn = $classname::$databaseColumnId;
$exploded = explode( '\\', $classname );
if ( !class_exists( $classname ) or !Application::appIsEnabled( $exploded[1] ) )
{
throw new \IPS\Task\Queue\OutOfRangeException;
}
$select = $classname::db()->select( '*', $classname::$databaseTable, static::_getWhere( $data ), $classname::$databasePrefix.$classname::$databaseColumnId, array( 0, REBUILD_NORMAL ) );
$select = $classname::db()->select( '*', $classname::$databaseTable, static::_getWhere( $data ), $classname::$databasePrefix.$classname::$databaseColumnId, REBUILD_SLOW );
/* Keep track of how many we did since we cannot rely on the count for guests */
$did = 0;
foreach ( new ActiveRecordIterator( $select, $classname ) as $item )
{
$did++;
$data['last_id'] = $item->$idColumn;
/* If this is the first comment on an item where a first comment is required (e.g. posts) do nothing, as when we get to the item, that will handle it */
if ( $item instanceof Comment )
{
@@ -158,7 +164,7 @@ class MemberContent extends QueueAbstract
$did++;
}
catch( OutOfRangeException |ErrorException $e )
catch( OutOfRangeException | ErrorException $e )
{
$did++;
}
@@ -168,12 +174,8 @@ class MemberContent extends QueueAbstract
{
throw new \IPS\Task\Queue\OutOfRangeException;
}
else if( isset( $data['count'] ) AND ( $offset + REBUILD_NORMAL >= $data['count'] ) )
{
throw new \IPS\Task\Queue\OutOfRangeException;
}
return ( $offset + REBUILD_NORMAL );
return ( $offset + $did );
}
/**
@@ -226,11 +228,19 @@ class MemberContent extends QueueAbstract
{
/* @var array $databaseColumnMap */
$classname = $data['class'];
$where = array( array( $classname::$databasePrefix . $classname::$databaseColumnMap['author'] . '=?', $data['member_id'] ) );
$where = [
[
$classname::$databasePrefix . $classname::$databaseColumnId . '>?', $data['last_id']
]
];
if ( !$data['member_id'] )
{
$where = array( $classname::$databasePrefix . $classname::$databaseColumnMap['author_name'] . '=?', $data['name'] );
$where[] = [ $classname::$databasePrefix . $classname::$databaseColumnMap['author_name'] . '=?', $data['name'] ];
}
else
{
$where[] = [ $classname::$databasePrefix . $classname::$databaseColumnMap['author'] . '=?', $data['member_id'] ];
}
if ( $data['action'] == 'hide' )
@@ -13,6 +13,8 @@ namespace IPS\core\extensions\core\Queue;
use IPS\Content;
use IPS\Content\Item;
use IPS\Content\Search\Index;
use IPS\Content\Search\SearchContent;
use IPS\Db;
use IPS\Extensions\QueueAbstract;
use IPS\Member;
@@ -109,6 +111,19 @@ class UpdateTaggedItems extends QueueAbstract
}
$item->setTags( $currentTags );
/* Update the search index */
if( SearchContent::isSearchable( $item ) )
{
if( $item::$firstCommentRequired )
{
Index::i()->index( $item->firstComment() );
}
else
{
Index::i()->index( $item );
}
}
}
catch( OutOfRangeException ){}
break;
Binary file not shown.

After

Width:  |  Height:  |  Size: 513 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 852 B

+4 -6
View File
@@ -1,11 +1,9 @@
.fa::before,.fab::before,.far::before,.fas::before,.fa-brands::before,.fa-regular::before,.fa-solid::before{content:var(--i);}
/*!
* Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-sharp,.fa-solid,.fab,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-classic,.fa-regular,.fa-solid,.far,.fas{font-family:"Font Awesome 6 Free"}.fa-brands,.fab{font-family:"Font Awesome 6 Brands"}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-duration:var(--fa-animatLine truncated
.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-regular,.fa-solid,.fab,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-brands:before,.fa-regular:before,.fa-solid:before,.fa:before,.fab:before,.far:before,.fas:before{content:var(--fa)}.fa-classic,.fa-regular,.fa-solid,.far,.fas{font-family:"Font Awesome 6 Free"}.fa-brands,.fab{font-family:"Font Awesome 6 Brands"}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-reLine truncated
.fa-0{--i:"\30"}.fa-1{--i:"\31"}.fa-2{--i:"\32"}.fa-3{--i:"\33"}.fa-4{--i:"\34"}.fa-5{--i:"\35"}.fa-6{--i:"\36"}.fa-7{--i:"\37"}.fa-8{--i:"\38"}.fa-9{--i:"\39"}.fa-fill-drip{--i:"\f576"}.fa-arrows-to-circle{--i:"\e4bd"}.fa-chevron-circle-right,.fa-circle-chevron-right{--i:"\f138"}.fa-at{--i:"\40"}.fa-trash-alt,.fa-trash-can{--i:"\f2ed"}.fa-text-height{--i:"\f034"}.fa-user-times,.fa-user-xmark{--i:"\f235"}.fa-stethoscope{--i:"\f0f1"}.fa-comment-alt,.fa-message{--i:"\f27a"}.fa-info{--i:"\f129"}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--i:"\f422"}.fa-explosion{--i:"\e4e9"}.fa-file-alt,.fa-file-lines,.fa-file-text{--i:"\f15c"}.fa-wave-square{--i:"\f83e"}.fa-ring{--i:"\f70b"}.fa-building-un{--i:"\e4d9"}.fa-dice-three{--i:"\f527"}.fa-calendar-alt,.fa-calendar-days{--i:"\f073"}.fa-anchor-circle-check{--i:"\e4aa"}.fa-building-circle-arrow-right{--i:"\e4d1"}.fa-volleyball-ball,.fa-volleyball{--i:"\f45f"}.fa-arrows-up-to-line{--i:"\e4c2"}.fa-sort-desc,.fa-sort-down{--i:"\f0dd"}.fa-circle-minus,.fa-minus-circle{--i:"\f056"}.fa-door-open{--i:"\f52b"}.fa-right-from-bracket,.fa-sign-out-alt{--i:"\f2f5"}.fa-atom{--i:"\f5d2"}.fa-soap{--i:"\e06e"}.fa-heart-music-camera-bolt,.fa-icons{--i:"\f86d"}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--i:"\f539"}.fa-bridge-circle-check{--i:"\e4c9"}.fa-pump-medical{--i:"\e06a"}.fa-fingerprint{--i:"\f577"}.fa-hand-point-right{--i:"\f0a4"}.fa-magnifying-glass-location,.fa-search-location{--i:"\f689"}.fa-forward-step,.fa-step-forward{--i:"\f051"}.fa-face-smile-beam,.fa-smile-beam{--i:"\f5b8"}.fa-flag-checkered{--i:"\f11e"}.fa-football-ball,.fa-football{--i:"\f44e"}.fa-school-circle-exclamation{--i:"\e56c"}.fa-crop{--i:"\f125"}.fa-angle-double-down,.fa-angles-down{--i:"\f103"}.fa-users-rectangle{--i:"\e594"}.fa-people-roof{--i:"\e537"}.fa-people-line{--i:"\e534"}.fa-beer-mug-empty,.fa-beer{--i:"\f0fc"}.fa-diagram-predecessor{--i:"\e477"}.fa-arrow-up-long,.fa-long-arrow-up{--i:"\f176"}.fa-burn,.fa-fire-flame-simple{--i:"\f46a"}.fa-male,.fa-person{--i:"\f183"}.fa-laptop{--i:"\f109"}.fa-file-csv{--i:"\f6dd"}.fa-menorah{--i:"\f676"}.fa-truck-plane{--i:"\e58f"}.fa-record-vinyl{--i:"\f8d9"}.fa-face-grin-stars,.fa-grin-stars{--i:"\f587"}.fa-bong{--i:"\f55c"}.fa-pastafarianism,.fa-spaghetti-monster-flying{--i:"\f67b"}.fa-arrow-down-up-across-line{--i:"\e4af"}.fa-spoon,.fa-utensil-spoon{--i:"\f2e5"}.fa-jar-wheat{--i:"\e517"}.fa-envelopes-bulk,.fa-mail-bulk{--i:"\f674"}.fa-file-circle-exclamation{--i:"\e4eb"}.fa-circle-h,.fa-hospital-symbol{--i:"\f47e"}.fa-pager{--i:"\f815"}.fa-address-book,.fa-contact-book{--i:"\f2b9"}.fa-strikethrough{--i:"\f0cc"}.fa-k{--i:"\4b"}.fa-landmark-flag{--i:"\e51c"}.fa-pencil-alt,.fa-pencil{--i:"\f303"}.fa-backward{--i:"\f04a"}.fa-caret-right{--i:"\f0da"}.fa-comments{--i:"\f086"}.fa-file-clipboard,.fa-paste{--i:"\f0ea"}.fa-code-pull-request{--i:"\e13c"}.fa-clipboard-list{--i:"\f46d"}.fa-truck-loading,.fa-truck-ramp-box{--i:"\f4de"}.fa-user-check{--i:"\f4fc"}.fa-vial-virus{--i:"\e597"}.fa-sheet-plastic{--i:"\e571"}.fa-blog{--i:"\f781"}.fa-user-ninja{--i:"\f504"}.fa-person-arrow-up-from-line{--i:"\e539"}.fa-scroll-torah,.fa-torah{--i:"\f6a0"}.fa-broom-ball,.fa-quidditch-broom-ball,.fa-quidditch{--i:"\f458"}.fa-toggle-off{--i:"\f204"}.fa-archive,.fa-box-archive{--i:"\f187"}.fa-person-drowning{--i:"\e545"}.fa-arrow-down-9-1,.fa-sort-numeric-desc,.fa-sort-numeric-down-alt{--i:"\f886"}.fa-face-grin-tongue-squint,.fa-grin-tongue-squint{--i:"\f58a"}.fa-spray-can{--i:"\f5bd"}.fa-truck-monster{--i:"\f63b"}.fa-w{--i:"\57"}.fa-earth-africa,.fa-globe-africa{--i:"\f57c"}.fa-rainbow{--i:"\f75b"}.fa-circle-notch{--i:"\f1ce"}.fa-tablet-alt,.fa-tablet-screen-button{--i:"\f3fa"}.fa-paw{--i:"\f1b0"}.fa-cloud{--i:"\f0c2"}.fa-trowel-bricks{--i:"\e58a"}.fa-face-flushed,.fa-flushed{--i:"\f579"}.fa-hospital-user{--i:"\f80d"}.fa-tent-arrow-left-right{--i:"\e57f"}.fa-gavel,.fa-legal{--i:"\f0e3"}.fa-binoculars{--i:"\f1e5"}.fa-microphone-slash{--i:"\f131"}.fa-box-tissue{--i:"\e05b"}.fa-motorcycle{--i:"\f21c"}.fa-bell-concierge,.fa-concierge-bell{--i:"\f562"}.fa-pen-ruler,.fa-pencil-ruler{--i:"\f5ae"}.fa-people-arrows-left-right,.fa-people-arrows{--i:"\e068"}.fa-mars-and-venus-burst{--i:"\e523"}.fa-caret-square-right,.fa-square-caret-right{--i:"\f152"}.fa-cut,.fa-scissors{--i:"\f0c4"}.fa-sun-plant-wilt{--i:"\e57a"}.fa-toilets-portable{--i:"\e584"}.fa-hockey-puck{--i:"\f453"}.fa-table{--i:"\f0ce"}.fa-magnifying-glass-arrow-right{--i:"\e521"}.fa-digital-tachograph,.fa-tachograph-digital{--i:"\f566"}.fa-users-slash{--i:"\e073"}.fa-clover{--i:"\e139"}.fa-mail-reply,.fa-reply{--i:"\f3e5"}.fa-star-and-crescent{--i:"\f699"}.fa-house-fire{--i:"\e50c"}.fa-minus-square,.fa-square-minus{--i:"\f146"}.fa-helicopter{--i:"\f533"}.fa-compass{--i:"\f14e"}.fa-caret-square-down,.fa-square-caret-down{--i:"\f150"}.fa-file-circle-question{--i:"\e4ef"}.fa-laptop-code{--i:"\f5fc"}.fa-swatchbook{--i:"\f5c3"}.fa-prescription-bottle{--i:"\f485"}.fa-bars,.fa-navicon{--i:"\f0c9"}.fa-people-group{--i:"\e533"}Line truncated
.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-style-family-brands:"Font Awesome 6 Brands";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}.fa-brands,.fab{font-weight:400}.fa-monero{--i:"\f3d0"}.fa-hooli{--i:"\f427"}.fa-yelp{--i:"\f1e9"}.fa-cc-visa{--i:"\f1f0"}.fa-lastfm{--i:"\f202"}.fa-shopware{--i:"\f5b5"}.fa-creative-commons-nc{--i:"\f4e8"}.fa-aws{--i:"\f375"}.fa-redhat{--i:"\f7bc"}.fa-yoast{--i:"\f2b1"}.fa-cloudflare{--i:"\e07d"}.fa-ups{--i:"\f7e0"}.fa-pixiv{--i:"\e640"}.fa-wpexplorer{--i:"\f2de"}.fa-dyalog{--i:"\f399"}.fa-bity{--i:"\f37a"}.fa-stackpath{--i:"\f842"}.fa-buysellads{--i:"\f20d"}.fa-first-order{--i:"\f2b0"}.fa-modx{--i:"\f285"}.fa-guilded{--i:"\e07e"}.fa-vnv{--i:"\f40b"}.fa-js-square,.fa-square-js{--i:"\f3b9"}.fa-microsoft{--i:"\f3ca"}.fa-qq{--i:"\f1d6"}.fa-orcid{--i:"\f8d2"}.fa-java{--i:"\f4e4"}.fa-invision{--i:"\f7b0"}.fa-creative-commons-pd-alt{--i:"\f4ed"}.fa-centercode{--i:"\f380"}.fa-glide-g{--i:"\f2a6"}.fa-drupal{--i:"\f1a9"}.fa-jxl{--i:"\e67b"}.fa-hire-a-helper{--i:"\f3b0"}.fa-creative-commons-by{--i:"\f4e7"}.fa-unity{--i:"\e049"}.fa-whmcs{--i:"\f40d"}.fa-rocketchat{--i:"\f3e8"}.fa-vk{--i:"\f189"}.fa-untappd{--i:"\f405"}.fa-mailchimp{--i:"\f59e"}.fa-css3-alt{--i:"\f38b"}.fa-reddit-square,.fa-square-reddit{--i:"\f1a2"}.fa-vimeo-v{--i:"\f27d"}.fa-contao{--i:"\f26d"}.fa-square-font-awesome{--i:"\e5ad"}.fa-deskpro{--i:"\f38f"}.fa-brave{--i:"\e63c"}.fa-sistrix{--i:"\f3ee"}.fa-instagram-square,.fa-square-instagram{--i:"\e055"}.fa-battle-net{--i:"\f835"}.fa-the-red-yeti{--i:"\f69d"}.fa-hacker-news-square,.fa-square-hacker-news{--i:"\f3af"}.fa-edge{--i:"\f282"}.fa-threads{--i:"\e618"}.fa-napster{--i:"\f3d2"}.fa-snapchat-square,.fa-square-snapchat{--i:"\f2ad"}.fa-google-plus-g{--i:"\f0d5"}.fa-artstation{--i:"\f77a"}.fa-markdown{--i:"\f60f"}.fa-sourcetree{--i:"\f7d3"}.fa-google-plus{--i:"\f2b3"}.fa-diaspora{--i:"\f791"}.fa-foursquare{--i:"\f180"}.fa-stack-overflow{--i:"\f16c"}.fa-github-alt{--i:"\f113"}.fa-phoenix-squadron{--i:"\f511"}.fa-pagelines{--i:"\f18c"}.fa-algolia{--i:"\f36c"}.fa-red-river{--i:"\f3e3"}.fa-creative-commons-sa{--i:"\f4ef"}.fa-safari{--i:"\f267"}.fa-google{--i:"\f1a0"}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--i:"\f35c"}.fa-atlassian{--i:"\f77b"}.fa-linkedin-in{--i:"\f0e1"}.fa-digital-ocean{--i:"\f391"}.fa-nimblr{--i:"\f5a8"}.fa-chromecast{--i:"\f838"}.fa-evernote{--i:"\f839"}.fa-hacker-news{--i:"\f1d4"}.fa-creative-commons-sampling{--i:"\f4f0"}.fa-adversal{--i:"\f36a"}.fa-creative-commons{--i:"\f25e"}.fa-watchman-monitoring{--i:"\e087"}.fa-fonticons{--i:"\f280"}.fa-weixin{--i:"\f1d7"}.fa-shirtsinbulk{--i:"\f214"}.fa-codepen{--i:"\f1cb"}.fa-git-alt{--i:"\f841"}.fa-lyft{--i:"\f3c3"}.fa-rev{--i:"\f5b2"}.fa-windows{--i:"\f17a"}.fa-wizards-of-the-coast{--i:"\f730"}.fa-square-viadeo,.fa-viadeo-square{--i:"\f2aa"}.fa-meetup{--i:"\f2e0"}.fa-centos{--i:"\f789"}.fa-adn{--i:"\f170"}.fa-cloudsmith{--i:"\f384"}.fa-opensuse{--i:"\e62b"}.fa-pied-piper-alt{--i:"\f1a8"}.fa-dribbble-square,.fa-square-dribbble{--i:"\f397"}.fa-codiepie{--i:"\f284"}.fa-node{--i:"\f419"}.fa-mix{--i:"\f3cb"}.fa-steam{--i:"\f1b6"}.fa-cc-apple-pay{--i:"\f416"}.fa-scribd{--i:"\f28a"}.fa-debian{--i:"\e60b"}.fa-openid{--i:"\f19b"}.fa-instalod{--i:"\e081"}.fa-expeditedssl{--i:"\f23e"}.fa-sellcast{--i:"\f2da"}.fa-square-twitter,.fa-twitter-square{--i:"\f081"}.fa-r-project{--i:"\f4f7"}.fa-delicious{--i:"\f1a5"}.fa-freebsd{--i:"\f3a4"}.fa-vuejs{--i:"\f41f"}.fa-accusoft{--i:"\f369"}.fa-ioxhost{--i:"\f208"}.fa-fonticons-fi{--i:"\f3a2"}.fa-app-store{--i:"\f36f"}.fa-cc-mastercard{--i:"\f1f1"}.fa-itunes-note{--i:"\f3b5"}.fa-golang{--i:"\e40f"}.fa-kickstarter,.fa-square-kickstarter{--i:"\f3bb"}.fa-grav{--i:"\f2d6"}.fa-weibo{--i:"\f18a"}.fa-uncharted{--i:"\e084"}.fa-firstdraft{--i:"\f3a1"}.fa-square-youtube,.fa-youtube-square{--i:"\f431"}.fa-wikipedia-w{--i:"\f266"}.fa-rendact,.fa-wpressr{--i:"\f3e4"}.fa-angellist{--i:"\f209"}.fa-galactic-republic{--i:"\f50c"}.fa-nfc-directional{--i:"\e530"}.fa-skype{--i:"\f17e"}.fa-joget{--i:"\f3b7"}.fa-fedora{--i:"\f798"}.fa-stripe-s{--i:"\f42a"}.fa-meta{--i:"\e49b"}.fa-laravel{--i:"\f3bd"}.fa-hotjar{--i:"\f3b1"}.fa-bluetooth-b{--i:"\f294"}.fa-square-letterboxd{--i:"\e62e"}.fa-sticker-mule{--i:"\f3f7"}.fa-creative-commons-zero{--i:"\f4f3"}.fa-hips{--i:"\f452"}.fa-behance{--i:"\f1b4"}.fa-reddit{--i:"\f1a1"}.fa-discord{--i:"\f392"}.fa-chrome{--i:"\f268"}.fa-app-store-ios{--i:"\f370"}.fa-cc-discover{--i:"\f1f2"}.fa-wpbeginner{--i:"\f297"}.fa-confluence{--i:"\f78d"}.fa-shoelace{--i:"\e60c"}.fa-mdb{--i:"\f8ca"}.fa-dochub{--i:"\f394"}.fa-accessible-icon{--i:"\f368"}.fa-ebay{--i:"\f4fLine truncated
.fa-0{--fa:"\30";--fa--fa:"\30\30"}.fa-1{--fa:"\31";--fa--fa:"\31\31"}.fa-2{--fa:"\32";--fa--fa:"\32\32"}.fa-3{--fa:"\33";--fa--fa:"\33\33"}.fa-4{--fa:"\34";--fa--fa:"\34\34"}.fa-5{--fa:"\35";--fa--fa:"\35\35"}.fa-6{--fa:"\36";--fa--fa:"\36\36"}.fa-7{--fa:"\37";--fa--fa:"\37\37"}.fa-8{--fa:"\38";--fa--fa:"\38\38"}.fa-9{--fa:"\39";--fa--fa:"\39\39"}.fa-fill-drip{--fa:"\f576";--fa--fa:"\f576\f576"}.fa-arrows-to-circle{--fa:"\e4bd";--fa--fa:"\e4bd\e4bd"}.fa-chevron-circle-right,.fa-circle-chevron-right{--fa:"\f138";--fa--fa:"\f138\f138"}.fa-at{--fa:"\40";--fa--fa:"\40\40"}.fa-trash-alt,.fa-trash-can{--fa:"\f2ed";--fa--fa:"\f2ed\f2ed"}.fa-text-height{--fa:"\f034";--fa--fa:"\f034\f034"}.fa-user-times,.fa-user-xmark{--fa:"\f235";--fa--fa:"\f235\f235"}.fa-stethoscope{--fa:"\f0f1";--fa--fa:"\f0f1\f0f1"}.fa-comment-alt,.fa-message{--fa:"\f27a";--fa--fa:"\f27a\f27a"}.fa-info{--fa:"\f129";--fa--fa:"\f129\f129"}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--fa:"\f422";--fa--fa:"\f422\f422"}.fa-explosion{--fa:"\e4e9";--fa--fa:"\e4e9\e4e9"}.fa-file-alt,.fa-file-lines,.fa-file-text{--fa:"\f15c";--fa--fa:"\f15c\f15c"}.fa-wave-square{--fa:"\f83e";--fa--fa:"\f83e\f83e"}.fa-ring{--fa:"\f70b";--fa--fa:"\f70b\f70b"}.fa-building-un{--fa:"\e4d9";--fa--fa:"\e4d9\e4d9"}.fa-dice-three{--fa:"\f527";--fa--fa:"\f527\f527"}.fa-calendar-alt,.fa-calendar-days{--fa:"\f073";--fa--fa:"\f073\f073"}.fa-anchor-circle-check{--fa:"\e4aa";--fa--fa:"\e4aa\e4aa"}.fa-building-circle-arrow-right{--fa:"\e4d1";--fa--fa:"\e4d1\e4d1"}.fa-volleyball,.fa-volleyball-ball{--fa:"\f45f";--fa--fa:"\f45f\f45f"}.fa-arrows-up-to-line{--fa:"\e4c2";--fa--fa:"\e4c2\e4c2"}.fa-sort-desc,.fa-sort-down{--fa:"\f0dd";--fa--fa:"\f0dd\f0dd"}.fa-circle-minus,.fa-minus-circle{--fa:"\f056";--fa--fa:"\f056\f056"}.fa-door-open{--fa:"\f52b";--fa--fa:"\f52b\f52b"}.fa-right-from-bracket,.fa-sign-out-alt{--fa:"\f2f5";--fa--fa:"\f2f5\f2f5"}.fa-atom{--fa:"\f5d2";--fa--fa:"\f5d2\f5d2"}.fa-soap{--fa:"\e06e";--fa--fa:"\e06e\e06e"}.fa-heart-music-camera-bolt,.fa-icons{--fa:"\f86d";--fa--fa:"\f86d\f86d"}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--fa:"\f539";--fa--fa:"\f539\f539"}.fa-bridge-circle-check{--fa:"\e4c9";--fa--fa:"\e4c9\e4c9"}.fa-pump-medical{--fa:"\e06a";--fa--fa:"\e06a\e06a"}.fa-fingerprint{--fa:"\f577";--fa--fa:"\f577\f577"}.fa-hand-point-right{--fa:"\f0a4";--fa--fa:"\f0a4\f0a4"}.fa-magnifying-glass-location,.fa-search-location{--fa:"\f689";--fa--fa:"\f689\f689"}.fa-forward-step,.fa-step-forward{--fa:"\f051";--fa--fa:"\f051\f051"}.fa-face-smile-beam,.fa-smile-beam{--fa:"\f5b8";--fa--fa:"\f5b8\f5b8"}.fa-flag-checkered{--fa:"\f11e";--fa--fa:"\f11e\f11e"}.fa-football,.fa-football-ball{--fa:"\f44e";--fa--fa:"\f44e\f44e"}.fa-school-circle-exclamation{--fa:"\e56c";--fa--fa:"\e56c\e56c"}.fa-crop{--fa:"\f125";--fa--fa:"\f125\f125"}.fa-angle-double-down,.fa-angles-down{--fa:"\f103";--fa--fa:"\f103\f103"}.fa-users-rectangle{--fa:"\e594";--fa--fa:"\e594\e594"}.fa-people-roof{--fa:"\e537";--fa--fa:"\e537\e537"}.fa-people-line{--fa:"\e534";--fa--fa:"\e534\e534"}.fa-beer,.fa-beer-mug-empty{--fa:"\f0fc";--fa--fa:"\f0fc\f0fc"}.fa-diagram-predecessor{--fa:"\e477";--fa--fa:"\e477\e477"}.fa-arrow-up-long,.fa-long-arrow-up{--fa:"\f176";--fa--fa:"\f176\f176"}.fa-burn,.fa-fire-flame-simple{--fa:"\f46a";--fa--fa:"\f46a\f46a"}.fa-male,.fa-person{--fa:"\f183";--fa--fa:"\f183\f183"}.fa-laptop{--fa:"\f109";--fa--fa:"\f109\f109"}.fa-file-csv{--fa:"\f6dd";--fa--fa:"\f6dd\f6dd"}.fa-menorah{--fa:"\f676";--fa--fa:"\f676\f676"}.fa-truck-plane{--fa:"\e58f";--fa--fa:"\e58f\e58f"}.fa-record-vinyl{--fa:"\f8d9";--fa--fa:"\f8d9\f8d9"}.fa-face-grin-stars,.fa-grin-stars{--fa:"\f587";--fa--fa:"\f587\f587"}.fa-bong{--fa:"\f55c";--fa--fa:"\f55c\f55c"}.fa-pastafarianism,.fa-spaghetti-monster-flying{--fa:"\f67b";--fa--fa:"\f67b\f67b"}.fa-arrow-down-up-across-line{--fa:"\e4af";--fa--fa:"\e4af\e4af"}.fa-spoon,.fa-utensil-spoon{--fa:"\f2e5";--fa--fa:"\f2e5\f2e5"}.fa-jar-wheat{--fa:"\e517";--fa--fa:"\e517\e517"}.fa-envelopes-bulk,.fa-mail-bulk{--fa:"\f674";--fa--fa:"\f674\f674"}.fa-file-circle-exclamation{--fa:"\e4eb";--fa--fa:"\e4eb\e4eb"}.fa-circle-h,.fa-hospital-symbol{--fa:"\f47e";--fa--fa:"\f47e\f47e"}.fa-pager{--fa:"\f815";--fa--fa:"\f815\f815"}.fa-address-book,.fa-contact-book{--fa:"\f2b9";--fa--fa:"\f2b9\f2b9"}.fa-strikethrough{--fa:"\f0cc";--fa--fa:"\f0cc\f0cc"}.fa-k{--fa:"\4b";--fa--fa:"\4b\4b"}.fa-landmark-flag{--fa:"\e51c";--fa--fa:"\e51c\e51c"}.fa-pencil,.fa-pencil-alt{--fa:"\f303";--fa--fa:"\f303\f303"}.fa-backward{--fa:"\f04a";--fa--fa:"\f04a\f04a"}.fa-caret-right{--fa:"\f0da";--fa--fa:"\f0da\f0da"}.fa-comments{--fa:"\f086";--fa--fa:"\f086\f086"}.fa-file-clipboard,.fa-paste{--fa:"\f0ea";--fa--fa:"\f0ea\f0ea"}.fa-code-pull-request{--fa:"\e13c";--fa--fa:"\e13c\e13c"}.fa-clipboard-list{--fa:"\f46d";--fa--fa:"\f46d\f46d"}.fa-truck-loading,.fa-truck-ramp-box{--fa:"\f4de";--fa--fa:"\f4de\f4de"}.fa-user-check{--fa:"\f4fc";--fa--fa:"\f4fc\f4fc"}.fa-vial-virus{--fa:"\e597";--fa--fa:"\e597\e597"}.fa-shLine truncated
.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-style-family-brands:"Font Awesome 6 Brands";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}.fa-brands,.fab{font-weight:400}.fa-monero{--fa:"\f3d0"}.fa-hooli{--fa:"\f427"}.fa-yelp{--fa:"\f1e9"}.fa-cc-visa{--fa:"\f1f0"}.fa-lastfm{--fa:"\f202"}.fa-shopware{--fa:"\f5b5"}.fa-creative-commons-nc{--fa:"\f4e8"}.fa-aws{--fa:"\f375"}.fa-redhat{--fa:"\f7bc"}.fa-yoast{--fa:"\f2b1"}.fa-cloudflare{--fa:"\e07d"}.fa-ups{--fa:"\f7e0"}.fa-pixiv{--fa:"\e640"}.fa-wpexplorer{--fa:"\f2de"}.fa-dyalog{--fa:"\f399"}.fa-bity{--fa:"\f37a"}.fa-stackpath{--fa:"\f842"}.fa-buysellads{--fa:"\f20d"}.fa-first-order{--fa:"\f2b0"}.fa-modx{--fa:"\f285"}.fa-guilded{--fa:"\e07e"}.fa-vnv{--fa:"\f40b"}.fa-js-square,.fa-square-js{--fa:"\f3b9"}.fa-microsoft{--fa:"\f3ca"}.fa-qq{--fa:"\f1d6"}.fa-orcid{--fa:"\f8d2"}.fa-java{--fa:"\f4e4"}.fa-invision{--fa:"\f7b0"}.fa-creative-commons-pd-alt{--fa:"\f4ed"}.fa-centercode{--fa:"\f380"}.fa-glide-g{--fa:"\f2a6"}.fa-drupal{--fa:"\f1a9"}.fa-jxl{--fa:"\e67b"}.fa-dart-lang{--fa:"\e693"}.fa-hire-a-helper{--fa:"\f3b0"}.fa-creative-commons-by{--fa:"\f4e7"}.fa-unity{--fa:"\e049"}.fa-whmcs{--fa:"\f40d"}.fa-rocketchat{--fa:"\f3e8"}.fa-vk{--fa:"\f189"}.fa-untappd{--fa:"\f405"}.fa-mailchimp{--fa:"\f59e"}.fa-css3-alt{--fa:"\f38b"}.fa-reddit-square,.fa-square-reddit{--fa:"\f1a2"}.fa-vimeo-v{--fa:"\f27d"}.fa-contao{--fa:"\f26d"}.fa-square-font-awesome{--fa:"\e5ad"}.fa-deskpro{--fa:"\f38f"}.fa-brave{--fa:"\e63c"}.fa-sistrix{--fa:"\f3ee"}.fa-instagram-square,.fa-square-instagram{--fa:"\e055"}.fa-battle-net{--fa:"\f835"}.fa-the-red-yeti{--fa:"\f69d"}.fa-hacker-news-square,.fa-square-hacker-news{--fa:"\f3af"}.fa-edge{--fa:"\f282"}.fa-threads{--fa:"\e618"}.fa-napster{--fa:"\f3d2"}.fa-snapchat-square,.fa-square-snapchat{--fa:"\f2ad"}.fa-google-plus-g{--fa:"\f0d5"}.fa-artstation{--fa:"\f77a"}.fa-markdown{--fa:"\f60f"}.fa-sourcetree{--fa:"\f7d3"}.fa-google-plus{--fa:"\f2b3"}.fa-diaspora{--fa:"\f791"}.fa-foursquare{--fa:"\f180"}.fa-stack-overflow{--fa:"\f16c"}.fa-github-alt{--fa:"\f113"}.fa-phoenix-squadron{--fa:"\f511"}.fa-pagelines{--fa:"\f18c"}.fa-algolia{--fa:"\f36c"}.fa-red-river{--fa:"\f3e3"}.fa-creative-commons-sa{--fa:"\f4ef"}.fa-safari{--fa:"\f267"}.fa-google{--fa:"\f1a0"}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--fa:"\f35c"}.fa-atlassian{--fa:"\f77b"}.fa-linkedin-in{--fa:"\f0e1"}.fa-digital-ocean{--fa:"\f391"}.fa-nimblr{--fa:"\f5a8"}.fa-chromecast{--fa:"\f838"}.fa-evernote{--fa:"\f839"}.fa-hacker-news{--fa:"\f1d4"}.fa-creative-commons-sampling{--fa:"\f4f0"}.fa-adversal{--fa:"\f36a"}.fa-creative-commons{--fa:"\f25e"}.fa-watchman-monitoring{--fa:"\e087"}.fa-fonticons{--fa:"\f280"}.fa-weixin{--fa:"\f1d7"}.fa-shirtsinbulk{--fa:"\f214"}.fa-codepen{--fa:"\f1cb"}.fa-git-alt{--fa:"\f841"}.fa-lyft{--fa:"\f3c3"}.fa-rev{--fa:"\f5b2"}.fa-windows{--fa:"\f17a"}.fa-wizards-of-the-coast{--fa:"\f730"}.fa-square-viadeo,.fa-viadeo-square{--fa:"\f2aa"}.fa-meetup{--fa:"\f2e0"}.fa-centos{--fa:"\f789"}.fa-adn{--fa:"\f170"}.fa-cloudsmith{--fa:"\f384"}.fa-opensuse{--fa:"\e62b"}.fa-pied-piper-alt{--fa:"\f1a8"}.fa-dribbble-square,.fa-square-dribbble{--fa:"\f397"}.fa-codiepie{--fa:"\f284"}.fa-node{--fa:"\f419"}.fa-mix{--fa:"\f3cb"}.fa-steam{--fa:"\f1b6"}.fa-cc-apple-pay{--fa:"\f416"}.fa-scribd{--fa:"\f28a"}.fa-debian{--fa:"\e60b"}.fa-openid{--fa:"\f19b"}.fa-instalod{--fa:"\e081"}.fa-files-pinwheel{--fa:"\e69f"}.fa-expeditedssl{--fa:"\f23e"}.fa-sellcast{--fa:"\f2da"}.fa-square-twitter,.fa-twitter-square{--fa:"\f081"}.fa-r-project{--fa:"\f4f7"}.fa-delicious{--fa:"\f1a5"}.fa-freebsd{--fa:"\f3a4"}.fa-vuejs{--fa:"\f41f"}.fa-accusoft{--fa:"\f369"}.fa-ioxhost{--fa:"\f208"}.fa-fonticons-fi{--fa:"\f3a2"}.fa-app-store{--fa:"\f36f"}.fa-cc-mastercard{--fa:"\f1f1"}.fa-itunes-note{--fa:"\f3b5"}.fa-golang{--fa:"\e40f"}.fa-kickstarter,.fa-square-kickstarter{--fa:"\f3bb"}.fa-grav{--fa:"\f2d6"}.fa-weibo{--fa:"\f18a"}.fa-uncharted{--fa:"\e084"}.fa-firstdraft{--fa:"\f3a1"}.fa-square-youtube,.fa-youtube-square{--fa:"\f431"}.fa-wikipedia-w{--fa:"\f266"}.fa-rendact,.fa-wpressr{--fa:"\f3e4"}.fa-angellist{--fa:"\f209"}.fa-galactic-republic{--fa:"\f50c"}.fa-nfc-directional{--fa:"\e530"}.fa-skype{--fa:"\f17e"}.fa-joget{--fa:"\f3b7"}.fa-fedora{--fa:"\f798"}.fa-stripe-s{--fa:"\f42a"}.fa-meta{--fa:"\e49b"}.fa-laravel{--fa:"\f3bd"}.fa-hotjar{--fa:"\f3b1"}.fa-bluetooth-b{--fa:"\f294"}.fa-square-letterboxd{--fa:"\e62e"}.fa-sticker-mule{--fa:"\f3f7"}.fa-creative-commons-zero{--fa:"\f4f3"}.fa-hips{--fa:"\f452"}.fa-css{--fa:"\e6a2"}.fa-behance{--fa:"\f1b4"}.fa-reddit{--fa:"\f1a1"}.fa-discord{--fa:"\f392"}.fa-chrome{--fa:"\f268"Line truncated
@@ -1,19 +1,25 @@
(()=>{var c={134:function(c,a){
(()=>{var c={134:function(c,l){
/*!
* Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2023 Fonticons, Inc.
* Copyright 2024 Fonticons, Inc.
*/
!function(c){"use strict";var a="fab",e={prefix:"fab",iconName:"monero",icon:[496,512,[],"f3d0","M352 384h108.4C417 455.9 338.1 504 248 504S79 455.9 35.6 384H144V256.2L248 361l104-105v128zM88 336V128l159.4 159.4L408 128v208h74.8c8.5-25.1 13.2-52 13.2-80C496 119 385 8 248 8S0 119 0 256c0 28 4.6 54.9 13.2 80H88z"]},i={prefix:"fab",iconName:"hooli",icon:[640,512,[],"f427","M144.5 352l38.3.8c-13.2-4.6-26-10.2-38.3-16.8zm57.7-5.3v5.3l-19.4.8c36.5 12.5 69.9 14.2 94.7 7.2-19.9.2-45.8-2.6-75.3-13.3zm408.9-115.2c15.9 0 28.9-12.9 28.9-28.9s-12.9-24.5-28.9-24.5c-15.9 0-28.9 8.6-28.9 24.5s12.9 28.9 28.9 28.9zm-29 120.5H640V241.5h-57.9zm-73.7 0h57.9V156.7L508.4 184zm-31-119.4c-18.2-18.2-50.4-17.1-50.4-17.1s-32.3-1.1-50.4 17.1c-18.2 18.2-16.8 33.9-16.8 52.6s-1.4 34.3 16.8 52.5 50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.8-33.8 16.8-52.5-.1-18.8 1.3-34.5-16.8-52.6zm-39.8 71.9c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9zm-106.2-71.9c-18.2-18.2-50.4-17.1-50.4-17.1s-32.2-1.1-50.4 17.1c-1.9 1.9-3.7 3.9-5.3 6-38.2-29.6-72.5-46.5-102.1-61.1v-20.7l-22.5 10.6c-54.4-22.1-89-18.2-97.3.1 0 0-24.9 32.8 61.8 110.8V352h57.9v-28.6c-6.5-4.2-13-8.7-19.4-13.6-14.8-11.2-27.4-21.6-38.4-31.4v-31c13.1 14.7 30.5 31.4 53.4 50.3l4.5 3.6v-29.8c0-6.9 1.7-18.2 10.8-18.2s10.6 6.9 10.6 15V317c18 12.2 37.3 22.1 57.7 29.6v-93.9c0-18.7-13.4-37.4-40.6-37.4-15.8-.1-30.5 8.2-38.5 21.9v-54.3c41.9 20.9 83.9 46.5 99.9 58.3-10.2 14.6-9.3 28.1-9.3 43.7 0 18.7-1.4 34.3 16.8 52.5s50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.7-33.8 16.7-52.5 0-18.5 1.5-34.2-16.7-52.3zM65.2 184v63.3c-48.7-54.5-38.9-76-35.2-79.1 13.5-11.4 37.5-8 64.4 2.1zm226.5 120.5c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9z"]},f={prefix:"fab",iconName:"yelp",icon:[384,512,[],"f1e9","M42.9 240.32l99.62 48.61c19.2 9.4 16.2 37.51-4.5 42.71L30.5 358.45a22.79 22.79 0 0 1-28.21-19.6 197.16 197.16 0 0 1 9-85.32 22.8 22.8 0 0 1 31.61-13.21zm44 239.25a199.45 199.45 0 0 0 79.42 32.11A22.78 22.78 0 0 0 192.94 490l3.9-110.82c.7-21.3-25.5-31.91-39.81-16.1l-74.21 82.4a22.82 22.82 0 0 0 4.09 34.09zm145.34-109.92l58.81 94a22.93 22.93 0 0 0 34 5.5 198.36 198.36 0 0 0 52.71-67.61A23 23 0 0 0 364.17 370l-105.42-34.26c-20.31-6.5-37.81 15.8-26.51 33.91zm148.33-132.23a197.44 197.44 0 0 0-50.41-69.31 22.85 22.85 0 0 0-34 4.4l-62 91.92c-11.9 17.7 4.7 40.61 25.2 34.71L366 268.63a23 23 0 0 0 14.61-31.21zM62.11 30.18a22.86 22.86 0 0 0-9.9 32l104.12 180.44c11.7 20.2 42.61 11.9 42.61-11.4V22.88a22.67 22.67 0 0 0-24.5-22.8 320.37 320.37 0 0 0-112.33 30.1z"]},s={prefix:"fab",iconName:"cc-visa",icon:[576,512,[],"f1f0","M470.1 231.3s7.6 37.2 9.3 45H446c3.3-8.9 16-43.5 16-43.5-.2.3 3.3-9.1 5.3-14.9l2.8 13.4zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM152.5 331.2L215.7 176h-42.5l-39.3 106-4.3-21.5-14-71.4c-2.3-9.9-9.4-12.7-18.2-13.1H32.7l-.7 3.1c15.8 4 29.9 9.8 42.2 17.1l35.8 135h42.5zm94.4.2L272.1 176h-40.2l-25.1 155.4h40.1zm139.9-50.8c.2-17.7-10.6-31.2-33.7-42.3-14.1-7.1-22.7-11.9-22.7-19.2.2-6.6 7.3-13.4 23.1-13.4 13.1-.3 22.7 2.8 29.9 5.9l3.6 1.7 5.5-33.6c-7.9-3.1-20.5-6.6-36-6.6-39.7 0-67.6 21.2-67.8 51.4-.3 22.3 20 34.7 35.2 42.2 15.5 7.6 20.8 12.6 20.8 19.3-.2 10.4-12.6 15.2-24.1 15.2-16 0-24.6-2.5-37.7-8.3l-5.3-2.5-5.6 34.9c9.4 4.3 26.8 8.1 44.8 8.3 42.2.1 69.7-20.8 70-53zM528 331.4L495.6 176h-31.1c-9.6 0-16.9 2.8-21 12.9l-59.7 142.5H426s6.9-19.2 8.4-23.3H486c1.2 5.5 4.8 23.3 4.8 23.3H528z"]},l={prefix:"fab",iconName:"lastfm",icon:[512,512,[],"f202","M225.8 367.1l-18.8-51s-30.5 34-76.2 34c-40.5 0-69.2-35.2-69.2-91.5 0-72.1 36.4-97.9 72.1-97.9 66.5 0 74.8 53.3 100.9 134.9 18.8 56.9 54 102.6 155.4 102.6 72.7 0 122-22.3 122-80.9 0-72.9-62.7-80.6-115-92.1-25.8-5.9-33.4-16.4-33.4-34 0-19.9 15.8-31.7 41.6-31.7 28.2 0 43.4 10.6 45.7 35.8l58.6-7c-4.7-52.8-41.1-74.5-100.9-74.5-52.8 0-104.4 19.9-104.4 83.9 0 39.9 19.4 65.1 68 76.8 44.9 10.6 79.8 13.8 79.8 45.7 0 21.7-21.1 30.5-61 30.5-59.2 0-83.9-31.1-97.9-73.9-32-96.8-43.6-163-161.3-163C45.7 113.8 0 168.3 0 261c0 89.1 45.7 137.2 127.9 137.2 66.2 0 97.9-31.1 97.9-31.1z"]},n={prefix:"fab",iconName:"shopware",icon:[512,512,[],"f5b5","M403.5 455.41A246.17 246.17 0 0 1 256 504C118.81 504 8 393 8 256 8 118.81 119 8 256 8a247.39 247.39 0 0 1 165.7 63.5 3.57 3.57 0 0 1-2.86 6.18A418.62 418.62 0 0 0 362.13 74c-129.36 0-222.4 53.47-222.4 155.35 0 109 92.13 145.88 176.83 178.73 33.64 13 65.4 25.36 87 41.59a3.58 3.58 0 0 1 0 5.72zM503 233.09a3.64 3.64 0 0 0-1.27-2.44c-51.76-43-93.62-60.48-144.48-60.48-84.13 0-80.25 52.17-80.25 53.63 0 42.6 52.06 62 112.34 84.49 31.07 11.59 63.19 23.57 92.68 39.93a3.57 3.57 0 0 0 5-1.82A249 249 0 0 0 503 233.09z"]},o={prefix:"fab",iconName:"creative-commons-nc",icon:[496,512,[],"f4e8","M247.6 8C387.4 8 496 115.9 496 256c0 147.2-118.5 248-248.4 248C113.1 504 0 393.2 0 256 0 123.1 104.7 8 247.6 8zM55.8 189.1c-7.4 20.4-11.1 42.7-11.1 66.9 0 110.9 92.1 202.4 203.7 202.4 122.4 0 177.2-10Line truncated
!function(c){"use strict";const l="fab",a={prefix:"fab",iconName:"monero",icon:[496,512,[],"f3d0","M352 384h108.4C417 455.9 338.1 504 248 504S79 455.9 35.6 384H144V256.2L248 361l104-105v128zM88 336V128l159.4 159.4L408 128v208h74.8c8.5-25.1 13.2-52 13.2-80C496 119 385 8 248 8S0 119 0 256c0 28 4.6 54.9 13.2 80H88z"]},e={prefix:"fab",iconName:"hooli",icon:[640,512,[],"f427","M144.5 352l38.3.8c-13.2-4.6-26-10.2-38.3-16.8zm57.7-5.3v5.3l-19.4.8c36.5 12.5 69.9 14.2 94.7 7.2-19.9.2-45.8-2.6-75.3-13.3zm408.9-115.2c15.9 0 28.9-12.9 28.9-28.9s-12.9-24.5-28.9-24.5c-15.9 0-28.9 8.6-28.9 24.5s12.9 28.9 28.9 28.9zm-29 120.5H640V241.5h-57.9zm-73.7 0h57.9V156.7L508.4 184zm-31-119.4c-18.2-18.2-50.4-17.1-50.4-17.1s-32.3-1.1-50.4 17.1c-18.2 18.2-16.8 33.9-16.8 52.6s-1.4 34.3 16.8 52.5 50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.8-33.8 16.8-52.5-.1-18.8 1.3-34.5-16.8-52.6zm-39.8 71.9c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9zm-106.2-71.9c-18.2-18.2-50.4-17.1-50.4-17.1s-32.2-1.1-50.4 17.1c-1.9 1.9-3.7 3.9-5.3 6-38.2-29.6-72.5-46.5-102.1-61.1v-20.7l-22.5 10.6c-54.4-22.1-89-18.2-97.3.1 0 0-24.9 32.8 61.8 110.8V352h57.9v-28.6c-6.5-4.2-13-8.7-19.4-13.6-14.8-11.2-27.4-21.6-38.4-31.4v-31c13.1 14.7 30.5 31.4 53.4 50.3l4.5 3.6v-29.8c0-6.9 1.7-18.2 10.8-18.2s10.6 6.9 10.6 15V317c18 12.2 37.3 22.1 57.7 29.6v-93.9c0-18.7-13.4-37.4-40.6-37.4-15.8-.1-30.5 8.2-38.5 21.9v-54.3c41.9 20.9 83.9 46.5 99.9 58.3-10.2 14.6-9.3 28.1-9.3 43.7 0 18.7-1.4 34.3 16.8 52.5s50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.7-33.8 16.7-52.5 0-18.5 1.5-34.2-16.7-52.3zM65.2 184v63.3c-48.7-54.5-38.9-76-35.2-79.1 13.5-11.4 37.5-8 64.4 2.1zm226.5 120.5c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9z"]},s={prefix:"fab",iconName:"yelp",icon:[384,512,[],"f1e9","M42.9 240.32l99.62 48.61c19.2 9.4 16.2 37.51-4.5 42.71L30.5 358.45a22.79 22.79 0 0 1-28.21-19.6 197.16 197.16 0 0 1 9-85.32 22.8 22.8 0 0 1 31.61-13.21zm44 239.25a199.45 199.45 0 0 0 79.42 32.11A22.78 22.78 0 0 0 192.94 490l3.9-110.82c.7-21.3-25.5-31.91-39.81-16.1l-74.21 82.4a22.82 22.82 0 0 0 4.09 34.09zm145.34-109.92l58.81 94a22.93 22.93 0 0 0 34 5.5 198.36 198.36 0 0 0 52.71-67.61A23 23 0 0 0 364.17 370l-105.42-34.26c-20.31-6.5-37.81 15.8-26.51 33.91zm148.33-132.23a197.44 197.44 0 0 0-50.41-69.31 22.85 22.85 0 0 0-34 4.4l-62 91.92c-11.9 17.7 4.7 40.61 25.2 34.71L366 268.63a23 23 0 0 0 14.61-31.21zM62.11 30.18a22.86 22.86 0 0 0-9.9 32l104.12 180.44c11.7 20.2 42.61 11.9 42.61-11.4V22.88a22.67 22.67 0 0 0-24.5-22.8 320.37 320.37 0 0 0-112.33 30.1z"]},f={prefix:"fab",iconName:"cc-visa",icon:[576,512,[],"f1f0","M470.1 231.3s7.6 37.2 9.3 45H446c3.3-8.9 16-43.5 16-43.5-.2.3 3.3-9.1 5.3-14.9l2.8 13.4zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM152.5 331.2L215.7 176h-42.5l-39.3 106-4.3-21.5-14-71.4c-2.3-9.9-9.4-12.7-18.2-13.1H32.7l-.7 3.1c15.8 4 29.9 9.8 42.2 17.1l35.8 135h42.5zm94.4.2L272.1 176h-40.2l-25.1 155.4h40.1zm139.9-50.8c.2-17.7-10.6-31.2-33.7-42.3-14.1-7.1-22.7-11.9-22.7-19.2.2-6.6 7.3-13.4 23.1-13.4 13.1-.3 22.7 2.8 29.9 5.9l3.6 1.7 5.5-33.6c-7.9-3.1-20.5-6.6-36-6.6-39.7 0-67.6 21.2-67.8 51.4-.3 22.3 20 34.7 35.2 42.2 15.5 7.6 20.8 12.6 20.8 19.3-.2 10.4-12.6 15.2-24.1 15.2-16 0-24.6-2.5-37.7-8.3l-5.3-2.5-5.6 34.9c9.4 4.3 26.8 8.1 44.8 8.3 42.2.1 69.7-20.8 70-53zM528 331.4L495.6 176h-31.1c-9.6 0-16.9 2.8-21 12.9l-59.7 142.5H426s6.9-19.2 8.4-23.3H486c1.2 5.5 4.8 23.3 4.8 23.3H528z"]},i={prefix:"fab",iconName:"lastfm",icon:[512,512,[],"f202","M225.8 367.1l-18.8-51s-30.5 34-76.2 34c-40.5 0-69.2-35.2-69.2-91.5 0-72.1 36.4-97.9 72.1-97.9 66.5 0 74.8 53.3 100.9 134.9 18.8 56.9 54 102.6 155.4 102.6 72.7 0 122-22.3 122-80.9 0-72.9-62.7-80.6-115-92.1-25.8-5.9-33.4-16.4-33.4-34 0-19.9 15.8-31.7 41.6-31.7 28.2 0 43.4 10.6 45.7 35.8l58.6-7c-4.7-52.8-41.1-74.5-100.9-74.5-52.8 0-104.4 19.9-104.4 83.9 0 39.9 19.4 65.1 68 76.8 44.9 10.6 79.8 13.8 79.8 45.7 0 21.7-21.1 30.5-61 30.5-59.2 0-83.9-31.1-97.9-73.9-32-96.8-43.6-163-161.3-163C45.7 113.8 0 168.3 0 261c0 89.1 45.7 137.2 127.9 137.2 66.2 0 97.9-31.1 97.9-31.1z"]},o={prefix:"fab",iconName:"shopware",icon:[512,512,[],"f5b5","M403.5 455.41A246.17 246.17 0 0 1 256 504C118.81 504 8 393 8 256 8 118.81 119 8 256 8a247.39 247.39 0 0 1 165.7 63.5 3.57 3.57 0 0 1-2.86 6.18A418.62 418.62 0 0 0 362.13 74c-129.36 0-222.4 53.47-222.4 155.35 0 109 92.13 145.88 176.83 178.73 33.64 13 65.4 25.36 87 41.59a3.58 3.58 0 0 1 0 5.72zM503 233.09a3.64 3.64 0 0 0-1.27-2.44c-51.76-43-93.62-60.48-144.48-60.48-84.13 0-80.25 52.17-80.25 53.63 0 42.6 52.06 62 112.34 84.49 31.07 11.59 63.19 23.57 92.68 39.93a3.57 3.57 0 0 0 5-1.82A249 249 0 0 0 503 233.09z"]},n={prefix:"fab",iconName:"creative-commons-nc",icon:[496,512,[],"f4e8","M247.6 8C387.4 8 496 115.9 496 256c0 147.2-118.5 248-248.4 248C113.1 504 0 393.2 0 256 0 123.1 104.7 8 247.6 8zM55.8 189.1c-7.4 20.4-11.1 42.7-11.1 66.9 0 110.9 92.1 202.4 203.7 202.4 122.4 0 177.2-Line truncated
/*!
* Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2023 Fonticons, Inc.
* Copyright 2024 Fonticons, Inc.
*/
!function(c){"use strict";var a="far",e={prefix:"far",iconName:"trash-can",icon:[448,512,[61460,"trash-alt"],"f2ed","M170.5 51.6L151.5 80h145l-19-28.4c-1.5-2.2-4-3.6-6.7-3.6H177.1c-2.7 0-5.2 1.3-6.7 3.6zm147-26.6L354.2 80H368h48 8c13.3 0 24 10.7 24 24s-10.7 24-24 24h-8V432c0 44.2-35.8 80-80 80H112c-44.2 0-80-35.8-80-80V128H24c-13.3 0-24-10.7-24-24S10.7 80 24 80h8H80 93.8l36.7-55.1C140.9 9.4 158.4 0 177.1 0h93.7c18.7 0 36.2 9.4 46.6 24.9zM80 128V432c0 17.7 14.3 32 32 32H336c17.7 0 32-14.3 32-32V128H80zm80 64V400c0 8.8-7.2 16-16 16s-16-7.2-16-16V192c0-8.8 7.2-16 16-16s16 7.2 16 16zm80 0V400c0 8.8-7.2 16-16 16s-16-7.2-16-16V192c0-8.8 7.2-16 16-16s16 7.2 16 16zm80 0V400c0 8.8-7.2 16-16 16s-16-7.2-16-16V192c0-8.8 7.2-16 16-16s16 7.2 16 16z"]},i=e,f={prefix:"far",iconName:"message",icon:[512,512,["comment-alt"],"f27a","M160 368c26.5 0 48 21.5 48 48v16l72.5-54.4c8.3-6.2 18.4-9.6 28.8-9.6H448c8.8 0 16-7.2 16-16V64c0-8.8-7.2-16-16-16H64c-8.8 0-16 7.2-16 16V352c0 8.8 7.2 16 16 16h96zm48 124l-.2 .2-5.1 3.8-17.1 12.8c-4.8 3.6-11.3 4.2-16.8 1.5s-8.8-8.2-8.8-14.3V474.7v-6.4V468v-4V416H112 64c-35.3 0-64-28.7-64-64V64C0 28.7 28.7 0 64 0H448c35.3 0 64 28.7 64 64V352c0 35.3-28.7 64-64 64H309.3L208 492z"]},s=f,l={prefix:"far",iconName:"file-lines",icon:[384,512,[128441,128462,61686,"file-alt","file-text"],"f15c","M64 464c-8.8 0-16-7.2-16-16V64c0-8.8 7.2-16 16-16H224v80c0 17.7 14.3 32 32 32h80V448c0 8.8-7.2 16-16 16H64zM64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V154.5c0-17-6.7-33.3-18.7-45.3L274.7 18.7C262.7 6.7 246.5 0 229.5 0H64zm56 256c-13.3 0-24 10.7-24 24s10.7 24 24 24H264c13.3 0 24-10.7 24-24s-10.7-24-24-24H120zm0 96c-13.3 0-24 10.7-24 24s10.7 24 24 24H264c13.3 0 24-10.7 24-24s-10.7-24-24-24H120z"]},n=l,o=l,r={prefix:"far",iconName:"calendar-days",icon:[448,512,["calendar-alt"],"f073","M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H64C28.7 64 0 92.7 0 128v16 48V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V192 144 128c0-35.3-28.7-64-64-64H344V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H152V24zM48 192h80v56H48V192zm0 104h80v64H48V296zm128 0h96v64H176V296zm144 0h80v64H320V296zm80-48H320V192h80v56zm0 160v40c0 8.8-7.2 16-16 16H320V408h80zm-128 0v56H176V408h96zm-144 0v56H64c-8.8 0-16-7.2-16-16V408h80zM272 248H176V192h96v56z"]},t=r,z={prefix:"far",iconName:"hand-point-right",icon:[512,512,[],"f0a4","M448 128l-177.6 0c1 5.2 1.6 10.5 1.6 16l0 16 32 0 144 0c8.8 0 16-7.2 16-16s-7.2-16-16-16zM224 144c0-17.7-14.3-32-32-32c0 0 0 0 0 0l-24 0c-66.3 0-120 53.7-120 120l0 48c0 52.5 33.7 97.1 80.7 113.4c-.5-3.1-.7-6.2-.7-9.4c0-20 9.2-37.9 23.6-49.7c-4.9-9-7.6-19.4-7.6-30.3c0-15.1 5.3-29 14-40c-8.8-11-14-24.9-14-40l0-40c0-13.3 10.7-24 24-24s24 10.7 24 24l0 40c0 8.8 7.2 16 16 16s16-7.2 16-16l0-40 0-40zM192 64s0 0 0 0c18 0 34.6 6 48 16l208 0c35.3 0 64 28.7 64 64s-28.7 64-64 64l-82 0c1.3 5.1 2 10.5 2 16c0 25.3-14.7 47.2-36 57.6c2.6 7 4 14.5 4 22.4c0 20-9.2 37.9-23.6 49.7c4.9 9 7.6 19.4 7.6 30.3c0 35.3-28.7 64-64 64l-64 0-24 0C75.2 448 0 372.8 0 280l0-48C0 139.2 75.2 64 168 64l24 0zm64 336c8.8 0 16-7.2 16-16s-7.2-16-16-16l-48 0-16 0c-8.8 0-16 7.2-16 16s7.2 16 16 16l64 0zm16-176c0 5.5-.7 10.9-2 16l2 0 32 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-32 0 0 16zm-24 64l-40 0c-8.8 0-16 7.2-16 16s7.2 16 16 16l48 0 16 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-24 0z"]},m={prefix:"far",iconName:"face-smile-beam",icon:[512,512,[128522,"smile-beam"],"f5b8","M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm177.6 62.1C192.8 334.5 218.8 352 256 352s63.2-17.5 78.4-33.9c9-9.7 24.2-10.4 33.9-1.4s10.4 24.2 1.4 33.9c-22 23.8-60 49.4-113.6 49.4s-91.7-25.5-113.6-49.4c-9-9.7-8.4-24.9 1.4-33.9s24.9-8.4 33.9 1.4zm40-89.3l0 0 0 0-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2 0 0 0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8l0 0 0 0zm160 0l0 0-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2 0 0 0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8l0 0 0 0 0 0z"]},H=m,h={prefix:"far",iconName:"face-grin-stars",icon:[512,512,[129321,"grin-stars"],"f587","M256 48a208 208 0 1 1 0 416 208 208 0 1 1 0-416zm0 464A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM183.2 132.6c-1.3-2.8-4.1-4.6-7.2-4.6s-5.9 1.8-7.2 4.6l-16.6 34.7-38.1 5c-3.1 .4-5.6 2.5-6.6 5.5s-.1 6.2 2.1 8.3l27.9 26.5-7 37.8c-.6 3 .7 6.1 3.2 7.9s5.8 2 8.5 .6L176 240.5l33.8 18.3c2.7 1.5 6 1.3 8.5-.6s3.7-4.9 3.2-7.9l-7-37.8L242.4 186c2.2-2.1 3.1-5.3 2.1-8.3s-3.5-5.1-6.6-5.5l-38.1-5-16.6-34.7zm160 0c-Line truncated
!function(c){"use strict";const l="far",a={prefix:"far",iconName:"trash-can",icon:[448,512,[61460,"trash-alt"],"f2ed","M170.5 51.6L151.5 80l145 0-19-28.4c-1.5-2.2-4-3.6-6.7-3.6l-93.7 0c-2.7 0-5.2 1.3-6.7 3.6zm147-26.6L354.2 80 368 80l48 0 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-8 0 0 304c0 44.2-35.8 80-80 80l-224 0c-44.2 0-80-35.8-80-80l0-304-8 0c-13.3 0-24-10.7-24-24S10.7 80 24 80l8 0 48 0 13.8 0 36.7-55.1C140.9 9.4 158.4 0 177.1 0l93.7 0c18.7 0 36.2 9.4 46.6 24.9zM80 128l0 304c0 17.7 14.3 32 32 32l224 0c17.7 0 32-14.3 32-32l0-304L80 128zm80 64l0 208c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-208c0-8.8 7.2-16 16-16s16 7.2 16 16zm80 0l0 208c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-208c0-8.8 7.2-16 16-16s16 7.2 16 16zm80 0l0 208c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-208c0-8.8 7.2-16 16-16s16 7.2 16 16z"]},e=a,s={prefix:"far",iconName:"message",icon:[512,512,["comment-alt"],"f27a","M160 368c26.5 0 48 21.5 48 48l0 16 72.5-54.4c8.3-6.2 18.4-9.6 28.8-9.6L448 368c8.8 0 16-7.2 16-16l0-288c0-8.8-7.2-16-16-16L64 48c-8.8 0-16 7.2-16 16l0 288c0 8.8 7.2 16 16 16l96 0zm48 124l-.2 .2-5.1 3.8-17.1 12.8c-4.8 3.6-11.3 4.2-16.8 1.5s-8.8-8.2-8.8-14.3l0-21.3 0-6.4 0-.3 0-4 0-48-48 0-48 0c-35.3 0-64-28.7-64-64L0 64C0 28.7 28.7 0 64 0L448 0c35.3 0 64 28.7 64 64l0 288c0 35.3-28.7 64-64 64l-138.7 0L208 492z"]},f=s,i={prefix:"far",iconName:"file-lines",icon:[384,512,[128441,128462,61686,"file-alt","file-text"],"f15c","M64 464c-8.8 0-16-7.2-16-16L48 64c0-8.8 7.2-16 16-16l160 0 0 80c0 17.7 14.3 32 32 32l80 0 0 288c0 8.8-7.2 16-16 16L64 464zM64 0C28.7 0 0 28.7 0 64L0 448c0 35.3 28.7 64 64 64l256 0c35.3 0 64-28.7 64-64l0-293.5c0-17-6.7-33.3-18.7-45.3L274.7 18.7C262.7 6.7 246.5 0 229.5 0L64 0zm56 256c-13.3 0-24 10.7-24 24s10.7 24 24 24l144 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-144 0zm0 96c-13.3 0-24 10.7-24 24s10.7 24 24 24l144 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-144 0z"]},o=i,n=i,r={prefix:"far",iconName:"calendar-days",icon:[448,512,["calendar-alt"],"f073","M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 40L64 64C28.7 64 0 92.7 0 128l0 16 0 48L0 448c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-256 0-48 0-16c0-35.3-28.7-64-64-64l-40 0 0-40c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 40L152 64l0-40zM48 192l80 0 0 56-80 0 0-56zm0 104l80 0 0 64-80 0 0-64zm128 0l96 0 0 64-96 0 0-64zm144 0l80 0 0 64-80 0 0-64zm80-48l-80 0 0-56 80 0 0 56zm0 160l0 40c0 8.8-7.2 16-16 16l-64 0 0-56 80 0zm-128 0l0 56-96 0 0-56 96 0zm-144 0l0 56-64 0c-8.8 0-16-7.2-16-16l0-40 80 0zM272 248l-96 0 0-56 96 0 0 56z"]},t=r,z={prefix:"far",iconName:"hand-point-right",icon:[512,512,[],"f0a4","M448 128l-177.6 0c1 5.2 1.6 10.5 1.6 16l0 16 32 0 144 0c8.8 0 16-7.2 16-16s-7.2-16-16-16zM224 144c0-17.7-14.3-32-32-32c0 0 0 0 0 0l-24 0c-66.3 0-120 53.7-120 120l0 48c0 52.5 33.7 97.1 80.7 113.4c-.5-3.1-.7-6.2-.7-9.4c0-20 9.2-37.9 23.6-49.7c-4.9-9-7.6-19.4-7.6-30.3c0-15.1 5.3-29 14-40c-8.8-11-14-24.9-14-40l0-40c0-13.3 10.7-24 24-24s24 10.7 24 24l0 40c0 8.8 7.2 16 16 16s16-7.2 16-16l0-40 0-40zM192 64s0 0 0 0c18 0 34.6 6 48 16l208 0c35.3 0 64 28.7 64 64s-28.7 64-64 64l-82 0c1.3 5.1 2 10.5 2 16c0 25.3-14.7 47.2-36 57.6c2.6 7 4 14.5 4 22.4c0 20-9.2 37.9-23.6 49.7c4.9 9 7.6 19.4 7.6 30.3c0 35.3-28.7 64-64 64l-64 0-24 0C75.2 448 0 372.8 0 280l0-48C0 139.2 75.2 64 168 64l24 0zm64 336c8.8 0 16-7.2 16-16s-7.2-16-16-16l-48 0-16 0c-8.8 0-16 7.2-16 16s7.2 16 16 16l64 0zm16-176c0 5.5-.7 10.9-2 16l2 0 32 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-32 0 0 16zm-24 64l-40 0c-8.8 0-16 7.2-16 16s7.2 16 16 16l48 0 16 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-24 0z"]},m={prefix:"far",iconName:"face-smile-beam",icon:[512,512,[128522,"smile-beam"],"f5b8","M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm177.6 62.1C192.8 334.5 218.8 352 256 352s63.2-17.5 78.4-33.9c9-9.7 24.2-10.4 33.9-1.4s10.4 24.2 1.4 33.9c-22 23.8-60 49.4-113.6 49.4s-91.7-25.5-113.6-49.4c-9-9.7-8.4-24.9 1.4-33.9s24.9-8.4 33.9 1.4zm40-89.3s0 0 0 0c0 0 0 0 0 0l-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8c0 0 0 0 0 0s0 0 0 0zm160 0c0 0 0 0 0 0l-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8c0 0 0 0 0 0s0 0 0 0s0 0 0 0z"]},L=m,M={prefix:"far",iconName:"face-grin-stars",icon:[512,512,[129321,"grin-stars"],"f587","M256 48a208 208 0 1 1 0 416 208 208 0 1 1 0-416zm0 464A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM183.2 132Line truncated
/*!
* Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2023 Fonticons, Inc.
* Copyright 2024 Fonticons, Inc.
*/
!function(c){"use strict";var a="fas",e={prefix:"fas",iconName:"0",icon:[320,512,[],"30","M0 192C0 103.6 71.6 32 160 32s160 71.6 160 160V320c0 88.4-71.6 160-160 160S0 408.4 0 320V192zM160 96c-53 0-96 43-96 96V320c0 53 43 96 96 96s96-43 96-96V192c0-53-43-96-96-96z"]},i={prefix:"fas",iconName:"1",icon:[256,512,[],"31","M160 64c0-11.8-6.5-22.6-16.9-28.2s-23-5-32.8 1.6l-96 64C-.5 111.2-4.4 131 5.4 145.8s29.7 18.7 44.4 8.9L96 123.8V416H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h96 96c17.7 0 32-14.3 32-32s-14.3-32-32-32H160V64z"]},f={prefix:"fas",iconName:"2",icon:[320,512,[],"32","M142.9 96c-21.5 0-42.2 8.5-57.4 23.8L54.6 150.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L40.2 74.5C67.5 47.3 104.4 32 142.9 32C223 32 288 97 288 177.1c0 38.5-15.3 75.4-42.5 102.6L109.3 416H288c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-12.9 0-24.6-7.8-29.6-19.8s-2.2-25.7 6.9-34.9L200.2 234.5c15.2-15.2 23.8-35.9 23.8-57.4c0-44.8-36.3-81.1-81.1-81.1z"]},s={prefix:"fas",iconName:"3",icon:[320,512,[],"33","M0 64C0 46.3 14.3 32 32 32H272c13.2 0 25 8.1 29.8 20.4s1.5 26.3-8.2 35.2L162.3 208H184c75.1 0 136 60.9 136 136s-60.9 136-136 136H105.4C63 480 24.2 456 5.3 418.1l-1.9-3.8c-7.9-15.8-1.5-35 14.3-42.9s35-1.5 42.9 14.3l1.9 3.8c8.1 16.3 24.8 26.5 42.9 26.5H184c39.8 0 72-32.2 72-72s-32.2-72-72-72H80c-13.2 0-25-8.1-29.8-20.4s-1.5-26.3 8.2-35.2L189.7 96H32C14.3 96 0 81.7 0 64z"]},l={prefix:"fas",iconName:"4",icon:[384,512,[],"34","M189 77.6c7.5-16 .7-35.1-15.3-42.6s-35.1-.7-42.6 15.3L3 322.4c-4.7 9.9-3.9 21.5 1.9 30.8S21 368 32 368H256v80c0 17.7 14.3 32 32 32s32-14.3 32-32V368h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H320V160c0-17.7-14.3-32-32-32s-32 14.3-32 32V304H82.4L189 77.6z"]},n={prefix:"fas",iconName:"5",icon:[320,512,[],"35","M32.5 58.3C35.3 43.1 48.5 32 64 32H256c17.7 0 32 14.3 32 32s-14.3 32-32 32H90.7L70.3 208H184c75.1 0 136 60.9 136 136s-60.9 136-136 136H100.5c-39.4 0-75.4-22.3-93-57.5l-4.1-8.2c-7.9-15.8-1.5-35 14.3-42.9s35-1.5 42.9 14.3l4.1 8.2c6.8 13.6 20.6 22.1 35.8 22.1H184c39.8 0 72-32.2 72-72s-32.2-72-72-72H32c-9.5 0-18.5-4.2-24.6-11.5s-8.6-16.9-6.9-26.2l32-176z"]},o={prefix:"fas",iconName:"6",icon:[320,512,[],"36","M232.4 84.7c11.4-13.5 9.7-33.7-3.8-45.1s-33.7-9.7-45.1 3.8L38.6 214.7C14.7 242.9 1.1 278.4 .1 315.2c0 1.4-.1 2.9-.1 4.3c0 .2 0 .3 0 .5c0 88.4 71.6 160 160 160s160-71.6 160-160c0-85.5-67.1-155.4-151.5-159.8l63.9-75.6zM256 320A96 96 0 1 1 64 320a96 96 0 1 1 192 0z"]},r={prefix:"fas",iconName:"7",icon:[320,512,[],"37","M0 64C0 46.3 14.3 32 32 32H288c11.5 0 22 6.1 27.7 16.1s5.7 22.2-.1 32.1l-224 384c-8.9 15.3-28.5 20.4-43.8 11.5s-20.4-28.5-11.5-43.8L232.3 96H32C14.3 96 0 81.7 0 64z"]},t={prefix:"fas",iconName:"8",icon:[320,512,[],"38","M304 160c0-70.7-57.3-128-128-128H144C73.3 32 16 89.3 16 160c0 34.6 13.7 66 36 89C20.5 272.3 0 309.8 0 352c0 70.7 57.3 128 128 128h64c70.7 0 128-57.3 128-128c0-42.2-20.5-79.7-52-103c22.3-23 36-54.4 36-89zM176.1 288H192c35.3 0 64 28.7 64 64s-28.7 64-64 64H128c-35.3 0-64-28.7-64-64s28.7-64 64-64h15.9c0 0 .1 0 .1 0h32c0 0 .1 0 .1 0zm0-64c0 0 0 0 0 0H144c0 0 0 0 0 0c-35.3 0-64-28.7-64-64c0-35.3 28.7-64 64-64h32c35.3 0 64 28.7 64 64c0 35.3-28.6 64-64 64z"]},z={prefix:"fas",iconName:"9",icon:[320,512,[],"39","M64 192a96 96 0 1 0 192 0A96 96 0 1 0 64 192zm87.5 159.8C67.1 347.4 0 277.5 0 192C0 103.6 71.6 32 160 32s160 71.6 160 160c0 2.6-.1 5.3-.2 7.9c-1.7 35.7-15.2 70-38.4 97.4l-145 171.4c-11.4 13.5-31.6 15.2-45.1 3.8s-15.2-31.6-3.8-45.1l63.9-75.6z"]},m={prefix:"fas",iconName:"fill-drip",icon:[576,512,[],"f576","M41.4 9.4C53.9-3.1 74.1-3.1 86.6 9.4L168 90.7l53.1-53.1c28.1-28.1 73.7-28.1 101.8 0L474.3 189.1c28.1 28.1 28.1 73.7 0 101.8L283.9 481.4c-37.5 37.5-98.3 37.5-135.8 0L30.6 363.9c-37.5-37.5-37.5-98.3 0-135.8L122.7 136 41.4 54.6c-12.5-12.5-12.5-32.8 0-45.3zm176 221.3L168 181.3 75.9 273.4c-4.2 4.2-7 9.3-8.4 14.6H386.7l42.3-42.3c3.1-3.1 3.1-8.2 0-11.3L277.7 82.9c-3.1-3.1-8.2-3.1-11.3 0L213.3 136l49.4 49.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0zM512 512c-35.3 0-64-28.7-64-64c0-25.2 32.6-79.6 51.2-108.7c6-9.4 19.5-9.4 25.5 0C543.4 368.4 576 422.8 576 448c0 35.3-28.7 64-64 64z"]},H={prefix:"fas",iconName:"arrows-to-circle",icon:[640,512,[],"e4bd","M9.4 9.4C21.9-3.1 42.1-3.1 54.6 9.4L160 114.7V96c0-17.7 14.3-32 32-32s32 14.3 32 32v96c0 4.3-.9 8.5-2.4 12.2c-1.6 3.7-3.8 7.3-6.9 10.3l-.1 .1c-3.1 3-6.6 5.3-10.3 6.9c-3.8 1.6-7.9 2.4-12.2 2.4H96c-17.7 0-32-14.3-32-32s14.3-32 32-32h18.7L9.4 54.6C-3.1 42.1-3.1 21.9 9.4 9.4zM256 256a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM114.7 352H96c-17.7 0-32-14.3-32-32s14.3-32 32-32h96 0l.1 0c8.8 0 16.7 3.6 22.5 9.3l.1 .1c3 3.1 5.3 6.6 6.9 10.3c1.6 3.8 2.4 7.9 2.4 12.2v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V397.3L54.6 502.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L114.7 352zM416 96c0-17.7 14.3-32 32-32s32 14.3 32 32v18.7L585.4 9.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L525.3 160H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H448c-8.8 0-16.8-3.6-22.6-9.3l-.1-.1c-3-3.1-5.3-6.6-6.9-10.3s-2.4-7.8-2.4-12.2l0-.1v0V96zM525.3 352L630.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12Line truncated
!function(c){"use strict";const l="fas",a={prefix:"fas",iconName:"0",icon:[320,512,[],"30","M0 192C0 103.6 71.6 32 160 32s160 71.6 160 160l0 128c0 88.4-71.6 160-160 160S0 408.4 0 320L0 192zM160 96c-53 0-96 43-96 96l0 128c0 53 43 96 96 96s96-43 96-96l0-128c0-53-43-96-96-96z"]},e={prefix:"fas",iconName:"1",icon:[256,512,[],"31","M160 64c0-11.8-6.5-22.6-16.9-28.2s-23-5-32.8 1.6l-96 64C-.5 111.2-4.4 131 5.4 145.8s29.7 18.7 44.4 8.9L96 123.8 96 416l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l96 0 96 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-64 0 0-352z"]},s={prefix:"fas",iconName:"2",icon:[320,512,[],"32","M142.9 96c-21.5 0-42.2 8.5-57.4 23.8L54.6 150.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L40.2 74.5C67.5 47.3 104.4 32 142.9 32C223 32 288 97 288 177.1c0 38.5-15.3 75.4-42.5 102.6L109.3 416 288 416c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 480c-12.9 0-24.6-7.8-29.6-19.8s-2.2-25.7 6.9-34.9L200.2 234.5c15.2-15.2 23.8-35.9 23.8-57.4c0-44.8-36.3-81.1-81.1-81.1z"]},f={prefix:"fas",iconName:"3",icon:[320,512,[],"33","M0 64C0 46.3 14.3 32 32 32l240 0c13.2 0 25 8.1 29.8 20.4s1.5 26.3-8.2 35.2L162.3 208l21.7 0c75.1 0 136 60.9 136 136s-60.9 136-136 136l-78.6 0C63 480 24.2 456 5.3 418.1l-1.9-3.8c-7.9-15.8-1.5-35 14.3-42.9s35-1.5 42.9 14.3l1.9 3.8c8.1 16.3 24.8 26.5 42.9 26.5l78.6 0c39.8 0 72-32.2 72-72s-32.2-72-72-72L80 272c-13.2 0-25-8.1-29.8-20.4s-1.5-26.3 8.2-35.2L189.7 96 32 96C14.3 96 0 81.7 0 64z"]},i={prefix:"fas",iconName:"4",icon:[384,512,[],"34","M189 77.6c7.5-16 .7-35.1-15.3-42.6s-35.1-.7-42.6 15.3L3 322.4c-4.7 9.9-3.9 21.5 1.9 30.8S21 368 32 368l224 0 0 80c0 17.7 14.3 32 32 32s32-14.3 32-32l0-80 32 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-32 0 0-144c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L82.4 304 189 77.6z"]},o={prefix:"fas",iconName:"5",icon:[320,512,[],"35","M32.5 58.3C35.3 43.1 48.5 32 64 32l192 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L90.7 96 70.3 208 184 208c75.1 0 136 60.9 136 136s-60.9 136-136 136l-83.5 0c-39.4 0-75.4-22.3-93-57.5l-4.1-8.2c-7.9-15.8-1.5-35 14.3-42.9s35-1.5 42.9 14.3l4.1 8.2c6.8 13.6 20.6 22.1 35.8 22.1l83.5 0c39.8 0 72-32.2 72-72s-32.2-72-72-72L32 272c-9.5 0-18.5-4.2-24.6-11.5s-8.6-16.9-6.9-26.2l32-176z"]},n={prefix:"fas",iconName:"6",icon:[320,512,[],"36","M232.4 84.7c11.4-13.5 9.7-33.7-3.8-45.1s-33.7-9.7-45.1 3.8L38.6 214.7C14.7 242.9 1.1 278.4 .1 315.2c0 1.4-.1 2.9-.1 4.3l0 .5c0 88.4 71.6 160 160 160s160-71.6 160-160c0-85.5-67.1-155.4-151.5-159.8l63.9-75.6zM256 320A96 96 0 1 1 64 320a96 96 0 1 1 192 0z"]},r={prefix:"fas",iconName:"7",icon:[320,512,[],"37","M0 64C0 46.3 14.3 32 32 32l256 0c11.5 0 22 6.1 27.7 16.1s5.7 22.2-.1 32.1l-224 384c-8.9 15.3-28.5 20.4-43.8 11.5s-20.4-28.5-11.5-43.8L232.3 96 32 96C14.3 96 0 81.7 0 64z"]},t={prefix:"fas",iconName:"8",icon:[320,512,[],"38","M304 160c0-70.7-57.3-128-128-128l-32 0C73.3 32 16 89.3 16 160c0 34.6 13.7 66 36 89C20.5 272.3 0 309.8 0 352c0 70.7 57.3 128 128 128l64 0c70.7 0 128-57.3 128-128c0-42.2-20.5-79.7-52-103c22.3-23 36-54.4 36-89zM176.1 288l15.9 0c35.3 0 64 28.7 64 64s-28.7 64-64 64l-64 0c-35.3 0-64-28.7-64-64s28.7-64 64-64l15.9 0c0 0 .1 0 .1 0l32 0c0 0 .1 0 .1 0zm0-64c0 0 0 0 0 0l-32 0c0 0 0 0 0 0c-35.3 0-64-28.7-64-64c0-35.3 28.7-64 64-64l32 0c35.3 0 64 28.7 64 64c0 35.3-28.6 64-64 64z"]},z={prefix:"fas",iconName:"9",icon:[320,512,[],"39","M64 192a96 96 0 1 0 192 0A96 96 0 1 0 64 192zm87.5 159.8C67.1 347.4 0 277.5 0 192C0 103.6 71.6 32 160 32s160 71.6 160 160c0 2.6-.1 5.3-.2 7.9c-1.7 35.7-15.2 70-38.4 97.4l-145 171.4c-11.4 13.5-31.6 15.2-45.1 3.8s-15.2-31.6-3.8-45.1l63.9-75.6z"]},m={prefix:"fas",iconName:"fill-drip",icon:[576,512,[],"f576","M41.4 9.4C53.9-3.1 74.1-3.1 86.6 9.4L168 90.7l53.1-53.1c28.1-28.1 73.7-28.1 101.8 0L474.3 189.1c28.1 28.1 28.1 73.7 0 101.8L283.9 481.4c-37.5 37.5-98.3 37.5-135.8 0L30.6 363.9c-37.5-37.5-37.5-98.3 0-135.8L122.7 136 41.4 54.6c-12.5-12.5-12.5-32.8 0-45.3zm176 221.3L168 181.3 75.9 273.4c-4.2 4.2-7 9.3-8.4 14.6l319.2 0 42.3-42.3c3.1-3.1 3.1-8.2 0-11.3L277.7 82.9c-3.1-3.1-8.2-3.1-11.3 0L213.3 136l49.4 49.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0zM512 512c-35.3 0-64-28.7-64-64c0-25.2 32.6-79.6 51.2-108.7c6-9.4 19.5-9.4 25.5 0C543.4 368.4 576 422.8 576 448c0 35.3-28.7 64-64 64z"]},L={prefix:"fas",iconName:"arrows-to-circle",icon:[640,512,[],"e4bd","M9.4 9.4C21.9-3.1 42.1-3.1 54.6 9.4L160 114.7 160 96c0-17.7 14.3-32 32-32s32 14.3 32 32l0 96c0 4.3-.9 8.5-2.4 12.2c-1.6 3.7-3.8 7.3-6.9 10.3l-.1 .1c-3.1 3-6.6 5.3-10.3 6.9c-3.8 1.6-7.9 2.4-12.2 2.4l-96 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l18.7 0L9.4 54.6C-3.1 42.1-3.1 21.9 9.4 9.4zM256 256a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM114.7 352L96 352c-17.7 0-32-14.3-32-32s14.3-32 32-32l96 0s0 0 0 0l.1 0c8.8 0 16.7 3.6 22.5 9.3l.1 .1c3 3.1 5.3 6.6 6.9 10.3c1.6 3.8 2.4 7.9 2.4 12.2l0 96c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-18.7L54.6 502.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L114.7 352zM416 96c0-17.7 14.3-32 32-32s32 14.3 32 32l0 18.7L585.4 9.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L525.3 160l18.7 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-96 0c-8.8 0-16.Line truncated
/*!
* Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function e(c,l,a){return(l=function(c){var l=function(c,l){if("object"!=typeof c||!c)return c;var a=c[Symbol.toPrimitive];if(void 0!==a){var e=a.call(c,l||"default");if("object"!=typeof e)return e;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===l?String:Number)(c)}(c,"string");return"symbol"==typeof l?l:l+""}(l))in c?Object.defineProperty(c,l,{value:a,enumerable:!0,configurable:!0,writable:!0}):c[l]=a,c}function s(c,l){var a=Object.keys(c);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(c);l&&(e=e.filter((function(l){return Object.getOwnPropertyDescriptor(c,l).enumerable}))),a.push.apply(a,e)}return a}function f(c){for(var l=1;l<arguments.length;l++){var a=null!=arguments[l]?arguments[l]:{};l%2?s(Object(a),!0).forEach((function(l){e(c,l,a[l])})):Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(a)):s(Object(a)).forEach((function(l){Object.defineProperty(c,l,Object.getOwnPropertyDescriptor(a,l))}))}return c}a.r(l),a.d(l,{api:()=>xl,config:()=>Na,counter:()=>Va,dom:()=>va,findIconDefinition:()=>Ha,icon:()=>Aa,layer:()=>wa,library:()=>ba,noAuto:()=>ga,parse:()=>Sa,text:()=>ya,toHtml:()=>ka});const i=()=>{};let o={},n={},r=null,t={mark:i,measure:i};try{"undefined"!=typeof window&&(o=window),"undefined"!=typeof document&&(n=document),"undefined"!=typeof MutationObserver&&(r=MutationObserver),"undefined"!=typeof performance&&(t=performance)}catch(c){}const{userAgent:z=""}=o.navigator||{},m=o,L=n,M=r,C=t,p=(m.document,!!L.documentElement&&!!L.head&&"function"==typeof L.addEventListener&&"function"==typeof L.createElement),h=~z.indexOf("MSIE")||~z.indexOf("Trident/");var u={classic:{fa:"solid",fas:"solid","fa-solid":"solid",far:"regular","fa-regular":"regular",fal:"light","fa-light":"light",fat:"thin","fa-thin":"thin",fab:"brands","fa-brands":"brands"},duotone:{fa:"solid",fad:"solid","fa-solid":"solid","fa-duotone":"solid",fadr:"regular","fa-regular":"regular",fadl:"light","fa-light":"light",fadt:"thin","fa-thin":"thin"},sharp:{fa:"solid",fass:"solid","fa-solid":"solid",fasr:"regular","fa-regular":"regular",fasl:"light","fa-light":"light",fast:"thin","fa-thin":"thin"},"sharp-duotone":{fa:"solid",fasds:"solid","fa-solid":"solid",fasdr:"regular","fa-regular":"regular",fasdl:"light","fa-light":"light",fasdt:"thin","fa-thin":"thin"}},d=["fa-classic","fa-duotone","fa-sharp","fa-sharp-duotone"],x="classic",g="duotone",N=[x,g,"sharp","sharp-duotone"],b=new Map([["classic",{defaultShortPrefixId:"fas",defaultStyleId:"solid",styleIds:["solid","regular","light","thin","brands"],futureStyleIds:[],defaultFontWeight:900}],["sharp",{defaultShortPrefixId:"fass",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["duotone",{defaultShortPrefixId:"fad",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["sharp-duotone",{defaultShortPrefixId:"fasds",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}]]),v=["fak","fa-kit","fakd","fa-kit-duotone"],S={fak:"kit","fa-kit":"kit"},H={fakd:"kit-duotone","fa-kit-duotone":"kit-duotone"},k=["fak","fakd"],A={kit:"fak"},w={"kit-duotone":"fakd"},y={GROUP:"duotone-group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},V=["fak","fa-kit","fakd","fa-kit-duotone"],P={classic:{fab:"fa-brands",fad:"fa-duotone",fal:"fa-light",far:"fa-regular",fas:"fa-solid",fat:"fa-thin"},duotone:{fadr:"fa-regular",fadl:"fa-light",fadt:"fa-thin"},sharp:{fass:"fa-solid",fasr:"fa-regular",fasl:"fa-light",fast:"fa-thin"},"sharp-duotone":{fasds:"fa-solid",fasdr:"fa-regular",fasdl:"fa-light",fasdt:"fa-thin"}},F=["fa","fas","far","fal","fat","fad","fadr","fadl","fadt","fab","fass","fasr","fasl","fast","fasds","fasdr","fasdl","fasdt","fa-classic","fa-duotone","fa-sharp","fa-sharp-duotone","fa-solid","fa-regular","fa-light","fa-thin","fa-duotone","fa-brands"],B=[1,2,3,4,5,6,7,8,9,10],T=B.concat([11,12,13,14,15,16,17,18,19,20]),q=[...Object.keys({classic:["fas","far","fal","fat","fad"],duotone:["fadr","fadl","fadt"],sharp:["fass","fasr","fasl","fast"],"sharp-duotone":["fasds","fasdr","fasdl","fasdt"]}),"solid","regular","light","thin","duotone","brands","2xs","xs","sm","lg","xl","2xl","beat","border","fade","beat-fade","bounce","flip-both","flip-horizontal","flip-vertical","flip","fw","inverse","layers-counter","layers-text","layers","li","pull-left","pull-right","pulse","rotate-180","rotate-270","rotate-90","rotate-by","shake","spin-pulse","spin-reverse","spin","stack-1x","stack-2x","stack","ul",y.GROUP,y.SWAP_OPACITY,y.PRIMARY,y.SECONDARY].concat(B.map((c=>"".concat(c,"x")))).concat(T.map((c=>"w-".concat(c))));const D="___FONT_AWESOME___",R=16,G="fa",U="svg-inline--fa",E="data-fa-i2svg",W="data-fa-pseudo-element",O="data-fa-pseudo-element-pending",Z="data-prefix",I="data-icon",j="fontawesome-i2svg",K="async",X=["HTML","HEAD","STYLE","SCRIPT"Line truncated
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

@@ -0,0 +1,207 @@
var ac=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Df(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var CA={exports:{}},xf={},RA={exports:{}},Ye={};/**
* @license React
* react.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var Fu=Symbol.for("react.element"),dF=Symbol.for("react.portal"),pF=Symbol.for("react.fragment"),_F=Symbol.for("react.strict_mode"),fF=Symbol.for("react.profiler"),mF=Symbol.for("react.provider"),gF=Symbol.for("react.context"),hF=Symbol.for("react.forward_ref"),EF=Symbol.for("react.suspense"),SF=Symbol.for("react.memo"),TF=Symbol.for("react.lazy"),xR=Symbol.iterator;function bF(e){return e===null||typeof e!="object"?null:(e=xR&&e[xR]||e["@@iterator"],typeof e=="function"?e:null)}var NA={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},vA=Object.assign,OA={};function Rl(e,t,n){this.props=e,this.context=t,this.refs=OA,this.updater=n||NA}Rl.prototype.isReactComponent={};Rl.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};Rl.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function AA(){}AA.prototype=Rl.prototype;function qS(e,t,n){this.props=e,this.context=t,this.refs=OA,this.updater=n||NA}var KS=qS.prototype=new AA;KS.constructor=qS;vA(KS,Rl.prototype);KS.isPureReactComponent=!0;var MR=Array.isArray,IA=Object.prototype.hasOwnProperty,QS={current:null},wA={key:!0,ref:!0,__self:!0,__source:!0};function DA(e,t,n){var r,i={},o=null,s=null;if(t!=null)for(r in t.ref!==void 0&&(s=t.ref),t.key!==void 0&&(o=""+t.key),t)IA.call(t,r)&&!wA.hasOwnProperty(r)&&(i[r]=t[r]);var a=arguments.length-2;if(a===1)i.children=n;else if(1<a){for(var l=Array(a),u=0;u<a;u++)l[u]=arguments[u+2];i.children=l}if(e&&e.defaultProps)for(r in a=e.defaultProps,a)i[r]===void 0&&(i[r]=a[r]);return{$$typeof:Fu,type:e,key:o,ref:s,props:i,_owner:QS.current}}function yF(e,t){return{$$typeof:Fu,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function XS(e){return typeof e=="object"&&e!==null&&e.$$typeof===Fu}function CF(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var LR=/\/+/g;function Pg(e,t){return typeof e=="object"&&e!==null&&e.key!=null?CF(""+e.key):t.toString(36)}function zp(e,t,n,r,i){var o=typeof e;(o==="undefined"||o==="boolean")&&(e=null);var s=!1;if(e===null)s=!0;else switch(o){case"string":case"number":s=!0;break;case"object":switch(e.$$typeof){case Fu:case dF:s=!0}}if(s)return s=e,i=i(s),e=r===""?"."+Pg(s,0):r,MR(i)?(n="",e!=null&&(n=e.replace(LR,"$&/")+"/"),zp(i,t,n,"",function(u){return u})):i!=null&&(XS(i)&&(i=yF(i,n+(!i.key||s&&s.key===i.key?"":(""+i.key).replace(LR,"$&/")+"/")+e)),t.push(i)),1;if(s=0,r=r===""?".":r+":",MR(e))for(var a=0;a<e.length;a++){o=e[a];var l=r+Pg(o,a);s+=zp(o,t,n,l,i)}else if(l=bF(e),typeof l=="function")for(e=l.call(e),a=0;!(o=e.next()).done;)o=o.value,l=r+Pg(o,a++),s+=zp(o,t,n,l,i);else if(o==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return s}function jd(e,t,n){if(e==null)return e;var r=[],i=0;return zp(e,r,"","",function(o){return t.call(n,o,i++)}),r}function RF(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var Un={current:null},Vp={transition:null},NF={ReactCurrentDispatcher:Un,ReactCurrentBatchConfig:Vp,ReactCurrentOwner:QS};function xA(){throw Error("act(...) is not supported in production builds of React.")}Ye.Children={map:jd,forEach:function(e,t,n){jd(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return jd(e,function(){t++}),t},toArray:function(e){return jd(e,function(t){return t})||[]},only:function(e){if(!XS(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};Ye.Component=Rl;Ye.Fragment=pF;Ye.Profiler=fF;Ye.PureComponent=qS;Ye.StrictMode=_F;Ye.Suspense=EF;Ye.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=NF;Ye.act=xA;Ye.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var r=vA({},e.props),i=e.key,o=e.ref,s=e._owner;if(t!=null){if(t.ref!==void 0&&(o=t.ref,s=QS.current),t.key!==void 0&&(i=""+t.key),e.type&&e.type.defaultProps)var a=e.type.defaultProps;for(l in t)IA.call(t,l)&&!wA.hasOwnProperty(l)&&(r[l]=t[l]===void 0&&a!==void 0?a[l]:t[l])}var l=arguments.length-2;if(l===1)r.children=n;else if(1<l){a=Array(l);for(var u=0;u<l;u++)a[u]=arguments[u+2];r.children=a}return{$$typeof:Fu,type:e.type,key:i,ref:o,props:r,_owner:s}};Ye.createContext=function(e){return e={$$typeof:gF,_currentValue:e,_currentValue2:e,_threadCountLine truncated
* @license React
* react-jsx-runtime.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var vF=F,OF=Symbol.for("react.element"),AF=Symbol.for("react.fragment"),IF=Object.prototype.hasOwnProperty,wF=vF.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,DF={key:!0,ref:!0,__self:!0,__source:!0};function MA(e,t,n){var r,i={},o=null,s=null;n!==void 0&&(o=""+n),t.key!==void 0&&(o=""+t.key),t.ref!==void 0&&(s=t.ref);for(r in t)IF.call(t,r)&&!DF.hasOwnProperty(r)&&(i[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)i[r]===void 0&&(i[r]=t[r]);return{$$typeof:OF,type:e,key:o,ref:s,props:i,_owner:wF.current}}xf.Fragment=AF;xf.jsx=MA;xf.jsxs=MA;CA.exports=xf;var N=CA.exports,rE={},LA={exports:{}},mr={},kA={exports:{}},PA={};/**
* @license React
* scheduler.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/(function(e){function t(w,G){var W=w.length;w.push(G);e:for(;0<W;){var J=W-1>>>1,re=w[J];if(0<i(re,G))w[J]=G,w[W]=re,W=J;else break e}}function n(w){return w.length===0?null:w[0]}function r(w){if(w.length===0)return null;var G=w[0],W=w.pop();if(W!==G){w[0]=W;e:for(var J=0,re=w.length,De=re>>>1;J<De;){var He=2*(J+1)-1,be=w[He],Ie=He+1,it=w[Ie];if(0>i(be,W))Ie<re&&0>i(it,be)?(w[J]=it,w[Ie]=W,J=Ie):(w[J]=be,w[He]=W,J=He);else if(Ie<re&&0>i(it,W))w[J]=it,w[Ie]=W,J=Ie;else break e}}return G}function i(w,G){var W=w.sortIndex-G.sortIndex;return W!==0?W:w.id-G.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var s=Date,a=s.now();e.unstable_now=function(){return s.now()-a}}var l=[],u=[],p=1,_=null,f=3,g=!1,h=!1,E=!1,b=typeof setTimeout=="function"?setTimeout:null,T=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function R(w){for(var G=n(u);G!==null;){if(G.callback===null)r(u);else if(G.startTime<=w)r(u),G.sortIndex=G.expirationTime,t(l,G);else break;G=n(u)}}function A(w){if(E=!1,R(w),!h)if(n(l)!==null)h=!0,Ne(I);else{var G=n(u);G!==null&&x(A,G.startTime-w)}}function I(w,G){h=!1,E&&(E=!1,T($),$=-1),g=!0;var W=f;try{for(R(G),_=n(l);_!==null&&(!(_.expirationTime>G)||w&&!ae());){var J=_.callback;if(typeof J=="function"){_.callback=null,f=_.priorityLevel;var re=J(_.expirationTime<=G);G=e.unstable_now(),typeof re=="function"?_.callback=re:_===n(l)&&r(l),R(G)}else r(l);_=n(l)}if(_!==null)var De=!0;else{var He=n(u);He!==null&&x(A,He.startTime-G),De=!1}return De}finally{_=null,f=W,g=!1}}var M=!1,k=null,$=-1,z=5,H=-1;function ae(){return!(e.unstable_now()-H<z)}function fe(){if(k!==null){var w=e.unstable_now();H=w;var G=!0;try{G=k(!0,w)}finally{G?de():(M=!1,k=null)}}else M=!1}var de;if(typeof y=="function")de=function(){y(fe)};else if(typeof MessageChannel<"u"){var le=new MessageChannel,ge=le.port2;le.port1.onmessage=fe,de=function(){ge.postMessage(null)}}else de=function(){b(fe,0)};function Ne(w){k=w,M||(M=!0,de())}function x(w,G){$=b(function(){w(e.unstable_now())},G)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(w){w.callback=null},e.unstable_continueExecution=function(){h||g||(h=!0,Ne(I))},e.unstable_forceFrameRate=function(w){0>w||125<w?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):z=0<w?Math.floor(1e3/w):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_getFirstCallbackNode=function(){return n(l)},e.unstable_next=function(w){switch(f){case 1:case 2:case 3:var G=3;break;default:G=f}var W=f;f=G;try{return w()}finally{f=W}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(w,G){switch(w){case 1:case 2:case 3:case 4:case 5:break;default:w=3}var W=f;f=w;try{return G()}finally{f=W}},e.unstable_scheduleCallback=function(w,G,W){var J=e.unstable_now();switch(typeof W=="object"&&W!==null?(W=W.delay,W=typeof W=="number"&&0<W?J+W:J):W=J,w){case 1:var re=-1;break;case 2:re=250;break;case 5:re=1073741823;break;case 4:re=1e4;break;default:re=5e3}return re=W+re,w={id:p++,callback:G,priorityLevel:w,startTime:W,expirationTime:re,sortIndex:-1},W>J?(w.sortIndex=W,t(u,w),n(l)===null&&w===n(u)&&(E?(T($),$=-1):E=!0,x(A,W-J))):(w.sortIndex=re,t(l,w),h||g||(h=!0,Ne(I))),w},e.unstable_shouldYield=ae,e.unstable_wrapCallback=function(w){var G=f;return function(){var W=f;f=G;try{return w.apply(this,arguments)}finally{f=W}}}})(PA);kA.exports=PA;var xF=kA.exports;/**
* @license React
* react-dom.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var MF=F,fr=xF;function te(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var UA=new Set,eu={};function ra(e,t){ll(e,t),ll(e+"Capture",t)}function ll(e,t){for(eu[e]=t,e=0;e<t.length;e++)UA.add(t[e])}var Qi=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),iE=Object.prototype.hasOwnProperty,LF=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,kR={},PR={};function kF(e){return iE.call(PR,e)?!0:iE.call(kR,e)?!1:LF.test(e)?PR[e]=!0:(kR[e]=!0,!1)}function PF(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function UF(e,t,n,r){if(t===null||typeof t>"u"||PF(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Bn(e,t,n,r,i,o,s){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=s}var ln={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){ln[e]=new Bn(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];ln[t]=new Bn(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){ln[e]=new Bn(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){ln[e]=new Bn(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){ln[e]=new Bn(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){ln[e]=new Bn(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){ln[e]=new Bn(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){ln[e]=new Bn(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){ln[e]=new Bn(e,5,!1,e.toLowerCase(),null,!1,!1)});var jS=/[\-:]([a-z])/g;function ZS(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(jS,ZS);ln[t]=new Bn(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(jS,ZS);ln[t]=new Bn(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(jS,ZS);ln[t]=new Bn(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){ln[e]=new Bn(e,1,!1,e.toLowerCase(),null,!1,!1)});ln.xlinkHref=new Bn("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){ln[e]=new Bn(e,1,!1,e.toLowerCase(),null,!0,!0)});function JS(e,t,n,r){var i=ln.hasOwnProperty(t)?ln[t]:null;(i!==null?i.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!== Line truncated
`+Ug+e}var Bg=!1;function Fg(e,t){if(!e||Bg)return"";Bg=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(u){var r=u}Reflect.construct(e,[],t)}else{try{t.call()}catch(u){r=u}e.call(t.prototype)}else{try{throw Error()}catch(u){r=u}e()}}catch(u){if(u&&r&&typeof u.stack=="string"){for(var i=u.stack.split(`
`),o=r.stack.split(`
`),s=i.length-1,a=o.length-1;1<=s&&0<=a&&i[s]!==o[a];)a--;for(;1<=s&&0<=a;s--,a--)if(i[s]!==o[a]){if(s!==1||a!==1)do if(s--,a--,0>a||i[s]!==o[a]){var l=`
`+i[s].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}while(1<=s&&0<=a);break}}}finally{Bg=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Rc(e):""}function BF(e){switch(e.tag){case 5:return Rc(e.type);case 16:return Rc("Lazy");case 13:return Rc("Suspense");case 19:return Rc("SuspenseList");case 0:case 2:case 15:return e=Fg(e.type,!1),e;case 11:return e=Fg(e.type.render,!1),e;case 1:return e=Fg(e.type,!0),e;default:return""}}function lE(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case ka:return"Fragment";case La:return"Portal";case oE:return"Profiler";case eT:return"StrictMode";case sE:return"Suspense";case aE:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case FA:return(e.displayName||"Context")+".Consumer";case BA:return(e._context.displayName||"Context")+".Provider";case tT:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case nT:return t=e.displayName||null,t!==null?t:lE(e.type)||"Memo";case To:t=e._payload,e=e._init;try{return lE(e(t))}catch{}}return null}function FF(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return lE(t);case 8:return t===eT?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function jo(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function YA(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function GF(e){var t=YA(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(s){r=""+s,o.call(this,s)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(s){r=""+s},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Jd(e){e._valueTracker||(e._valueTracker=GF(e))}function HA(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=YA(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function p_(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function cE(e,t){var n=t.checked;return vt({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function BR(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=jo(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function $A(e,t){t=t.checked,t!=null&&JS(e,"checked",t,!1)}function uE(e,t){$A(e,t);var n=jo(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?dE(e,t.type,n):t.hasOwnProperty("defaultValue")&&dE(e,t.type,jo(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function FR(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function dE(e,t,n){(t!=="number"||p_(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Nc=Array.isArray;function Ka(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t["$"+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty("$"+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=""+jo(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function pE(e,t){if(t.dan Line truncated
`).replace(XG,"")}function ap(e,t,n){if(t=lN(t),lN(e)!==t&&n)throw Error(te(425))}function T_(){}var NE=null,vE=null;function OE(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var AE=typeof setTimeout=="function"?setTimeout:void 0,jG=typeof clearTimeout=="function"?clearTimeout:void 0,cN=typeof Promise=="function"?Promise:void 0,ZG=typeof queueMicrotask=="function"?queueMicrotask:typeof cN<"u"?function(e){return cN.resolve(null).then(e).catch(JG)}:AE;function JG(e){setTimeout(function(){throw e})}function Zg(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n==="/$"){if(r===0){e.removeChild(i),ou(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=i}while(n);ou(t)}function Ho(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function uN(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var vl=Math.random().toString(36).slice(2),gi="__reactFiber$"+vl,uu="__reactProps$"+vl,Xi="__reactContainer$"+vl,IE="__reactEvents$"+vl,eY="__reactListeners$"+vl,tY="__reactHandles$"+vl;function ws(e){var t=e[gi];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Xi]||n[gi]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=uN(e);e!==null;){if(n=e[gi])return n;e=uN(e)}return t}e=n,n=e.parentNode}return null}function Hu(e){return e=e[gi]||e[Xi],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Fa(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(te(33))}function Uf(e){return e[uu]||null}var wE=[],Ga=-1;function ss(e){return{current:e}}function gt(e){0>Ga||(e.current=wE[Ga],wE[Ga]=null,Ga--)}function ct(e,t){Ga++,wE[Ga]=e.current,e.current=t}var Zo={},Sn=ss(Zo),Xn=ss(!1),Ws=Zo;function cl(e,t){var n=e.type.contextTypes;if(!n)return Zo;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},o;for(o in n)i[o]=t[o];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function jn(e){return e=e.childContextTypes,e!=null}function b_(){gt(Xn),gt(Sn)}function dN(e,t,n){if(Sn.current!==Zo)throw Error(te(168));ct(Sn,t),ct(Xn,n)}function DI(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(te(108,FF(e)||"Unknown",i));return vt({},n,r)}function y_(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Zo,Ws=Sn.current,ct(Sn,e),ct(Xn,Xn.current),!0}function pN(e,t,n){var r=e.stateNode;if(!r)throw Error(te(169));n?(e=DI(e,t,Ws),r.__reactInternalMemoizedMergedChildContext=e,gt(Xn),gt(Sn),ct(Sn,e)):gt(Xn),ct(Xn,n)}var Yi=null,Bf=!1,Jg=!1;function xI(e){Yi===null?Yi=[e]:Yi.push(e)}function nY(e){Bf=!0,xI(e)}function as(){if(!Jg&&Yi!==null){Jg=!0;var e=0,t=et;try{var n=Yi;for(et=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}Yi=null,Bf=!1}catch(i){throw Yi!==null&&(Yi=Yi.slice(e+1)),rI(iT,as),i}finally{et=t,Jg=!1}}return null}var Ya=[],Ha=0,C_=null,R_=0,wr=[],Dr=0,qs=null,$i=1,zi="";function Rs(e,t){Ya[Ha++]=R_,Ya[Ha++]=C_,C_=e,R_=t}function MI(e,t,n){wr[Dr++]=$i,wr[Dr++]=zi,wr[Dr++]=qs,qs=e;var r=$i;e=zi;var i=32-Zr(r)-1;r&=~(1<<i),n+=1;var o=32-Zr(t)+i;if(30<o){var s=i-i%5;o=(r&(1<<s)-1).toString(32),r>>=s,i-=s,$i=1<<32-Zr(t)+i|n<<i|r,zi=o+e}else $i=1<<o|n<<i|r,zi=e}function _T(e){e.return!==null&&(Rs(e,1),MI(e,1,0))}function fT(e){for(;e===C_;)C_=Ya[--Ha],Ya[Ha]=null,R_=Ya[--Ha],Ya[Ha]=null;for(;e===qs;)qs=wr[--Dr],wr[Dr]=null,zi=wr[--Dr],wr[Dr]=null,$i=wr[--Dr],wr[Dr]=null}var _r=null,dr=null,Tt=!1,Qr=null;function LI(e,t){var n=Mr(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function _N(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,_r=e,dr=Ho(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,_r=e,dr=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=qs!==null?{id:$i,overflow:zi}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=Mr(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,_r=e,dr=null,!0):!1;default:return!1}}function DE(e){return(e.mode&1)!==0&&(e.flags&128)===0}function xE(e){if(Tt){var t=dr;if(t){var n=t;if(!_N(e,t)){if(DE(e))throw Error(te(418));t=Ho(n.nextSibling);var r=_r;t&&_N(e,t)?LI(r,n):(e.flags=e.flags&-4097|2,Tt=!1,_r=e)}}else{if(DE(e))throw Error(te(418));e.flags=e.flags&-4097|2,Tt=!1,_r=e}}}function fN(e){ Line truncated
Error generating stack: `+o.message+`
`+o.stack}return{value:e,source:t,stack:i,digest:null}}function ih(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function PE(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var dY=typeof WeakMap=="function"?WeakMap:Map;function aw(e,t,n){n=qi(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){x_||(x_=!0,WE=r),PE(e,t)},n}function lw(e,t,n){n=qi(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var i=t.value;n.payload=function(){return r(i)},n.callback=function(){PE(e,t)}}var o=e.stateNode;return o!==null&&typeof o.componentDidCatch=="function"&&(n.callback=function(){PE(e,t),typeof r!="function"&&(zo===null?zo=new Set([this]):zo.add(this));var s=t.stack;this.componentDidCatch(t.value,{componentStack:s!==null?s:""})}),n}function yN(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new dY;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(i.add(n),e=NY.bind(null,e,t,n),t.then(e,e))}function CN(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function RN(e,t,n,r,i){return e.mode&1?(e.flags|=65536,e.lanes=i,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=qi(-1,1),t.tag=2,$o(n,t,1))),n.lanes|=1),e)}var pY=eo.ReactCurrentOwner,Qn=!1;function Dn(e,t,n,r){t.child=e===null?UI(t,null,n,r):dl(t,e.child,n,r)}function NN(e,t,n,r,i){n=n.render;var o=t.ref;return Za(t,i),r=NT(e,t,n,r,o,i),n=vT(),e!==null&&!Qn?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Zi(e,t,i)):(Tt&&n&&_T(t),t.flags|=1,Dn(e,t,r,i),t.child)}function vN(e,t,n,r,i){if(e===null){var o=n.type;return typeof o=="function"&&!PT(o)&&o.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=o,cw(e,t,o,r,i)):(e=t_(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(o=e.child,!(e.lanes&i)){var s=o.memoizedProps;if(n=n.compare,n=n!==null?n:au,n(s,r)&&e.ref===t.ref)return Zi(e,t,i)}return t.flags|=1,e=Wo(o,r),e.ref=t.ref,e.return=t,t.child=e}function cw(e,t,n,r,i){if(e!==null){var o=e.memoizedProps;if(au(o,r)&&e.ref===t.ref)if(Qn=!1,t.pendingProps=r=o,(e.lanes&i)!==0)e.flags&131072&&(Qn=!0);else return t.lanes=e.lanes,Zi(e,t,i)}return UE(e,t,n,r,i)}function uw(e,t,n){var r=t.pendingProps,i=r.children,o=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},ct(Va,cr),cr|=n;else{if(!(n&1073741824))return e=o!==null?o.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,ct(Va,cr),cr|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=o!==null?o.baseLanes:n,ct(Va,cr),cr|=r}else o!==null?(r=o.baseLanes|n,t.memoizedState=null):r=n,ct(Va,cr),cr|=r;return Dn(e,t,i,n),t.child}function dw(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function UE(e,t,n,r,i){var o=jn(n)?Ws:Sn.current;return o=cl(t,o),Za(t,i),n=NT(e,t,n,r,o,i),r=vT(),e!==null&&!Qn?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Zi(e,t,i)):(Tt&&r&&_T(t),t.flags|=1,Dn(e,t,n,i),t.child)}function ON(e,t,n,r,i){if(jn(n)){var o=!0;y_(t)}else o=!1;if(Za(t,i),t.stateNode===null)Zp(e,t),sw(t,n,r),kE(t,n,r,i),r=!0;else if(e===null){var s=t.stateNode,a=t.memoizedProps;s.props=a;var l=s.context,u=n.contextType;typeof u=="object"&&u!==null?u=Ur(u):(u=jn(n)?Ws:Sn.current,u=cl(t,u));var p=n.getDerivedStateFromProps,_=typeof p=="function"||typeof s.getSnapshotBeforeUpdate=="function";_||typeof s.UNSAFE_componentWillReceiveProps!="function"&&typeof s.componentWillReceiveProps!="function"||(a!==r||l!==u)&&bN(t,s,r,u),bo=!1;var f=t.memoizedState;s.state=f,O_(t,r,s,i),l=t.memoizedState,a!==r||f!==l||Xn.current||bo?(typeof p=="function"&&(LE(t,n,p,r),l=t.memoizedState),(a=bo||TN(t,n,a,r,f,l,u))?(_||typeof s.UNSAFE_componentWillMount!="function"&&typeof s.componentWillMount!="function"||(typeof s.componentWillMount=="function"&&s.componentWillMount(),typeof s.UNSAFE_componentWillMount=="function"&&s.UNSAFE_componentWillMount()),typeof s.componentDidMount=="function"&&(t.flags|=4194308)):(typeof s.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),s.props=r,s.state=l,s.context=u,r=a):(typeof s.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{s=t.stateNode,FI(e,t),a=t.memoizedProps,u=t.type===t.elementType?a:qr(t.type,a),s.props=u,_=t.pendingProps,f=s.context,l=n.contextType,typeof l=="object"&&l!==null?l=Ur(l):(l=jn(n)?Ws:Sn.current,l=cl(t,l));var g=n.getDerivedStateFromProps;(p=typeof g=="function"||typeof s.getSnapshotBeforeUpdate=="function")||typeof s.UNSAFE_componentWillReceiveProps!="function"&&typeof s.componentWillReceiveProps!="function"||(a!==_||f!==l)&&bN(t,s,r,l),bo=!1,f=t.memoizedState,s.state=f,O_(t,r,s,i);var h=t.memoizedS Line truncated
`)}}js.empty=new js(!0);class HY{constructor(t,n){this.string=t,this.nodeTypes=n,this.inline=null,this.pos=0,this.tokens=t.split(/\s*(?=\b|\W|$)/),this.tokens[this.tokens.length-1]==""&&this.tokens.pop(),this.tokens[0]==""&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(t){return this.next==t&&(this.pos++||!0)}err(t){throw new SyntaxError(t+" (in content expression '"+this.string+"')")}}function $w(e){let t=[];do t.push($Y(e));while(e.eat("|"));return t.length==1?t[0]:{type:"choice",exprs:t}}function $Y(e){let t=[];do t.push(zY(e));while(e.next&&e.next!=")"&&e.next!="|");return t.length==1?t[0]:{type:"seq",exprs:t}}function zY(e){let t=qY(e);for(;;)if(e.eat("+"))t={type:"plus",expr:t};else if(e.eat("*"))t={type:"star",expr:t};else if(e.eat("?"))t={type:"opt",expr:t};else if(e.eat("{"))t=VY(e,t);else break;return t}function HN(e){/\D/.test(e.next)&&e.err("Expected number, got '"+e.next+"'");let t=Number(e.next);return e.pos++,t}function VY(e,t){let n=HN(e),r=n;return e.eat(",")&&(e.next!="}"?r=HN(e):r=-1),e.eat("}")||e.err("Unclosed braced range"),{type:"range",min:n,max:r,expr:t}}function WY(e,t){let n=e.nodeTypes,r=n[t];if(r)return[r];let i=[];for(let o in n){let s=n[o];s.isInGroup(t)&&i.push(s)}return i.length==0&&e.err("No node type or group '"+t+"' found"),i}function qY(e){if(e.eat("(")){let t=$w(e);return e.eat(")")||e.err("Missing closing paren"),t}else if(/\W/.test(e.next))e.err("Unexpected token '"+e.next+"'");else{let t=WY(e,e.next).map(n=>(e.inline==null?e.inline=n.isInline:e.inline!=n.isInline&&e.err("Mixing inline and block content"),{type:"name",value:n}));return e.pos++,t.length==1?t[0]:{type:"choice",exprs:t}}}function KY(e){let t=[[]];return i(o(e,0),n()),t;function n(){return t.push([])-1}function r(s,a,l){let u={term:l,to:a};return t[s].push(u),u}function i(s,a){s.forEach(l=>l.to=a)}function o(s,a){if(s.type=="choice")return s.exprs.reduce((l,u)=>l.concat(o(u,a)),[]);if(s.type=="seq")for(let l=0;;l++){let u=o(s.exprs[l],a);if(l==s.exprs.length-1)return u;i(u,a=n())}else if(s.type=="star"){let l=n();return r(a,l),i(o(s.expr,l),l),[r(l)]}else if(s.type=="plus"){let l=n();return i(o(s.expr,a),l),i(o(s.expr,l),l),[r(l)]}else{if(s.type=="opt")return[r(a)].concat(o(s.expr,a));if(s.type=="range"){let l=a;for(let u=0;u<s.min;u++){let p=n();i(o(s.expr,l),p),l=p}if(s.max==-1)i(o(s.expr,l),l);else for(let u=s.min;u<s.max;u++){let p=n();r(l,p),i(o(s.expr,l),p),l=p}return[r(l)]}else{if(s.type=="name")return[r(a,void 0,s.value)];throw new Error("Unknown expr type")}}}}function zw(e,t){return t-e}function $N(e,t){let n=[];return r(t),n.sort(zw);function r(i){let o=e[i];if(o.length==1&&!o[0].term)return r(o[0].to);n.push(i);for(let s=0;s<o.length;s++){let{term:a,to:l}=o[s];!a&&n.indexOf(l)==-1&&r(l)}}}function QY(e){let t=Object.create(null);return n($N(e,0));function n(r){let i=[];r.forEach(s=>{e[s].forEach(({term:a,to:l})=>{if(!a)return;let u;for(let p=0;p<i.length;p++)i[p][0]==a&&(u=i[p][1]);$N(e,l).forEach(p=>{u||i.push([a,u=[]]),u.indexOf(p)==-1&&u.push(p)})})});let o=t[r.join(",")]=new js(r.indexOf(e.length-1)>-1);for(let s=0;s<i.length;s++){let a=i[s][1].sort(zw);o.next.push({type:i[s][0],next:t[a.join(",")]||n(a)})}return o}}function XY(e,t){for(let n=0,r=[e];n<r.length;n++){let i=r[n],o=!i.validEnd,s=[];for(let a=0;a<i.next.length;a++){let{type:l,next:u}=i.next[a];s.push(l.name),o&&!(l.isText||l.hasRequiredAttrs())&&(o=!1),r.indexOf(u)==-1&&r.push(u)}o&&t.err("Only non-generatable nodes ("+s.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function Vw(e){let t=Object.create(null);for(let n in e){let r=e[n];if(!r.hasDefault)return null;t[n]=r.default}return t}function Ww(e,t){let n=Object.create(null);for(let r in e){let i=t&&t[r];if(i===void 0){let o=e[r];if(o.hasDefault)i=o.default;else throw new RangeError("No value supplied for attribute "+r)}n[r]=i}return n}function qw(e,t,n,r){for(let i in t)if(!(i in e))throw new RangeError(`Unsupported attribute ${i} for ${n} of type ${i}`);for(let i in e){let o=e[i];o.validate&&o.validate(t[i])}}function Kw(e,t){let n=Object.create(null);if(t)for(let r in t)n[r]=new ZY(e,r,t[r]);return n}let zN=class Qw{constructor(t,n,r){this.name=t,this.schema=n,this.spec=r,this.markSet=null,this.groups=r.group?r.group.split(" "):[],this.attrs=Kw(t,r.attrs),this.defaultAttrs=Vw(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(r.inline||t=="text"),this.isText=t=="text"}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==js.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}isInGroup(t){return this.groups.indexOf(t)>-1}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let t in this.attrs)if(this.attrs[t].isRequired)return!0;return!1}compatibleContent(t){return this==t||this.contentMatch.compatible(t.contentMatch)}computeAttrs(t){return!t&&this.defaultA Line truncated
`);else if(r=r.replace(/[ \t\r\n\u000c]+/g," "),/^[ \t\r\n\u000c]/.test(r)&&this.open==this.nodes.length-1){let s=i.content[i.content.length-1],a=t.previousSibling;(!s||a&&a.nodeName=="BR"||s.isText&&/[ \t\r\n\u000c]$/.test(s.text))&&(r=r.slice(1))}r&&this.insertNode(this.parser.schema.text(r),n),this.findInText(t)}else this.findInside(t)}addElement(t,n,r){let i=this.localPreserveWS,o=this.top;(t.tagName=="PRE"||/pre/.test(t.style&&t.style.whiteSpace))&&(this.localPreserveWS=!0);let s=t.nodeName.toLowerCase(),a;Zw.hasOwnProperty(s)&&this.parser.normalizeLists&&nH(t);let l=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(a=this.parser.matchTag(t,this,r));e:if(l?l.ignore:tH.hasOwnProperty(s))this.findInside(t),this.ignoreFallback(t,n);else if(!l||l.skip||l.closeParent){l&&l.closeParent?this.open=Math.max(0,this.open-1):l&&l.skip.nodeType&&(t=l.skip);let u,p=this.needsBlock;if(jw.hasOwnProperty(s))o.content.length&&o.content[0].isInline&&this.open&&(this.open--,o=this.top),u=!0,o.type||(this.needsBlock=!0);else if(!t.firstChild){this.leafFallback(t,n);break e}let _=l&&l.skip?n:this.readStyles(t,n);_&&this.addAll(t,_),u&&this.sync(o),this.needsBlock=p}else{let u=this.readStyles(t,n);u&&this.addElementByRule(t,l,u,l.consuming===!1?a:void 0)}this.localPreserveWS=i}leafFallback(t,n){t.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(t.ownerDocument.createTextNode(`
`),n)}ignoreFallback(t,n){t.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent)&&this.findPlace(this.parser.schema.text("-"),n)}readStyles(t,n){let r=t.style;if(r&&r.length)for(let i=0;i<this.parser.matchedStyles.length;i++){let o=this.parser.matchedStyles[i],s=r.getPropertyValue(o);if(s)for(let a=void 0;;){let l=this.parser.matchStyle(o,s,this,a);if(!l)break;if(l.ignore)return null;if(l.clearMark?n=n.filter(u=>!l.clearMark(u)):n=n.concat(this.parser.schema.marks[l.mark].create(l.attrs)),l.consuming===!1)a=l;else break}}return n}addElementByRule(t,n,r,i){let o,s;if(n.node)if(s=this.parser.schema.nodes[n.node],s.isLeaf)this.insertNode(s.create(n.attrs),r)||this.leafFallback(t,r);else{let l=this.enter(s,n.attrs||null,r,n.preserveWhitespace);l&&(o=!0,r=l)}else{let l=this.parser.schema.marks[n.mark];r=r.concat(l.create(n.attrs))}let a=this.top;if(s&&s.isLeaf)this.findInside(t);else if(i)this.addElement(t,r,i);else if(n.getContent)this.findInside(t),n.getContent(t,this.parser.schema).forEach(l=>this.insertNode(l,r));else{let l=t;typeof n.contentElement=="string"?l=t.querySelector(n.contentElement):typeof n.contentElement=="function"?l=n.contentElement(t):n.contentElement&&(l=n.contentElement),this.findAround(t,l,!0),this.addAll(l,r),this.findAround(t,l,!1)}o&&this.sync(a)&&this.open--}addAll(t,n,r,i){let o=r||0;for(let s=r?t.childNodes[r]:t.firstChild,a=i==null?null:t.childNodes[i];s!=a;s=s.nextSibling,++o)this.findAtPoint(t,o),this.addDOM(s,n);this.findAtPoint(t,o)}findPlace(t,n){let r,i;for(let o=this.open;o>=0;o--){let s=this.nodes[o],a=s.findWrapping(t);if(a&&(!r||r.length>a.length)&&(r=a,i=s,!a.length)||s.solid)break}if(!r)return null;this.sync(i);for(let o=0;o<r.length;o++)n=this.enterInner(r[o],null,n,!1);return n}insertNode(t,n){if(t.isInline&&this.needsBlock&&!this.top.type){let i=this.textblockFromContext();i&&(n=this.enterInner(i,null,n))}let r=this.findPlace(t,n);if(r){this.closeExtra();let i=this.top;i.match&&(i.match=i.match.matchType(t.type));let o=nt.none;for(let s of r.concat(t.marks))(i.type?i.type.allowsMarkType(s.type):QN(s.type,t.type))&&(o=s.addToSet(o));return i.content.push(t.mark(o)),!0}return!1}enter(t,n,r,i){let o=this.findPlace(t.create(n),r);return o&&(o=this.enterInner(t,n,r,!0,i)),o}enterInner(t,n,r,i=!1,o){this.closeExtra();let s=this.top;s.match=s.match&&s.match.matchType(t);let a=WN(t,o,s.options);s.options&zc&&s.content.length==0&&(a|=zc);let l=nt.none;return r=r.filter(u=>(s.type?s.type.allowsMarkType(u.type):QN(u.type,t))?(l=u.addToSet(l),!1):!0),this.nodes.push(new mp(t,n,l,i,null,a)),this.open++,r}closeExtra(t=!1){let n=this.nodes.length-1;if(n>this.open){for(;n>this.open;n--)this.nodes[n-1].content.push(this.nodes[n].finish(t));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(!!(this.isOpen||this.options.topOpen))}sync(t){for(let n=this.open;n>=0;n--){if(this.nodes[n]==t)return this.open=n,!0;this.localPreserveWS&&(this.nodes[n].options|=Eu)}return!1}get currentPos(){this.closeExtra();let t=0;for(let n=this.open;n>=0;n--){let r=this.nodes[n].content;for(let i=r.length-1;i>=0;i--)t+=r[i].nodeSize;n&&t++}return t}findAtPoint(t,n){if(this.find)for(let r=0;r<this.find.length;r++)this.find[r].node==t&&this.find[r].offset==n&&(this.find[r].pos=this.currentPos)}findInside(t){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].pos==null&&t.nodeType==1&&t.contains(this.find[n].node)&&(this.find[n].pos=this.currentPos)}findAround(t,n,r){if(t!=n&&this.find)for(let i=0;i<this.find.length;i++)this.find[i].pos==null&&t.nodeType==1&&t.contains(this.find[i].node)&&n.compareDocumentPosition(this.find[i].node)&(r?2:4)&&(this.find[i].pos=this.currentPos)}findInText(t){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==t&&(this.find[n].pos=this.currentPos-(t.nodeValue.length-this.find[n].offset))}matchesContext(t){if(t.indexOf("|")>-1)return t.split(/\s*\|\s*/).some(this.matchesContext,this);let n=t.split("/"),r=this.options.context,i=!this.isOpen&&(!r||r.parent.type==this.nodes[0].type),o=-(r?r.depth+1:0)+(i?0:1),s=(a,l)=>{for(;a>=0;a--){let u=n[a];if(u==""){if(a==n.length-1||a==0)continue;for(;l>=o;l--)if(s(a-1,l))return!0;return!1}else{let p=l>0||l==0&&i?this.nodes[l].type:r&&l>=o?r.node(l-o).type:null;if(!p||p.name!=u&&!p.isInGroup(u))return!1;l--}}return!0};return s(n.length-1,this.open)}textblockFromContext(){let t=this.options.context;if(t)for(let n=t.depth;n>=0;n--){let r=t.node(n).contentMatchAt(t.indexAfter(n)).defaultType;if(r&&r.isTextblock&&r.defaultAttrs)return r}for(let n in this.parser.schema.nodes){let r=this.parser.schema.nodes[n];if(r.isTextblock&&r.defaultAttrs)return r}}}function nH(e){for(let t=e.firstChild,n=null;t;t=t.nextSibling){let r=t.nodeType==1?t.nodeName.toLowerCase():null;r&&Zw.hasOwnProperty(r)&&n?(n.appendChild(t),t=n):r=="li"?n=t:r&&(n=null)}}function rH(e,t){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,t)}function Line truncated
`))}})}function gH(e,t,n){let r=e.resolve(t),i=r.index();return r.parent.canReplaceWith(i,i+1,n)}function hH(e,t,n,r,i){let o=e.doc.nodeAt(t);if(!o)throw new RangeError("No node at given position");n||(n=o.type);let s=n.create(r,null,i||o.marks);if(o.isLeaf)return e.replaceWith(t,t+o.nodeSize,s);if(!n.validContent(o.content))throw new RangeError("Invalid content for node type "+n.name);e.step(new Xt(t,t+o.nodeSize,t+1,t+o.nodeSize-1,new oe(j.from(s),0,0),1,!0))}function tl(e,t,n=1,r){let i=e.resolve(t),o=i.depth-n,s=r&&r[r.length-1]||i.parent;if(o<0||i.parent.type.spec.isolating||!i.parent.canReplace(i.index(),i.parent.childCount)||!s.type.validContent(i.parent.content.cutByIndex(i.index(),i.parent.childCount)))return!1;for(let u=i.depth-1,p=n-2;u>o;u--,p--){let _=i.node(u),f=i.index(u);if(_.type.spec.isolating)return!1;let g=_.content.cutByIndex(f,_.childCount),h=r&&r[p+1];h&&(g=g.replaceChild(0,h.type.create(h.attrs)));let E=r&&r[p]||_;if(!_.canReplace(f+1,_.childCount)||!E.type.validContent(g))return!1}let a=i.indexAfter(o),l=r&&r[0];return i.node(o).canReplaceWith(a,a,l?l.type:i.node(o+1).type)}function EH(e,t,n=1,r){let i=e.doc.resolve(t),o=j.empty,s=j.empty;for(let a=i.depth,l=i.depth-n,u=n-1;a>l;a--,u--){o=j.from(i.node(a).copy(o));let p=r&&r[u];s=j.from(p?p.type.create(p.attrs,s):i.node(a).copy(s))}e.step(new qt(t,t,new oe(o.append(s),n,n),!0))}function ls(e,t){let n=e.resolve(t),r=n.index();return sD(n.nodeBefore,n.nodeAfter)&&n.parent.canReplace(r,r+1)}function SH(e,t){t.content.size||e.type.compatibleContent(t.type);let n=e.contentMatchAt(e.childCount),{linebreakReplacement:r}=e.type.schema;for(let i=0;i<t.childCount;i++){let o=t.child(i),s=o.type==r?e.type.schema.nodes.text:o.type;if(n=n.matchType(s),!n||!e.type.allowsMarks(o.marks))return!1}return n.validEnd}function sD(e,t){return!!(e&&t&&!e.isLeaf&&SH(e,t))}function Qf(e,t,n=-1){let r=e.resolve(t);for(let i=r.depth;;i--){let o,s,a=r.index(i);if(i==r.depth?(o=r.nodeBefore,s=r.nodeAfter):n>0?(o=r.node(i+1),a++,s=r.node(i).maybeChild(a)):(o=r.node(i).maybeChild(a-1),s=r.node(i+1)),o&&!o.isTextblock&&sD(o,s)&&r.node(i).canReplace(a,a+1))return t;if(i==0)break;t=n<0?r.before(i):r.after(i)}}function TH(e,t,n){let r=null,{linebreakReplacement:i}=e.doc.type.schema,o=e.doc.resolve(t-n),s=o.node().type;if(i&&s.inlineContent){let p=s.whitespace=="pre",_=!!s.contentMatch.matchType(i);p&&!_?r=!1:!p&&_&&(r=!0)}let a=e.steps.length;if(r===!1){let p=e.doc.resolve(t+n);oD(e,p.node(),p.before(),a)}s.inlineContent&&HT(e,t+n-1,s,o.node().contentMatchAt(o.index()),r==null);let l=e.mapping.slice(a),u=l.map(t-n);if(e.step(new qt(u,l.map(t+n,-1),oe.empty,!0)),r===!0){let p=e.doc.resolve(u);iD(e,p.node(),p.before(),e.steps.length)}return e}function bH(e,t,n){let r=e.resolve(t);if(r.parent.canReplaceWith(r.index(),r.index(),n))return t;if(r.parentOffset==0)for(let i=r.depth-1;i>=0;i--){let o=r.index(i);if(r.node(i).canReplaceWith(o,o,n))return r.before(i+1);if(o>0)return null}if(r.parentOffset==r.parent.content.size)for(let i=r.depth-1;i>=0;i--){let o=r.indexAfter(i);if(r.node(i).canReplaceWith(o,o,n))return r.after(i+1);if(o<r.node(i).childCount)return null}return null}function yH(e,t,n){let r=e.resolve(t);if(!n.content.size)return t;let i=n.content;for(let o=0;o<n.openStart;o++)i=i.firstChild.content;for(let o=1;o<=(n.openStart==0&&n.size?2:1);o++)for(let s=r.depth;s>=0;s--){let a=s==r.depth?0:r.pos<=(r.start(s+1)+r.end(s+1))/2?-1:1,l=r.index(s)+(a>0?1:0),u=r.node(s),p=!1;if(o==1)p=u.canReplace(l,l,i);else{let _=u.contentMatchAt(l).findWrapping(i.firstChild.type);p=_&&u.canReplaceWith(l,l,_[0])}if(p)return a==0?r.pos:a<0?r.before(s+1):r.after(s+1)}return null}function Xf(e,t,n=t,r=oe.empty){if(t==n&&!r.size)return null;let i=e.resolve(t),o=e.resolve(n);return aD(i,o,r)?new qt(t,n,r):new CH(i,o,r).fit()}function aD(e,t,n){return!n.openStart&&!n.openEnd&&e.start()==t.start()&&e.parent.canReplace(e.index(),t.index(),n.content)}class CH{constructor(t,n,r){this.$from=t,this.$to=n,this.unplaced=r,this.frontier=[],this.placed=j.empty;for(let i=0;i<=t.depth;i++){let o=t.node(i);this.frontier.push({type:o.type,match:o.contentMatchAt(t.indexAfter(i))})}for(let i=t.depth;i>0;i--)this.placed=j.from(t.node(i).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let u=this.findFittable();u?this.placeNodes(u):this.openMore()||this.dropNode()}let t=this.mustMoveInline(),n=this.placed.size-this.depth-this.$from.depth,r=this.$from,i=this.close(t<0?this.$to:r.doc.resolve(t));if(!i)return null;let o=this.placed,s=r.depth,a=i.depth;for(;s&&a&&o.childCount==1;)o=o.firstChild.content,s--,a--;let l=new oe(o,s,a);return t>-1?new Xt(r.pos,t,this.$to.pos,this.$to.end(),l,n):l.size||r.pos!=this.$to.pos?new qt(r.pos,i.pos,l):null}findFittable(){let t=this.unplaced.openStart;for(let n=this.unplaced.content,r=0,i=this.unplaced.openEnd;r<t;r++){let o=n.firstChild;if(n.childCount>1&&(i=0),o.type.spec.isolating&&i<=r){t=r;break}n=o.content}for(let n=1;n<=2;n+ Line truncated
`),_&&h==g.nodeValue.length)for(let E=g,b;E;E=E.parentNode){if(b=E.nextSibling){b.nodeName=="BR"&&(a=l={node:b.parentNode,offset:on(b)+1});break}let T=E.pmViewDesc;if(T&&T.node&&T.node.isBlock)break}}else{let E=g.childNodes[h-1];_=E&&(E.nodeName=="BR"||E.contentEditable=="false")}}if(ri&&p.focusNode&&p.focusNode!=l.node&&p.focusNode.nodeType==1){let g=p.focusNode.childNodes[p.focusOffset];g&&g.contentEditable=="false"&&(i=!0)}if(!(i||_&&Ln)&&Zs(a.node,a.offset,p.anchorNode,p.anchorOffset)&&Zs(l.node,l.offset,p.focusNode,p.focusOffset))return;let f=!1;if((u.extend||t==n)&&!_){u.collapse(a.node,a.offset);try{t!=n&&u.extend(l.node,l.offset),f=!0}catch{}}if(!f){if(t>n){let h=a;a=l,l=h}let g=document.createRange();g.setEnd(l.node,l.offset),g.setStart(a.node,a.offset),u.removeAllRanges(),u.addRange(g)}}ignoreMutation(t){return!this.contentDOM&&t.type!="selection"}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(t,n){for(let r=0,i=0;i<this.children.length;i++){let o=this.children[i],s=r+o.size;if(r==s?t<=s&&n>=r:t<s&&n>r){let a=r+o.border,l=s-o.border;if(t>=a&&n<=l){this.dirty=t==r||n==s?Ms:_v,t==a&&n==l&&(o.contentLost||o.dom.parentNode!=this.contentDOM)?o.dirty=yi:o.markDirty(t-a,n-a);return}else o.dirty=o.dom==o.contentDOM&&o.dom.parentNode==this.contentDOM&&!o.children.length?Ms:yi}r=s}this.dirty=Ms}markParentsDirty(){let t=1;for(let n=this.parent;n;n=n.parent,t++){let r=t==1?Ms:_v;n.dirty<r&&(n.dirty=r)}}get domAtom(){return!1}get ignoreForCoords(){return!1}isText(t){return!1}}class yD extends qu{constructor(t,n,r,i){let o,s=n.type.toDOM;if(typeof s=="function"&&(s=s(r,()=>{if(!o)return i;if(o.parent)return o.parent.posBeforeChild(o)})),!n.type.spec.raw){if(s.nodeType!=1){let a=document.createElement("span");a.appendChild(s),s=a}s.contentEditable="false",s.classList.add("ProseMirror-widget")}super(t,[],s,null),this.widget=n,this.widget=n,o=this}matchesWidget(t){return this.dirty==Pr&&t.type.eq(this.widget.type)}parseRule(){return{ignore:!0}}stopEvent(t){let n=this.widget.spec.stopEvent;return n?n(t):!1}ignoreMutation(t){return t.type!="selection"||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom),super.destroy()}get domAtom(){return!0}get side(){return this.widget.type.side}}class n2 extends qu{constructor(t,n,r,i){super(t,[],n,null),this.textDOM=r,this.text=i}get size(){return this.text.length}localPosFromDOM(t,n){return t!=this.textDOM?this.posAtStart+(n?this.size:0):this.posAtStart+n}domFromPos(t){return{node:this.textDOM,offset:t}}ignoreMutation(t){return t.type==="characterData"&&t.target.nodeValue==t.oldValue}}class Js extends qu{constructor(t,n,r,i,o){super(t,[],r,i),this.mark=n,this.spec=o}static create(t,n,r,i){let o=i.nodeViews[n.type.name],s=o&&o(n,i,r);return(!s||!s.dom)&&(s=oa.renderSpec(document,n.type.spec.toDOM(n,r),null,n.attrs)),new Js(t,n,s.dom,s.contentDOM||s.dom,s)}parseRule(){return this.dirty&yi||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(t){return this.dirty!=yi&&this.mark.eq(t)}markDirty(t,n){if(super.markDirty(t,n),this.dirty!=Pr){let r=this.parent;for(;!r.node;)r=r.parent;r.dirty<this.dirty&&(r.dirty=this.dirty),this.dirty=Pr}}slice(t,n,r){let i=Js.create(this.parent,this.mark,!0,r),o=this.children,s=this.size;n<s&&(o=lS(o,n,s,r)),t>0&&(o=lS(o,0,t,r));for(let a=0;a<o.length;a++)o[a].parent=i;return i.children=o,i}ignoreMutation(t){return this.spec.ignoreMutation?this.spec.ignoreMutation(t):super.ignoreMutation(t)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}}class Qo extends qu{constructor(t,n,r,i,o,s,a,l,u){super(t,[],o,s),this.node=n,this.outerDeco=r,this.innerDeco=i,this.nodeDOM=a}static create(t,n,r,i,o,s){let a=o.nodeViews[n.type.name],l,u=a&&a(n,o,()=>{if(!l)return s;if(l.parent)return l.parent.posBeforeChild(l)},r,i),p=u&&u.dom,_=u&&u.contentDOM;if(n.isText){if(!p)p=document.createTextNode(n.text);else if(p.nodeType!=3)throw new RangeError("Text must be rendered as a DOM text node")}else p||({dom:p,contentDOM:_}=oa.renderSpec(document,n.type.spec.toDOM(n),null,n.attrs));!_&&!n.isText&&p.nodeName!="BR"&&(p.hasAttribute("contenteditable")||(p.contentEditable="false"),n.type.spec.draggable&&(p.draggable=!0));let f=p;return p=vD(p,r,n),u?l=new r2(t,n,r,i,p,_||null,f,u,o,s+1):n.isText?new Jf(t,n,r,i,p,f,o):new Qo(t,n,r,i,p,_||null,f,o,s+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let t={node:this.node.type.name,attrs:this.node.attrs};if(this.node.type.whitespace=="pre"&&(t.preserveWhitespace="full"),!this.contentDOM)t.getContent=()=>this.node.content;else if(!this.contentLost)t.contentElement=this.contentDOM;else{for(let n=this.children.length-1;n>=0;n--){let r=this.children[n];if(this.dom.contains(r.dom.parentNode)){t.contentElement=r.dom.parentNode;break}}t.contentElement||(t.getContent=()=>j.empty)}return t}matchesNode(t,n,r){return this.dirty==Pr&&t.eq(this. Line truncated
`);return{dom:l,text:f,slice:t}}function xD(e,t,n,r,i){let o=i.parent.type.spec.code,s,a;if(!n&&!t)return null;let l=t&&(r||o||!n);if(l){if(e.someProp("transformPastedText",f=>{t=f(t,o||r,e)}),o)return t?new oe(j.from(e.state.schema.text(t.replace(/\r\n?/g,`
`))),0,0):oe.empty;let _=e.someProp("clipboardTextParser",f=>f(t,i,r,e));if(_)a=_;else{let f=i.marks(),{schema:g}=e.state,h=oa.fromSchema(g);s=document.createElement("div"),t.split(/(?:\r\n?|\n)+/).forEach(E=>{let b=s.appendChild(document.createElement("p"));E&&b.appendChild(h.serializeNode(g.text(E,f)))})}}else e.someProp("transformPastedHTML",_=>{n=_(n,e)}),s=R2(n),Wu&&N2(s);let u=s&&s.querySelector("[data-pm-slice]"),p=u&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(u.getAttribute("data-pm-slice")||"");if(p&&p[3])for(let _=+p[3];_>0;_--){let f=s.firstChild;for(;f&&f.nodeType!=1;)f=f.nextSibling;if(!f)break;s=f}if(a||(a=(e.someProp("clipboardParser")||e.someProp("domParser")||$c.fromSchema(e.state.schema)).parseSlice(s,{preserveWhitespace:!!(l||p),context:i,ruleFromNode(f){return f.nodeName=="BR"&&!f.nextSibling&&f.parentNode&&!b2.test(f.parentNode.nodeName)?{ignore:!0}:null}})),p)a=v2(vv(a,+p[1],+p[2]),p[4]);else if(a=oe.maxOpen(y2(a.content,i),!0),a.openStart||a.openEnd){let _=0,f=0;for(let g=a.content.firstChild;_<a.openStart&&!g.type.spec.isolating;_++,g=g.firstChild);for(let g=a.content.lastChild;f<a.openEnd&&!g.type.spec.isolating;f++,g=g.lastChild);a=vv(a,_,f)}return e.someProp("transformPasted",_=>{a=_(a,e)}),a}const b2=/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var)$/i;function y2(e,t){if(e.childCount<2)return e;for(let n=t.depth;n>=0;n--){let i=t.node(n).contentMatchAt(t.index(n)),o,s=[];if(e.forEach(a=>{if(!s)return;let l=i.findWrapping(a.type),u;if(!l)return s=null;if(u=s.length&&o.length&&LD(l,o,a,s[s.length-1],0))s[s.length-1]=u;else{s.length&&(s[s.length-1]=kD(s[s.length-1],o.length));let p=MD(a,l);s.push(p),i=i.matchType(p.type),o=l}}),s)return j.from(s)}return e}function MD(e,t,n=0){for(let r=t.length-1;r>=n;r--)e=t[r].create(null,j.from(e));return e}function LD(e,t,n,r,i){if(i<e.length&&i<t.length&&e[i]==t[i]){let o=LD(e,t,n,r.lastChild,i+1);if(o)return r.copy(r.content.replaceChild(r.childCount-1,o));if(r.contentMatchAt(r.childCount).matchType(i==e.length-1?n.type:e[i+1]))return r.copy(r.content.append(j.from(MD(n,e,i+1))))}}function kD(e,t){if(t==0)return e;let n=e.content.replaceChild(e.childCount-1,kD(e.lastChild,t-1)),r=e.contentMatchAt(e.childCount).fillBefore(j.empty,!0);return e.copy(n.append(r))}function dS(e,t,n,r,i,o){let s=t<0?e.firstChild:e.lastChild,a=s.content;return e.childCount>1&&(o=0),i<r-1&&(a=dS(a,t,n,r,i+1,o)),i>=n&&(a=t<0?s.contentMatchAt(0).fillBefore(a,o<=i).append(a):a.append(s.contentMatchAt(s.childCount).fillBefore(j.empty,!0))),e.replaceChild(t<0?0:e.childCount-1,s.copy(a))}function vv(e,t,n){return t<e.openStart&&(e=new oe(dS(e.content,-1,t,e.openStart,0,e.openEnd),t,e.openEnd)),n<e.openEnd&&(e=new oe(dS(e.content,1,n,e.openEnd,0,0),e.openStart,n)),e}const PD={thead:["table"],tbody:["table"],tfoot:["table"],caption:["table"],colgroup:["table"],col:["table","colgroup"],tr:["table","tbody"],td:["table","tbody","tr"],th:["table","tbody","tr"]};let Ov=null;function UD(){return Ov||(Ov=document.implementation.createHTMLDocument("title"))}let Eh=null;function C2(e){let t=window.trustedTypes;return t?(Eh||(Eh=t.createPolicy("ProseMirrorClipboard",{createHTML:n=>n})),Eh.createHTML(e)):e}function R2(e){let t=/^(\s*<meta [^>]*>)*/.exec(e);t&&(e=e.slice(t[0].length));let n=UD().createElement("div"),r=/<([a-z][^>\s]+)/i.exec(e),i;if((i=r&&PD[r[1].toLowerCase()])&&(e=i.map(o=>"<"+o+">").join("")+e+i.map(o=>"</"+o+">").reverse().join("")),n.innerHTML=C2(e),i)for(let o=0;o<i.length;o++)n=n.querySelector(i[o])||n;return n}function N2(e){let t=e.querySelectorAll(hn?"span:not([class]):not([style])":"span.Apple-converted-space");for(let n=0;n<t.length;n++){let r=t[n];r.childNodes.length==1&&r.textContent==" "&&r.parentNode&&r.parentNode.replaceChild(e.ownerDocument.createTextNode(" "),r)}}function v2(e,t){if(!e.size)return e;let n=e.content.firstChild.type.schema,r;try{r=JSON.parse(t)}catch{return e}let{content:i,openStart:o,openEnd:s}=e;for(let a=r.length-2;a>=0;a-=2){let l=n.nodes[r[a]];if(!l||l.hasRequiredAttrs())break;i=j.from(l.create(r[a+1],i)),o++,s++}return new oe(i,o,s)}const kn={},Pn={},O2={touchstart:!0,touchmove:!0};class A2{constructor(){this.shiftKey=!1,this.mouseDown=null,this.lastKeyCode=null,this.lastKeyCodeTime=0,this.lastClick={time:0,x:0,y:0,type:""},this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastIOSEnter=0,this.lastIOSEnterFallbackTimeout=-1,this.lastFocus=0,this.lastTouch=0,this.lastChromeDelete=0,this.composing=!1,this.compositionNode=null,this.composingTimeout=-1,this.compositionNodes=[],this.compositionEndedAt=-2e8,this.compositionID=1,this.compositionPendingChanges=0,this.domChangeCount=0,this.eventHandlers=Object.create(null),this.hideSelectionGuard=null}}function I2(e){for(let t in kn){let n=kn[t];e.dom.addEventListener(t,e.input.eventHandlers[t]=r=>{D2(e,r)&&!QT(e,r)&&(e.editable||!(r.type in Pn))&&n(e,r)},O2[t]?{passive:!0}:void 0)}Ln&&e.dom.addEventListener("input",()=>null), Line truncated
`).scrollIntoView()),!0)};function ZD(e){for(let t=0;t<e.edgeCount;t++){let{type:n}=e.edge(t);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}const w$=(e,t)=>{let{$head:n,$anchor:r}=e.selection;if(!n.parent.type.spec.code||!n.sameParent(r))return!1;let i=n.node(-1),o=n.indexAfter(-1),s=ZD(i.contentMatchAt(o));if(!s||!i.canReplaceWith(o,o,s))return!1;if(t){let a=n.after(),l=e.tr.replaceWith(a,a,s.createAndFill());l.setSelection(Oe.near(l.doc.resolve(a),1)),t(l.scrollIntoView())}return!0},D$=(e,t)=>{let n=e.selection,{$from:r,$to:i}=n;if(n instanceof ei||r.parent.inlineContent||i.parent.inlineContent)return!1;let o=ZD(i.parent.contentMatchAt(i.indexAfter()));if(!o||!o.isTextblock)return!1;if(t){let s=(!r.parentOffset&&i.index()<i.parent.childCount?r:i).pos,a=e.tr.insert(s,o.createAndFill());a.setSelection(Se.create(a.doc,s+1)),t(a.scrollIntoView())}return!0},x$=(e,t)=>{let{$cursor:n}=e.selection;if(!n||n.parent.content.size)return!1;if(n.depth>1&&n.after()!=n.end(-1)){let o=n.before();if(tl(e.doc,o))return t&&t(e.tr.split(o).scrollIntoView()),!0}let r=n.blockRange(),i=r&&Ol(r);return i==null?!1:(t&&t(e.tr.lift(r,i).scrollIntoView()),!0)},M$=(e,t)=>{let{$from:n,to:r}=e.selection,i,o=n.sharedDepth(r);return o==0?!1:(i=n.before(o),t&&t(e.tr.setSelection(Te.create(e.doc,i))),!0)};function L$(e,t,n){let r=t.nodeBefore,i=t.nodeAfter,o=t.index();return!r||!i||!r.type.compatibleContent(i.type)?!1:!r.content.size&&t.parent.canReplace(o-1,o)?(n&&n(e.tr.delete(t.pos-r.nodeSize,t.pos).scrollIntoView()),!0):!t.parent.canReplace(o,o+1)||!(i.isTextblock||ls(e.doc,t.pos))?!1:(n&&n(e.tr.join(t.pos).scrollIntoView()),!0)}function JD(e,t,n,r){let i=t.nodeBefore,o=t.nodeAfter,s,a,l=i.type.spec.isolating||o.type.spec.isolating;if(!l&&L$(e,t,n))return!0;let u=!l&&t.parent.canReplace(t.index(),t.index()+1);if(u&&(s=(a=i.contentMatchAt(i.childCount)).findWrapping(o.type))&&a.matchType(s[0]||o.type).validEnd){if(n){let g=t.pos+o.nodeSize,h=j.empty;for(let T=s.length-1;T>=0;T--)h=j.from(s[T].create(null,h));h=j.from(i.copy(h));let E=e.tr.step(new Xt(t.pos-1,g,t.pos,g,new oe(h,1,0),s.length,!0)),b=E.doc.resolve(g+2*s.length);b.nodeAfter&&b.nodeAfter.type==i.type&&ls(E.doc,b.pos)&&E.join(b.pos),n(E.scrollIntoView())}return!0}let p=o.type.spec.isolating||r>0&&l?null:Oe.findFrom(t,1),_=p&&p.$from.blockRange(p.$to),f=_&&Ol(_);if(f!=null&&f>=t.depth)return n&&n(e.tr.lift(_,f).scrollIntoView()),!0;if(u&&El(o,"start",!0)&&El(i,"end")){let g=i,h=[];for(;h.push(g),!g.isTextblock;)g=g.lastChild;let E=o,b=1;for(;!E.isTextblock;E=E.firstChild)b++;if(g.canReplace(g.childCount,g.childCount,E.content)){if(n){let T=j.empty;for(let R=h.length-1;R>=0;R--)T=j.from(h[R].copy(T));let y=e.tr.step(new Xt(t.pos-h.length,t.pos+o.nodeSize,t.pos+b,t.pos+o.nodeSize-b,new oe(T,h.length,0),0,!0));n(y.scrollIntoView())}return!0}}return!1}function ex(e){return function(t,n){let r=t.selection,i=e<0?r.$from:r.$to,o=i.depth;for(;i.node(o).isInline;){if(!o)return!1;o--}return i.node(o).isTextblock?(n&&n(t.tr.setSelection(Se.create(t.doc,e<0?i.start(o):i.end(o)))),!0):!1}}const k$=ex(-1),P$=ex(1);function U$(e,t=null){return function(n,r){let{$from:i,$to:o}=n.selection,s=i.blockRange(o),a=s&&$T(s,e,t);return a?(r&&r(n.tr.wrap(s,a).scrollIntoView()),!0):!1}}function Fv(e,t=null){return function(n,r){let i=!1;for(let o=0;o<n.selection.ranges.length&&!i;o++){let{$from:{pos:s},$to:{pos:a}}=n.selection.ranges[o];n.doc.nodesBetween(s,a,(l,u)=>{if(i)return!1;if(!(!l.isTextblock||l.hasMarkup(e,t)))if(l.type==e)i=!0;else{let p=n.doc.resolve(u),_=p.index();i=p.parent.canReplaceWith(_,_+1,e)}})}if(!i)return!1;if(r){let o=n.tr;for(let s=0;s<n.selection.ranges.length;s++){let{$from:{pos:a},$to:{pos:l}}=n.selection.ranges[s];o.setBlockType(a,l,e,t)}r(o.scrollIntoView())}return!0}}typeof navigator<"u"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os<"u"&&os.platform&&os.platform()=="darwin";function B$(e,t=null){return function(n,r){let{$from:i,$to:o}=n.selection,s=i.blockRange(o);if(!s)return!1;let a=r?n.tr:null;return F$(a,s,e,t)?(r&&r(a.scrollIntoView()),!0):!1}}function F$(e,t,n,r=null){let i=!1,o=t,s=t.$from.doc;if(t.depth>=2&&t.$from.node(t.depth-1).type.compatibleContent(n)&&t.startIndex==0){if(t.$from.index(t.depth-1)==0)return!1;let l=s.resolve(t.start-2);o=new F_(l,l,t.depth),t.endIndex<t.parent.childCount&&(t=new F_(t.$from,s.resolve(t.$to.end(t.depth)),t.depth)),i=!0}let a=$T(o,n,r,t);return a?(e&&G$(e,t,a,i,n),!0):!1}function G$(e,t,n,r,i){let o=j.empty;for(let p=n.length-1;p>=0;p--)o=j.from(n[p].type.create(n[p].attrs,o));e.step(new Xt(t.start-(r?2:0),t.end,t.start,t.end,new oe(o,0,0),n.length,!0));let s=0;for(let p=0;p<n.length;p++)n[p].type==i&&(s=p+1);let a=n.length-s,l=t.start+n.length-(r?2:0),u=t.parent;for(let p=t.startIndex,_=t.endIndex,f=!0;p<_;p++,f=!1)!f&&tl(e.doc,l,a)&&(e.split(l,a),l+=2*a),l+=u.child(p).nodeSize;return e}function Y$(e){return function(t,n){let{$from:r,$to:i}=t.selection,o=r.blockRange(i,s=>s.childCount>0&&s.firstChild.type= Line truncated
`,rules:n,plugin:r}):!1}},isInputRules:!0});return r}function Z$(e){return Object.prototype.toString.call(e).slice(8,-1)}function Ep(e){return Z$(e)!=="Object"?!1:e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype}function im(e,t){const n={...e};return Ep(e)&&Ep(t)&&Object.keys(t).forEach(r=>{Ep(t[r])&&Ep(e[r])?n[r]=im(e[r],t[r]):n[r]=t[r]}),n}class cn{constructor(t={}){this.type="mark",this.name="mark",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...t},this.name=this.config.name,t.defaultOptions&&Object.keys(t.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=Be(_e(this,"addOptions",{name:this.name}))),this.storage=Be(_e(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(t={}){return new cn(t)}configure(t={}){const n=this.extend({...this.config,addOptions:()=>im(this.options,t)});return n.name=this.name,n.parent=this.parent,n}extend(t={}){const n=new cn(t);return n.parent=this,this.child=n,n.name=t.name?t.name:n.parent.name,t.defaultOptions&&Object.keys(t.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${n.name}".`),n.options=Be(_e(n,"addOptions",{name:n.name})),n.storage=Be(_e(n,"addStorage",{name:n.name,options:n.options})),n}static handleExit({editor:t,mark:n}){const{tr:r}=t.state,i=t.state.selection.$from;if(i.pos===i.end()){const s=i.marks();if(!!!s.find(u=>(u==null?void 0:u.type.name)===n.name))return!1;const l=s.find(u=>(u==null?void 0:u.type.name)===n.name);return l&&r.removeStoredMark(l),r.insertText(" ",i.pos),t.view.dispatch(r),!0}return!1}}function J$(e){return typeof e=="number"}class ez{constructor(t){this.find=t.find,this.handler=t.handler}}const tz=(e,t,n)=>{if(nb(t))return[...e.matchAll(t)];const r=t(e,n);return r?r.map(i=>{const o=[i.text];return o.index=i.index,o.input=e,o.data=i.data,i.replaceWith&&(i.text.includes(i.replaceWith)||console.warn('[tiptap warn]: "pasteRuleMatch.replaceWith" must be part of "pasteRuleMatch.text".'),o.push(i.replaceWith)),o}):[]};function nz(e){const{editor:t,state:n,from:r,to:i,rule:o,pasteEvent:s,dropEvent:a}=e,{commands:l,chain:u,can:p}=new nm({editor:t,state:n}),_=[];return n.doc.nodesBetween(r,i,(g,h)=>{if(!g.isTextblock||g.type.spec.code)return;const E=Math.max(r,h),b=Math.min(i,h+g.content.size),T=g.textBetween(E-h,b-h,void 0,"");tz(T,o.find,s).forEach(R=>{if(R.index===void 0)return;const A=E+R.index+1,I=A+R[0].length,M={from:n.tr.mapping.map(A),to:n.tr.mapping.map(I)},k=o.handler({state:n,range:M,match:R,commands:l,chain:u,can:p,pasteEvent:s,dropEvent:a});_.push(k)})}),_.every(g=>g!==null)}const rz=e=>{var t;const n=new ClipboardEvent("paste",{clipboardData:new DataTransfer});return(t=n.clipboardData)===null||t===void 0||t.setData("text/html",e),n};function iz(e){const{editor:t,rules:n}=e;let r=null,i=!1,o=!1,s=typeof ClipboardEvent<"u"?new ClipboardEvent("paste"):null,a;try{a=typeof DragEvent<"u"?new DragEvent("drop"):null}catch{a=null}const l=({state:p,from:_,to:f,rule:g,pasteEvt:h})=>{const E=p.tr,b=tm({state:p,transaction:E});if(!(!nz({editor:t,state:b,from:Math.max(_-1,0),to:f.b-1,rule:g,pasteEvent:h,dropEvent:a})||!E.steps.length)){try{a=typeof DragEvent<"u"?new DragEvent("drop"):null}catch{a=null}return s=typeof ClipboardEvent<"u"?new ClipboardEvent("paste"):null,E}};return n.map(p=>new je({view(_){const f=g=>{var h;r=!((h=_.dom.parentElement)===null||h===void 0)&&h.contains(g.target)?_.dom.parentElement:null};return window.addEventListener("dragstart",f),{destroy(){window.removeEventListener("dragstart",f)}}},props:{handleDOMEvents:{drop:(_,f)=>(o=r===_.dom.parentElement,a=f,!1),paste:(_,f)=>{var g;const h=(g=f.clipboardData)===null||g===void 0?void 0:g.getData("text/html");return s=f,i=!!(h!=null&&h.includes("data-pm-slice")),!1}}},appendTransaction:(_,f,g)=>{const h=_[0],E=h.getMeta("uiEvent")==="paste"&&!i,b=h.getMeta("uiEvent")==="drop"&&!o,T=h.getMeta("applyPasteRules"),y=!!T;if(!E&&!b&&!y)return;if(y){let{text:I}=T;typeof I=="string"?I=I:I=Ku(j.from(I),g.schema);const{from:M}=T,k=M+I.length,$=rz(I);return l({rule:p,state:g,from:M,to:{b:k},pasteEvt:$})}const R=f.doc.content.findDiffStart(g.doc.content),A=f.doc.content.findDiffEnd(g.doc.content);if(!(!J$(R)||!A||R===A.b))return l({rule:p,state:g,from:R,to:A,pasteEvt:s})}}))}function oz(e){const t=e.filter((n,r)=>e.indexOf(n)!==r);return Array.from(new Set(t))}class qa{constructor(t,n){this.splittableMarks=[],this.editor=n,this.extensions=qa.resolve(t),this.schema=K$(this.extensions,n),this.setupExtensions()}static resolve(t){const n=qa.sort(qa.flatten(t)),r=oz(n.map(i=>i.name));return r.length&&console.warn(`[tiptap warn]: Duplicate extension names found: [${r.map(i=>`'${i}' Line truncated
`,textSerializers:s={}}=n||{};let a="";return e.nodesBetween(r,i,(l,u,p,_)=>{var f;l.isBlock&&u>r&&(a+=o);const g=s==null?void 0:s[l.type.name];if(g)return p&&(a+=g({node:l,pos:u,parent:p,index:_,range:t})),!1;l.isText&&(a+=(f=l==null?void 0:l.text)===null||f===void 0?void 0:f.slice(Math.max(r,u)-u,i-u))}),a}function ix(e){return Object.fromEntries(Object.entries(e.nodes).filter(([,t])=>t.spec.toText).map(([t,n])=>[t,n.spec.toText]))}const sz=bt.create({name:"clipboardTextSerializer",addOptions(){return{blockSeparator:void 0}},addProseMirrorPlugins(){return[new je({key:new Qe("clipboardTextSerializer"),props:{clipboardTextSerializer:()=>{const{editor:e}=this,{state:t,schema:n}=e,{doc:r,selection:i}=t,{ranges:o}=i,s=Math.min(...o.map(p=>p.$from.pos)),a=Math.max(...o.map(p=>p.$to.pos)),l=ix(n);return rx(r,{from:s,to:a},{...this.options.blockSeparator!==void 0?{blockSeparator:this.options.blockSeparator}:{},textSerializers:l})}}})]}}),az=()=>({editor:e,view:t})=>(requestAnimationFrame(()=>{var n;e.isDestroyed||(t.dom.blur(),(n=window==null?void 0:window.getSelection())===null||n===void 0||n.removeAllRanges())}),!0),lz=(e=!1)=>({commands:t})=>t.setContent("",e),cz=()=>({state:e,tr:t,dispatch:n})=>{const{selection:r}=t,{ranges:i}=r;return n&&i.forEach(({$from:o,$to:s})=>{e.doc.nodesBetween(o.pos,s.pos,(a,l)=>{if(a.type.isText)return;const{doc:u,mapping:p}=t,_=u.resolve(p.map(l)),f=u.resolve(p.map(l+a.nodeSize)),g=_.blockRange(f);if(!g)return;const h=Ol(g);if(a.type.isTextblock){const{defaultType:E}=_.parent.contentMatchAt(_.index());t.setNodeMarkup(g.start,E)}(h||h===0)&&t.lift(g,h)})}),!0},uz=e=>t=>e(t),dz=()=>({state:e,dispatch:t})=>D$(e,t),pz=(e,t)=>({editor:n,tr:r})=>{const{state:i}=n,o=i.doc.slice(e.from,e.to);r.deleteRange(e.from,e.to);const s=r.mapping.map(t);return r.insert(s,o.content),r.setSelection(new Se(r.doc.resolve(s-1))),!0},_z=()=>({tr:e,dispatch:t})=>{const{selection:n}=e,r=n.$anchor.node();if(r.content.size>0)return!1;const i=e.selection.$anchor;for(let o=i.depth;o>0;o-=1)if(i.node(o).type===r.type){if(t){const a=i.before(o),l=i.after(o);e.delete(a,l).scrollIntoView()}return!0}return!1},fz=e=>({tr:t,state:n,dispatch:r})=>{const i=Zt(e,n.schema),o=t.selection.$anchor;for(let s=o.depth;s>0;s-=1)if(o.node(s).type===i){if(r){const l=o.before(s),u=o.after(s);t.delete(l,u).scrollIntoView()}return!0}return!1},mz=e=>({tr:t,dispatch:n})=>{const{from:r,to:i}=e;return n&&t.delete(r,i),!0},gz=()=>({state:e,dispatch:t})=>S$(e,t),hz=()=>({commands:e})=>e.keyboardShortcut("Enter"),Ez=()=>({state:e,dispatch:t})=>w$(e,t);function K_(e,t,n={strict:!0}){const r=Object.keys(t);return r.length?r.every(i=>n.strict?t[i]===e[i]:nb(t[i])?t[i].test(e[i]):t[i]===e[i]):!0}function ox(e,t,n={}){return e.find(r=>r.type===t&&K_(Object.fromEntries(Object.keys(n).map(i=>[i,r.attrs[i]])),n))}function $v(e,t,n={}){return!!ox(e,t,n)}function rb(e,t,n){var r;if(!e||!t)return;let i=e.parent.childAfter(e.parentOffset);if((!i.node||!i.node.marks.some(p=>p.type===t))&&(i=e.parent.childBefore(e.parentOffset)),!i.node||!i.node.marks.some(p=>p.type===t)||(n=n||((r=i.node.marks[0])===null||r===void 0?void 0:r.attrs),!ox([...i.node.marks],t,n)))return;let s=i.index,a=e.start()+i.offset,l=s+1,u=a+i.node.nodeSize;for(;s>0&&$v([...e.parent.child(s-1).marks],t,n);)s-=1,a-=e.parent.child(s).nodeSize;for(;l<e.parent.childCount&&$v([...e.parent.child(l).marks],t,n);)u+=e.parent.child(l).nodeSize,l+=1;return{from:a,to:u}}function us(e,t){if(typeof e=="string"){if(!t.marks[e])throw Error(`There is no mark type named '${e}'. Maybe you forgot to add the extension?`);return t.marks[e]}return e}const Sz=(e,t={})=>({tr:n,state:r,dispatch:i})=>{const o=us(e,r.schema),{doc:s,selection:a}=n,{$from:l,from:u,to:p}=a;if(i){const _=rb(l,o,t);if(_&&_.from<=u&&_.to>=p){const f=Se.create(s,_.from,_.to);n.setSelection(f)}}return!0},Tz=e=>t=>{const n=typeof e=="function"?e(t):e;for(let r=0;r<n.length;r+=1)if(n[r](t))return!0;return!1};function sx(e){return e instanceof Se}function Lo(e=0,t=0,n=0){return Math.min(Math.max(e,t),n)}function ax(e,t=null){if(!t)return null;const n=Oe.atStart(e),r=Oe.atEnd(e);if(t==="start"||t===!0)return n;if(t==="end")return r;const i=n.from,o=r.to;return t==="all"?Se.create(e,Lo(0,i,o),Lo(e.content.size,i,o)):Se.create(e,Lo(t,i,o),Lo(t,i,o))}function om(){return["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document}const bz=(e=null,t={})=>({editor:n,view:r,tr:i,dispatch:o})=>{t={scrollIntoView:!0,...t};const s=()=>{om()&&r.dom.focus(),requestAnimationFrame(()=>{n.isDestroyed||(r.focus(),t!=null&&t.scrollIntoView&&n.commands.scrollIntoView())})};if(r.hasFocus()&&e===null||e===!1)return!0;if(o&&e===null&&!sx(n.state.selection))return s(),!0;const a=ax(i.doc,e)||n.state.selection,l=n.state.selection.eq(a);return o&&(l||i.setSelection(a),l&&i.storedMarks&&i.setStoredMarks(i.storedMarks),s()),!0},yz=(e,t)=>n=>e.every((r,i)=>t Line truncated
position: relative;
}
.ProseMirror {
word-wrap: break-word;
white-space: pre-wrap;
white-space: break-spaces;
-webkit-font-variant-ligatures: none;
font-variant-ligatures: none;
font-feature-settings: "liga" 0; /* the above doesn't seem to work in Edge */
}
.ProseMirror [contenteditable="false"] {
white-space: normal;
}
.ProseMirror [contenteditable="false"] [contenteditable="true"] {
white-space: pre-wrap;
}
.ProseMirror pre {
white-space: pre-wrap;
}
img.ProseMirror-separator {
display: inline !important;
border: none !important;
margin: 0 !important;
width: 0 !important;
height: 0 !important;
}
.ProseMirror-gapcursor {
display: none;
pointer-events: none;
position: absolute;
margin: 0;
}
.ProseMirror-gapcursor:after {
content: "";
display: block;
position: absolute;
top: -2px;
width: 20px;
border-top: 1px solid black;
animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;
}
@keyframes ProseMirror-cursor-blink {
to {
visibility: hidden;
}
}
.ProseMirror-hideselection *::selection {
background: transparent;
}
.ProseMirror-hideselection *::-moz-selection {
background: transparent;
}
.ProseMirror-hideselection * {
caret-color: transparent;
}
.ProseMirror-focused .ProseMirror-gapcursor {
display: block;
}
.tippy-box[data-animation=fade][data-state=hidden] {
opacity: 0
}`;function LV(e,t,n){const r=document.querySelector("style[data-tiptap-style]");if(r!==null)return r;const i=document.createElement("style");return t&&i.setAttribute("nonce",t),i.setAttribute("data-tiptap-style",""),i.innerHTML=e,document.getElementsByTagName("head")[0].appendChild(i),i}class kV extends V${constructor(t={}){super(),this.isFocused=!1,this.isInitialized=!1,this.extensionStorage={},this.options={element:document.createElement("div"),content:"",injectCSS:!0,injectNonce:void 0,extensions:[],autofocus:!1,editable:!0,editorProps:{},parseOptions:{},coreExtensionOptions:{},enableInputRules:!0,enablePasteRules:!0,enableCoreExtensions:!0,enableContentCheck:!1,onBeforeCreate:()=>null,onCreate:()=>null,onUpdate:()=>null,onSelectionUpdate:()=>null,onTransaction:()=>null,onFocus:()=>null,onBlur:()=>null,onDestroy:()=>null,onContentError:({error:n})=>{throw n},onPaste:()=>null,onDrop:()=>null},this.isCapturingTransaction=!1,this.capturedTransaction=null,this.setOptions(t),this.createExtensionManager(),this.createCommandManager(),this.createSchema(),this.on("beforeCreate",this.options.onBeforeCreate),this.emit("beforeCreate",{editor:this}),this.on("contentError",this.options.onContentError),this.createView(),this.injectCSS(),this.on("create",this.options.onCreate),this.on("update",this.options.onUpdate),this.on("selectionUpdate",this.options.onSelectionUpdate),this.on("transaction",this.options.onTransaction),this.on("focus",this.options.onFocus),this.on("blur",this.options.onBlur),this.on("destroy",this.options.onDestroy),this.on("drop",({event:n,slice:r,moved:i})=>this.options.onDrop(n,r,i)),this.on("paste",({event:n,slice:r})=>this.options.onPaste(n,r)),window.setTimeout(()=>{this.isDestroyed||(this.commands.focus(this.options.autofocus),this.emit("create",{editor:this}),this.isInitialized=!0)},0)}get storage(){return this.extensionStorage}get commands(){return this.commandManager.commands}chain(){return this.commandManager.chain()}can(){return this.commandManager.can()}injectCSS(){this.options.injectCSS&&document&&(this.css=LV(MV,this.options.injectNonce))}setOptions(t={}){this.options={...this.options,...t},!(!this.view||!this.state||this.isDestroyed)&&(this.options.editorProps&&this.view.setProps(this.options.editorProps),this.view.updateState(this.state))}setEditable(t,n=!0){this.setOptions({editable:t}),n&&this.emit("update",{editor:this,transaction:this.state.tr})}get isEditable(){return this.options.editable&&this.view&&this.view.editable}get state(){return this.view.state}registerPlugin(t,n){const r=nx(n)?n(t,[...this.state.plugins]):[...this.state.plugins,t],i=this.state.reconfigure({plugins:r});return this.view.updateState(i),i}unregisterPlugin(t){if(this.isDestroyed)return;const n=this.state.plugins;let r=n;if([].concat(t).forEach(o=>{const s=typeof o=="string"?`${o}$`:o.key;r=n.filter(a=>!a.key.startsWith(s))}),n.length===r.length)return;const i=this.state.reconfigure({plugins:r});return this.view.updateState(i),i}createExtensionManager(){var t,n;const i=[...this.options.enableCoreExtensions?[AV,sz.configure({blockSeparator:(n=(t=this.options.coreExtensionOptions)===null||t===void 0?void 0:t.clipboardTextSerializer)===null||n===void 0?void 0:n.blockSeparator}),vV,IV,wV,xV,OV,DV].filter(o=>typeof this.options.enableCoreExtensions=="object"?this.options.enableCoreExtensions[o.name]!==!1:!0):[],...this.options.extensions].filter(o=>["extension","node","mark"].includes(o==null?void 0:o.type));this.extensionManager=new qa(i,this)}createCommandManager(){this.commandManager=new nm({editor:this})}createSchema(){this.schema=this.extensionManager.schema}createView(){var t;let n;try{n=_S(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:this.options.enableContentCheck})}catch(s){if(!(s instanceof Error)||!["[tiptap error]: Invalid JSON content","[tiptap error]: Invalid HTML content"].includes(s.message))throw s;this.emit("contentError",{editor:this,error:s,disableCollaboration:()=>{this.storage.collaboration&&(this.storage.collaboration.isDisabled=!0),this.options.extensions=this.options.extensions.filter(a=>a.name!=="collaboration"),this.createExtensionManager()}}),n=_S(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:!1})}const r=ax(n,this.options.autofocus);this.view=new c$(this.options.element,{...this.options.editorProps,attributes:{role:"textbox",...(t=this.options.editorProps)===null||t===void 0?void 0:t.attributes},dispatchTransaction:this.dispatchTransaction.bind(this),state:Wa.create({doc:n,selection:r||void 0})});const i=this.state.reconfigure({plugins:this.extensionManager.plugins});this.view.updateState(i),this.createNodeViews(),this.prependClass();const o=this.view.dom;o.editor=this}createNodeViews(){this.view.isDestroyed||this.view.setProps({nodeViews:this.extensionManager.nodeViews})}prependClass(){this.view.dom.className=`tiptap ${this.view.dom.className}`}captureTransaction(t){this.isCapturingTransaction=!0,t(),this.isC Line truncated
`,textSerializers:r={}}=t||{};return Jz(this.state.doc,{blockSeparator:n,textSerializers:{...ix(this.schema),...r}})}get isEmpty(){return ab(this.state.doc)}getCharacterCount(){return console.warn('[tiptap warn]: "editor.getCharacterCount()" is deprecated. Please use "editor.storage.characterCount.characters()" instead.'),this.state.doc.content.size-2}destroy(){if(this.emit("destroy"),this.view){const t=this.view.dom;t&&t.editor&&delete t.editor,this.view.destroy()}this.removeAllListeners()}get isDestroyed(){var t;return!(!((t=this.view)===null||t===void 0)&&t.docView)}$node(t,n){var r;return((r=this.$doc)===null||r===void 0?void 0:r.querySelector(t,n))||null}$nodes(t,n){var r;return((r=this.$doc)===null||r===void 0?void 0:r.querySelectorAll(t,n))||null}$pos(t){const n=this.state.doc.resolve(t);return new As(n,this)}get $doc(){return this.$pos(0)}}function ea(e){return new Qu({find:e.find,handler:({state:t,range:n,match:r})=>{const i=Be(e.getAttributes,void 0,r);if(i===!1||i===null)return null;const{tr:o}=t,s=r[r.length-1],a=r[0];if(s){const l=a.search(/\S/),u=n.from+a.indexOf(s),p=u+s.length;if(sb(n.from,n.to,t.doc).filter(g=>g.mark.type.excluded.find(E=>E===e.type&&E!==g.mark.type)).filter(g=>g.to>u).length)return null;p<n.to&&o.delete(p,n.to),u>n.from&&o.delete(n.from+l,u);const f=n.from+l+s.length;o.addMark(n.from+l,f,e.type.create(i||{})),o.removeStoredMark(e.type)}}})}function px(e){return new Qu({find:e.find,handler:({state:t,range:n,match:r})=>{const i=Be(e.getAttributes,void 0,r)||{},{tr:o}=t,s=n.from;let a=n.to;const l=e.type.create(i);if(r[1]){const u=r[0].lastIndexOf(r[1]);let p=s+u;p>a?p=a:a=p+r[1].length;const _=r[0][r[0].length-1];o.insertText(_,s+r[0].length-1),o.replaceWith(p,a,l)}else if(r[0]){const u=e.type.isInline?s:s-1;o.insert(u,e.type.create(i)).delete(o.mapping.map(s),o.mapping.map(a))}o.scrollIntoView()}})}function gS(e){return new Qu({find:e.find,handler:({state:t,range:n,match:r})=>{const i=t.doc.resolve(n.from),o=Be(e.getAttributes,void 0,r)||{};if(!i.node(-1).canReplaceWith(i.index(-1),i.indexAfter(-1),e.type))return null;t.tr.delete(n.from,n.to).setBlockType(n.from,n.from,e.type,o)}})}function xt(e){return new Qu({find:e.find,handler:({state:t,range:n,match:r})=>{let i=e.replace,o=n.from;const s=n.to;if(r[1]){const a=r[0].lastIndexOf(r[1]);i+=r[0].slice(a+r[1].length),o+=a;const l=o-s;l>0&&(i=r[0].slice(a-l,a)+i,o=s)}t.tr.insertText(i,o,s)}})}function Nu(e){return new Qu({find:e.find,handler:({state:t,range:n,match:r,chain:i})=>{const o=Be(e.getAttributes,void 0,r)||{},s=t.tr.delete(n.from,n.to),l=s.doc.resolve(n.from).blockRange(),u=l&&$T(l,e.type,o);if(!u)return null;if(s.wrap(l,u),e.keepMarks&&e.editor){const{selection:_,storedMarks:f}=t,{splittableMarks:g}=e.editor.extensionManager,h=f||_.$to.parentOffset&&_.$from.marks();if(h){const E=h.filter(b=>g.includes(b.type.name));s.ensureMarks(E)}}if(e.keepAttributes){const _=e.type.name==="bulletList"||e.type.name==="orderedList"?"listItem":"taskList";i().updateAttributes(_,o).run()}const p=s.doc.resolve(n.from-1).nodeBefore;p&&p.type===e.type&&ls(s.doc,n.from-1)&&(!e.joinPredicate||e.joinPredicate(r,p))&&s.join(n.from-1)}})}class rt{constructor(t={}){this.type="node",this.name="node",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...t},this.name=this.config.name,t.defaultOptions&&Object.keys(t.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=Be(_e(this,"addOptions",{name:this.name}))),this.storage=Be(_e(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(t={}){return new rt(t)}configure(t={}){const n=this.extend({...this.config,addOptions:()=>im(this.options,t)});return n.name=this.name,n.parent=this.parent,n}extend(t={}){const n=new rt(t);return n.parent=this,this.child=n,n.name=t.name?t.name:n.parent.name,t.defaultOptions&&Object.keys(t.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${n.name}".`),n.options=Be(_e(n,"addOptions",{name:n.name})),n.storage=Be(_e(n,"addStorage",{name:n.name,options:n.options})),n}}function PV(){return navigator.platform==="Android"||/android/i.test(navigator.userAgent)}class UV{constructor(t,n,r){this.isDragging=!1,this.component=t,this.editor=n.editor,this.options={stopEvent:null,ignoreMutation:null,...r},this.extension=n.extension,this.node=n.node,this.decorations=n.decorations,this.innerDecorations=n.innerDecorations,this.view=n.view,this.HTMLAttributes=n.HTMLAttributes,this.getPos=n.getPos,this.mount()}mount(){}get dom(){return this.editor.view.dom}get contentDOM(){return null}onDragStart(t){var n,r,i,o,s,a,l;const{view:u}=this.editor,p=t.target,_=p.nodeType===3?(n=p.parentElement)===null||n===void 0? Line truncated
* @license React
* use-sync-external-store-shim.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var qv;function GV(){if(qv)return vh;qv=1;var e=St;function t(_,f){return _===f&&(_!==0||1/_===1/f)||_!==_&&f!==f}var n=typeof Object.is=="function"?Object.is:t,r=e.useState,i=e.useEffect,o=e.useLayoutEffect,s=e.useDebugValue;function a(_,f){var g=f(),h=r({inst:{value:g,getSnapshot:f}}),E=h[0].inst,b=h[1];return o(function(){E.value=g,E.getSnapshot=f,l(E)&&b({inst:E})},[_,g,f]),i(function(){return l(E)&&b({inst:E}),_(function(){l(E)&&b({inst:E})})},[_]),s(g),g}function l(_){var f=_.getSnapshot;_=_.value;try{var g=f();return!n(_,g)}catch{return!0}}function u(_,f){return f()}var p=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?u:a;return vh.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:p,vh}_x.exports=GV();var lb=_x.exports;const YV=(...e)=>t=>{e.forEach(n=>{typeof n=="function"?n(t):n&&(n.current=t)})},HV=({contentComponent:e})=>{const t=lb.useSyncExternalStore(e.subscribe,e.getSnapshot,e.getServerSnapshot);return St.createElement(St.Fragment,null,Object.values(t))};function $V(){const e=new Set;let t={};return{subscribe(n){return e.add(n),()=>{e.delete(n)}},getSnapshot(){return t},getServerSnapshot(){return t},setRenderer(n,r){t={...t,[n]:PY.createPortal(r.reactElement,r.element,n)},e.forEach(i=>i())},removeRenderer(n){const r={...t};delete r[n],t=r,e.forEach(i=>i())}}}class zV extends St.Component{constructor(t){var n;super(t),this.editorContentRef=St.createRef(),this.initialized=!1,this.state={hasContentComponentInitialized:!!(!((n=t.editor)===null||n===void 0)&&n.contentComponent)}}componentDidMount(){this.init()}componentDidUpdate(){this.init()}init(){const t=this.props.editor;if(t&&!t.isDestroyed&&t.options.element){if(t.contentComponent)return;const n=this.editorContentRef.current;n.append(...t.options.element.childNodes),t.setOptions({element:n}),t.contentComponent=$V(),this.state.hasContentComponentInitialized||(this.unsubscribeToContentComponent=t.contentComponent.subscribe(()=>{this.setState(r=>r.hasContentComponentInitialized?r:{hasContentComponentInitialized:!0}),this.unsubscribeToContentComponent&&this.unsubscribeToContentComponent()})),t.createNodeViews(),this.initialized=!0}}componentWillUnmount(){const t=this.props.editor;if(!t||(this.initialized=!1,t.isDestroyed||t.view.setProps({nodeViews:{}}),this.unsubscribeToContentComponent&&this.unsubscribeToContentComponent(),t.contentComponent=null,!t.options.element.firstChild))return;const n=document.createElement("div");n.append(...t.options.element.childNodes),t.setOptions({element:n})}render(){const{editor:t,innerRef:n,...r}=this.props;return St.createElement(St.Fragment,null,St.createElement("div",{ref:YV(n,this.editorContentRef),...r}),(t==null?void 0:t.contentComponent)&&St.createElement(HV,{contentComponent:t.contentComponent}))}}const VV=F.forwardRef((e,t)=>{const n=St.useMemo(()=>Math.floor(Math.random()*4294967295).toString(),[e.editor]);return St.createElement(zV,{key:n,innerRef:t,...e})}),WV=St.memo(VV);var qV=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t=="object"&&typeof n=="object"){if(t.constructor!==n.constructor)return!1;var r,i,o;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t instanceof Map&&n instanceof Map){if(t.size!==n.size)return!1;for(i of t.entries())if(!n.has(i[0]))return!1;for(i of t.entries())if(!e(i[1],n.get(i[0])))return!1;return!0}if(t instanceof Set&&n instanceof Set){if(t.size!==n.size)return!1;for(i of t.entries())if(!n.has(i[0]))return!1;return!0}if(ArrayBuffer.isView(t)&&ArrayBuffer.isView(n)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(t[i]!==n[i])return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(o=Object.keys(t),r=o.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,o[i]))return!1;for(i=r;i--!==0;){var s=o[i];if(!(s==="_owner"&&t.$$typeof)&&!e(t[s],n[s]))return!1}return!0}return t!==t&&n!==n},KV=FV(qV),fx={exports:{}},Oh={};/**
* @license React
* use-sync-external-store-shim/with-selector.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var Kv;function QV(){if(Kv)return Oh;Kv=1;var e=St,t=lb;function n(u,p){return u===p&&(u!==0||1/u===1/p)||u!==u&&p!==p}var r=typeof Object.is=="function"?Object.is:n,i=t.useSyncExternalStore,o=e.useRef,s=e.useEffect,a=e.useMemo,l=e.useDebugValue;return Oh.useSyncExternalStoreWithSelector=function(u,p,_,f,g){var h=o(null);if(h.current===null){var E={hasValue:!1,value:null};h.current=E}else E=h.current;h=a(function(){function T(M){if(!y){if(y=!0,R=M,M=f(M),g!==void 0&&E.hasValue){var k=E.value;if(g(k,M))return A=k}return A=M}if(k=A,r(R,M))return k;var $=f(M);return g!==void 0&&g(k,$)?k:(R=M,A=$)}var y=!1,R,A,I=_===void 0?null:_;return[function(){return T(p())},I===null?void 0:function(){return T(I())}]},[p,_,f,g]);var b=i(u,h[0],h[1]);return s(function(){E.hasValue=!0,E.value=b},[b]),l(b),b},Oh}fx.exports=QV();var XV=fx.exports;const jV=typeof window<"u"?F.useLayoutEffect:F.useEffect;class ZV{constructor(t){this.transactionNumber=0,this.lastTransactionNumber=0,this.subscribers=new Set,this.editor=t,this.lastSnapshot={editor:t,transactionNumber:0},this.getSnapshot=this.getSnapshot.bind(this),this.getServerSnapshot=this.getServerSnapshot.bind(this),this.watch=this.watch.bind(this),this.subscribe=this.subscribe.bind(this)}getSnapshot(){return this.transactionNumber===this.lastTransactionNumber?this.lastSnapshot:(this.lastTransactionNumber=this.transactionNumber,this.lastSnapshot={editor:this.editor,transactionNumber:this.transactionNumber},this.lastSnapshot)}getServerSnapshot(){return{editor:null,transactionNumber:0}}subscribe(t){return this.subscribers.add(t),()=>{this.subscribers.delete(t)}}watch(t){if(this.editor=t,this.editor){const n=()=>{this.transactionNumber+=1,this.subscribers.forEach(i=>i())},r=this.editor;return r.on("transaction",n),()=>{r.off("transaction",n)}}}}function JV(e){var t;const[n]=F.useState(()=>new ZV(e.editor)),r=XV.useSyncExternalStoreWithSelector(n.subscribe,n.getSnapshot,n.getServerSnapshot,e.selector,(t=e.equalityFn)!==null&&t!==void 0?t:KV);return jV(()=>n.watch(e.editor),[e.editor,n]),F.useDebugValue(r),r}const eW=!1,hS=typeof window>"u",tW=hS||!!(typeof window<"u"&&window.next);class nW{constructor(t){this.editor=null,this.subscriptions=new Set,this.isComponentMounted=!1,this.previousDeps=null,this.instanceId="",this.options=t,this.subscriptions=new Set,this.setEditor(this.getInitialEditor()),this.scheduleDestroy(),this.getEditor=this.getEditor.bind(this),this.getServerSnapshot=this.getServerSnapshot.bind(this),this.subscribe=this.subscribe.bind(this),this.refreshEditorInstance=this.refreshEditorInstance.bind(this),this.scheduleDestroy=this.scheduleDestroy.bind(this),this.onRender=this.onRender.bind(this),this.createEditor=this.createEditor.bind(this)}setEditor(t){this.editor=t,this.instanceId=Math.random().toString(36).slice(2,9),this.subscriptions.forEach(n=>n())}getInitialEditor(){if(this.options.current.immediatelyRender===void 0)return hS||tW?null:this.createEditor();if(this.options.current.immediatelyRender&&hS&&eW)throw new Error("Tiptap Error: SSR has been detected, and `immediatelyRender` has been set to `true` this is an unsupported configuration that may result in errors, explicitly set `immediatelyRender` to `false` to avoid hydration mismatches.");return this.options.current.immediatelyRender?this.createEditor():null}createEditor(){const t={...this.options.current,onBeforeCreate:(...r)=>{var i,o;return(o=(i=this.options.current).onBeforeCreate)===null||o===void 0?void 0:o.call(i,...r)},onBlur:(...r)=>{var i,o;return(o=(i=this.options.current).onBlur)===null||o===void 0?void 0:o.call(i,...r)},onCreate:(...r)=>{var i,o;return(o=(i=this.options.current).onCreate)===null||o===void 0?void 0:o.call(i,...r)},onDestroy:(...r)=>{var i,o;return(o=(i=this.options.current).onDestroy)===null||o===void 0?void 0:o.call(i,...r)},onFocus:(...r)=>{var i,o;return(o=(i=this.options.current).onFocus)===null||o===void 0?void 0:o.call(i,...r)},onSelectionUpdate:(...r)=>{var i,o;return(o=(i=this.options.current).onSelectionUpdate)===null||o===void 0?void 0:o.call(i,...r)},onTransaction:(...r)=>{var i,o;return(o=(i=this.options.current).onTransaction)===null||o===void 0?void 0:o.call(i,...r)},onUpdate:(...r)=>{var i,o;return(o=(i=this.options.current).onUpdate)===null||o===void 0?void 0:o.call(i,...r)},onContentError:(...r)=>{var i,o;return(o=(i=this.options.current).onContentError)===null||o===void 0?void 0:o.call(i,...r)},onDrop:(...r)=>{var i,o;return(o=(i=this.options.current).onDrop)===null||o===void 0?void 0:o.call(i,...r)},onPaste:(...r)=>{var i,o;return(o=(i=this.options.current).onPaste)===null||o===void 0?void 0:o.call(i,...r)}};return new kV(t)}getEditor(){return this.editor}getServerSnapshot(){return null}subscribe(t){return this.subscriptions.add(t),()=>{this.subscriptions.delete(t)}}onRender(t){return()=>(this.isComponentMounted=!0,clearTimeout(this.scheduledDestructionTimeout),this.editor&&!this.editor.isDestroyed&&t.length===0?this.editor.setOptions({...this.options.curreLine truncated
* @license
* Lodash <https://lodash.com/>
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
* Released under MIT license <https://lodash.com/license>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
*/X_.exports;(function(e,t){(function(){var n,r="4.17.21",i=200,o="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",s="Expected a function",a="Invalid `variable` option passed into `_.template`",l="__lodash_hash_undefined__",u=500,p="__lodash_placeholder__",_=1,f=2,g=4,h=1,E=2,b=1,T=2,y=4,R=8,A=16,I=32,M=64,k=128,$=256,z=512,H=30,ae="...",fe=800,de=16,le=1,ge=2,Ne=3,x=1/0,w=9007199254740991,G=17976931348623157e292,W=NaN,J=4294967295,re=J-1,De=J>>>1,He=[["ary",k],["bind",b],["bindKey",T],["curry",R],["curryRight",A],["flip",z],["partial",I],["partialRight",M],["rearg",$]],be="[object Arguments]",Ie="[object Array]",it="[object AsyncFunction]",ot="[object Boolean]",xe="[object Date]",Ee="[object DOMException]",Rn="[object Error]",Fn="[object Function]",oi="[object GeneratorFunction]",pt="[object Map]",qe="[object Number]",Ze="[object Null]",Jt="[object Object]",Fr="[object Promise]",ne="[object Proxy]",hr="[object RegExp]",ve="[object Set]",he="[object String]",Nn="[object Symbol]",$t="[object Undefined]",Gn="[object WeakMap]",si="[object WeakSet]",Y="[object ArrayBuffer]",K="[object DataView]",ie="[object Float32Array]",pe="[object Float64Array]",Fe="[object Int8Array]",ht="[object Int16Array]",no="[object Int32Array]",ro="[object Uint8Array]",Ju="[object Uint8ClampedArray]",ed="[object Uint16Array]",td="[object Uint32Array]",Hb=/\b__p \+= '';/g,$b=/\b(__p \+=) '' \+/g,zb=/(__e\(.*?\)|\b__t\)) \+\n'';/g,mm=/&(?:amp|lt|gt|quot|#39);/g,gm=/[&<>"']/g,Vb=RegExp(mm.source),Wb=RegExp(gm.source),qb=/<%-([\s\S]+?)%>/g,Kb=/<%([\s\S]+?)%>/g,hm=/<%=([\s\S]+?)%>/g,Qb=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Xb=/^\w*$/,jb=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,nd=/[\\^$.*+?()[\]{}|]/g,Zb=RegExp(nd.source),rd=/^\s+/,Jb=/\s/,ey=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ty=/\{\n\/\* \[wrapped with (.+)\] \*/,ny=/,? & /,ry=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,iy=/[()=,{}\[\]\/\s]/,oy=/\\(\\)?/g,sy=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Em=/\w*$/,ay=/^[-+]0x[0-9a-f]+$/i,ly=/^0b[01]+$/i,cy=/^\[object .+?Constructor\]$/,uy=/^0o[0-7]+$/i,dy=/^(?:0|[1-9]\d*)$/,py=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,kl=/($^)/,_y=/['\n\r\u2028\u2029\\]/g,Pl="\\ud800-\\udfff",fy="\\u0300-\\u036f",my="\\ufe20-\\ufe2f",gy="\\u20d0-\\u20ff",Sm=fy+my+gy,Tm="\\u2700-\\u27bf",bm="a-z\\xdf-\\xf6\\xf8-\\xff",hy="\\xac\\xb1\\xd7\\xf7",Ey="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Sy="\\u2000-\\u206f",Ty=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",ym="A-Z\\xc0-\\xd6\\xd8-\\xde",Cm="\\ufe0e\\ufe0f",Rm=hy+Ey+Sy+Ty,id="['’]",by="["+Pl+"]",Nm="["+Rm+"]",Ul="["+Sm+"]",vm="\\d+",yy="["+Tm+"]",Om="["+bm+"]",Am="[^"+Pl+Rm+vm+Tm+bm+ym+"]",Bl="\\ud83c[\\udffb-\\udfff]",Im="(?:"+Ul+"|"+Bl+")",od="[^"+Pl+"]",Fl="(?:\\ud83c[\\udde6-\\uddff]){2}",Gl="[\\ud800-\\udbff][\\udc00-\\udfff]",io="["+ym+"]",sd="\\u200d",Yl="(?:"+Om+"|"+Am+")",ad="(?:"+io+"|"+Am+")",Hl="(?:"+id+"(?:d|ll|m|re|s|t|ve))?",ld="(?:"+id+"(?:D|LL|M|RE|S|T|VE))?",cd=Im+"?",$l="["+Cm+"]?",ca="(?:"+sd+"(?:"+[od,Fl,Gl].join("|")+")"+$l+cd+")*",zl="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",ud="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Vl=$l+cd+ca,dd="(?:"+[yy,Fl,Gl].join("|")+")"+Vl,Cy="(?:"+[od+Ul+"?",Ul,Fl,Gl,by].join("|")+")",Ry=RegExp(id,"g"),bL=RegExp(Ul,"g"),wm=RegExp(Bl+"(?="+Bl+")|"+Cy+Vl,"g"),yL=RegExp([io+"?"+Om+"+"+Hl+"(?="+[Nm,io,"$"].join("|")+")",ad+"+"+ld+"(?="+[Nm,io+Yl,"$"].join("|")+")",io+"?"+Yl+"+"+Hl,io+"+"+ld,ud,zl,vm,dd].join("|"),"g"),CL=RegExp("["+sd+Pl+Sm+Cm+"]"),RL=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,NL=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],vL=-1,_t={};_t[ie]=_t[pe]=_t[Fe]=_t[ht]=_t[no]=_t[ro]=_t[Ju]=_t[ed]=_t[td]=!0,_t[be]=_t[Ie]=_t[Y]=_t[ot]=_t[K]=_t[xe]=_t[Rn]=_t[Fn]=_t[pt]=_t[qe]=_t[Jt]=_t[hr]=_t[ve]=_t[he]=_t[Gn]=!1;var st={};st[be]=st[Ie]=st[Y]=st[K]=st[ot]=st[xe]=st[ie]=st[pe]=st[Fe]=st[ht]=st[no]=st[pt]=st[qe]=st[Jt]=st[hr]=st[ve]=st[he]=st[Nn]=st[ro]=st[Ju]=st[ed]=st[td]=!0,st[Rn]=st[Fn]=st[Gn]=!1;var OL={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",Line truncated
/* [wrapped with `+d+`] */
`)}function $P(c){return we(c)||Ss(c)||!!(qy&&c&&c[qy])}function Ii(c,d){var m=typeof c;return d=d??w,!!d&&(m=="number"||m!="symbol"&&dy.test(c))&&c>-1&&c%1==0&&c<d}function On(c,d,m){if(!yt(m))return!1;var S=typeof d;return(S=="number"?Hn(m)&&Ii(d,m.length):S=="string"&&d in m)?Hr(m[d],c):!1}function hg(c,d){if(we(c))return!1;var m=typeof c;return m=="number"||m=="symbol"||m=="boolean"||c==null||sr(c)?!0:Xb.test(c)||!Qb.test(c)||d!=null&&c in tt(d)}function zP(c){var d=typeof c;return d=="string"||d=="number"||d=="symbol"||d=="boolean"?c!=="__proto__":c===null}function Eg(c){var d=Gd(c),m=v[d];if(typeof m!="function"||!(d in $e.prototype))return!1;if(c===m)return!0;var S=fg(m);return!!S&&c===S[0]}function VP(c){return!!$y&&$y in c}var WP=gd?wi:kg;function ic(c){var d=c&&c.constructor,m=typeof d=="function"&&d.prototype||fa;return c===m}function $C(c){return c===c&&!yt(c)}function zC(c,d){return function(m){return m==null?!1:m[c]===d&&(d!==n||c in tt(m))}}function qP(c){var d=Wd(c,function(S){return m.size===u&&m.clear(),S}),m=d.cache;return d}function KP(c,d){var m=c[1],S=d[1],C=m|S,O=C<(b|T|k),D=S==k&&m==R||S==k&&m==$&&c[7].length<=d[8]||S==(k|$)&&d[7].length<=d[8]&&m==R;if(!(O||D))return c;S&b&&(c[2]=d[2],C|=m&b?0:y);var L=d[3];if(L){var B=c[3];c[3]=B?vC(B,L,d[4]):L,c[4]=B?ao(c[3],p):d[4]}return L=d[5],L&&(B=c[5],c[5]=B?OC(B,L,d[6]):L,c[6]=B?ao(c[5],p):d[6]),L=d[7],L&&(c[7]=L),S&k&&(c[8]=c[8]==null?d[8]:un(c[8],d[8])),c[9]==null&&(c[9]=d[9]),c[0]=d[0],c[1]=C,c}function QP(c){var d=[];if(c!=null)for(var m in tt(c))d.push(m);return d}function XP(c){return Ed.call(c)}function VC(c,d,m){return d=Ft(d===n?c.length-1:d,0),function(){for(var S=arguments,C=-1,O=Ft(S.length-d,0),D=V(O);++C<O;)D[C]=S[d+C];C=-1;for(var L=V(d+1);++C<d;)L[C]=S[C];return L[d]=m(D),rr(c,this,L)}}function WC(c,d){return d.length<2?c:gs(c,Cr(d,0,-1))}function jP(c,d){for(var m=c.length,S=un(d.length,m),C=Yn(c);S--;){var O=d[S];c[S]=Ii(O,m)?C[O]:n}return c}function Sg(c,d){if(!(d==="constructor"&&typeof c[d]=="function")&&d!="__proto__")return c[d]}var qC=QC(gC),oc=pk||function(c,d){return en.setTimeout(c,d)},Tg=QC(TP);function KC(c,d,m){var S=d+"";return Tg(c,HP(S,ZP(FP(S),m)))}function QC(c){var d=0,m=0;return function(){var S=gk(),C=de-(S-m);if(m=S,C>0){if(++d>=fe)return arguments[0]}else d=0;return c.apply(n,arguments)}}function Hd(c,d){var m=-1,S=c.length,C=S-1;for(d=d===n?S:d;++m<d;){var O=ng(m,C),D=c[O];c[O]=c[m],c[m]=D}return c.length=d,c}var XC=qP(function(c){var d=[];return c.charCodeAt(0)===46&&d.push(""),c.replace(jb,function(m,S,C,O){d.push(C?O.replace(oy,"$1"):S||m)}),d});function ci(c){if(typeof c=="string"||sr(c))return c;var d=c+"";return d=="0"&&1/c==-x?"-0":d}function Es(c){if(c!=null){try{return hd.call(c)}catch{}try{return c+""}catch{}}return""}function ZP(c,d){return Sr(He,function(m){var S="_."+m[0];d&m[1]&&!pd(c,S)&&c.push(S)}),c.sort()}function jC(c){if(c instanceof $e)return c.clone();var d=new br(c.__wrapped__,c.__chain__);return d.__actions__=Yn(c.__actions__),d.__index__=c.__index__,d.__values__=c.__values__,d}function JP(c,d,m){(m?On(c,d,m):d===n)?d=1:d=Ft(Me(d),0);var S=c==null?0:c.length;if(!S||d<1)return[];for(var C=0,O=0,D=V(Rd(S/d));C<S;)D[O++]=Cr(c,C,C+=d);return D}function e0(c){for(var d=-1,m=c==null?0:c.length,S=0,C=[];++d<m;){var O=c[d];O&&(C[S++]=O)}return C}function t0(){var c=arguments.length;if(!c)return[];for(var d=V(c-1),m=arguments[0],S=c;S--;)d[S-1]=arguments[S];return so(we(m)?Yn(m):[m],tn(d,1))}var n0=Ue(function(c,d){return Mt(c)?Jl(c,tn(d,1,Mt,!0)):[]}),r0=Ue(function(c,d){var m=Rr(d);return Mt(m)&&(m=n),Mt(c)?Jl(c,tn(d,1,Mt,!0),ye(m,2)):[]}),i0=Ue(function(c,d){var m=Rr(d);return Mt(m)&&(m=n),Mt(c)?Jl(c,tn(d,1,Mt,!0),n,m):[]});function o0(c,d,m){var S=c==null?0:c.length;return S?(d=m||d===n?1:Me(d),Cr(c,d<0?0:d,S)):[]}function s0(c,d,m){var S=c==null?0:c.length;return S?(d=m||d===n?1:Me(d),d=S-d,Cr(c,0,d<0?0:d)):[]}function a0(c,d){return c&&c.length?Ld(c,ye(d,3),!0,!0):[]}function l0(c,d){return c&&c.length?Ld(c,ye(d,3),!0):[]}function c0(c,d,m,S){var C=c==null?0:c.length;return C?(m&&typeof m!="number"&&On(c,d,m)&&(m=0,S=C),tP(c,d,m,S)):[]}function ZC(c,d,m){var S=c==null?0:c.length;if(!S)return-1;var C=m==null?0:Me(m);return C<0&&(C=Ft(S+C,0)),_d(c,ye(d,3),C)}function JC(c,d,m){var S=c==null?0:c.length;if(!S)return-1;var C=S-1;return m!==n&&(C=Me(m),C=m<0?Ft(S+C,0):un(C,S-1)),_d(c,ye(d,3),C,!0)}function eR(c){var d=c==null?0:c.length;return d?tn(c,1):[]}function u0(c){var d=c==null?0:c.length;return d?tn(c,x):[]}function d0(c,d){var m=c==null?0:c.length;return m?(d=d===n?1:Me(d),tn(c,d)):[]}function p0(c){for(var d=-1,m=c==null?0:c.length,S={};++d<m;){var C=c[d];S[C[0]]=C[1]}return S}function tR(c){return c&&c.length?c[0]:n}function _0(c,d,m){var S=c==null?0:c.length;if(!S)return-1;var C=m==null?0:Me(m);return C<0&&(C=Ft(S+C,0)),ua(c,d,C)}function f0(c){var d=c==null?0:c.length;return d?Cr(c,0,-1):[]}var m0=Ue(function(c){var d=Et(c,ag);return d.length&&d[0]===c[0]?jm(d):[]}),g0=Ue( Line truncated
`;c.replace(se,function(Re,Ge,ze,ar,An,lr){return ze||(ze=ar),Z+=c.slice(Q,lr).replace(_y,WL),Ge&&(L=!0,Z+=`' +
__e(`+Ge+`) +
'`),An&&(B=!0,Z+=`';
`+An+`;
__p += '`),ze&&(Z+=`' +
((__t = (`+ze+`)) == null ? '' : __t) +
'`),Q=lr+Re.length,Re}),Z+=`';
`;var Ce=Je.call(d,"variable")&&d.variable;if(!Ce)Z=`with (obj) {
`+Z+`
}
`;else if(iy.test(Ce))throw new Ae(a);Z=(B?Z.replace(Hb,""):Z).replace($b,"$1").replace(zb,"$1;"),Z="function("+(Ce||"obj")+`) {
`+(Ce?"":`obj || (obj = {});
`)+"var __t, __p = ''"+(L?", __e = _.escape":"")+(B?`, __j = Array.prototype.join;
function print() { __p += __j.call(arguments, '') }
`:`;
`)+Z+`return __p
}`;var Le=IR(function(){return Ke(O,me+"return "+Z).apply(n,D)});if(Le.source=Z,Ng(Le))throw Le;return Le}function EB(c){return Xe(c).toLowerCase()}function SB(c){return Xe(c).toUpperCase()}function TB(c,d,m){if(c=Xe(c),c&&(m||d===n))return By(c);if(!c||!(d=or(d)))return c;var S=Gr(c),C=Gr(d),O=Fy(S,C),D=Gy(S,C)+1;return _o(S,O,D).join("")}function bB(c,d,m){if(c=Xe(c),c&&(m||d===n))return c.slice(0,Hy(c)+1);if(!c||!(d=or(d)))return c;var S=Gr(c),C=Gy(S,Gr(d))+1;return _o(S,0,C).join("")}function yB(c,d,m){if(c=Xe(c),c&&(m||d===n))return c.replace(rd,"");if(!c||!(d=or(d)))return c;var S=Gr(c),C=Fy(S,Gr(d));return _o(S,C).join("")}function CB(c,d){var m=H,S=ae;if(yt(d)){var C="separator"in d?d.separator:C;m="length"in d?Me(d.length):m,S="omission"in d?or(d.omission):S}c=Xe(c);var O=c.length;if(da(c)){var D=Gr(c);O=D.length}if(m>=O)return c;var L=m-pa(S);if(L<1)return S;var B=D?_o(D,0,L).join(""):c.slice(0,L);if(C===n)return B+S;if(D&&(L+=B.length-L),vg(C)){if(c.slice(L).search(C)){var Q,X=B;for(C.global||(C=Hm(C.source,Xe(Em.exec(C))+"g")),C.lastIndex=0;Q=C.exec(X);)var Z=Q.index;B=B.slice(0,Z===n?L:Z)}}else if(c.indexOf(or(C),L)!=L){var se=B.lastIndexOf(C);se>-1&&(B=B.slice(0,se))}return B+S}function RB(c){return c=Xe(c),c&&Vb.test(c)?c.replace(mm,JL):c}var NB=Sa(function(c,d,m){return c+(m?" ":"")+d.toUpperCase()}),Ig=wC("toUpperCase");function AR(c,d,m){return c=Xe(c),d=m?n:d,d===n?KL(c)?nk(c):FL(c):c.match(d)||[]}var IR=Ue(function(c,d){try{return rr(c,n,d)}catch(m){return Ng(m)?m:new Ae(m)}}),vB=Ai(function(c,d){return Sr(d,function(m){m=ci(m),vi(c,m,Cg(c[m],c))}),c});function OB(c){var d=c==null?0:c.length,m=ye();return c=d?Et(c,function(S){if(typeof S[1]!="function")throw new Tr(s);return[m(S[0]),S[1]]}):[],Ue(function(S){for(var C=-1;++C<d;){var O=c[C];if(rr(O[0],this,S))return rr(O[1],this,S)}})}function AB(c){return Jk(yr(c,_))}function wg(c){return function(){return c}}function IB(c,d){return c==null||c!==c?d:c}var wB=xC(),DB=xC(!0);function zn(c){return c}function Dg(c){return lC(typeof c=="function"?c:yr(c,_))}function xB(c){return uC(yr(c,_))}function MB(c,d){return dC(c,yr(d,_))}var LB=Ue(function(c,d){return function(m){return ec(m,c,d)}}),kB=Ue(function(c,d){return function(m){return ec(c,m,d)}});function xg(c,d,m){var S=zt(d),C=Dd(d,S);m==null&&!(yt(d)&&(C.length||!S.length))&&(m=d,d=c,c=this,C=Dd(d,zt(d)));var O=!(yt(m)&&"chain"in m)||!!m.chain,D=wi(c);return Sr(C,function(L){var B=d[L];c[L]=B,D&&(c.prototype[L]=function(){var Q=this.__chain__;if(O||Q){var X=c(this.__wrapped__),Z=X.__actions__=Yn(this.__actions__);return Z.push({func:B,args:arguments,thisArg:c}),X.__chain__=Q,X}return B.apply(c,so([this.value()],arguments))})}),c}function PB(){return en._===this&&(en._=lk),this}function Mg(){}function UB(c){return c=Me(c),Ue(function(d){return pC(d,c)})}var BB=ug(Et),FB=ug(My),GB=ug(km);function wR(c){return hg(c)?Pm(ci(c)):gP(c)}function YB(c){return function(d){return c==null?n:gs(c,d)}}var HB=LC(),$B=LC(!0);function Lg(){return[]}function kg(){return!1}function zB(){return{}}function VB(){return""}function WB(){return!0}function qB(c,d){if(c=Me(c),c<1||c>w)return[];var m=J,S=un(c,J);d=ye(d),c-=J;for(var C=Fm(S,d);++m<c;)d(m);return C}function KB(c){return we(c)?Et(c,ci):sr(c)?[c]:Yn(XC(Xe(c)))}function QB(c){var d=++sk;return Xe(c)+d}var XB=Ud(function(c,d){return c+d},0),jB=dg("ceil"),ZB=Ud(function(c,d){return c/d},1),JB=dg("floor");function eF(c){return c&&c.length?wd(c,zn,Xm):n}function tF(c,d){return c&&c.length?wd(c,ye(d,2),Xm):n}function nF(c){return Py(c,zn)}function rF(c,d){return Py(c,ye(d,2))}function iF(c){return c&&c.length?wd(c,zn,eg):n}function oF(c,d){return c&&c.length?wd(c,ye(d,2),eg):n}var sF=Ud(function(c,d){return c*d},1),aF=dg("round"),lF=Ud(function(c,d){return c-d},0);function cF(c){return c&&c.length?Bm(c,zn):0}function uF(c,d){return c&&c.length?Bm(c,ye(d,2)):0}return v.after=x1,v.ary=aR,v.assign=SU,v.assignIn=bR,v.assignInWith=Xd,v.assignWith=TU,v.at=bU,v.before=lR,v.bind=Cg,v.bindAll=vB,v.bindKey=cR,v.castArray=z1,v.chain=iR,v.chunk=JP,v.compact=e0,v.concat=t0,v.cond=OB,v.conforms=AB,v.constant=wg,v.countBy=c1,v.create=yU,v.curry=uR,v.curryRight=dR,v.debounce=pR,v.defaults=CU,v.defaultsDeep=RU,v.defer=M1,v.delay=L1,v.difference=n0,v.differenceBy=r0,v.differenceWith=i0,v.drop=o0,v.dropRight=s0,v.dropRightWhile=a0,v.dropWhile=l0,v.fill=c0,v.filter=d1,v.flatMap=f1,v.flatMapDeep=m1,v.flatMapDepth=g1,v.flatten=eR,v.flattenDeep=u0,v.flattenDepth=d0,v.flip=k1,v.flow=wB,v.flowRight=DB,v.fromPairs=p0,v.functions=DU,v.functionsIn=xU,v.groupBy=h1,v.initial=f0,v.intersection=m0,v.intersectionBy=g0,v.intersectionWith=h0,v.invert=LU,v.invertBy=kU,v.invokeMap=S1,v.iteratee=Dg,v.keyBy=T1,v.keys=zt,v.keysIn=$n,v.map=zd,v.mapKeys=UU,v.mapValues=BU,v.matches=xB,v.matchesProperty=MB,v.memoize=Wd,v.merge=FU,v.mergeWith=yR,v.method=LB,v.methodOf=kB,v.mixin=xg,v.negate=qd,v.nthArg=UB,v.omit=GU,v.omitBy=YU,v.once=P1,v.orderBy=b1,v.over=BB,v.overArgs=U1,v.overEvery=FB,v.overSome=GB, Line truncated
`);return!o||!s?!1:e.chain().command(({tr:a})=>(a.delete(r.pos-2,r.pos),!0)).exitCode().run()},ArrowDown:({editor:e})=>{if(!this.options.exitOnArrowDown)return!1;const{state:t}=e,{selection:n,doc:r}=t,{$from:i,empty:o}=n;if(!o||i.parent.type!==this.type||!(i.parentOffset===i.parent.nodeSize-2))return!1;const a=i.after();return a===void 0?!1:r.nodeAt(a)?e.commands.command(({tr:u})=>(u.setSelection(Oe.near(r.resolve(a))),!0)):e.commands.exitCode()}}},addInputRules(){return[gS({find:CW,type:this.type,getAttributes:e=>({language:e[1]})}),gS({find:RW,type:this.type,getAttributes:e=>({language:e[1]})})]},addProseMirrorPlugins(){return[new je({key:new Qe("codeBlockVSCodeHandler"),props:{handlePaste:(e,t)=>{if(!t.clipboardData||this.editor.isActive(this.type.name))return!1;const n=t.clipboardData.getData("text/plain"),r=t.clipboardData.getData("vscode-editor-data"),i=r?JSON.parse(r):void 0,o=i==null?void 0:i.mode;if(!n||!o)return!1;const{tr:s,schema:a}=e.state,l=a.text(n.replace(/\r\n?/g,`
`));return s.replaceSelectionWith(this.type.create({language:o},l)),s.selection.$from.parent.type!==this.type&&s.setSelection(Se.near(s.doc.resolve(Math.max(0,s.selection.from-2)))),s.setMeta("paste",!0),e.dispatch(s),!0}}})]}});function vW(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Nx(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(t=>{const n=e[t],r=typeof n;(r==="object"||r==="function")&&!Object.isFrozen(n)&&Nx(n)}),e}let iO=class{constructor(t){t.data===void 0&&(t.data={}),this.data=t.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function vx(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function ko(e,...t){const n=Object.create(null);for(const r in e)n[r]=e[r];return t.forEach(function(r){for(const i in r)n[i]=r[i]}),n}const OW="</span>",oO=e=>!!e.scope,AW=(e,{prefix:t})=>{if(e.startsWith("language:"))return e.replace("language:","language-");if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map((r,i)=>`${r}${"_".repeat(i+1)}`)].join(" ")}return`${t}${e}`};let IW=class{constructor(t,n){this.buffer="",this.classPrefix=n.classPrefix,t.walk(this)}addText(t){this.buffer+=vx(t)}openNode(t){if(!oO(t))return;const n=AW(t.scope,{prefix:this.classPrefix});this.span(n)}closeNode(t){oO(t)&&(this.buffer+=OW)}value(){return this.buffer}span(t){this.buffer+=`<span class="${t}">`}};const sO=(e={})=>{const t={children:[]};return Object.assign(t,e),t};let wW=class Ox{constructor(){this.rootNode=sO(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(t){this.top.children.push(t)}openNode(t){const n=sO({scope:t});this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(t){return this.constructor._walk(t,this.rootNode)}static _walk(t,n){return typeof n=="string"?t.addText(n):n.children&&(t.openNode(n),n.children.forEach(r=>this._walk(t,r)),t.closeNode(n)),t}static _collapse(t){typeof t!="string"&&t.children&&(t.children.every(n=>typeof n=="string")?t.children=[t.children.join("")]:t.children.forEach(n=>{Ox._collapse(n)}))}},DW=class extends wW{constructor(t){super(),this.options=t}addText(t){t!==""&&this.add(t)}startScope(t){this.openNode(t)}endScope(){this.closeNode()}__addSublanguage(t,n){const r=t.root;n&&(r.scope=`language:${n}`),this.add(r)}toHTML(){return new IW(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function vu(e){return e?typeof e=="string"?e:e.source:null}function Ax(e){return aa("(?=",e,")")}function xW(e){return aa("(?:",e,")*")}function MW(e){return aa("(?:",e,")?")}function aa(...e){return e.map(n=>vu(n)).join("")}function LW(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function ub(...e){return"("+(LW(e).capture?"":"?:")+e.map(r=>vu(r)).join("|")+")"}function Ix(e){return new RegExp(e.toString()+"|").exec("").length-1}function kW(e,t){const n=e&&e.exec(t);return n&&n.index===0}const PW=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function db(e,{joinWith:t}){let n=0;return e.map(r=>{n+=1;const i=n;let o=vu(r),s="";for(;o.length>0;){const a=PW.exec(o);if(!a){s+=o;break}s+=o.substring(0,a.index),o=o.substring(a.index+a[0].length),a[0][0]==="\\"&&a[1]?s+="\\"+String(Number(a[1])+i):(s+=a[0],a[0]==="("&&n++)}return s}).map(r=>`(${r})`).join(t)}const UW=/\b\B/,wx="[a-zA-Z]\\w*",pb="[a-zA-Z_]\\w*",Dx="\\b\\d+(\\.\\d+)?",xx="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Mx="\\b(0b[01]+)",BW="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",FW=(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=aa(t,/.*\b/,e.binary,/\b.*/)),ko({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(n,r)=>{n.index!==0&&r.ignoreMatch()}},e)},Ou={begin:"\\\\[\\s\\S]",relevance:0},GW={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Ou]},YW={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Ou]},HW={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},cm=function(e,t,n={}){const r=ko({scope:"comment",begin:e,end:t,contains:[]},n);r.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const i=ub("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return r.contains.push({begin:aa(/[ ] Line truncated
https://github.com/highlightjs/highlight.js/issues/2277`),J=x,W=w),G===void 0&&(G=!0);const re={code:W,language:J};ge("before:highlight",re);const De=re.result?re.result:_(re.language,re.code,G);return De.code=re.code,ge("after:highlight",De),De}function _(x,w,G,W){const J=Object.create(null);function re(Y,K){return Y.keywords[K]}function De(){if(!ne.keywords){ve.addText(he);return}let Y=0;ne.keywordPatternRe.lastIndex=0;let K=ne.keywordPatternRe.exec(he),ie="";for(;K;){ie+=he.substring(Y,K.index);const pe=Ze.case_insensitive?K[0].toLowerCase():K[0],Fe=re(ne,pe);if(Fe){const[ht,no]=Fe;if(ve.addText(ie),ie="",J[pe]=(J[pe]||0)+1,J[pe]<=Sq&&(Nn+=no),ht.startsWith("_"))ie+=K[0];else{const ro=Ze.classNameAliases[ht]||ht;Ie(K[0],ro)}}else ie+=K[0];Y=ne.keywordPatternRe.lastIndex,K=ne.keywordPatternRe.exec(he)}ie+=he.substring(Y),ve.addText(ie)}function He(){if(he==="")return;let Y=null;if(typeof ne.subLanguage=="string"){if(!t[ne.subLanguage]){ve.addText(he);return}Y=_(ne.subLanguage,he,!0,hr[ne.subLanguage]),hr[ne.subLanguage]=Y._top}else Y=g(he,ne.subLanguage.length?ne.subLanguage:null);ne.relevance>0&&(Nn+=Y.relevance),ve.__addSublanguage(Y._emitter,Y.language)}function be(){ne.subLanguage!=null?He():De(),he=""}function Ie(Y,K){Y!==""&&(ve.startScope(K),ve.addText(Y),ve.endScope())}function it(Y,K){let ie=1;const pe=K.length-1;for(;ie<=pe;){if(!Y._emit[ie]){ie++;continue}const Fe=Ze.classNameAliases[Y[ie]]||Y[ie],ht=K[ie];Fe?Ie(ht,Fe):(he=ht,De(),he=""),ie++}}function ot(Y,K){return Y.scope&&typeof Y.scope=="string"&&ve.openNode(Ze.classNameAliases[Y.scope]||Y.scope),Y.beginScope&&(Y.beginScope._wrap?(Ie(he,Ze.classNameAliases[Y.beginScope._wrap]||Y.beginScope._wrap),he=""):Y.beginScope._multi&&(it(Y.beginScope,K),he="")),ne=Object.create(Y,{parent:{value:ne}}),ne}function xe(Y,K,ie){let pe=kW(Y.endRe,ie);if(pe){if(Y["on:end"]){const Fe=new iO(Y);Y["on:end"](K,Fe),Fe.isMatchIgnored&&(pe=!1)}if(pe){for(;Y.endsParent&&Y.parent;)Y=Y.parent;return Y}}if(Y.endsWithParent)return xe(Y.parent,K,ie)}function Ee(Y){return ne.matcher.regexIndex===0?(he+=Y[0],1):(si=!0,0)}function Rn(Y){const K=Y[0],ie=Y.rule,pe=new iO(ie),Fe=[ie.__beforeBegin,ie["on:begin"]];for(const ht of Fe)if(ht&&(ht(Y,pe),pe.isMatchIgnored))return Ee(K);return ie.skip?he+=K:(ie.excludeBegin&&(he+=K),be(),!ie.returnBegin&&!ie.excludeBegin&&(he=K)),ot(ie,Y),ie.returnBegin?0:K.length}function Fn(Y){const K=Y[0],ie=w.substring(Y.index),pe=xe(ne,Y,ie);if(!pe)return uO;const Fe=ne;ne.endScope&&ne.endScope._wrap?(be(),Ie(K,ne.endScope._wrap)):ne.endScope&&ne.endScope._multi?(be(),it(ne.endScope,Y)):Fe.skip?he+=K:(Fe.returnEnd||Fe.excludeEnd||(he+=K),be(),Fe.excludeEnd&&(he=K));do ne.scope&&ve.closeNode(),!ne.skip&&!ne.subLanguage&&(Nn+=ne.relevance),ne=ne.parent;while(ne!==pe.parent);return pe.starts&&ot(pe.starts,Y),Fe.returnEnd?0:K.length}function oi(){const Y=[];for(let K=ne;K!==Ze;K=K.parent)K.scope&&Y.unshift(K.scope);Y.forEach(K=>ve.openNode(K))}let pt={};function qe(Y,K){const ie=K&&K[0];if(he+=Y,ie==null)return be(),0;if(pt.type==="begin"&&K.type==="end"&&pt.index===K.index&&ie===""){if(he+=w.slice(K.index,K.index+1),!i){const pe=new Error(`0 width match regex (${x})`);throw pe.languageName=x,pe.badRule=pt.rule,pe}return 1}if(pt=K,K.type==="begin")return Rn(K);if(K.type==="illegal"&&!G){const pe=new Error('Illegal lexeme "'+ie+'" for mode "'+(ne.scope||"<unnamed>")+'"');throw pe.mode=ne,pe}else if(K.type==="end"){const pe=Fn(K);if(pe!==uO)return pe}if(K.type==="illegal"&&ie==="")return 1;if(Gn>1e5&&Gn>K.index*3)throw new Error("potential infinite loop, way more iterations than matches");return he+=ie,ie.length}const Ze=z(x);if(!Ze)throw $s(o.replace("{}",x)),new Error('Unknown language: "'+x+'"');const Jt=mq(Ze);let Fr="",ne=W||Jt;const hr={},ve=new a.__emitter(a);oi();let he="",Nn=0,$t=0,Gn=0,si=!1;try{if(Ze.__emitTokens)Ze.__emitTokens(w,ve);else{for(ne.matcher.considerAll();;){Gn++,si?si=!1:ne.matcher.considerAll(),ne.matcher.lastIndex=$t;const Y=ne.matcher.exec(w);if(!Y)break;const K=w.substring($t,Y.index),ie=qe(K,Y);$t=Y.index+ie}qe(w.substring($t))}return ve.finalize(),Fr=ve.toHTML(),{language:x,value:Fr,relevance:Nn,illegal:!1,_emitter:ve,_top:ne}}catch(Y){if(Y.message&&Y.message.includes("Illegal"))return{language:x,value:wh(w),illegal:!0,relevance:0,_illegalBy:{message:Y.message,index:$t,context:w.slice($t-100,$t+100),mode:Y.mode,resultSoFar:Fr},_emitter:ve};if(i)return{language:x,value:wh(w),illegal:!1,relevance:0,errorRaised:Y,_emitter:ve,_top:ne};throw Y}}function f(x){const w={value:wh(x),illegal:!1,relevance:0,_top:s,_emitter:new a.__emitter(a)};return w._emitter.addText(x),w}function g(x,w){w=w||a.languages||Object.keys(t);const G=f(x),W=w.filter(z).filter(ae).map(be=>_(be,x,!1));W.unshift(G);const J=W.sort((be,Ie)=>{if(be.relevance!==Ie.relevance)return Ie.relevance-be.relevance;if(be.language&&Ie.language){if(z(be.language).supersetOf===Ie.language)return 1;if(z(Ie.language).supersetOf===be.language)return-1}return 0}),[re,De]=J, Line truncated
]*;`,relevance:0},{begin:"[vp][0-9]+"}]}}function lQ(e){const t="[a-z][a-zA-Z0-9_]*",n={className:"string",begin:"\\$.{1}"},r={className:"symbol",begin:"#"+e.UNDERSCORE_IDENT_RE};return{name:"Smalltalk",aliases:["st"],keywords:["self","super","nil","true","false","thisContext"],contains:[e.COMMENT('"','"'),e.APOS_STRING_MODE,{className:"type",begin:"\\b[A-Z][A-Za-z0-9_]*",relevance:0},{begin:t+":",relevance:0},e.C_NUMBER_MODE,r,n,{begin:"\\|[ ]*"+t+"([ ]+"+t+")*[ ]*\\|",returnBegin:!0,end:/\|/,illegal:/\S/,contains:[{begin:"(\\|[ ]*)?"+t}]},{begin:"#\\(",end:"\\)",contains:[e.APOS_STRING_MODE,n,e.C_NUMBER_MODE,r]}]}}function cQ(e){return{name:"SML (Standard ML)",aliases:["ml"],keywords:{$pattern:"[a-z_]\\w*!?",keyword:"abstype and andalso as case datatype do else end eqtype exception fn fun functor handle if in include infix infixr let local nonfix of op open orelse raise rec sharing sig signature struct structure then type val with withtype where while",built_in:"array bool char exn int list option order real ref string substring vector unit word",literal:"true false NONE SOME LESS EQUAL GREATER nil"},illegal:/\/\/|>>/,contains:[{className:"literal",begin:/\[(\|\|)?\]|\(\)/,relevance:0},e.COMMENT("\\(\\*","\\*\\)",{contains:["self"]}),{className:"symbol",begin:"'[A-Za-z_](?!')[\\w']*"},{className:"type",begin:"`[A-Z][\\w']*"},{className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},{begin:"[a-z_]\\w*'[\\w']*"},e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"number",begin:"\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)",relevance:0},{begin:/[-=]>/}]}}function uQ(e){const t={className:"variable",begin:/\b_+[a-zA-Z]\w*/},n={className:"title",begin:/[a-zA-Z][a-zA-Z_0-9]*_fnc_[a-zA-Z_0-9]+/},r={className:"string",variants:[{begin:'"',end:'"',contains:[{begin:'""',relevance:0}]},{begin:"'",end:"'",contains:[{begin:"''",relevance:0}]}]},i=["break","breakWith","breakOut","breakTo","case","catch","continue","continueWith","default","do","else","exit","exitWith","for","forEach","from","if","local","private","switch","step","then","throw","to","try","waitUntil","while","with"],o=["blufor","civilian","configNull","controlNull","displayNull","diaryRecordNull","east","endl","false","grpNull","independent","lineBreak","locationNull","nil","objNull","opfor","pi","resistance","scriptNull","sideAmbientLife","sideEmpty","sideEnemy","sideFriendly","sideLogic","sideUnknown","taskNull","teamMemberNull","true","west"],s=["abs","accTime","acos","action","actionIDs","actionKeys","actionKeysEx","actionKeysImages","actionKeysNames","actionKeysNamesArray","actionName","actionParams","activateAddons","activatedAddons","activateKey","activeTitleEffectParams","add3DENConnection","add3DENEventHandler","add3DENLayer","addAction","addBackpack","addBackpackCargo","addBackpackCargoGlobal","addBackpackGlobal","addBinocularItem","addCamShake","addCuratorAddons","addCuratorCameraArea","addCuratorEditableObjects","addCuratorEditingArea","addCuratorPoints","addEditorObject","addEventHandler","addForce","addForceGeneratorRTD","addGoggles","addGroupIcon","addHandgunItem","addHeadgear","addItem","addItemCargo","addItemCargoGlobal","addItemPool","addItemToBackpack","addItemToUniform","addItemToVest","addLiveStats","addMagazine","addMagazineAmmoCargo","addMagazineCargo","addMagazineCargoGlobal","addMagazineGlobal","addMagazinePool","addMagazines","addMagazineTurret","addMenu","addMenuItem","addMissionEventHandler","addMPEventHandler","addMusicEventHandler","addonFiles","addOwnedMine","addPlayerScores","addPrimaryWeaponItem","addPublicVariableEventHandler","addRating","addResources","addScore","addScoreSide","addSecondaryWeaponItem","addSwitchableUnit","addTeamMember","addToRemainsCollector","addTorque","addUniform","addUserActionEventHandler","addVehicle","addVest","addWaypoint","addWeapon","addWeaponCargo","addWeaponCargoGlobal","addWeaponGlobal","addWeaponItem","addWeaponPool","addWeaponTurret","addWeaponWithAttachmentsCargo","addWeaponWithAttachmentsCargoGlobal","admin","agent","agents","AGLToASL","aimedAtTarget","aimPos","airDensityCurveRTD","airDensityRTD","airplaneThrottle","airportSide","AISFinishHeal","alive","all3DENEntities","allActiveTitleEffects","allAddonsInfo","allAirports","allControls","allCurators","allCutLayers","allDead","allDeadMen","allDiaryRecords","allDiarySubjects","allDisplays","allEnv3DSoundSources","allGroups","allLODs","allMapMarkers","allMines","allMissionObjects","allObjects","allow3DMode","allowCrewInImmobile","allowCuratorLogicIgnoreAreas","allowDamage","allowDammage","allowedService","allowFileOperations","allowFleeing","allowGetIn","allowService","allowSprint","allPlayers","allSimpleObjects","allSites","allTurrets","allUnits","allUnitsUAV","allUsers","allVariables","ambientTemperature","ammo","ammoOnPylon","and","animate","animateBay","animateDoor","animatePylon","animateSouLine truncated
]*?"'`},{begin:`"[^\r
"]*"`}]},{className:"built_in",variants:[{begin:"\\b(abs|acos|asin|atan|atan2|atanh|ceil|cloglog|comb|cos|digamma|exp|floor|invcloglog|invlogit|ln|lnfact|lnfactorial|lngamma|log|log10|max|min|mod|reldif|round|sign|sin|sqrt|sum|tan|tanh|trigamma|trunc|betaden|Binomial|binorm|binormal|chi2|chi2tail|dgammapda|dgammapdada|dgammapdadx|dgammapdx|dgammapdxdx|F|Fden|Ftail|gammaden|gammap|ibeta|invbinomial|invchi2|invchi2tail|invF|invFtail|invgammap|invibeta|invnchi2|invnFtail|invnibeta|invnorm|invnormal|invttail|nbetaden|nchi2|nFden|nFtail|nibeta|norm|normal|normalden|normd|npnchi2|tden|ttail|uniform|abbrev|char|index|indexnot|length|lower|ltrim|match|plural|proper|real|regexm|regexr|regexs|reverse|rtrim|string|strlen|strlower|strltrim|strmatch|strofreal|strpos|strproper|strreverse|strrtrim|strtrim|strupper|subinstr|subinword|substr|trim|upper|word|wordcount|_caller|autocode|byteorder|chop|clip|cond|e|epsdouble|epsfloat|group|inlist|inrange|irecode|matrix|maxbyte|maxdouble|maxfloat|maxint|maxlong|mi|minbyte|mindouble|minfloat|minint|minlong|missing|r|recode|replay|return|s|scalar|d|date|day|dow|doy|halfyear|mdy|month|quarter|week|year|d|daily|dofd|dofh|dofm|dofq|dofw|dofy|h|halfyearly|hofd|m|mofd|monthly|q|qofd|quarterly|tin|twithin|w|weekly|wofd|y|yearly|yh|ym|yofd|yq|yw|cholesky|colnumb|colsof|corr|det|diag|diag0cnt|el|get|hadamard|I|inv|invsym|issym|issymmetric|J|matmissing|matuniform|mreldif|nullmat|rownumb|rowsof|sweep|syminv|trace|vec|vecdiag)(?=\\()"}]},e.COMMENT("^[ ]*\\*.*$",!1),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}}function _Q(e){return{name:"STEP Part 21",aliases:["p21","step","stp"],case_insensitive:!0,keywords:{$pattern:"[A-Z_][A-Z0-9_.]*",keyword:["HEADER","ENDSEC","DATA"]},contains:[{className:"meta",begin:"ISO-10303-21;",relevance:10},{className:"meta",begin:"END-ISO-10303-21;",relevance:10},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT("/\\*\\*!","\\*/"),e.C_NUMBER_MODE,e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"string",begin:"'",end:"'"},{className:"symbol",variants:[{begin:"#",end:"\\d+",illegal:"\\W"}]}]}}const fQ=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}}),mQ=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],gQ=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],hQ=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],EQ=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],SQ=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","backgrou Line truncated
(multipart)?`,end:`\\]
`},{className:"string",begin:"\\d{4}-\\d{2}-\\d{2}(\\s+)\\d{2}:\\d{2}:\\d{2}.\\d+Z"},{className:"string",begin:"(\\+|-)\\d+"},{className:"keyword",relevance:10,variants:[{begin:"^(test|testing|success|successful|failure|error|skip|xfail|uxsuccess)(:?)\\s+(test)?"},{begin:"^progress(:?)(\\s+)?(pop|push)?"},{begin:"^tags:"},{begin:"^time:"}]}]}}function yQ(e){return{name:"Tagger Script",contains:[{className:"comment",begin:/\$noop\(/,end:/\)/,contains:[{begin:/\\[()]/},{begin:/\(/,end:/\)/,contains:[{begin:/\\[()]/},"self"]}],relevance:10},{className:"keyword",begin:/\$[_a-zA-Z0-9]+(?=\()/},{className:"variable",begin:/%[_a-zA-Z0-9:]+%/},{className:"symbol",begin:/\\[\\nt$%,()]/},{className:"symbol",begin:/\\u[a-fA-F0-9]{4}/}]}}function CQ(e){return{name:"Test Anything Protocol",case_insensitive:!0,contains:[e.HASH_COMMENT_MODE,{className:"meta",variants:[{begin:"^TAP version (\\d+)$"},{begin:"^1\\.\\.(\\d+)$"}]},{begin:/---$/,end:"\\.\\.\\.$",subLanguage:"yaml",relevance:0},{className:"number",begin:" (\\d+) "},{className:"symbol",variants:[{begin:"^ok"},{begin:"^not ok"}]}]}}function RQ(e){const t=e.regex,n=/[a-zA-Z_][a-zA-Z0-9_]*/,r={className:"number",variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]};return{name:"Tcl",aliases:["tk"],keywords:["after","append","apply","array","auto_execok","auto_import","auto_load","auto_mkindex","auto_mkindex_old","auto_qualify","auto_reset","bgerror","binary","break","catch","cd","chan","clock","close","concat","continue","dde","dict","encoding","eof","error","eval","exec","exit","expr","fblocked","fconfigure","fcopy","file","fileevent","filename","flush","for","foreach","format","gets","glob","global","history","http","if","incr","info","interp","join","lappend|10","lassign|10","lindex|10","linsert|10","list","llength|10","load","lrange|10","lrepeat|10","lreplace|10","lreverse|10","lsearch|10","lset|10","lsort|10","mathfunc","mathop","memory","msgcat","namespace","open","package","parray","pid","pkg::create","pkg_mkIndex","platform","platform::shell","proc","puts","pwd","read","refchan","regexp","registry","regsub|10","rename","return","safe","scan","seek","set","socket","source","split","string","subst","switch","tcl_endOfWord","tcl_findLibrary","tcl_startOfNextWord","tcl_startOfPreviousWord","tcl_wordBreakAfter","tcl_wordBreakBefore","tcltest","tclvars","tell","time","tm","trace","unknown","unload","unset","update","uplevel","upvar","variable","vwait","while"],contains:[e.COMMENT(";[ \\t]*#","$"),e.COMMENT("^[ \\t]*#","$"),{beginKeywords:"proc",end:"[\\{]",excludeEnd:!0,contains:[{className:"title",begin:"[ \\t\\n\\r]+(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*",end:"[ \\t\\n\\r]",endsWithParent:!0,excludeEnd:!0}]},{className:"variable",variants:[{begin:t.concat(/\$/,t.optional(/::/),n,"(::",n,")*")},{begin:"\\$\\{(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*",end:"\\}",contains:[r]}]},{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},r]}}function NQ(e){const t=["bool","byte","i16","i32","i64","double","string","binary"];return{name:"Thrift",keywords:{keyword:["namespace","const","typedef","struct","enum","service","exception","void","oneway","set","list","map","required","optional"],type:t,literal:"true false"},contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"class",beginKeywords:"struct enum service exception",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]},{begin:"\\b(set|list|map)\\s*<",keywords:{type:[...t,"set","list","map"]},end:">",contains:["self"]}]}}function vQ(e){const t={className:"number",begin:"[1-9][0-9]*",relevance:0},n={className:"symbol",begin:":[^\\]]+"},r={className:"built_in",begin:"(AR|P|PAYLOAD|PR|R|SR|RSR|LBL|VR|UALM|MESSAGE|UTOOL|UFRAME|TIMER|TIMER_OVERFLOW|JOINT_MAX_SPEED|RESUME_PROG|DIAG_REC)\\[",end:"\\]",contains:["self",t,n]},i={className:"built_in",begin:"(AI|AO|DI|DO|F|RI|RO|UI|UO|GI|GO|SI|SO)\\[",end:"\\]",contains:["self",t,e.QUOTE_STRING_MODE,n]};return{name:"TP",keywords:{keyword:["ABORT","ACC","ADJUST","AND","AP_LD","BREAK","CALL","CNT","COL","CONDITION","CONFIG","DA","DB","DIV","DETECT","ELSE","END","ENDFOR","ERR_NUM","ERROR_PROG","FINE","FOR","GP","GUARD","INC","IF","JMP","LINEAR_MAX_SPEED","LOCK","MOD","MONITOR","OFFSET","Offset","OR","OVERRIDE","PAUSE","PREG","PTH","RT_LD","RUN","SELECT","SKIP","Skip","TA","TB","TO","TOOL_OFFSET","Tool_Offset","UF","UT","UFRAME_NUM","UTOOL_NUM","UNLOCK","WAIT","X","Y","Z","W","P","R","STRLEN","SUBSTR","FINDSTR","VOFFSET","PROG","ATTR","MN","POS"],literal:["ON","OFF","max_speed","LPOS","JPOS","ENABLE","DISABLE","START","STOP","RESET"]},contains:[r,i,{className:"keyword",begin:"/(PROG|ATTR|MN|POS|END)\\b"},{className:"keyword",begin:"(CALL|RUN|POINT_LOGIC|LBL)\\b"},{className:"keyword",begin:"\\b(ACC|CNT|Skip|Offset|PSPD|RT_LD|AP_LD|Tool_Offset)"},{className:"number",begin:"\\d+(sec|msec|mm/sec|cm/min|inch/min|deg/sec|mm|in|cm)?\\b",relevance:0},e.COMMENT Line truncated
`},u]}}const d4=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}}),p4=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],_4=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],zx=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],Vx=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],f4=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","fon Line truncated
]`,g={scope:"string",variants:[u,l,p,_]},h={scope:"number",variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"}],relevance:0},E=["false","null","true"],b=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],T=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],R={keyword:b,literal:(de=>{const le=[];return de.forEach(ge=>{le.push(ge),ge.toLowerCase()===ge?le.push(ge.toUpperCase()):le.push(ge.toLowerCase())}),le})(E),built_in:T},A=de=>de.map(le=>le.replace(/\|\d+$/,"")),I={variants:[{match:[/new/,t.concat(f,"+"),t.concat("(?!",A(T).join("\\b|"),"\\b)"),i],scope:{1:"keyword",4:"title.class"}}]},M=t.concat(r,"\\b(?!\\()"),k={variants:[{match:[t.concat(/::/,t.lookahead(/(?!class\b)/)),M],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[i,t.concat(/::/,t.lookahead(/(?!class\b)/)),M],scope:{1:"title.class",3:"variable.constant"}},{match:[i,t.concat("::",t.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[i,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},$={scope:"attr",match:t.concat(r,t.lookahead(":"),t.lookahead(/(?!::)/))},z={relevance:0,begin:/\(/,end:/\)/,keywords:R,contains:[$,o,k,e.C_BLOCK_COMMENT_MODE,g,h,I]},H={relevance:0,match:[/\b/,t.concat("(?!fn\\b|function\\b|",A(b).join("\\b|"),"|",A(T).join("\\b|"),"\\b)"),r,t.concat(f,"*"),t.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[z]};z.contains.push(H);const ae=[$,k,e.C_BLOCK_COMMENT_MODE,g,h,I],fe={begin:t.concat(/#\[\s*/,i),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:E,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:E,keyword:["new","array"]},contains:["self",...ae]},...ae,{scope:"meta",match:i}]};return{case_insensitive:!1,keywords:R,contains:[fe,e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},s,{scope:"variable.language",match:/\$this\b/},o,H,k,{match:[/const/,/\s/,r],scope:{1:"keyword",3:"variable.constant"}},I,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:R,contains:["self",o,k,e.C_BLOCK_COMMENT_MODE,g,h]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trai Line truncated
https://github.com/highlightjs/highlight.js/issues/2277`),J=x,W=w),G===void 0&&(G=!0);const re={code:W,language:J};ge("before:highlight",re);const De=re.result?re.result:_(re.language,re.code,G);return De.code=re.code,ge("after:highlight",De),De}function _(x,w,G,W){const J=Object.create(null);function re(Y,K){return Y.keywords[K]}function De(){if(!ne.keywords){ve.addText(he);return}let Y=0;ne.keywordPatternRe.lastIndex=0;let K=ne.keywordPatternRe.exec(he),ie="";for(;K;){ie+=he.substring(Y,K.index);const pe=Ze.case_insensitive?K[0].toLowerCase():K[0],Fe=re(ne,pe);if(Fe){const[ht,no]=Fe;if(ve.addText(ie),ie="",J[pe]=(J[pe]||0)+1,J[pe]<=z5&&(Nn+=no),ht.startsWith("_"))ie+=K[0];else{const ro=Ze.classNameAliases[ht]||ht;Ie(K[0],ro)}}else ie+=K[0];Y=ne.keywordPatternRe.lastIndex,K=ne.keywordPatternRe.exec(he)}ie+=he.substring(Y),ve.addText(ie)}function He(){if(he==="")return;let Y=null;if(typeof ne.subLanguage=="string"){if(!t[ne.subLanguage]){ve.addText(he);return}Y=_(ne.subLanguage,he,!0,hr[ne.subLanguage]),hr[ne.subLanguage]=Y._top}else Y=g(he,ne.subLanguage.length?ne.subLanguage:null);ne.relevance>0&&(Nn+=Y.relevance),ve.__addSublanguage(Y._emitter,Y.language)}function be(){ne.subLanguage!=null?He():De(),he=""}function Ie(Y,K){Y!==""&&(ve.startScope(K),ve.addText(Y),ve.endScope())}function it(Y,K){let ie=1;const pe=K.length-1;for(;ie<=pe;){if(!Y._emit[ie]){ie++;continue}const Fe=Ze.classNameAliases[Y[ie]]||Y[ie],ht=K[ie];Fe?Ie(ht,Fe):(he=ht,De(),he=""),ie++}}function ot(Y,K){return Y.scope&&typeof Y.scope=="string"&&ve.openNode(Ze.classNameAliases[Y.scope]||Y.scope),Y.beginScope&&(Y.beginScope._wrap?(Ie(he,Ze.classNameAliases[Y.beginScope._wrap]||Y.beginScope._wrap),he=""):Y.beginScope._multi&&(it(Y.beginScope,K),he="")),ne=Object.create(Y,{parent:{value:ne}}),ne}function xe(Y,K,ie){let pe=s5(Y.endRe,ie);if(pe){if(Y["on:end"]){const Fe=new EO(Y);Y["on:end"](K,Fe),Fe.isMatchIgnored&&(pe=!1)}if(pe){for(;Y.endsParent&&Y.parent;)Y=Y.parent;return Y}}if(Y.endsWithParent)return xe(Y.parent,K,ie)}function Ee(Y){return ne.matcher.regexIndex===0?(he+=Y[0],1):(si=!0,0)}function Rn(Y){const K=Y[0],ie=Y.rule,pe=new EO(ie),Fe=[ie.__beforeBegin,ie["on:begin"]];for(const ht of Fe)if(ht&&(ht(Y,pe),pe.isMatchIgnored))return Ee(K);return ie.skip?he+=K:(ie.excludeBegin&&(he+=K),be(),!ie.returnBegin&&!ie.excludeBegin&&(he=K)),ot(ie,Y),ie.returnBegin?0:K.length}function Fn(Y){const K=Y[0],ie=w.substring(Y.index),pe=xe(ne,Y,ie);if(!pe)return RO;const Fe=ne;ne.endScope&&ne.endScope._wrap?(be(),Ie(K,ne.endScope._wrap)):ne.endScope&&ne.endScope._multi?(be(),it(ne.endScope,Y)):Fe.skip?he+=K:(Fe.returnEnd||Fe.excludeEnd||(he+=K),be(),Fe.excludeEnd&&(he=K));do ne.scope&&ve.closeNode(),!ne.skip&&!ne.subLanguage&&(Nn+=ne.relevance),ne=ne.parent;while(ne!==pe.parent);return pe.starts&&ot(pe.starts,Y),Fe.returnEnd?0:K.length}function oi(){const Y=[];for(let K=ne;K!==Ze;K=K.parent)K.scope&&Y.unshift(K.scope);Y.forEach(K=>ve.openNode(K))}let pt={};function qe(Y,K){const ie=K&&K[0];if(he+=Y,ie==null)return be(),0;if(pt.type==="begin"&&K.type==="end"&&pt.index===K.index&&ie===""){if(he+=w.slice(K.index,K.index+1),!i){const pe=new Error(`0 width match regex (${x})`);throw pe.languageName=x,pe.badRule=pt.rule,pe}return 1}if(pt=K,K.type==="begin")return Rn(K);if(K.type==="illegal"&&!G){const pe=new Error('Illegal lexeme "'+ie+'" for mode "'+(ne.scope||"<unnamed>")+'"');throw pe.mode=ne,pe}else if(K.type==="end"){const pe=Fn(K);if(pe!==RO)return pe}if(K.type==="illegal"&&ie==="")return 1;if(Gn>1e5&&Gn>K.index*3)throw new Error("potential infinite loop, way more iterations than matches");return he+=ie,ie.length}const Ze=z(x);if(!Ze)throw zs(o.replace("{}",x)),new Error('Unknown language: "'+x+'"');const Jt=G5(Ze);let Fr="",ne=W||Jt;const hr={},ve=new a.__emitter(a);oi();let he="",Nn=0,$t=0,Gn=0,si=!1;try{if(Ze.__emitTokens)Ze.__emitTokens(w,ve);else{for(ne.matcher.considerAll();;){Gn++,si?si=!1:ne.matcher.considerAll(),ne.matcher.lastIndex=$t;const Y=ne.matcher.exec(w);if(!Y)break;const K=w.substring($t,Y.index),ie=qe(K,Y);$t=Y.index+ie}qe(w.substring($t))}return ve.finalize(),Fr=ve.toHTML(),{language:x,value:Fr,relevance:Nn,illegal:!1,_emitter:ve,_top:ne}}catch(Y){if(Y.message&&Y.message.includes("Illegal"))return{language:x,value:kh(w),illegal:!0,relevance:0,_illegalBy:{message:Y.message,index:$t,context:w.slice($t-100,$t+100),mode:Y.mode,resultSoFar:Fr},_emitter:ve};if(i)return{language:x,value:kh(w),illegal:!1,relevance:0,errorRaised:Y,_emitter:ve,_top:ne};throw Y}}function f(x){const w={value:kh(x),illegal:!1,relevance:0,_top:s,_emitter:new a.__emitter(a)};return w._emitter.addText(x),w}function g(x,w){w=w||a.languages||Object.keys(t);const G=f(x),W=w.filter(z).filter(ae).map(be=>_(be,x,!1));W.unshift(G);const J=W.sort((be,Ie)=>{if(be.relevance!==Ie.relevance)return Ie.relevance-be.relevance;if(be.language&&Ie.language){if(z(be.language).supersetOf===Ie.language)return 1;if(z(Ie.language).supersetOf===be.language)return-1}return 0}),[re,De]=J, Line truncated
`);return!r||!i?!1:!!e.chain().command(({tr:o})=>(o.delete(t.pos-2,t.pos),!0)).exitCode().run()}function i6(){if(this.options.codeMode)return!1;const{empty:e,$anchor:t}=this.editor.state.selection,n=t.pos===1;return!e||t.parent.type.name!==this.name?!1:n||!t.parent.textContent.length?!!this.editor.commands.clearNodes():!1}function o6({editor:e}){const t=e.state.selection.$from.parent.textContent.slice(0,e.state.selection.$from.parentOffset);return(t==null?void 0:t.split(`
`))||[]}const Sb=["arduino","bash","c","cpp","csharp","css","diff","go","graphql","ini","java","javascript","json","kotlin","less","lua","makefile","markdown","objectivec","perl","php","php-template","plaintext","python","python-repl","r","ruby","rust","scss","shell","sql","swift","typescript","vbnet","wasm","xml","yaml","ipsphtml","ipscss"],s6=rt.create({name:"listItem",addOptions(){return{HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}},content:"paragraph block*",defining:!0,parseHTML(){return[{tag:"li"}]},renderHTML({HTMLAttributes:e}){return["li",We(this.options.HTMLAttributes,e),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),Du=s6.extend({parseHTML(){return[{tag:"li",getAttrs:e=>{var t;if(((t=e.childNodes)==null?void 0:t.length)>1){const n=document.createElement("div");n.innerHTML=e.innerHTML,e.innerHTML="",e.appendChild(n)}return null}}]}});function Kt(e,t="",n=!0){const r=i=>{t&&(i.message=t+": "+i.message),window.Debug[n?"warn":"error"](i)};try{const i=e();return i instanceof Promise?new Promise(o=>{i.catch(r).finally(()=>o(!1))}):!0}catch(i){return r(i),!1}}const tr=_b.extend({addCommands(){var e;return{...(e=this.parent)==null?void 0:e.call(this)}},addAttributes(){var e;return{language:{default:this.options.defaultLanguage||((e=this.options.allowedLanguages)==null?void 0:e[0])||"plaintext",parseHTML:t=>{var r,i;const n=(r=(()=>{if(t.hasAttribute("language"))return t.getAttribute("language");for(const o of t.classList)if(o.match(/^language-([a-z0-9\-_]+)$/i))return o.match(/^language-([a-z0-9\-_]+)$/i)[1];for(const o of t.querySelectorAll("code")){if(o.hasAttribute("language"))return o.getAttribute("language");for(const s of o.classList)if(s.match(/^language-([a-z0-9\-_]+)$/i))return s.match(/^language-([a-z0-9\-_]+)$/i)[1]}})())==null?void 0:r.toLowerCase();return this.options.codeMode&&(!n||!Sb.includes(n)||n!==this.options.defaultLanguage&&this.options.allowedLanguages&&!this.options.allowedLanguages.includes(n))?this.options.defaultLanguage||((i=this.options.allowedLanguages)==null?void 0:i[0])||"plaintext":n}}}},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),codeMode:!1,allowedLanguages:null}},renderHTML({HTMLAttributes:e}){var n;const t=this.options.codeMode?this.editor.options.lastLang||((n=this.editor.options.allowedLanguages)==null?void 0:n[0])||"plaintext":e.language;return["pre",{spellcheck:"false",class:`${this.options.codeMode?"":"ipsCode "}language-${t}`,"data-language":bl[t]||t},["code",{},0]]},onUpdate({editor:e}){this.options.codeMode&&e.options.lastLang&&e.options.lastLang!==e.getAttributes(this).language&&e.chain().setCodeBlock({language:e.options.lastLang}).run()},addKeyboardShortcuts(){const e=this.editor;return{"Mod-Alt-c":()=>this.editor.commands.toggleCodeBlock(),Backspace:()=>{var o;if(!e.state.selection.empty||((o=e.state.selection.$from.parent)==null?void 0:o.type.name)!==this.name)return!1;if(i6.call(this))return!0;if(!this.options.codeMode&&(!e.state.selection.$from.parent.attrs.language||["plaintext","bash","shell","zsh","sh"].includes(e.state.selection.$from.parent.attrs.language)))return!1;const n=e.state.selection.$from.parent.textContent.slice(0,e.state.selection.$from.parentOffset),r=e.state.selection.$from.parent.textContent.slice(e.state.selection.$from.parentOffset);if(n&&r){for(const s in Wt)if(n.endsWith(s)&&r.startsWith(Wt[s]))return e.chain().deleteRange({from:e.state.selection.from-s.length,to:e.state.selection.from+Wt[s].length}).setTextSelection(e.state.selection.from-s.length).focus().run()}const i=n.match(/(\t)[^\n]*(\n\t+)$/);return i?e.chain().deleteRange({from:e.state.selection.from-i[2].length,to:e.state.selection.from}).setTextSelection(e.state.selection.from-i[2].length).focus().run():!1},Enter:({editor:t})=>{var y,R,A,I,M,k,$,z,H,ae,fe;if(r6.call(this,{editor:t}))return!0;const{$from:r}=t.state.selection,{parent:i}=r;if(!t.state.selection.empty||(i==null?void 0:i.type.name)!==this.name||!this.options.codeMode&&(!i.attrs.language||["plaintext","bash","shell","zsh","sh"].includes(i.attrs.language)))return!1;const o=o6({editor:t});if(!o.length)return!1;const s=o[o.length-1],a=o[o.length-2];let l=((R=(y=s.match(/^\t*/))==null?void 0:y[0])==null?void 0:R.length)||0,u=!1;const p=i.attrs.language,_=["ipsphtml","xml","html","xhtml","html5"].includes(p),f=["ipscss","css","scss","sass","less"].includes(p),g=["plaintext","rtf","markdown","md","bbcode"].includes(p),h=_?/(<[^>/]*>)$/:/([{[(.:]|->)$/,E=_?/(<\/[^/>]*>)$/:/^\s*([}\])]+[,;]?)$/;let b=!1;if(!_&&!f&&!g&&s.match(/^\s+(\.|->)?[a-z0-9_-]/i))if(s.match(/^\s+(\.|->)/))b=!0,l--;else{let de=1;for(;de<o.length&&((M=(I=(A=o[o.length-1-de])==null?void 0:A.match(/^\t*/))==null?void 0:I[0])==null?void 0:M.length)<=l;)de++;(k=o[o.length-de])!=null&&k.match(/(\.|->)\s*$/)&&(b=!0,l--)}let T=!1 Line truncated
`+" ".repeat(l);u?(de-=s.length,ge=s.replace(/^\t/,"")+ge):T&&(le=`
`+(l>1?" ".repeat(l-1):""),ge+=le);let Ne=this.editor.chain().insertContentAt({from:de,to:t.state.selection.from},{type:"text",text:ge});return le&&(Ne=Ne.setTextSelection(t.state.selection.from+ge.length-le.length)),Ne.focus().run()}return!1},ArrowDown:({editor:t})=>{if(!this.options.exitOnArrowDown||this.options.codeMode)return!1;const{state:n}=t,{selection:r,doc:i}=n,{$from:o,empty:s}=r;if(!s||o.parent.type!==this.type||!(o.parentOffset===o.parent.nodeSize-2))return!1;const l=o.after();return l===void 0||i.nodeAt(l)?!1:!!t.commands.exitCode()},ArrowUp:a6.bind(this),Tab:Ip.bind(this,!1,{editor:e}),"Shift-Tab":Ip.bind(this,!0,{editor:e}),"Alt-Tab":Ip.bind(this,!1,{editor:e},!0),"Shift-Alt-Tab":Ip.bind(this,!0,{editor:e},!0)}},addProseMirrorPlugins(){var t;const e={};for(const n in Wt)e[Wt[n]]=n;return[...((t=this.parent)==null?void 0:t.call(this))||[],new je({key:new Qe("ipsCodeModeSyntaxHelpers"),props:{handleKeyDown:(n,r)=>{var o;if(!(r instanceof KeyboardEvent)||r.metaKey||r.altKey)return;const i=this.editor;if(((o=r.key)==null?void 0:o.toLowerCase())in Wt)return r.key.toLowerCase()in e&&NO({editor:i,opener:r.key.toLowerCase()})?!0:!!l6({editor:i,char:r.key.toLowerCase()});if(r.key.toLowerCase()in e)return!!NO({editor:i,opener:e[r.key.toLowerCase()]})}}})]}});function a6({editor:e}){if(e.options.codeMode)return!1;const{$from:t,empty:n}=e.state.selection;if(t.nodeBefore||!n||t.parent.type!==this.type)return!1;let r=0,i;for(const s of[...t.path].reverse()){if(!Number.isInteger(s)&&(r++,r===2))break;i=s}return!r||!Number.isInteger(i)||i!==0||!(t.parentOffset===0)?!1:(e.chain().insertContentAt(t.before(),"<p>&nbsp;</p>",{updateSelection:!0}).run(),!0)}function Ip(e=!1,{editor:t=null},n=!1){var r,i,o,s;if((!t.state.selection.empty||e)&&t.isActive(this.name)&&(t.options.codeMode||[...t.state.selection.$from.path].reverse()[3]===[...t.state.selection.$to.path].reverse()[3]))return t.state.selection.empty&&e&&t.state.selection.$from.parentOffset===0||Kt(()=>{t.chain().command(({tr:a,chain:l})=>{var u,p,_,f;try{const{from:g,to:h}=t.state.selection,E=[...t.state.selection.$from.path].reverse()[3]+1;let b=g;if(b>[...t.state.selection.$from.path].reverse()[3]){for(;b>[...t.state.selection.$from.path].reverse()[3]&&!((u=a.doc.slice(b-1,b--).content.content[0])!=null&&u.textContent.startsWith(`
`)););b++}const T=((p=a.doc.slice(b,h).content.content[0])==null?void 0:p.textContent)||"",y=g-b,R=T.split(`
`),A=R.map(k=>e?k.replace(/^\t/,""):" "+k).join(`
`);let I=!1;try{e&&R.length>1&&R[R.length-1].match(/^\t/)&&((f=(_=a.doc.slice(h,h+1))==null?void 0:_.content.content[0])==null?void 0:f.textContent)===" "&&(I=!0)}catch{}a.insertText(A,b,h);const M={from:b+y,to:b+A.length};e&&T.startsWith(" ")?M.from--:e||M.from++,I&&M.to++,E>M.from&&(M.from=E),l().setTextSelection(M).focus().run()}catch{}return!0}).run()},"Something went wrong when modifying indents in a codeblock selection"),!0;if(!n&&t.isActive(Du.name))return!1;if(t.state.selection.empty){if(e){if(t.state.selection.$from.parentOffset>0){const a=t.state.doc.slice(t.state.selection.from-1,t.state.selection.from);if(((i=(r=a==null?void 0:a.content)==null?void 0:r.content[0])==null?void 0:i.textContent)===" "){const{from:l}=t.state.selection;return t.chain().command(({tr:u})=>(u.deleteRange(l-1,l),!0)).setTextSelection({from:l-1,to:l-1}).run(),!0}}if(t.state.selection.$from.parentOffset<t.state.selection.$from.parent.nodeSize-2){const a=t.state.doc.slice(t.state.selection.from,t.state.selection.from+1);if(((s=(o=a==null?void 0:a.content)==null?void 0:o.content[0])==null?void 0:s.textContent)===" "){const{from:l}=t.state.selection;return t.chain().command(({tr:u})=>(u.deleteRange(l,l+1),!0)).setTextSelection({from:l,to:l}).run(),!0}}}}else return!0;return t.chain().insertContent(" ").focus().run(),!0}function l6({editor:e,char:t}){var _,f,g;if(!(t in Wt))return!1;const{$from:n,$to:r}=e.state.selection,i=n.parent,o=r.parent;if(((_=i==null?void 0:i.type)==null?void 0:_.name)!==_b.name||i!==o)return!1;if(e.state.selection.empty)return e.chain().insertContent(`${t}${Wt[t]}`).setTextSelection(e.state.selection.from+t.length).focus().run();const s=i.textContent;let a=s.slice(n.parentOffset,r.parentOffset);if(!a)return!1;if(['"',"'","`"].includes(t)){const h=new RegExp(`(^|[^\\\\])\\${t}`,"g");a=a.replaceAll(h,`$1\\${t}`).replaceAll(/\n/g,"\\n")}let l="",u=0;if(a.match(/\n/)){const E=s.slice(0,n.parentOffset).split(`
`).pop(),b=s.slice(r.parentOffset).split(`
`).shift();let T=Math.max(0,((g=(f=E.match(/^\t*/))==null?void 0:f[0])==null?void 0:g.length)+1);E.match(/^\t*$/)&&b.match(/^\t+$/)&&(T+=b.match(/^\t+$/)[0].length),b.match(/^\s*$/)&&(a=a.replace(/^\s*?\n\s*(.?)/,"$1")),u=T+1;const y=" ".repeat(T),R=new RegExp(`\\n\\t{0,${T?T-1:0}}`,"g");if(a=a.replaceAll(R,`
${y}`),a=`${t}
${y}${a}
${y?y.slice(0,y.length-1):""}${Wt[t]}`,r.parentOffset<s.length)try{const A=s.slice(r.parentOffset,r.parentOffset+1);A!=null&&A.match(/\n/)||(l=`
`+(y?y.slice(0,y.length-1):""),a+=l)}catch{}}else a=`${t}${a}${Wt[t]}`;const p={from:e.state.selection.from+t.length+u,to:e.state.selection.from+a.length-Wt[t].length-l.length-(u?u-1:0)};return e.chain().insertContentAt({from:e.state.selection.from,to:e.state.selection.to},{type:"text",text:a}).setTextSelection(p).focus().run()}function NO({editor:e,opener:t}){var o;if(!(t in Wt)||!e.state.selection.empty)return!1;const{$from:n}=e.state.selection,r=n.parent;if((r==null?void 0:r.type.name)!==_b.name)return!1;const i=(o=n.parent)==null?void 0:o.textContent;if(n.parentOffset<1||n.parentOffset>=i.length)return!1;try{const s=n.parentOffset;let a=i==null?void 0:i.slice(s,s+Wt[t].length);if(!a)return;if(a.startsWith(Wt[t]))return s>0&&['"',"'","`"].includes(t)&&(i==null?void 0:i[s-1])==="\\"?e.chain().insertContent({type:"text",text:Wt[t]}).focus().run():e.chain().setTextSelection(e.state.selection.from+Wt[t].length).focus().run()}catch{return!1}return!1}const Wt={"{":"}","[":"]","(":")","'":"'",'"':'"',"`":"`"},Sc={};function TM(e,t,n=[]){var r;if(!((r=Sc[e])!=null&&r.to)){let i=!1;if(e===t)i=[e];else if(e in Uo){const o=[e];if(t in Uo[e])o.push(t);else{let s;n=[...n,...o];for(const a in Uo[e])if(!(n.includes(a)||a===e)&&Uo[a]){const l=TM(a,t,n);Array.isArray(l)&&(!s||s.length>l.length)&&(s=l)}Array.isArray(s)&&o.splice(1,0,...s)}o.length&&o[o.length-1]===t&&(i=o)}e in Sc||(Sc[e]={}),Sc[e][t]=i}return Sc[e][t]}function c6(e,t,n){const r=TM(e,t);if(!Array.isArray(r))throw new RangeError(`Cannot convert ${e} to ${t} because there is not a known conversion pathway`);r.length===1&&e===Tn.name&&n.chain().toggleHeading({level:n.level||1});for(let i=0;i<r.length-1;i++){const o=Uo[r[i]][r[i+1]](n);if(o!==void 0&&!o)throw new Error(`Could not convert ${r[i]} to ${r[i+1]}`)}return!0}function Tb(e){const t=[...e.state.selection.$from.path].reverse()[2],n=t==null?void 0:t.type.name;return n===Tn.name?[n,{level:t.attrs.level||1}]:[n||"",{}]}function s_(e){var n;if(e[0]===Tn.name)return`Heading ${((n=e[1])==null?void 0:n.level)||""}`;const t=e[0]in NS?e[0]:Dt.name;return NS[t]}function u6(e){if(e in vO)return[vO[e],{}];const t=s_([Tn.name,{}]);if(e.startsWith(t)){const n=parseInt(e.replace("Heading","").trim())||1;return[Tn.name,{level:n}]}return[Dt.name,{}]}const NS={[Ji.name]:"Ordered List",[ts.name]:"Bullet List",[tr.name]:"Code Block",[Dt.name]:"Paragraph"},vO=Object.fromEntries([...Object.entries(NS)].map(e=>e.reverse()));function d6(e){for(let t of Tn.options.levels)if(e.isActive(Tn.name,{level:t}))return{level:t};return null}function bM(e){const t=Tb(e);return t[0]in Uo?p6(...t).filter(n=>{var r,i;return(n[0]!==Tn.name||!((r=e.options.restrictions)!=null&&r.has("heading")))&&!(n[0]===Tn.name&&n[1].level===1&&((i=e.options.restrictions)!=null&&i.has("heading_1")))}):[]}const Tc={};function p6(e,t={}){const n=JSON.stringify({name:e,attributes:t});if(!(n in Tc)){const r=yM(e);Tc[n]=[];for(const i of r)if(i===Tn.name)for(let o=1;o<=6;o++)Tc[n].push([Tn.name,{level:o}]);else Tc[n].push([i,{}])}return Tc[n]}function yM(e,t){if(t=t||new Set,t.add(e),e in Uo)for(const n in Uo[e])t.has(n)||yM(n,t);return t}const Uo={[Dt.name]:{[tr.name]:({chain:e})=>e().setCodeBlock(),[Tn.name]:({chain:e,level:t=1})=>e().setHeading({level:t})},[tr.name]:{[Dt.name]:({chain:e})=>e().toggleCodeBlock()},[Tn.name]:{[Dt.name]:({chain:e,editor:t,level:n})=>{var r;return n=n||((r=d6(t))==null?void 0:r.level),n?e().toggleHeading({level:n}):!1}}};function _6({...e}){const{editor:t}=F.useContext(Pe),n=Tb(t);return e.dropdownOptions=e.dropdownOptions||{},e.dropdownOptions.className=e.dropdownOptions.className||"",e.dropdownOptions.className=[...e.dropdownOptions.className.split(/\s+/),"ipsRichText"].join(" "),N.jsx(sa,{current:N.jsx(N.Fragment,{children:N.jsx("i",{className:"fa-solid fa-paragraph"})}),currentValue:s_(n),blank:N.jsx(OO,{block:[Dt.title,{}]}),items:bM(t).map(r=>[s_(r),N.jsx(OO,{block:r},s_(r))]),onChange:r=>{const i=u6(r);t.chain().command(o=>c6(n[0],i[0],{...i[1]||{},...o})).focus().run()},...e,dropdownOptions:{...e.dropdownOptions,location:"se"}})}function OO({block:e,style:t=!0}){if(e[0]===Tn.name){const n=`h${e[1].level}`;return t?N.jsxs(n,{children:["Heading ",e[1].level]}):N.jsxs(N.Fragment,{children:["Heading ",e[1].level]})}return e[0]===tr.name?t?N.jsx("code",{children:"Code Block"}):N.jsx(N.Fragment,{children:"Code Block"}):N.jsx(N.Fragment,{children:"Paragraph"})}const xu=cn.create({name:"subscript",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"sub"},{style:"vertical-align",getAttrs(e){return e!=="sub"?!1:null}}]},renderHTML({HTMLAttributes:e}){return["sub",We(this.options.HTMLAttributes,e),0]},addCommands(){return{setSubscript:()=>({commands:e})=>e.setMark(this.name),toggleSubscript:()=>({commands:e})=>e.toggleMark(this.name),unsetSubscript:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-,":()=>this.editor.commands.toggleSubscript()}}}),Mu=cn.create({name:"superscript",addOptionsLine truncated
`,y6="️",C6="‍",Gh="";let wp=null,Dp=null;function R6(e=[]){const t={};qn.groups=t;const n=new qn;wp==null&&(wp=wO(g6)),Dp==null&&(Dp=wO(h6)),ee(n,"'",Cb),ee(n,"{",Kc),ee(n,"}",Qc),ee(n,"[",tf),ee(n,"]",nf),ee(n,"(",rf),ee(n,")",of),ee(n,"<",sf),ee(n,">",af),ee(n,"(",lf),ee(n,")",cf),ee(n,"「",uf),ee(n,"」",df),ee(n,"『",pf),ee(n,"』",_f),ee(n,"<",ff),ee(n,">",mf),ee(n,"&",gf),ee(n,"*",hf),ee(n,"@",Co),ee(n,"`",Sf),ee(n,"^",Tf),ee(n,":",Ao),ee(n,",",Rb),ee(n,"$",bf),ee(n,".",_i),ee(n,"=",yf),ee(n,"!",Nb),ee(n,"-",Ar),ee(n,"%",Xc),ee(n,"|",Cf),ee(n,"+",Rf),ee(n,"#",Nf),ee(n,"?",jc),ee(n,'"',vb),ee(n,"/",fi),ee(n,";",Ob),ee(n,"~",Zc),ee(n,"_",vf),ee(n,"\\",Ef),ee(n,"・",vM);const r=At(n,ki,bb,{[vS]:!0});At(r,ki,r);const i=At(r,Li,RM,{[qc]:!0}),o=At(r,bc,NM,{[Dc]:!0}),s=At(n,Li,Ui,{[OS]:!0});At(s,ki,i),At(s,Li,s),At(i,ki,i),At(i,Li,i);const a=At(n,bc,wS,{[AS]:!0});At(a,Li),At(a,ki,o),At(a,bc,a),At(o,ki,o),At(o,Li),At(o,bc,o);const l=ee(n,Fh,yb,{[Ph]:!0}),u=ee(n,IO,MS,{[Ph]:!0}),p=At(n,Bh,MS,{[Ph]:!0});ee(n,Gh,p),ee(u,Fh,l),ee(u,Gh,p),At(u,Bh,p),ee(p,IO),ee(p,Fh),At(p,Bh,p),ee(p,Gh,p);const _=At(n,Uh,OM,{[CM]:!0});ee(_,"#"),At(_,Uh,_),ee(_,y6,_);const f=ee(_,C6);ee(f,"#"),At(f,Uh,_);const g=[[Li,s],[ki,i]],h=[[Li,null],[bc,a],[ki,o]];for(let E=0;E<wp.length;E++)go(n,wp[E],DS,Ui,g);for(let E=0;E<Dp.length;E++)go(n,Dp[E],xS,wS,h);ks(DS,{tld:!0,ascii:!0},t),ks(xS,{utld:!0,alpha:!0},t),go(n,"file",a_,Ui,g),go(n,"mailto",a_,Ui,g),go(n,"http",Ma,Ui,g),go(n,"https",Ma,Ui,g),go(n,"ftp",Ma,Ui,g),go(n,"ftps",Ma,Ui,g),ks(a_,{scheme:!0,ascii:!0},t),ks(Ma,{slashscheme:!0,ascii:!0},t),e=e.sort((E,b)=>E[0]>b[0]?1:-1);for(let E=0;E<e.length;E++){const b=e[E][0],y=e[E][1]?{[E6]:!0}:{[S6]:!0};b.indexOf("-")>=0?y[IS]=!0:Li.test(b)?ki.test(b)?y[qc]=!0:y[OS]=!0:y[vS]=!0,AO(n,b,b,y)}return AO(n,"localhost",Lu,{ascii:!0}),n.jd=new qn(Of),{start:n,tokens:ta({groups:t},AM)}}function IM(e,t){const n=N6(t.replace(/[A-Z]/g,a=>a.toLowerCase())),r=n.length,i=[];let o=0,s=0;for(;s<r;){let a=e,l=null,u=0,p=null,_=-1,f=-1;for(;s<r&&(l=a.go(n[s]));)a=l,a.accepts()?(_=0,f=0,p=a):_>=0&&(_+=n[s].length,f++),u+=n[s].length,o+=n[s].length,s++;o-=_,s-=f,u-=_,i.push({t:p.t,v:t.slice(o-u,o),s:o-u,e:o})}return i}function N6(e){const t=[],n=e.length;let r=0;for(;r<n;){let i=e.charCodeAt(r),o,s=i<55296||i>56319||r+1===n||(o=e.charCodeAt(r+1))<56320||o>57343?e[r]:e.slice(r,r+2);t.push(s),r+=s.length}return t}function go(e,t,n,r,i){let o;const s=t.length;for(let a=0;a<s-1;a++){const l=t[a];e.j[l]?o=e.j[l]:(o=new qn(r),o.jr=i.slice(),e.j[l]=o),e=o}return o=new qn(n),o.jr=i.slice(),e.j[t[s-1]]=o,o}function wO(e){const t=[],n=[];let r=0,i="0123456789";for(;r<e.length;){let o=0;for(;i.indexOf(e[r+o])>=0;)o++;if(o>0){t.push(n.join(""));for(let s=parseInt(e.substring(r,r+o),10);s>0;s--)n.pop();r+=o}else n.push(e[r]),r++}return t}const yl={defaultProtocol:"http",events:null,format:DO,formatHref:DO,nl2br:!1,tagName:"a",target:null,rel:null,validate:!0,truncate:1/0,className:null,attributes:null,ignoreTags:[],render:null};function dm(e,t=null){let n=ta({},yl);e&&(n=ta(n,e instanceof dm?e.o:e));const r=n.ignoreTags,i=[];for(let o=0;o<r.length;o++)i.push(r[o].toUpperCase());this.o=n,t&&(this.defaultRender=t),this.ignoreTags=i}dm.prototype={o:yl,ignoreTags:[],defaultRender(e){return e},check(e){return this.get("validate",e.toString(),e)},get(e,t,n){const r=t!=null;let i=this.o[e];return i&&(typeof i=="object"?(i=n.t in i?i[n.t]:yl[e],typeof i=="function"&&r&&(i=i(t,n))):typeof i=="function"&&r&&(i=i(t,n.t,n)),i)},getObj(e,t,n){let r=this.o[e];return typeof r=="function"&&t!=null&&(r=r(t,n.t,n)),r},render(e){const t=e.render(this);return(this.get("render",null,e)||this.defaultRender)(t,e.t,e)}};function DO(e){return e}var v6=Object.freeze({__proto__:null,defaults:yl,Options:dm,assign:ta});function wM(e,t){this.t="token",this.v=e,this.tk=t}wM.prototype={isLink:!1,toString(){return this.v},toHref(e){return this.toString()},toFormattedString(e){const t=this.toString(),n=e.get("truncate",t,this),r=e.get("format",t,this);return n&&r.length>n?r.substring(0,n)+"…":r},toFormattedHref(e){return e.get("formatHref",this.toHref(e.get("defaultProtocol")),this)},startIndex(){return this.tk[0].s},endIndex(){return this.tk[this.tk.length-1].e},toObject(e=yl.defaultProtocol){return{type:this.t,value:this.toString(),isLink:this.isLink,href:this.toHref(e),start:this.startIndex(),end:this.endIndex()}},toFormattedObject(e){return{type:this.t,value:this.toFormattedString(e),isLink:this.isLink,href:this.toFormattedHref(e),start:this.startIndex(),end:this.endIndex()}},validate(e){return e.get("validate",this.toString(),this)},render(e){const t=this,n=this.toHref(e.get("defaultProtocol")),r=e.get("formatHref",n,this),i=e.get("tagName",n,t),o=this.toFormattedString(e),s={},a=e.get("className",n,t),l=e.get("target",n,t),u=e.get("rel",n,t),p=e.getObj("attributes",n,t),_=e.getObj("events",n,t);return s.href=r,a&&(s.class=a),l&&(s.target=l),u&&(s.rel=u),p&&ta(s,p),{tagName:i,aLine truncated
1. Must only contain digits, lowercase ASCII letters or "-"
2. Cannot start or end with "-"
3. "-" cannot repeat`);mt.customSchemes.push([e,t])}function M6(){mt.scanner=R6(mt.customSchemes);for(let e=0;e<mt.tokenQueue.length;e++)mt.tokenQueue[e][1]({scanner:mt.scanner});mt.parser=A6(mt.scanner.tokens);for(let e=0;e<mt.pluginQueue.length;e++)mt.pluginQueue[e][1]({scanner:mt.scanner,parser:mt.parser});return mt.initialized=!0,mt}function Ab(e){return mt.initialized||M6(),I6(mt.parser.start,e,IM(mt.scanner.start,e))}Ab.scan=IM;function Ib(e,t=null,n=null){if(t&&typeof t=="object"){if(n)throw Error(`linkifyjs: Invalid link type ${t}; must be a string`);n=t,t=null}const r=new dm(n),i=Ab(e),o=[];for(let s=0;s<i.length;s++){const a=i[s];a.isLink&&(!t||a.t===t)&&r.check(a)&&o.push(a.toFormattedObject(r))}return o}function L6(e){return e.length===1?e[0].isLink:e.length===3&&e[1].isLink?["()","[]"].includes(e[0].value+e[2].value):!1}function k6(e){return new je({key:new Qe("autolink"),appendTransaction:(t,n,r)=>{const i=t.some(u=>u.docChanged)&&!n.doc.eq(r.doc),o=t.some(u=>u.getMeta("preventAutolink"));if(!i||o)return;const{tr:s}=r,a=Xz(n.doc,[...t]);if(rV(a).forEach(({newRange:u})=>{const p=Zz(r.doc,u,g=>g.isTextblock);let _,f;if(p.length>1?(_=p[0],f=r.doc.textBetween(_.pos,_.pos+_.node.nodeSize,void 0," ")):p.length&&r.doc.textBetween(u.from,u.to," "," ").endsWith(" ")&&(_=p[0],f=r.doc.textBetween(_.pos,u.to,void 0," ")),_&&f){const g=f.split(" ").filter(T=>T!=="");if(g.length<=0)return!1;const h=g[g.length-1],E=_.pos+f.lastIndexOf(h);if(!h)return!1;const b=Ab(h).map(T=>T.toObject(e.defaultProtocol));if(!L6(b))return!1;b.filter(T=>T.isLink).map(T=>({...T,from:E+T.start+1,to:E+T.end+1})).filter(T=>r.schema.marks.code?!r.doc.rangeHasMark(T.from,T.to,r.schema.marks.code):!0).filter(T=>e.validate(T.value)).filter(T=>e.shouldAutoLink(T.value)).forEach(T=>{sb(T.from,T.to,r.doc).some(y=>y.mark.type===e.type)||s.addMark(T.from,T.to,e.type.create({href:T.href}))})}}),!!s.steps.length)return s}})}function P6(e){return new je({key:new Qe("handleClickLink"),props:{handleClick:(t,n,r)=>{var i,o;if(r.button!==0||!t.editable)return!1;let s=r.target;const a=[];for(;s.nodeName!=="DIV";)a.push(s),s=s.parentNode;if(!a.find(f=>f.nodeName==="A"))return!1;const l=ob(t.state,e.type.name),u=r.target,p=(i=u==null?void 0:u.href)!==null&&i!==void 0?i:l.href,_=(o=u==null?void 0:u.target)!==null&&o!==void 0?o:l.target;return u&&p?(window.open(p,_),!0):!1}}})}function U6(e){return new je({key:new Qe("handlePasteLink"),props:{handlePaste:(t,n,r)=>{const{state:i}=t,{selection:o}=i,{empty:s}=o;if(s)return!1;let a="";r.content.forEach(u=>{a+=u.textContent});const l=Ib(a,{defaultProtocol:e.defaultProtocol}).find(u=>u.isLink&&u.value===a);return!a||!l?!1:(e.editor.commands.setMark(e.type,{href:l.href}),!0)}}})}const B6=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g;function yc(e,t){const n=["http","https","ftp","ftps","mailto","tel","callto","sms","cid","xmpp"];return t&&t.forEach(r=>{const i=typeof r=="string"?r:r.scheme;i&&n.push(i)}),!e||e.replace(B6,"").match(new RegExp(`^(?:(?:${n.join("|")}):|[^a-z]|[a-z+.-]+(?:[^a-z+.-:]|$))`,"i"))}const Cc=cn.create({name:"link",priority:1e3,keepOnSplit:!1,exitable:!0,onCreate(){this.options.validate&&!this.options.shouldAutoLink&&(this.options.shouldAutoLink=this.options.validate,console.warn("The `validate` option is deprecated. Rename to the `shouldAutoLink` option instead.")),this.options.protocols.forEach(e=>{if(typeof e=="string"){LO(e);return}LO(e.scheme,e.optionalSlashes)})},onDestroy(){x6()},inclusive(){return this.options.autolink},addOptions(){return{openOnClick:!0,linkOnPaste:!0,autolink:!0,protocols:[],defaultProtocol:"http",HTMLAttributes:{target:"_blank",rel:"noopener noreferrer nofollow",class:null},isAllowedUri:(e,t)=>!!yc(e,t.protocols),validate:e=>!!e,shouldAutoLink:e=>!!e}},addAttributes(){return{href:{default:null,parseHTML(e){return e.getAttribute("href")}},target:{default:this.options.HTMLAttributes.target},rel:{default:this.options.HTMLAttributes.rel},class:{default:this.options.HTMLAttributes.class}}},parseHTML(){return[{tag:"a[href]",getAttrs:e=>{const t=e.getAttribute("href");return!t||!this.options.isAllowedUri(t,{defaultValidate:n=>!!yc(n,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?!1:null}}]},renderHTML({HTMLAttributes:e}){return this.options.isAllowedUri(e.href,{defaultValidate:t=>!!yc(t,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?["a",We(this.options.HTMLAttributes,e),0]:["a",We(this.options.HTMLAttributes,{...e,href:""}),0]},addCommands(){return{setLink:e=>({chain:t})=>t().setMark(this.name,e).setMeta("preventAutolink",!0).run(),toggleLink:e=>({chain:t})=>t().toggleMark(this.name,e,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run(),unsetLink:()=>({chain:e})=>e().unsetMark(this.name,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run()}},addPasteRules(){return[es({find:e=>{const t=[];if(e){const{protocols:n,defaul Line truncated
`},addCommands(){return{setHardBreak:()=>({commands:e,chain:t,state:n,editor:r})=>e.first([()=>e.exitCode(),()=>e.command(()=>{const{selection:i,storedMarks:o}=n;if(i.$from.parent.type.spec.isolating)return!1;const{keepMarks:s}=this.options,{splittableMarks:a}=r.extensionManager,l=o||i.$to.parentOffset&&i.$from.marks();return t().insertContent({type:this.name}).command(({tr:u,dispatch:p})=>{if(p&&l&&s){const _=l.filter(f=>a.includes(f.type.name));u.ensureMarks(_)}return!0}).run()})])}},addKeyboardShortcuts(){return{"Mod-Enter":()=>this.editor.commands.setHardBreak(),"Shift-Enter":()=>this.editor.commands.setHardBreak()}}}),u_=rt.create({name:"doc",topNode:!0,content:"block+"}),_L=bt.create({name:"ipsAutosave",addCommands(){return{clearAutosave:()=>({editor:e,chain:t})=>(e.options.autoSaveKey&&(window.ips.utils.db.remove("editorSave",e.options.autoSaveKey),t().hideMessage("autosave").run()),!0)}},onUpdate(){this.storage.updateCallback()},onCreate(){var e,t;if(this.storage.updateCallback=er.debounce(()=>{var n;(n=this.editor)!=null&&n.options.autoSaveKey&&(this.editor.getHTML().trim()&&this.editor.getHTML()!=="<p></p>"?window.ips.utils.db.set("editorSave",this.editor.options.autoSaveKey,{content:this.editor.getHTML(),time:Math.round(Date.now()/1e3)}):this.editor.commands.clearAutosave(),this.editor.commands.hideMessage("autosave"))},500),(e=this.editor)!=null&&e.options.autoSaveKey){const n=window.ips.utils.db.get("editorSave",this.editor.options.autoSaveKey);if((t=n==null?void 0:n.content)!=null&&t.trim()&&(!n.time||Date.now()/1e3-86400*3<parseInt(n.time))){const r=new DOMParser().parseFromString(n.content,"text/html");if(!(r.body.innerText.trim().length||r.body.querySelector("iframe,img,video,audio,a,embed,.ipsEmoji,.ipsEmbeddedVideo,.ipsEmbeddedBrightcove,.ipsEmbeddedOther,.ipsEmbeddedPhoto")))return;this.storage.initial=this.editor.getHTML(),this.editor.chain().setContent(n.content).command(({tr:i,chain:o})=>(!i.docChanged||fL(i.doc)?o().undo().hideMessage("autosave").run():o().showMessage("autosave").focus().run(),!0)).run()}}},addStorage(){return{initial:"",updateCallback:()=>{}}}});function fL(e){var t,n,r;return e.textContent==="<p></p>"?!0:!((t=e.textContent)!=null&&t.trim().length||![u_.name,Dt.name,ti.name,Bu.name].includes(e.type.name)||(r=(n=e.content)==null?void 0:n.content)!=null&&r.length&&!e.content.content.some(i=>!fL(i)))}function uj(){const{editor:e}=F.useContext(Pe);return N.jsxs(N.Fragment,{children:["The content was restored from an automatically saved draft. Click to ",N.jsx("button",{className:"ipsEditor__autosave-clear",onClick:()=>e.chain().clearAutosave().setContent(e.storage[_L.name].initial||"").focus().run(),children:"clear draft."})]})}function dj({positions:e="",href:t}){const{editor:n}=F.useContext(Pe),r=()=>{if(!e.length){n.commands.hideMessage("autoembed");return}let i=n.chain();for(const o of e)i=i.command(({tr:s,chain:a})=>a().insertContentAt({from:Math.max(0,s.mapping.map(o[0])),to:Math.min(s.doc.nodeSize-2,s.mapping.map(o[1]))},`<a href="${encodeURI(t)}" >${o[2]}</a>`));i.hideMessage("autoembed").focus().run()};return N.jsxs(N.Fragment,{children:["A URL was inserted as embedded content. Click to ",N.jsx("button",{className:"ipsEditor__autosave-clear",onClick:r,children:"insert as link"})," instead."]})}function cA({name:e}){const{editor:t}=F.useContext(Pe);return N.jsxs("div",{className:`ipsEditor__global-message ipsEditor__global-message--${e}`,children:[N.jsxs("div",{className:"ipsEditor__global-message-content",children:[N.jsx("i",{className:"fa-solid fa-circle-info"}),"  ",N.jsx(pj,{name:e})]}),N.jsx("button",{className:"ipsEditor__global-message-close",onClick:()=>t==null?void 0:t.commands.hideMessage(e),children:N.jsx("i",{className:"fa-solid fa-times-circle"})})]})}function pj({name:e}){const{messages:t}=F.useContext(WS),n=t.get(e);switch(e){case"autosave":return N.jsx(uj,{});case"autoembed":return N.jsx(dj,{...n});default:return typeof n=="string"&&n?N.jsx("span",{"data-ipseditorcustommessage":"true",dangerouslySetInnerHTML:{__html:n}}):N.jsx(N.Fragment,{children:"This is a global message!"})}}const WS=F.createContext({messages:new Map,addMessage(e,t=""){this.messages.set(e,t)},removeMessage(e){this.messages.has(e)&&this.messages.delete(e)}});function _j({children:e}){var l;const[t,n]=F.useState(()=>new Map),[r,i]=F.useState(!1),{editor:o}=F.useContext(Pe),s=F.useMemo(()=>({messages:t,addMessage:(u,p="")=>{if(!t.has(u)||t.get(u)!==p){t.set(u,p);const _=new Map;for(const[f,g]of t.entries())_.set(f,g);n(_)}},removeMessage:u=>{if(t.has(u)){t.delete(u);const p=new Map;for(const[_,f]of t.entries())p.set(_,f);n(p)}},onVisibilityChange(u=!1){u!==r&&i(u)},visible:r}),[t,n,r,i]);if(F.useEffect(()=>{!o.options.codeMode&&!o.options.simpleRichText&&o.can().registerMessageInterface(s)&&(o==null||o.commands.registerMessageInterface(s))},[s,o]),o.options.codeMode||o.options.simpleRichText)return N.jsx(N.Fragment,{children:e});const a=[...t.keys()];return o.options.messagesCLine truncated
`+t.message,window.Debug.error(t),$p=null}).finally(()=>{for(const t of EA)t($p),EA.delete(t);e($p)})})}const Jj=bt.create({name:"ipsMessages",addCommands(){let e={_messages:new Map,addMessage(n,r=""){this._messages.set(n,r)},removeMessage(n){this._messages.delete(n)},get messages(){return this._messages},onVisibilityChange(n){t=n}},t=!1;return{showMessage:(n,r="")=>()=>{e==null||e.addMessage(n,r)},hideMessage:n=>()=>{e==null||e.removeMessage(n)},registerMessageInterface:n=>()=>{var i,o,s;if(Object.is(n,e))return!1;let r=!1;for(const a in n)if(!Object.is(n[a],e[a])){r=!0;break}if(!r)return!1;if(e.messages instanceof Map)for(const a of e.messages.keys())(o=(i=n==null?void 0:n.messages)==null?void 0:i.has)!=null&&o.call(i,a)&&n.messages.get(a)===e.messages.get(a)||n.addMessage(a,e.messages.get(a));(!("visible"in n)||n.visible!==t)&&((s=n.onVisibilityChange)==null||s.call(n,t)),e=n},fireVisibilityChange:n=>()=>{var r;t=!!n,(r=e==null?void 0:e.onVisibilityChange)==null||r.call(e,t)}}}}),e8=({key:e,editor:t,onPaste:n,onDrop:r,allowedMimeTypes:i})=>new je({key:e||new Qe("fileHandler"),props:{handleDrop(o,s){var a;if(!r||!(!((a=s.dataTransfer)===null||a===void 0)&&a.files.length))return!1;const l=o.posAtCoords({left:s.clientX,top:s.clientY});let u=Array.from(s.dataTransfer.files);return i&&(u=u.filter(p=>i.includes(p.type))),u.length!==0&&(s.preventDefault(),s.stopPropagation(),r(t,u,(l==null?void 0:l.pos)||0),!0)},handlePaste(o,s){var a;if(!n||!(!((a=s.clipboardData)===null||a===void 0)&&a.files.length))return!1;let l=Array.from(s.clipboardData.files);const u=s.clipboardData.getData("text/html");return i&&(l=l.filter(p=>i.includes(p.type))),l.length!==0&&(s.preventDefault(),s.stopPropagation(),n(t,l,u),!(u.length>0))}}}),t8=bt.create({name:"fileHandler",addOptions:()=>({onPaste:void 0,onDrop:void 0,allowedMimeTypes:void 0}),addProseMirrorPlugins(){return[e8({key:new Qe(this.name),editor:this.editor,allowedMimeTypes:this.options.allowedMimeTypes,onDrop:this.options.onDrop,onPaste:this.options.onPaste})]}});function n8({mimeTypes:e,handler:t}){let n;Array.isArray(e)&&(n=new Set(e.map(i=>i.toLowerCase())));const r=i=>{const o=i instanceof DragEvent?i.dataTransfer:i.clipboardData;if(o.files.length){const s=[];for(const a of o.files)(!n||n.has(a.type.toLowerCase()))&&s.push(a);if(s.length)return t(s),!0}};return new je({key:new Qe("ipsDataTransferFixer"),props:{handlePaste:(i,o)=>r(o),handleDrop:(i,o)=>r(o)}})}const r8=t8.extend({addCommands(){var e;return{...(e=this.parent)==null?void 0:e.call(this),injectAttachments:t=>({editor:n,chain:r})=>{var o;let i=r();for(const s of t){const a=Math.round(Math.random()*Math.pow(10,8));let l=!1;i=i.insertContent({type:ut.name,attrs:{attachmentType:"file",attachmentSrc:"",attachmentLink:"",fileId:a,attachmentTitle:"Uploading Attachment..."}}),(o=i8(n.options.postkey))==null||o.dispatchEvent(new o8({file:s,data:{ready:u=>{if(l)return;l=!0;const p=Db(n.$doc,a);p.length&&n.commands.command(({tr:_,chain:f})=>{let g=f();for(const{to:h,from:E}of p)g=g.insertContentAt({from:_.mapping.map(E),to:_.mapping.map(h)},u,{parseOptions:{preserveWhitespace:!1}});return!0})},error:u=>{l||(l=!0,u instanceof Error&&(u.message=`File upload failed:
${u.message}`,window.Debug.warn(u),n.commands.showMessage("file-attach","Couldn't insert one or more files pasted or dropped in the editor.")),n.commands.removeAttachment(a))}}}))}return i.run(),!0}}},addProseMirrorPlugins(){var e;return[n8({mimeTypes:this.options.allowedMimeTypes,handler:t=>this.options.onPaste(this.editor,t)}),...((e=this.parent)==null?void 0:e.call(this))||[]]}}).configure({onPaste(e,t){return e.commands.injectAttachments(t),!0},onDrop(e,t){return e.commands.injectAttachments(t),!0}});function i8(e){return!e||typeof e!="string"?null:document.querySelector(`[data-ipsuploader-postkey="${e}"]`)}class o8 extends Event{constructor(t){super("injectFile"),this.data=t}}const s8=["name","group","isInline","isBlock","isText","selectable","exitable","atom","addOptions","addKeyboardShortcuts","addAttributes","addGlobalAttributes","renderHTML","parseHTML","onCreate","onUpdate","onBeforeCreate","onFocus","onBlur","onBeforeCreate","onSelectionUpdate","onDestroy","onTransaction","priority","defaultOptions","addInputRules","marks","addNodeView","whitespace","defining","isolating","renderText"];function a8(e,t){var a,l,u;if(!e.ipsPlugins){e.ipsPlugins={buttons:{},extensions:[],nodes:[],marks:[]};return}e.ipsPlugins.buttons={},Array.isArray((a=e.ipsPlugins)==null?void 0:a.extensions)?s(e.ipsPlugins.extensions,bt):e.ipsPlugins.extensions=[],Array.isArray((l=e.ipsPlugins)==null?void 0:l.nodes)?s(e.ipsPlugins.nodes,rt):e.ipsPlugins.nodes=[],Array.isArray((u=e.ipsPlugins)==null?void 0:u.marks)?s(e.ipsPlugins.marks,cn):e.ipsPlugins.marks=[],e.ipsPlugins.nestedToolbars={},e.pluginButtonKeys=new Set;const n=new Set(e.tools.toolbar);for(const p in e.ipsPlugins.buttons)for(const{before:_,after:f}of e.ipsPlugins.buttons[p].locations){let g,h=!1;if(typeof f=="string"&&f in WO){const E=WO[f];e.ipsPlugins.nestedToolbars[E]=e.ipsPlugins.nestedToolbars[E]||[...rs[E]],e.ipsPlugins.nestedToolbars[E].push(`custom:${p}`),h=!0}else if(typeof f=="string"&&n.has(f))g=e.tools.toolbar.indexOf(f)+1;else if(typeof _=="string"&&n.has(_))g=e.tools.toolbar.indexOf(_);else if(!_&&!f||_===null||f===null)g=e.tools.toolbar.length;else continue;e.pluginButtonKeys.add(`custom:${p}`),h||(n.add(`custom:${p}`),e.tools.toolbar.splice(g,0,`custom:${p}`))}function r(p){for(const _ of p.attributes)["class","style","id","src","title","rel","alt"].includes(_.name.toLowerCase())||p.removeAttribute(_.name);for(const _ of p.querySelectorAll(":scope > *"))r(_)}function i(p,_){var f;if(p.addButtons instanceof Function){const g=p.addButtons.bind(_)();if(typeof g!="object")throw new TypeError;const h=new DOMParser;for(const E in g){let{html:b,command:T,locations:y,element:R,isActive:A,isAvailable:I}=g[E];if(typeof b!="string"&&!(R instanceof HTMLElement)||!(T instanceof Function)||!Array.isArray(y))throw new TypeError;A!==void 0&&typeof A!="boolean"&&!(A instanceof Function)&&(window.Debug.warn(`Expected isActive to be a boolean or a Function, got a ${typeof A}. Casting to boolean.`),A=!!A),I!==void 0&&typeof I!="boolean"&&!(I instanceof Function)&&(window.Debug.warn(`Expected isAvailable to be a boolean or a Function, got a ${typeof I}. Casting to boolean.`),I=!!I);const M=[];for(const H of y)if(H===null)M.push({after:null,before:void 0});else if(typeof H=="object"){if(![void 0,null].includes(H.before)&&typeof H.before!="string"||![void 0,null].includes(H.after)&&typeof H.after!="string")throw new TypeError;M.push({after:H.after,before:H.before})}else typeof H=="string"?M.push({after:H,before:void 0}):M.push({after:void 0,before:void 0});y=M;const k=["script","link","style","pre","code","iframe","object","embed","noscript","video"];if(R instanceof Element)R.querySelectorAll(k.join(",")).forEach(H=>H.remove());else{const H=h.parseFromString(b,"text/html");if(!(H instanceof Document))throw new RangeError("The html passed in for the button is not readable");if(H.querySelectorAll(k.join(",")).forEach(ae=>ae.remove()),!(((f=H==null?void 0:H.body)==null?void 0:f.firstElementChild)instanceof HTMLElement)||!H.body.firstElementChild.innerHTML.length)throw new RangeError("The html passed in for the button is not readable");R=H.body.firstElementChild}if(r(R),k.includes(R.tagName.toLowerCase()))throw new RangeError(`The element of type ${R.tagName} cannot be used as a toolbar button`);const $=R.cloneNode(!0),z=`${p.name}_${E}`;e.ipsPlugins.buttons[z]={get element(){return $},set element(H){throw new Error("Cannot update the element of an ipsPlugin button!")},get command(){return T.bind(_)},set command(H){throw new Error("Cannot update the command of an ipsPlugin button!")},get isActive(){return A instanceof Function?A.bind(_):A},set isActive(H){throw new Error("Cannot update the isActive property of an ipsPlugin button!")},get isAvailable(){return I instanceof Function?I.bind(_):I},set isAvailable(H){throw new Error("Cannot update the isAvailable property of an ipsPlugin button!")},get locations(){return y},set locations(H){throw new Error("Cannot update properties Line truncated
${g.message}`,window.Debug.warn(g)}}}const nE=bt.create({name:"ipsHomeEnd",addKeyboardShortcuts(){return{Home:({editor:e})=>(Kt(()=>{var i,o,s;const{$from:t}=e.state.selection,n=t.pos-t.parentOffset;let r=t.pos;for(;r>n;){const a=e.state.doc.slice(r-1,r);if(((i=a.content.content[0])==null?void 0:i.textContent)===`
`||((s=(o=a.content.content[0])==null?void 0:o.type)==null?void 0:s.name)===Bu.name)break;r--}e.chain().setTextSelection(r).focus().run()},"Something went wrong handling the 'Home' key press"),!0),End:({editor:e})=>(Kt(()=>{var i,o,s;const{$to:t}=e.state.selection,n=[...t.path].reverse()[3]+t.parent.nodeSize-1;let r=t.pos;for(;r<n;){const a=e.state.doc.slice(r,r+1);if(((i=a.content.content[0])==null?void 0:i.textContent)===`
`||((s=(o=a.content.content[0])==null?void 0:o.type)==null?void 0:s.name)===Bu.name)break;r++}e.chain().setTextSelection(r).focus().run()},"Something went wrong handling the 'End' key press"),!0)}}}),l8=bt.create({name:"IPSSimpleRichText",addProseMirrorPlugins(){return[new je({key:new Qe("ipsSimpleRichTextPlugin"),filterTransaction:e=>!(this.editor.options.lengthFunction instanceof Function&&typeof this.editor.options.maxLength=="number"&&this.editor.options.lengthFunction(Ku(e.doc.content,this.editor.schema))>this.editor.options.maxLength),appendTransaction:(e,t,n)=>{const r=[];let i;const{from:o,to:s}=n.selection;n.doc.descendants((l,u)=>{var p,_;if(typeof l.textContent=="string"&&!l.textContent&&!l.isInline){const f=n.doc.resolve(u),g=c8(f,n.doc),h=u8(f,n.doc);if([o,s].some(E=>g.pos<E&&h.pos>E)){if(i===void 0&&e.some(E=>{var b;return(b=E.steps)==null?void 0:b.length})){let E=1,b=l;for(;(_=(p=b.content)==null?void 0:p.content)!=null&&_.length;)E++,b=b.content.content[0];i=E+u}return!1}return r.push([u,u+l.nodeSize]),!1}if(l.isInline||!l.content.content.length)return!1});const{tr:a}=n;for(const[l,u]of r.reverse())a.delete(l,u);if(i!==void 0){const l=Se.atStart(n.doc).from,u=Se.atEnd(n.doc).to,p=Se.create(n.doc,Lo(i,l,u));o===p.from&&o===s||a.setSelection(p)}return a}})]},addKeyboardShortcuts(){return{Enter:({editor:e})=>{const t=e.view.dom.closest("form");if(t){let n=t.querySelector('button:is([type="submit"], :not([type]))');n||(n=document.createElement("button"),n.setAttribute("type","button"),n.setAttribute("hidden",""),t.appendChild(n),setTimeout(()=>n.documentElement===document.documentElement&&n.remove(),200)),n.click()}return!0},"Shift-Enter":({editor:e})=>(e.isActive(Du.name)?e.commands.splitListItem(Du.name):e.commands.splitBlock(),!1)}},onCreate(){this.editor.view.dom.addEventListener("clear",e=>{var t;this.editor.commands.setContent(((t=e.detail)==null?void 0:t.content)||"")})}});function c8(e,t){var r,i;const n=[...e.path].reverse();for(;n.length>=3;){if(n[1]>0){let o=n[2].content.content[n[1]-1],s=0;for(;o;)o=(i=(r=o.content)==null?void 0:r.content)!=null&&i.length?o.content.content[o.content.content.length-1]:null,s++;return t.resolve(e.pos-s)}n.splice(0,3)}return t.resolve(0)}function u8(e,t){var r,i;const n=[...e.path].reverse();for(;n.length>=3;){if(n[1]<n[2].content.content.length-1){let o=n[2].content.content[n[1]+1],s=0;for(;o;)s++,o=(i=(r=o.content)==null?void 0:r.content)==null?void 0:i[0];return t.resolve(e.pos+n[2].content.content[n[1]].nodeSize+s)}n.splice(0,3)}return t.resolve(t.nodeSize-2)}const d8=e=>xt({find:/--$/,replace:e??"—"}),p8=e=>xt({find:/\.\.\.$/,replace:e??"…"}),_8=e=>xt({find:/(?:^|[\s{[(<'"\u2018\u201C])(")$/,replace:e??"“"}),f8=e=>xt({find:/"$/,replace:e??"”"}),m8=e=>xt({find:/(?:^|[\s{[(<'"\u2018\u201C])(')$/,replace:e??"‘"}),g8=e=>xt({find:/'$/,replace:e??"’"}),h8=e=>xt({find:/<-$/,replace:e??"←"}),E8=e=>xt({find:/->$/,replace:e??"→"}),S8=e=>xt({find:/\(c\)$/,replace:e??"©"}),T8=e=>xt({find:/\(tm\)$/,replace:e??"™"}),b8=e=>xt({find:/\(sm\)$/,replace:e??"℠"}),y8=e=>xt({find:/\(r\)$/,replace:e??"®"}),C8=e=>xt({find:/(?:^|\s)(1\/2)\s$/,replace:e??"½"}),R8=e=>xt({find:/\+\/-$/,replace:e??"±"}),N8=e=>xt({find:/!=$/,replace:e??"≠"}),v8=e=>xt({find:/<<$/,replace:e??"«"}),O8=e=>xt({find:/>>$/,replace:e??"»"}),A8=e=>xt({find:/\d+\s?([*x])\s?\d+$/,replace:e??"×"}),I8=e=>xt({find:/\^2$/,replace:e??"²"}),w8=e=>xt({find:/\^3$/,replace:e??"³"}),D8=e=>xt({find:/(?:^|\s)(1\/4)\s$/,replace:e??"¼"}),x8=e=>xt({find:/(?:^|\s)(3\/4)\s$/,replace:e??"¾"}),M8=bt.create({name:"typography",addOptions(){return{closeDoubleQuote:"”",closeSingleQuote:"’",copyright:"©",ellipsis:"…",emDash:"—",laquo:"«",leftArrow:"←",multiplication:"×",notEqual:"≠",oneHalf:"½",oneQuarter:"¼",openDoubleQuote:"“",openSingleQuote:"‘",plusMinus:"±",raquo:"»",registeredTrademark:"®",rightArrow:"→",servicemark:"℠",superscriptThree:"³",superscriptTwo:"²",threeQuarters:"¾",trademark:"™"}},addInputRules(){const e=[];return this.options.emDash!==!1&&e.push(d8(this.options.emDash)),this.options.ellipsis!==!1&&e.push(p8(this.options.ellipsis)),this.options.openDoubleQuote!==!1&&e.push(_8(this.options.openDoubleQuote)),this.options.closeDoubleQuote!==!1&&e.push(f8(this.options.closeDoubleQuote)),this.options.openSingleQuote!==!1&&e.push(m8(this.options.openSingleQuote)),this.options.closeSingleQuote!==!1&&e.push(g8(this.options.closeSingleQuote)),this.options.leftArrow!==!1&&e.push(h8(this.options.leftArrow)),this.options.rightArrow!==!1&&e.push(E8(this.options.rightArrow)),this.options.copyright!==!1&&e.push(S8(this.options.copyright)),this.options.trademark!==!1&&e.push(T8(this.options.trademark)),this.options.servicemark!==!1&&e.push(b8(this.options.servicemark)),this.options.registeredTrademark!==!1&&e.push(y8(this.options.registeredTrademark)),this.options.oneHalf!==!1&&e.push(C8(this.options.oneHalf)),this.options.plusMinus!==!1&&e.push(R8(this.options Line truncated
`}}),...(f=e.restrictions)!=null&&f.has("tables")?[!1]:[uL.configure({resizable:!0,cellMinWidth:((g=e.table)==null?void 0:g.cellMinWidth)||100}),L8,k8,P8],pL,U8].filter(R=>!!R);return window.navigator.platform==="MacIntel"&&t.push(nE),e.autoSaveKey&&t.push(_L),e.postkey&&(t.push(r8),t.push(ut.configure({externalImages:!((h=e.restrictions)!=null&&h.has("external_image")),externalVideos:!((E=e.restrictions)!=null&&E.has("external_video")),float:!((b=e.restrictions)!=null&&b.has("float"))}))),(T=e.restrictions)!=null&&T.has("heading")||t.push(Tn.configure({levels:(y=e.restrictions)!=null&&y.has("heading_1")?[2,3,4,5,6]:[1,2,3,4,5,6]})),t}async function SA(e,t){var n,r;if(e.pluginButtonKeys=new Set,e.simpleRichText?(delete e.codeMode,e.tools={toolbar:[...ZM]},e.react&&fW(e.react)):await n6(),e.restrictions&&Symbol.iterator in e.restrictions?e.restrictions=new Set(e.restrictions):delete e.restrictions,e.jQuery=e.jQuery||window.jQuery,e.editorProps={attributes:{class:e.codeMode?"":"ipsRichText"}},e.itemStates={},e.extensions=B8(e),!(e.messagesContainer instanceof Element)&&((n=t==null?void 0:t.closest(".ipsEditor"))!=null&&n.querySelector('[data-role="editor-messages-container"]'))&&(e.messagesContainer=(r=t==null?void 0:t.closest(".ipsEditor"))==null?void 0:r.querySelector('[data-role="editor-messages-container"]')),e.codeMode)return e.tools={toolbar:["codelanguage"]},e;if(e.simpleRichText||a8(e,e.extensions),e.stockrepliesenabled){const i=await kb();Object.keys(i).length?window.Debug.log("Loaded stock replies"):(e.stockrepliesenabled=!1,window.Debug.log("No stock replies, disabling the button"))}if(!e.codeMode){for(const i in e.tools)e.tools[i]=e.tools[i].filter(o=>o==="giphy"&&!e.giphyenabled||o==="stockreply"&&!e.stockrepliesenabled?!1:!(e.hidebuttons instanceof Array&&e.hidebuttons.includes(o)));e.parseOptions=e.parseOptions||{},e.parseOptions.preserveWhitespace=!1}return e.tools.toolbar&&e.tools.toolbar[0]!=="block"&&(e.tools.toolbar=["block",...e.tools.toolbar.filter(i=>i!=="block")]),e}let TA=!1;function F8(){if(!TA){for(const e of["click","focus","keydown","keyup"])document.addEventListener(e,t=>{var n,r,i;(r=(n=t.target)==null?void 0:n.closest)!=null&&r.call(n,".ipsEditor__toolbar-item--unavailable")&&(t.preventDefault(),t.stopPropagation(),(i=t.stopImmediatePropagation)==null||i.call(t))},{capture:!0});TA=!0}}setTimeout(()=>window.ips.createModule("ips.utils.tiptap",()=>{const e={tools:{toolbar:["block","insert","bold","italic","underline","size","color","link","icon","stockreply","giphy","clear","format","tableOptions"]},allowedIframeDomains:window.ips.getSetting("allowedIframeDomains")||[],restrictions:new Set};return document.dispatchEvent(new CustomEvent("ipsTiptapLoaded")),{editorInstance(t,n={}){const r=rE.createRoot(t),i=er.debounce((o,s)=>{s([o,r]),o.options.name&&setTimeout(()=>o.options.jQuery(o.view.dom.closest("[data-ipseditorv5]")).trigger("editorWidgetInitialized",{id:o.options.name}))},10,{leading:!1});return F8(),new Promise(o=>{SA({...e,...n},t).then(s=>{r.render(N.jsx(St.StrictMode,{children:N.jsx(fj,{resolve:a=>{i(a,o)},config:s})}))})})},allCodeLanguages:bl,async decorateSimpleRichTextConfig(t){return t.simpleRichText=!0,await SA(t)}}}));
@@ -0,0 +1 @@
.resize-cursor{cursor:ew-resize;cursor:col-resize}.column-resize-handle{background-color:var(--i-primary);bottom:calc(-2 * var(--i-ta--bo-wi));position:absolute;right:calc(-2 * var(--i-ta--bo-wi));pointer-events:none;top:0;width:clamp(3px,calc(4 * var(--i-ta--bo-wi)),8px)}.ipsEditor__table-wrapper{position:relative;width:min-content;max-width:100%}.ipsEditor__table-wrapper.ProseMirror-selectednode{border-radius:var(--i-box--bo-ra);outline-offset:3px;max-width:100%}.ipsEditor__table-wrapper>.tableWrapper{outline:none!important}.tiptap .ipsEditor__table-wrapper .selectedCell{position:relative}.tiptap .ipsEditor__table-wrapper .selectedCell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;display:block;z-index:1;background-color:oklch(from var(--i-color_primary) l c h / .1)}
@@ -0,0 +1 @@
const e="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20version='1.2'%20viewBox='10%2010%2080%2080'%20%3e%3crect%20fill='none'%20rx='10'%20height='72'%20width='72'%20y='14'%20x='14'%20stroke='currentColor'%20stroke-width='8'%20stroke-linejoin='miter'%20/%3e%3crect%20fill='currentColor'%20fill-opacity='1'%20x='17'%20y='17'%20width='66'%20height='21.3'%20%3e%3c/rect%3e%3c!--%20%3cpath%20d='M12%2039.3L88%2039.3Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e--%3e%3cpath%20d='M12%2060.6L88%2060.6Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M39.3%2012L39.3%2088Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M60.6%2012L60.6%2088Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3c/svg%3e";export{e as default};
@@ -0,0 +1 @@
const e="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20version='1.2'%20viewBox='10%2010%2080%2080'%20%3e%3crect%20fill='none'%20rx='10'%20height='72'%20width='72'%20y='14'%20x='14'%20stroke='currentColor'%20stroke-width='6'%20stroke-linejoin='miter'%20/%3e%3crect%20fill='currentColor'%20fill-opacity='0.7'%20x='39.3'%20y='39.3'%20width='21.3'%20height='21.3'%20stroke='currentColor'%20stroke-width='7'%20stroke-linejoin='round'%3e%3c/rect%3e%3cpath%20d='M12%2039.3L88%2039.3Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M12%2060.6L88%2060.6Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M39.3%2012L39.3%2088Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M60.6%2012L60.6%2088Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3c/svg%3e";export{e as default};
@@ -0,0 +1 @@
const e="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20version='1.2'%20viewBox='10%2010%2080%2080'%20%3e%3crect%20fill='none'%20rx='10'%20height='72'%20width='72'%20y='14'%20x='14'%20stroke='currentColor'%20stroke-width='6'%20stroke-linejoin='miter'%20/%3e%3crect%20fill='currentColor'%20fill-opacity='0.7'%20y='14'%20x='39.3'%20height='72'%20width='21.3'%20stroke='currentColor'%20stroke-width='8'%20stroke-linejoin='round'%3e%3c/rect%3e%3cpath%20d='M12%2039.3L88%2039.3Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M12%2060.6L88%2060.6Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M39.3%2012L39.3%2088Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M60.6%2012L60.6%2088Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3c/svg%3e";export{e as default};
@@ -0,0 +1 @@
const e="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20version='1.2'%20viewBox='10%2010%2080%2080'%20%3e%3crect%20fill='none'%20rx='10'%20height='72'%20width='72'%20y='14'%20x='14'%20stroke='currentColor'%20stroke-width='6'%20stroke-linejoin='miter'%20/%3e%3crect%20fill='currentColor'%20fill-opacity='0.7'%20x='14'%20y='39.3'%20width='72'%20height='21.3'%20stroke='currentColor'%20stroke-width='8'%20stroke-linejoin='round'%3e%3c/rect%3e%3cpath%20d='M12%2039.3L88%2039.3Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M12%2060.6L88%2060.6Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M39.3%2012L39.3%2088Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3cpath%20d='M60.6%2012L60.6%2088Z'%20stroke='currentColor'%20stroke-width='4'%3e%3c/path%3e%3c/svg%3e";export{e as default};
@@ -26,6 +26,30 @@
"src": "src/assets/icons/spoiler.svg",
"isDynamicEntry": true
},
"src/assets/icons/table-base.svg": {
"file": "assets/table-base-D1cd7bGZ.js",
"name": "table-base",
"src": "src/assets/icons/table-base.svg",
"isDynamicEntry": true
},
"src/assets/icons/table-cell.svg": {
"file": "assets/table-cell-DVOKSKb6.js",
"name": "table-cell",
"src": "src/assets/icons/table-cell.svg",
"isDynamicEntry": true
},
"src/assets/icons/table-columns.svg": {
"file": "assets/table-columns-BC6EiFm4.js",
"name": "table-columns",
"src": "src/assets/icons/table-columns.svg",
"isDynamicEntry": true
},
"src/assets/icons/table-rows.svg": {
"file": "assets/table-rows-_EhIjim3.js",
"name": "table-rows",
"src": "src/assets/icons/table-rows.svg",
"isDynamicEntry": true
},
"src/assets/icons/wrap.svg": {
"file": "assets/wrap-BOz3U5J1.js",
"name": "wrap",
@@ -45,7 +69,7 @@
"isDynamicEntry": true
},
"src/main.jsx": {
"file": "assets/main-0gprcJBY.js",
"file": "assets/main-Ce8dEiGN.js",
"name": "main",
"src": "src/main.jsx",
"isEntry": true,
@@ -54,9 +78,16 @@
"src/assets/icons/box.svg",
"src/assets/icons/katex.svg",
"src/assets/icons/spoiler.svg",
"src/assets/icons/table-base.svg",
"src/assets/icons/table-cell.svg",
"src/assets/icons/table-columns.svg",
"src/assets/icons/table-rows.svg",
"src/assets/icons/wrap.svg",
"src/assets/icons/wrapInverted.svg",
"src/assets/icons/wrapNone.svg"
],
"css": [
"assets/main-D9k5Klkm.css"
]
}
}
@@ -2013,18 +2013,7 @@ class members extends Controller
/* Change */
$oldEmail = $member->email;
$member->email = Request::i()->email;
$member->save();
foreach ( Login::methods() as $method )
{
try
{
$method->changeEmail( $member, $oldEmail, Request::i()->email );
}
catch( BadMethodCallException $e ) {}
}
$member->logHistory( 'core', 'email_change', array( 'old' => $oldEmail, 'new' => Request::i()->email, 'by' => 'manual' ) );
Event::fire( 'onEmailChange', $member, array( Request::i()->email, $oldEmail ) );
$member->changeEmail( Request::i()->email );
$member->invalidateSessionsAndLogins( TRUE, Session::i()->id );
Session::i()->log( 'acplog__members_edited_email', array( $member->name => FALSE ) );
}
@@ -2845,12 +2834,12 @@ class members extends Controller
/* New Reg */
elseif ( $row['new_reg'] )
{
Email::buildFromTemplate( 'core', 'registration_validate', array( $member, $row['vid'], $plainTextKey ), Email::TYPE_TRANSACTIONAL )->send( $member );
Email::buildFromTemplate( 'core', 'registration_validate', array( $member, $row['vid'], $plainTextKey, $row['new_email'] ), Email::TYPE_TRANSACTIONAL )->send( $member );
}
/* Email Change */
elseif ( $row['email_chg'] )
{
Email::buildFromTemplate( 'core', 'email_change', array( $member, $row['vid'], $plainTextKey ), Email::TYPE_TRANSACTIONAL )->send( $member );
Email::buildFromTemplate( 'core', 'email_change', array( $member, $row['vid'], $plainTextKey, $row['new_email'] ), Email::TYPE_TRANSACTIONAL )->send( $row['new_email'], array(), array(), NULL, NULL, array( 'Reply-To' => Settings::i()->email_in ) );
}
/* Forgot security answers */
elseif ( $row['forgot_security'] )
@@ -3199,7 +3188,7 @@ class members extends Controller
Session::i()->log( 'acplog__deleted_guest_content', array( $values['guest_name_to_delete'] => FALSE ) );
Output::i()->redirect( Url::internal( "app=core&module=moderation&controller=spam&searchResult=guest_captcha" ), 'deleted' );
Output::i()->redirect( Url::internal( "app=core&module=moderation&controller=spam" ), 'deleted' );
}
Output::i()->output = $form;
@@ -168,10 +168,10 @@ class spam extends Controller
case 'toggles':
return array(
'none' => array( 'bot_antispam_type_warning' ),
'recaptcha2' => array( 'guest_captcha', 'recaptcha2_public_key', 'recaptcha2_private_key' ),
'invisible' => array( 'guest_captcha', 'recaptcha2_public_key', 'recaptcha2_private_key' ),
'keycaptcha' => array( 'guest_captcha', 'keycaptcha_privatekey' ),
'hcaptcha' => array( 'guest_captcha', 'hcaptcha_sitekey', 'hcaptcha_secret')
'recaptcha2' => array( 'recaptcha2_public_key', 'recaptcha2_private_key' ),
'invisible' => array( 'recaptcha2_public_key', 'recaptcha2_private_key' ),
'keycaptcha' => array( 'keycaptcha_privatekey' ),
'hcaptcha' => array( 'hcaptcha_sitekey', 'hcaptcha_secret')
);
}
@@ -196,7 +196,6 @@ class spam extends Controller
$form->add( new Text( 'keycaptcha_privatekey', Settings::i()->keycaptcha_privatekey, FALSE, array(), NULL, NULL, NULL, 'keycaptcha_privatekey' ) );
$form->add( new Text( 'hcaptcha_sitekey', Settings::i()->hcaptcha_sitekey, FALSE, array(), NULL, NULL, NULL, 'hcaptcha_sitekey' ) );
$form->add( new Text( 'hcaptcha_secret', Settings::i()->hcaptcha_secret, FALSE, array(), NULL, NULL, NULL, 'hcaptcha_secret' ) );
$form->add( new YesNo( 'guest_captcha', Settings::i()->guest_captcha, FALSE, array(), NULL, NULL, NULL, 'guest_captcha' ) );
/* Save values */
if ( $form->values() )
@@ -345,6 +345,7 @@ class login extends Controller
$form->addHeader( 'login_settings' );
$form->add( new YesNo( 'new_device_email', Settings::i()->new_device_email, FALSE ) );
$form->add( new YesNo( 'login_after_inactivity_notification', Settings::i()->login_after_inactivity_notification, FALSE ) );
/* Save */
if ( $values = $form->values() )
@@ -215,8 +215,13 @@ class posting extends Controller
$x = Member::loggedIn()->language()->addToStack( 'sso_setting_override', FALSE, [ 'pluralize' => [ count( $appBlocks ) ],'htmlsprintf' => [ Member::loggedIn()->language()->formatList( $appBlocks ) ] ] );
Member::loggedIn()->language()->words['post_before_registering_desc'] = $x;
}
elseif( Settings::i()->bot_antispam_type === 'none' )
{
$pbrDisabled = TRUE;
Member::loggedIn()->language()->words['post_before_registering_desc'] = Member::loggedIn()->language()->addToStack('post_before_registering_captcha_req');
}
$form->add( new Radio( 'post_before_registering', Settings::i()->post_before_registering, FALSE, array( 'disabled' => $pbrDisabled,'options' => array( 1 => 'post_before_registering_on', 0 => 'post_before_registering_off' ) ), NULL, NULL, NULL, 'post_before_registering' ) );
$form->add( new Radio( 'post_before_registering', Settings::i()->post_before_registering, FALSE, [ 'disabled' => $pbrDisabled,'options' => [ 1 => 'post_before_registering_on', 0 => 'post_before_registering_off' ] ], id: 'post_before_registering' ) );
}
Member::loggedIn()->language()->words['post_before_registering_on'] = sprintf( Member::loggedIn()->language()->get('post_before_registering_on'), Member::loggedIn()->language()->addToStack( 'core_group_' . Settings::i()->member_group ) );
$form->add( new Number( 'max_title_length', Settings::i()->max_title_length, FALSE, array( 'max' => 255 ), NULL, NULL, Member::loggedIn()->language()->addToStack('max_title_length_suffix') ) );
@@ -936,6 +936,9 @@ class view extends Controller
$this->club->removeMember( $member );
Db::i()->delete( 'core_notifications', array( '`member`=? AND notification_app=? AND notification_key=? and item_id=?', $member->member_id, 'core', 'club_invitation', $this->club->id ) );
$member->recountNotifications();
/* Log to member history */
$member->logHistory( 'core', 'club_membership', array('club_id' => $this->club->id, 'type' => $status, 'remove' => true ) );
}
/* If they were previously accepted and waiting for payment, treat it as a decline */
@@ -1332,6 +1335,8 @@ class view extends Controller
$this->club->removeMember( Member::loggedIn() );
$this->club->recountMembers();
$this->club->save();
Member::loggedIn()->logHistory( 'core', 'club_membership', array('club_id' => $this->club->id, 'type' => Club::STATUS_LEFT ) );
/* Delete the invitation */
Db::i()->delete( 'core_notifications', array( '`member`=? AND notification_app=? AND notification_key=? and item_id=?', Member::loggedIn()->member_id, 'core', 'club_invitation', $this->club->id ) );
@@ -1356,6 +1361,8 @@ class view extends Controller
$this->club->recountMembers();
$this->club->save();
Member::loggedIn()->logHistory( 'core', 'club_membership', array('club_id' => $this->club->id, 'type' => Club::STATUS_LEFT ) );
/* Update notification counts */
Db::i()->delete( 'core_notifications', array( 'notification_key=? and item_id=? and extra=?', 'club_request', $this->club->id, json_encode( array( Member::loggedIn()->member_id ) ) ) );
foreach( $this->club->members( array( 'moderator', 'leader' ), 250, NULL, 2 ) as $member )
@@ -1450,6 +1457,31 @@ class view extends Controller
Output::i()->title = $this->club->name;
Output::i()->output = $form->customTemplate( array( Theme::i()->getTemplate( 'forms', 'core' ), 'popupTemplate' ) );
}
/**
* Resend a pending invitation
*
* @return void
*/
protected function resendInvite() : void
{
Session::i()->csrfCheck();
if ( !$this->club->canInvite() )
{
Output::i()->error( 'no_module_permission', '2C350/5', 403, '' );
}
$member = Member::load( Request::i()->member );
$memberStatus = $this->club->memberStatus( $member );
if( in_array( $memberStatus, [ Club::STATUS_INVITED, Club::STATUS_INVITED_BYPASSING_PAYMENT ] ) )
{
$this->club->sendInvitation( Member::loggedIn(), [ $member ] );
$member->logHistory( 'core', 'club_membership', array('club_id' => $this->club->id, 'type' => $memberStatus ) );
}
Output::i()->redirect( $this->club->url(), 'club_notifications_sent' );
}
/**
* Re-invite a banned memer
@@ -91,7 +91,7 @@ class contact extends Controller
{
$form->add( new Text( 'contact_name', NULL, TRUE ) );
$form->add( new Email( 'email_address', NULL, TRUE, array( 'bypassProfanity' => Text::BYPASS_PROFANITY_ALL ) ) );
if ( Settings::i()->bot_antispam_type !== 'none' and Settings::i()->guest_captcha )
if ( Settings::i()->bot_antispam_type !== 'none' )
{
$form->add( new Captcha );
}
@@ -238,45 +238,52 @@ class login extends Controller
{
Output::i()->redirect( Url::internal( 'app=core&module=system&controller=login', 'front', 'login' ) );
}
$details = json_decode( $_SESSION['linkAccounts'], TRUE );
$member = Member::load( $details['member'] );
if ( !$member->member_id )
{
Output::i()->redirect( Url::internal( 'app=core&module=system&controller=login', 'front', 'login' ) );
}
/* And then handler to link with */
$handler = Handler::load( $details['handler'] );
/* Init reauthentication */
$login = new LoginClass( Url::internal( 'app=core&module=system&controller=login&do=link', 'front', 'login' )->setQueryString( 'ref', isset( Request::i()->ref ) ? Request::i()->ref : NULL ), LoginClass::LOGIN_REAUTHENTICATE );
$login->reauthenticateAs = $member;
$error = NULL;
/* If successful (or if there's no way to reauthenticate which would only happen if a login handler has been deleted)) complete the link... */
try
/* Did we submit the merge form? */
if( isset( Request::i()->mergeAccount ) and Request::i()->mergeAccount )
{
if ( $success = $login->authenticate() or ( !count( $login->usernamePasswordMethods() ) and !count( $login->buttonMethods() ) ) )
{
$handler->completeLink( $member, $details['details'] );
unset( $_SESSION['linkAccounts'] );
$destination = Request::i()->referrer( FALSE, TRUE ) ?: Url::internal( '' );
$success = new Success( $member, $handler );
if ( $success->mfa() )
Session::i()->csrfCheck();
/* If successful (or if there's no way to reauthenticate which would only happen if a login handler has been deleted)) complete the link... */
try
{
if ( $success = $login->authenticate() or ( !count( $login->usernamePasswordMethods() ) and !count( $login->buttonMethods() ) ) )
{
$_SESSION['processing2FA'] = array( 'memberId' => $success->member->member_id, 'anonymous' => $success->anonymous, 'remember' => $success->rememberMe, 'destination' => (string) $destination, 'handler' => $success->handler->id );
Output::i()->redirect( $destination->setQueryString( '_mfaLogin', 1 ) );
$handler->completeLink( $member, $details['details'] ?? null );
unset( $_SESSION['linkAccounts'] );
$destination = Request::i()->referrer( FALSE, TRUE ) ?: Url::internal( '' );
$success = new Success( $member, $handler );
if ( $success->mfa() )
{
$_SESSION['processing2FA'] = array( 'memberId' => $success->member->member_id, 'anonymous' => $success->anonymous, 'remember' => $success->rememberMe, 'destination' => (string) $destination, 'handler' => $success->handler->id );
Output::i()->redirect( $destination->setQueryString( '_mfaLogin', 1 ) );
}
$success->process();
Output::i()->redirect( $destination->setQueryString( '_fromLogin', 1 ) );
}
$success->process();
Output::i()->redirect( $destination->setQueryString( '_fromLogin', 1 ) );
}
}
catch ( Exception $e )
{
$error = $e->getMessage();
catch ( Exception $e )
{
$error = $e->getMessage();
}
}
/* Otherwise show the reauthenticate form */
@@ -12,7 +12,6 @@ namespace IPS\core\modules\front\system;
/* To prevent PHP errors (extending class does not exist) revealing path */
use BadMethodCallException;
use DateInterval;
use DomainException;
use Exception;
@@ -24,7 +23,6 @@ use IPS\DateTime;
use IPS\Db;
use IPS\Dispatcher\Controller;
use IPS\Email;
use IPS\Events\Event;
use IPS\Helpers\Form;
use IPS\Helpers\Form\Captcha;
use IPS\Helpers\Form\Checkbox;
@@ -550,6 +548,12 @@ class register extends Controller
}
$captcha = new Captcha;
/* If PBR request is from the last 5 minutes, don't ask for a captcha again */
if( $postBeforeRegister !== NULL AND DateTime::ts( $postBeforeRegister['timestamp'] )->add( new \DateInterval('PT5M' ) )->getTimestamp() > time() )
{
$captcha = '';
}
if ( (string) $captcha !== '' )
{
@@ -865,7 +869,7 @@ class register extends Controller
$plainSecurityKey = Login::generateRandomString();
Db::i()->update( 'core_validating', [ 'security_key' => Encrypt::fromPlaintext( $plainSecurityKey )->tag(), 'email_sent' => time() ], [ 'vid=?', $reg['vid'] ] );
Email::buildFromTemplate( 'core', $reg['email_chg'] ? 'email_change' : 'registration_validate', array( Member::loggedIn(), $reg['vid'], $plainSecurityKey ), Email::TYPE_TRANSACTIONAL )->send( Member::loggedIn() );
Email::buildFromTemplate( 'core', $reg['email_chg'] ? 'email_change' : 'registration_validate', array( Member::loggedIn(), $reg['vid'], $plainSecurityKey, $reg['new_email'] ), Email::TYPE_TRANSACTIONAL )->send( Member::loggedIn() );
}
Output::i()->redirect( Url::internal( 'app=core&module=system&controller=register&do=validating', 'front', 'register' ), 'reg_email_resent' );
@@ -935,15 +939,15 @@ class register extends Controller
}
else
{
$oldEmail = $member->email;
$member->changeEmail( $record['new_email'] );
$member->members_bitoptions['validating'] = FALSE;
$member->save();
Event::fire( 'onEmailChange', $member, array( $member->email, $record['prev_email'] ) );
Db::i()->delete( 'core_validating', array( 'member_id=?', $member->member_id ) );
/* Send a confirmation email */
Email::buildFromTemplate( 'core', 'email_address_changed', array( $member, $record['prev_email'] ), Email::TYPE_TRANSACTIONAL )->send( $record['prev_email'], array(), array(), NULL, NULL, array( 'Reply-To' => Settings::i()->email_in ) );
Email::buildFromTemplate( 'core', 'email_address_changed', array( $member, $oldEmail ), Email::TYPE_TRANSACTIONAL )->send( $oldEmail, array(), array(), NULL, NULL, array( 'Reply-To' => Settings::i()->email_in ) );
}
/* Log in */
@@ -1148,28 +1152,6 @@ class register extends Controller
}
}
/* Change the email */
$oldEmail = Member::loggedIn()->email;
Member::loggedIn()->email = $values['new_email'];
Member::loggedIn()->save();
foreach ( Login::methods() as $method )
{
try
{
$method->changeEmail( Member::loggedIn(), $oldEmail, $values['new_email'] );
}
catch( BadMethodCallException $e ) {}
}
Member::loggedIn()->logHistory( 'core', 'email_change', array( 'old' => $oldEmail, 'new' => $values['new_email'], 'by' => 'manual' ) );
/* Invalidate sessions except this one */
Member::loggedIn()->invalidateSessionsAndLogins( Session::i()->id );
if( isset( Request::i()->cookie['login_key'] ) )
{
Device::loadOrCreate( Member::loggedIn() )->updateAfterAuthentication( TRUE );
}
/* If email validation is required, do that... */
if ( in_array( Settings::i()->reg_auth_type, array( 'user', 'admin_user' ) ) )
{
@@ -1191,14 +1173,34 @@ class register extends Controller
'user_verified' => ( Settings::i()->reg_auth_type == 'admin' ),
'ip_address' => Request::i()->ipAddress(),
'email_sent' => time(),
'security_key' => Encrypt::fromPlaintext( $plainSecurityKey )->tag()
'security_key' => Encrypt::fromPlaintext( $plainSecurityKey )->tag(),
'new_email' => $values['new_email']
] );
Email::buildFromTemplate( 'core', $pending['email_chg'] ? 'email_change' : 'registration_validate', array( Member::loggedIn(), $vid, $plainSecurityKey ), Email::TYPE_TRANSACTIONAL )->send( Member::loggedIn() );
if( $pending['email_chg'] )
{
Email::buildFromTemplate( 'core', 'email_change', [ Member::loggedIn(), $vid, $plainSecurityKey, $values['new_email'] ], Email::TYPE_TRANSACTIONAL )->send( $values['new_email'], array(), array(), NULL, NULL, array( 'Reply-To' => Settings::i()->email_in ) );
}
else
{
Email::buildFromTemplate( 'core', 'registration_validate', [ Member::loggedIn(), $vid, $plainSecurityKey, $values['new_email'] ], Email::TYPE_TRANSACTIONAL )->send( Member::loggedIn() );
}
}
else
{
Event::fire( 'onEmailChange', Member::loggedIn(), array( $values['new_email'], $oldEmail ) );
/* If we don't need validation, just change it */
$oldEmail = Member::loggedIn()->email;
Member::loggedIn()->changeEmail( $values['new_email'] );
/* Invalidate sessions except this one */
Member::loggedIn()->invalidateSessionsAndLogins( Session::i()->id );
if( isset( Request::i()->cookie['login_key'] ) )
{
Device::loadOrCreate( Member::loggedIn() )->updateAfterAuthentication( TRUE );
}
/* Send a confirmation email */
Email::buildFromTemplate( 'core', 'email_address_changed', array( Member::loggedIn(), $oldEmail ), Email::TYPE_TRANSACTIONAL )->send( $oldEmail, array(), array(), NULL, NULL, array( 'Reply-To' => Settings::i()->email_in ) );
}
/* Redirect */
@@ -23,7 +23,6 @@ use IPS\DateTime;
use IPS\Db;
use IPS\Dispatcher\Controller;
use IPS\Email;
use IPS\Events\Event;
use IPS\Extensions\SSOAbstract;
use IPS\File;
use IPS\GeoLocation;
@@ -432,44 +431,9 @@ class settings extends Controller
if ( !count( $login->buttonMethods() ) or $success = $login->authenticate() )
{
/* Disable syncing */
$profileSync = Member::loggedIn()->profilesync;
if ( isset( $profileSync['email'] ) )
{
unset( $profileSync['email'] );
Member::loggedIn()->profilesync = $profileSync;
Member::loggedIn()->save();
}
/* Change the email */
$oldEmail = Member::loggedIn()->email;
Member::loggedIn()->email = $_SESSION['newEmail'];
Member::loggedIn()->save();
foreach ( Login::methods() as $method )
{
try
{
$method->changeEmail( Member::loggedIn(), $oldEmail, $_SESSION['newEmail'] );
}
catch( BadMethodCallException $e )
{
}
}
Member::loggedIn()->logHistory( 'core', 'email_change', array( 'old' => $oldEmail, 'new' => Member::loggedIn()->email, 'by' => 'manual' ) );
/* Invalidate sessions except this one */
Member::loggedIn()->invalidateSessionsAndLogins( Session::i()->id );
if( isset( Request::i()->cookie['login_key'] ) )
{
Device::loadOrCreate( Member::loggedIn() )->updateAfterAuthentication( TRUE );
}
/* Send a validation email if we need to */
if ( SettingsClass::i()->reg_auth_type == 'user' or SettingsClass::i()->reg_auth_type == 'admin_user' )
{
unset( $_SESSION['newEmail'] );
$vid = Login::generateRandomString();
$plainSecurityKey = Login::generateRandomString();
@@ -479,7 +443,7 @@ class settings extends Controller
'entry_date' => time(),
'email_chg' => TRUE,
'ip_address' => Request::i()->ipAddress(),
'prev_email' => $oldEmail,
'new_email' => $_SESSION['newEmail'],
'email_sent' => time(),
'security_key' => Encrypt::fromPlaintext( $plainSecurityKey )->tag()
) );
@@ -487,15 +451,26 @@ class settings extends Controller
Member::loggedIn()->members_bitoptions['validating'] = TRUE;
Member::loggedIn()->save();
Email::buildFromTemplate( 'core', 'email_change', array( Member::loggedIn(), $vid, $plainSecurityKey ), Email::TYPE_TRANSACTIONAL )->send( Member::loggedIn() );
Email::buildFromTemplate( 'core', 'email_change', array( Member::loggedIn(), $vid, $plainSecurityKey, $_SESSION['newEmail'] ), Email::TYPE_TRANSACTIONAL )->send( $_SESSION['newEmail'], array(), array(), NULL, NULL, array( 'Reply-To' => SettingsClass::i()->email_in ) );
unset( $_SESSION['newEmail'] );
Output::i()->redirect( Url::internal( '' ) );
}
/* Or just redirect */
/* If we don't need validation, just change it */
else
{
Event::fire( 'onEmailChange', Member::loggedIn(), array( $_SESSION['newEmail'], $oldEmail ) );
$oldEmail = Member::loggedIn()->email;
Member::loggedIn()->changeEmail( $_SESSION['newEmail'] );
/* Invalidate sessions except this one */
Member::loggedIn()->invalidateSessionsAndLogins( Session::i()->id );
if( isset( Request::i()->cookie['login_key'] ) )
{
Device::loadOrCreate( Member::loggedIn() )->updateAfterAuthentication( TRUE );
}
unset( $_SESSION['newEmail'] );
/* Send a confirmation email */
@@ -505,7 +480,7 @@ class settings extends Controller
}
}
}
catch ( LoginException|\Exception $e )
catch ( LoginException|Exception $e )
{
$error = $e->getMessage();
}
@@ -81,7 +81,27 @@ class Upgrade
return true;
}
public function step3() : bool|array
{
/* Fix any pending email changes */
$pending = iterator_to_array(
Db::i()->select( 'core_validating.*,core_members.email', 'core_validating', [ 'email_chg=?', 1 ] )
->join( 'core_members', 'core_validating.member_id=core_members.member_id' )
);
foreach( $pending as $row )
{
/* Update the database directly, we don't want to trigger any memberSync events */
$newEmail = $row['email'];
$oldEmail = $row['new_email']; // this was renamed from core_validating.prev_email
Db::i()->update( 'core_members', [ 'email' => $oldEmail ], [ 'member_id=?', $row['member_id'] ] );
Db::i()->update( 'core_validating', [ 'new_email' => $newEmail ], [ 'vid=?', $row['vid'] ] );
}
return TRUE;
}
// You can create as many additional methods (step2, step3, etc.) as is necessary.
// Each step will be executed in a new HTTP request
}
@@ -0,0 +1,22 @@
{
"id": 5000037,
"name": "5.0.0 Beta 8",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": true,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,116 @@
{
"categories": {
"added": [],
"edited": [
"lightDarkMode",
"logos",
"pageLayouts",
"typography",
"header",
"sidePanel",
"content",
"footer",
"mobileNavigation",
"navigationPanel",
"global",
"textLogo",
"imageLogoDesktop",
"imageLogoMobile",
"desktopHeader",
"mobileHeader",
"desktopFooter",
"body",
"contentBoxes",
"sidebar",
"avatars",
"buttons"
],
"removed": []
},
"settings": {
"added": [],
"edited": [
"set__i-default-scheme",
"set__i-logo-text",
"set__i-sidebar-width",
"i-primary-button--co",
"set__i-mobile-icons-location",
"set__logo-light",
"i-footer--co",
"set__mobile-logo-light",
"layout_global_view_mode",
"set__i-font-family",
"set__i-design-border",
"set__i-layout-width",
"set__i-sidebar-ui-header--he",
"set__i-position-logo",
"set__i-mobile-header--he",
"set__i-change-scheme",
"set__i-logo-slogan",
"i-primary-button--ba-co",
"set__i-mobile-footer-labels",
"set__logo-dark",
"i-footer--ba-co",
"set__mobile-logo-dark",
"set__i-design-radius",
"set__i-font-size",
"set__i-flip-sidebar",
"i-dashHeader--ba-co",
"set__i-position-navigation",
"i-headerMobile--ba-co",
"i-headerMobile--co",
"i-secondary-button--co",
"set__i-logo--fo-fa",
"set__i-position-user",
"i-dashHeader--co",
"set__i-avatar-radius",
"i-color_root",
"set__i-mobile-logo--he",
"set__i-design-shadow",
"i-mobileFooter--ba-co",
"set__i-logo--he",
"i-secondary-button--ba-co",
"set__i-logo--fo-we",
"i-navPanelLinkHover--co",
"set__i-position-breadcrumb",
"i-mobileFooter--co",
"i-color_soft",
"i-body--ba-co",
"set__i-link-panels",
"set__i-sidebar-ui-logo--he",
"i-button--bo-ra",
"set__i-desktop-logo--fo-si",
"set__i-sticky-sidebar",
"i-navPanelLinkActive--ba-co",
"set__i-position-search",
"i-mobileFooter-active--co",
"i-color_hard",
"i-box--ba-co",
"set__i-header-primary--he",
"set__i-sidebar-ui-logo--fo-si",
"i-box--bo-co",
"i-link--co",
"i-mobileFooter-active--ba-co",
"i-navPanel--ba-co",
"set__i-mobile-logo--fo-si",
"i-link-hover--co",
"i-navPanel--co",
"set__i-header-secondary--he",
"i-boxHeader--ba-co",
"i-boxHeader--co",
"set__i-user-content-font-size",
"i-navPanelLinkActive--co",
"set__i-nav-bar-icons",
"i-widget-header--ba-co",
"i-headerTop--ba-co",
"i-widget-header--co",
"i-headerTop--co",
"i-headerPrimary--ba-co",
"i-headerPrimary--co",
"i-headerSecondary--ba-co",
"i-headerSecondary--co",
"set__i-header-top--he"
],
"removed": []
}
}
@@ -0,0 +1,20 @@
{
"added": [
"app=core&module=settings&controller=login&tab=settings&searchResult=form_login_after_inactivity_notification",
"app=core&module=settings&controller=posting&tab=simplifiedMode&searchResult=form_editor_r__table"
],
"edited": [
"app=core&module=applications&controller=enhancements",
"app=core&module=applications&controller=menu",
"app=core&module=discovery&controller=streams&do=allActivitySettings",
"app=core&module=members&controller=groups&searchResult=g_rep_max_positive",
"app=core&module=moderation&controller=spam",
"app=core&module=overview&controller=mycharts",
"app=core&module=promotion&controller=sharelinks",
"app=core&module=settings&controller=general&searchResult=form_site_social_profiles",
"app=core&module=settings&controller=posting"
],
"removed": [
"app=core&module=moderation&controller=spam&searchResult=guest_captcha"
]
}
@@ -0,0 +1,22 @@
{
"id": 5000038,
"name": "5.0.0 Beta 9",
"steps": {
"queries": true,
"lang": true,
"theme": true,
"themeeditor": true,
"javascript": true,
"emailTemplates": true,
"acpSearchKeywords": true,
"settings": true,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": true,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,11 @@
{
"added": [
"loginAfterInactivity"
],
"edited": [
"registration_validate",
"email_change",
"emailWrapper"
],
"removed": []
}
@@ -0,0 +1,14 @@
{
"files": {
"added": [],
"edited": [
"global\/admin\/controllers\/core\/ips.core.liveSearch.js"
],
"removed": []
},
"orders": {
"added": [],
"edited": [],
"removed": []
}
}
@@ -0,0 +1,57 @@
{
"normal": {
"added": [
"siteprofilelink_bluesky",
"siteprofilelink_tiktok",
"bluesky_text",
"post_before_registering_captcha_req",
"editor_r__tables",
"login_after_inactivity_notification",
"mailsub__core_loginAfterInactivity",
"login_after_inactivity_email_intro",
"login_after_inactivity_delete_text",
"club_resend_invitation",
"history_invited_to_club",
"history_invite_club_canceled",
"history_left_club",
"history_request_club",
"history_decline_club"
],
"edited": [
"reg_confirm_email_desc",
"enhancements_ips",
"bot_antispam_type_desc",
"login_handler_Twitter",
"history_added_to_club"
],
"removed": [
"guest_captcha",
"guest_captcha_desc"
]
},
"js": {
"added": [
"editor_tool--table",
"editor_tool--tableOptions",
"editor_tool--globalTableOptions",
"editor_tool--tableRowOptions",
"editor_tool--tableCellOptions",
"editor_tool--tableColumnOptions",
"editor_tool--table-deleteTable",
"editor_tool--table-deleteTable--confirm",
"editor_tool--table-addRowBefore",
"editor_tool--table-addRowAfter",
"editor_tool--table-deleteRow",
"editor_tool--table-toggleHeaderRow",
"editor_tool--table-addColumnBefore",
"editor_tool--table-addColumnAfter",
"editor_tool--table-deleteColumn",
"editor_tool--table-toggleHeaderColumn",
"editor_tool--table-splitCell",
"editor_tool--table-mergeCells",
"editor_tool--table-toggleHeaderCell"
],
"edited": [],
"removed": []
}
}
@@ -0,0 +1,30 @@
{
"1": {
"method": "delete",
"params": [
"core_sys_conf_settings",
[
"conf_key='guest_captcha'"
]
]
},
"2": {
"method": "changeColumn",
"params": [
"core_validating",
"prev_email",
{
"name": "new_email",
"type": "VARCHAR",
"length": 150,
"decimals": null,
"values": [],
"allow_null": false,
"default": "0",
"comment": "",
"unsigned": false,
"auto_increment": false
}
]
}
}
@@ -0,0 +1,9 @@
{
"added": [
"login_after_inactivity_notification"
],
"edited": [],
"removed": [
"guest_captcha"
]
}
@@ -0,0 +1,50 @@
{
"html": {
"added": [
"front\/sharelinks\/bluesky"
],
"edited": [
"front\/clubs\/membersRows",
"front\/forms\/postingInformation",
"global\/forms\/sort",
"global\/forms\/translatable",
"front\/global\/cachingLog",
"global\/global\/includeCSS",
"front\/global\/userLink",
"front\/system\/notValidated",
"front\/system\/reauthenticate"
],
"removed": []
},
"css": {
"added": [],
"edited": [
"front\/core.css",
"admin\/core\/global.css",
"global\/framework\/3-buttons.css",
"global\/framework\/3-compose.css",
"global\/framework\/3-cover-photo.css",
"global\/framework\/3-data-tables.css",
"global\/framework\/3-editor.css",
"global\/framework\/3-forms.css",
"global\/framework\/3-inputs.css",
"global\/framework\/3-pagination.css",
"global\/framework\/3-richtext.css",
"global\/framework\/3-social-icons.css",
"global\/framework\/4-breadcrumb.css"
],
"removed": []
},
"resources": {
"added": [
"admin\/enhancements\/meta.png",
"admin\/enhancements\/google_maps.png"
],
"edited": [],
"removed": [
"admin\/enhancements\/communityhive.svg",
"admin\/enhancements\/google_maps.jpeg",
"admin\/enhancements\/facebook.png"
]
}
}
@@ -0,0 +1,116 @@
{
"categories": {
"added": [],
"edited": [
"lightDarkMode",
"logos",
"pageLayouts",
"typography",
"header",
"sidePanel",
"content",
"footer",
"mobileNavigation",
"navigationPanel",
"global",
"textLogo",
"imageLogoDesktop",
"imageLogoMobile",
"desktopHeader",
"mobileHeader",
"desktopFooter",
"body",
"contentBoxes",
"sidebar",
"avatars",
"buttons"
],
"removed": []
},
"settings": {
"added": [],
"edited": [
"set__i-default-scheme",
"set__i-logo-text",
"set__i-sidebar-width",
"i-primary-button--co",
"set__i-mobile-icons-location",
"set__logo-light",
"i-footer--co",
"set__mobile-logo-light",
"layout_global_view_mode",
"set__i-font-family",
"set__i-design-border",
"set__i-layout-width",
"set__i-sidebar-ui-header--he",
"set__i-position-logo",
"set__i-mobile-header--he",
"set__i-change-scheme",
"set__i-logo-slogan",
"i-primary-button--ba-co",
"set__i-mobile-footer-labels",
"set__logo-dark",
"i-footer--ba-co",
"set__mobile-logo-dark",
"set__i-design-radius",
"set__i-font-size",
"set__i-flip-sidebar",
"i-dashHeader--ba-co",
"set__i-position-navigation",
"i-headerMobile--ba-co",
"i-headerMobile--co",
"i-secondary-button--co",
"set__i-logo--fo-fa",
"set__i-position-user",
"i-dashHeader--co",
"set__i-avatar-radius",
"i-color_root",
"set__i-mobile-logo--he",
"set__i-design-shadow",
"i-mobileFooter--ba-co",
"set__i-logo--he",
"i-secondary-button--ba-co",
"set__i-logo--fo-we",
"i-navPanelLinkHover--co",
"set__i-position-breadcrumb",
"i-mobileFooter--co",
"i-color_soft",
"i-body--ba-co",
"set__i-link-panels",
"set__i-sidebar-ui-logo--he",
"i-button--bo-ra",
"set__i-desktop-logo--fo-si",
"set__i-sticky-sidebar",
"i-navPanelLinkActive--ba-co",
"set__i-position-search",
"i-mobileFooter-active--co",
"i-color_hard",
"i-box--ba-co",
"set__i-header-primary--he",
"set__i-sidebar-ui-logo--fo-si",
"i-box--bo-co",
"i-link--co",
"i-mobileFooter-active--ba-co",
"i-navPanel--ba-co",
"set__i-mobile-logo--fo-si",
"i-link-hover--co",
"i-navPanel--co",
"set__i-header-secondary--he",
"i-boxHeader--ba-co",
"i-boxHeader--co",
"set__i-user-content-font-size",
"i-navPanelLinkActive--co",
"set__i-nav-bar-icons",
"i-widget-header--ba-co",
"i-headerTop--ba-co",
"i-widget-header--co",
"i-headerTop--co",
"i-headerPrimary--ba-co",
"i-headerPrimary--co",
"i-headerSecondary--ba-co",
"i-headerSecondary--co",
"set__i-header-top--he"
],
"removed": []
}
}
@@ -0,0 +1,22 @@
{
"id": 5000039,
"name": "5.0.0 Beta 9.1",
"steps": {
"queries": false,
"lang": false,
"theme": false,
"themeeditor": true,
"javascript": false,
"emailTemplates": false,
"acpSearchKeywords": false,
"settings": false,
"tasks": false,
"modules": false,
"widgets": false,
"customOptions": false,
"customRoutines": false
},
"forceMainUpgrader": false,
"forceManualDownloadNoCiC": false,
"forceManualDownloadCiC": false
}
@@ -0,0 +1,116 @@
{
"categories": {
"added": [],
"edited": [
"lightDarkMode",
"logos",
"pageLayouts",
"typography",
"header",
"sidePanel",
"content",
"footer",
"mobileNavigation",
"navigationPanel",
"global",
"textLogo",
"imageLogoDesktop",
"imageLogoMobile",
"desktopHeader",
"mobileHeader",
"desktopFooter",
"body",
"contentBoxes",
"sidebar",
"avatars",
"buttons"
],
"removed": []
},
"settings": {
"added": [],
"edited": [
"set__i-default-scheme",
"set__i-logo-text",
"set__i-sidebar-width",
"i-primary-button--co",
"set__i-mobile-icons-location",
"set__logo-light",
"i-footer--co",
"set__mobile-logo-light",
"layout_global_view_mode",
"set__i-font-family",
"set__i-design-border",
"set__i-layout-width",
"set__i-sidebar-ui-header--he",
"set__i-position-logo",
"set__i-mobile-header--he",
"set__i-change-scheme",
"set__i-logo-slogan",
"i-primary-button--ba-co",
"set__i-mobile-footer-labels",
"set__logo-dark",
"i-footer--ba-co",
"set__mobile-logo-dark",
"set__i-design-radius",
"set__i-font-size",
"set__i-flip-sidebar",
"i-dashHeader--ba-co",
"set__i-position-navigation",
"i-headerMobile--ba-co",
"i-headerMobile--co",
"i-secondary-button--co",
"set__i-logo--fo-fa",
"set__i-position-user",
"i-dashHeader--co",
"set__i-avatar-radius",
"i-color_root",
"set__i-mobile-logo--he",
"set__i-design-shadow",
"i-mobileFooter--ba-co",
"set__i-logo--he",
"i-secondary-button--ba-co",
"set__i-logo--fo-we",
"i-navPanelLinkHover--co",
"set__i-position-breadcrumb",
"i-mobileFooter--co",
"i-color_soft",
"i-body--ba-co",
"set__i-link-panels",
"set__i-sidebar-ui-logo--he",
"i-button--bo-ra",
"set__i-desktop-logo--fo-si",
"set__i-sticky-sidebar",
"i-navPanelLinkActive--ba-co",
"set__i-position-search",
"i-mobileFooter-active--co",
"i-color_hard",
"i-box--ba-co",
"set__i-header-primary--he",
"set__i-sidebar-ui-logo--fo-si",
"i-box--bo-co",
"i-link--co",
"i-mobileFooter-active--ba-co",
"i-navPanel--ba-co",
"set__i-mobile-logo--fo-si",
"i-link-hover--co",
"i-navPanel--co",
"set__i-header-secondary--he",
"i-boxHeader--ba-co",
"i-boxHeader--co",
"set__i-user-content-font-size",
"i-navPanelLinkActive--co",
"set__i-nav-bar-icons",
"i-widget-header--ba-co",
"i-headerTop--ba-co",
"i-widget-header--co",
"i-headerTop--co",
"i-headerPrimary--ba-co",
"i-headerPrimary--co",
"i-headerSecondary--ba-co",
"i-headerSecondary--co",
"set__i-header-top--he"
],
"removed": []
}
}
@@ -90,7 +90,7 @@ class SocialProfiles extends KeyValue
*/
protected function addSocialNetworks( array $options ): array
{
$options['value']['options'] = array(
$values = [
'facebook' => "siteprofilelink_facebook",
'youtube' => "siteprofilelink_youtube",
'x' => "siteprofilelink_x",
@@ -109,7 +109,12 @@ class SocialProfiles extends KeyValue
'vk' => "siteprofilelink_vk",
'discord' => "siteprofilelink_discord",
'twitch' => "siteprofilelink_twitch",
);
'bluesky' => "siteprofilelink_bluesky",
'tiktok' => "siteprofilelink_tiktok",
];
asort( $values );
$options['value']['options'] = $values;
return $options;
}
+1 -1
View File
@@ -171,7 +171,7 @@ class cleanup extends Task
}
/* ...and guest details stored with reports */
if( Settings::i()->report_guest_details_store_days )
if( (int) Settings::i()->report_guest_details_store_days > 0 )
{
Db::i()->update( 'core_rc_reports', [ 'guest_name' => null, 'guest_email' => null ], array( 'date_reported < ?', DateTime::create()->sub( new DateInterval( 'P' . \IPS\Settings::i()->report_guest_details_store_days . 'D' ) )->getTimestamp() ) );
}
Loaded 100 of 202 files, more files were not shown because too many files have changed in this diff. Show more