Version Description
= [5.0] =
Please see the changelog for the complete list of changes in this release. Previous versions of The Events Calendar are not cross-compatible with 5.X add-ons. Remember to always make a backup of your database and files before updating!
Download this release
Release Info
Developer | bordoni |
Plugin | The Events Calendar |
Version | 5.3.0 |
Comparing to | |
See all releases |
Code changes from version 5.2.1.1 to 5.3.0
- common/lang/tribe-common-af.mo +0 -0
- common/lang/tribe-common-ar.mo +0 -0
- common/lang/tribe-common-bg_BG.mo +0 -0
- common/lang/tribe-common-ca.mo +0 -0
- common/lang/tribe-common-cs_CZ.mo +0 -0
- common/lang/tribe-common-da_DK.mo +0 -0
- common/lang/tribe-common-de_DE.mo +0 -0
- common/lang/tribe-common-el.mo +0 -0
- common/lang/tribe-common-en_GB.mo +0 -0
- common/lang/tribe-common-es_ES.mo +0 -0
- common/lang/tribe-common-et.mo +0 -0
- common/lang/tribe-common-fi.mo +0 -0
- common/lang/tribe-common-fr_CA.mo +0 -0
- common/lang/tribe-common-fr_FR.mo +0 -0
- common/lang/tribe-common-hu_HU.mo +0 -0
- common/lang/tribe-common-id_ID.mo +0 -0
- common/lang/tribe-common-is_IS.mo +0 -0
- common/lang/tribe-common-it_IT.mo +0 -0
- common/lang/tribe-common-ja.mo +0 -0
- common/lang/tribe-common-lt_LT.mo +0 -0
- common/lang/tribe-common-lv.mo +0 -0
- common/lang/tribe-common-nb_NO.mo +0 -0
- common/lang/tribe-common-nl_NL.mo +0 -0
- common/lang/tribe-common-pt_BR.mo +0 -0
- common/lang/tribe-common-pt_PT.mo +0 -0
- common/lang/tribe-common-ro_RO.mo +0 -0
- common/lang/tribe-common-ru_RU.mo +0 -0
- common/lang/tribe-common-sk_SK.mo +0 -0
- common/lang/tribe-common-sl_SI.mo +0 -0
- common/lang/tribe-common-sr_RS.mo +0 -0
- common/lang/tribe-common-sv_SE.mo +0 -0
- common/lang/tribe-common-tr_TR.mo +0 -0
- common/lang/tribe-common-zh_CN.mo +0 -0
- common/lang/tribe-common-zh_TW.mo +0 -0
- common/lang/tribe-common.pot +117 -117
- common/src/Tribe/Admin/Activation_Page.php +13 -13
- common/src/Tribe/Admin/Help_Page.php +126 -111
- common/src/Tribe/Admin/Live_Date_Preview.php +5 -5
- common/src/Tribe/Admin/Notice/Marketing.php +1 -1
- common/src/Tribe/Admin/Notice/Php_Version.php +4 -4
- common/src/Tribe/Admin/Notice/Plugin_Download.php +7 -7
- common/src/Tribe/Admin/Notice/Plugin_Upgrade_Notice.php +1 -1
- common/src/Tribe/Admin/Notices.php +25 -25
- common/src/Tribe/Ajax/Dropdown.php +17 -14
- common/src/Tribe/Ajax/Operations.php +2 -2
- common/src/Tribe/App_Shop.php +23 -13
- common/src/Tribe/Asset/Data.php +67 -67
- common/src/Tribe/Assets.php +2 -2
- common/src/Tribe/Assets_Pipeline.php +1 -1
- common/src/Tribe/Autoloader.php +4 -4
- common/src/Tribe/Cache.php +48 -2
- common/src/Tribe/Changelog_Reader.php +2 -2
- common/src/Tribe/Context.php +18 -17
- common/src/Tribe/Cost_Utils.php +27 -22
- common/src/Tribe/Credits.php +5 -5
- common/src/Tribe/Customizer.php +50 -25
- common/src/Tribe/Customizer/Control.php +20 -0
- common/src/Tribe/Customizer/Controls/Heading.php +52 -0
- common/src/Tribe/Customizer/Section.php +10 -10
- common/src/Tribe/Data.php +1 -1
- common/src/Tribe/Date_Utils.php +40 -40
- common/src/Tribe/Debug.php +1 -1
- common/src/Tribe/Dependency.php +15 -15
- common/src/Tribe/Deprecation.php +16 -16
- common/src/Tribe/Documentation/Swagger/Cost_Details_Definition_Provider.php +15 -15
- common/src/Tribe/Documentation/Swagger/Date_Details_Definition_Provider.php +22 -22
- common/src/Tribe/Documentation/Swagger/Image_Definition_Provider.php +18 -18
- common/src/Tribe/Documentation/Swagger/Image_Size_Definition_Provider.php +17 -17
- common/src/Tribe/Documentation/Swagger/Term_Definition_Provider.php +32 -32
- common/src/Tribe/Duplicate/Post.php +14 -14
- common/src/Tribe/Duplicate/Strategy/Base.php +1 -1
- common/src/Tribe/Duplicate/Strategy/Like.php +2 -2
- common/src/Tribe/Duplicate/Strategy_Factory.php +3 -3
- common/src/Tribe/Editor.php +5 -5
- common/src/Tribe/Editor/Assets.php +94 -43
- common/src/Tribe/Editor/Blocks/Abstract.php +8 -12
- common/src/Tribe/Editor/Blocks/Interface.php +1 -1
- common/src/Tribe/Editor/Configuration.php +24 -24
- common/src/Tribe/Editor/Meta.php +24 -24
- common/src/Tribe/Editor/Provider.php +2 -2
- common/src/Tribe/Editor/Utils.php +2 -2
- common/src/Tribe/Error.php +4 -4
- common/src/Tribe/Exception.php +1 -1
- common/src/Tribe/Extension.php +6 -6
- common/src/Tribe/Extension_Loader.php +9 -5
- common/src/Tribe/Field.php +11 -11
- common/src/Tribe/JSON_LD/Abstract.php +14 -14
- common/src/Tribe/Languages/Locations.php +7 -7
- common/src/Tribe/Languages/Recaptcha_Map.php +2 -2
- common/src/Tribe/Log.php +14 -15
- common/src/Tribe/Log/Action_Logger.php +1 -1
- common/src/Tribe/Log/Admin.php +23 -23
- common/src/Tribe/Log/Canonical_Formatter.php +7 -7
- common/src/Tribe/Log/File_Logger.php +6 -12
- common/src/Tribe/Log/Logger.php +1 -1
- common/src/Tribe/Log/Null_Logger.php +4 -4
- common/src/Tribe/Main.php +7 -9
- common/src/Tribe/Meta/Chunker.php +34 -34
- common/src/Tribe/Notices.php +1 -1
- common/src/Tribe/PUE/Notices.php +11 -11
- common/src/Tribe/PUE/Package_Handler.php +1 -1
- common/src/Tribe/PUE/Plugin_Info.php +4 -4
- common/src/Tribe/PUE/Utility.php +3 -3
- common/src/Tribe/Plugin_Meta_Links.php +8 -8
- common/src/Tribe/Plugins_API.php +135 -135
- common/src/Tribe/Post_History.php +4 -4
- common/src/Tribe/Promise.php +3 -3
- common/src/Tribe/Promoter/PUE.php +4 -4
- common/src/Tribe/REST/Post_Repository.php +16 -12
- common/src/Tribe/Repository.php +127 -120
- common/src/Tribe/Repository/Core_Read_Interface.php +2 -2
- common/src/Tribe/Repository/Decorator.php +5 -5
- common/src/Tribe/Repository/Query_Filters.php +100 -100
- common/src/Tribe/Rewrite.php +13 -11
- common/src/Tribe/Service_Providers/Debug_Bar.php +3 -3
- common/src/Tribe/Service_Providers/Processes.php +11 -11
- common/src/Tribe/Service_Providers/Promoter.php +12 -12
- common/src/Tribe/Settings.php +27 -27
- common/src/Tribe/Settings_Manager.php +23 -17
- common/src/Tribe/Settings_Tab.php +12 -12
- common/src/Tribe/Simple_Table.php +3 -3
- common/src/Tribe/Support.php +21 -21
- common/src/Tribe/Support/Obfuscator.php +2 -2
- common/src/Tribe/Support/Template_Checker.php +6 -7
- common/src/Tribe/Support/Template_Checker_Report.php +2 -2
- common/src/Tribe/Tabbed_View.php +7 -7
- common/src/Tribe/Tabbed_View/Tab.php +6 -6
- common/src/Tribe/Template.php +20 -18
- common/src/Tribe/Template_Factory.php +3 -3
- common/src/Tribe/Template_Part_Cache.php +3 -3
- common/src/Tribe/Templates.php +1 -1
- common/src/Tribe/Terms.php +1 -1
- common/src/Tribe/Timezones.php +5 -5
- common/src/Tribe/Tracker.php +17 -17
- common/src/Tribe/Updater.php +4 -4
- common/src/Tribe/Utils/Array.php +146 -0
- common/src/Tribe/Utils/Callback.php +8 -8
- common/src/Tribe/Utils/Collection.php +1 -1
- common/src/Tribe/Utils/Color.php +9 -9
- common/src/Tribe/Utils/Coordinates_Provider.php +3 -3
- common/src/Tribe/Utils/Element_Attributes.php +1 -1
- common/src/Tribe/Utils/Global_ID.php +8 -8
- common/src/Tribe/Utils/JSON.php +3 -3
- common/src/Tribe/Utils/Paths.php +63 -0
- common/src/Tribe/Utils/Plugins.php +3 -3
- common/src/Tribe/Utils/Post_Root_Pool.php +2 -2
- common/src/Tribe/Validate.php +6 -6
- common/src/Tribe/Validator/Base.php +1 -1
- common/src/Tribe/View_Helpers.php +10 -10
- common/src/Tribe/Widget/Widget_Abstract.php +199 -14
- common/src/Tribe/Widget/Widget_Interface.php +37 -3
- common/src/admin-views/tribe-options-display.php +48 -47
- common/src/admin-views/tribe-options-help.php +37 -7
- common/src/admin-views/tribe-options-licenses.php +10 -10
- common/src/admin-views/tribe-options-network.php +15 -15
- common/src/functions/query.php +1 -1
- common/src/functions/template-tags/date.php +6 -6
- common/src/functions/template-tags/general.php +12 -12
- common/src/functions/template-tags/html.php +80 -0
- common/src/functions/utils.php +106 -59
- common/src/resources/css/common-full.min.css +1 -1
- common/src/resources/css/common-skeleton.min.css +1 -1
- common/src/resources/css/tribe-common-admin.min.css +1 -1
- common/src/resources/images/mascot.png +0 -0
- common/src/resources/js/app/components.min.js +2 -2
- common/src/resources/js/app/data.min.js +1 -1
common/lang/tribe-common-af.mo
CHANGED
Binary file
|
common/lang/tribe-common-ar.mo
CHANGED
Binary file
|
common/lang/tribe-common-bg_BG.mo
CHANGED
Binary file
|
common/lang/tribe-common-ca.mo
CHANGED
Binary file
|
common/lang/tribe-common-cs_CZ.mo
CHANGED
Binary file
|
common/lang/tribe-common-da_DK.mo
CHANGED
Binary file
|
common/lang/tribe-common-de_DE.mo
CHANGED
Binary file
|
common/lang/tribe-common-el.mo
CHANGED
Binary file
|
common/lang/tribe-common-en_GB.mo
CHANGED
Binary file
|
common/lang/tribe-common-es_ES.mo
CHANGED
Binary file
|
common/lang/tribe-common-et.mo
CHANGED
Binary file
|
common/lang/tribe-common-fi.mo
CHANGED
Binary file
|
common/lang/tribe-common-fr_CA.mo
CHANGED
Binary file
|
common/lang/tribe-common-fr_FR.mo
CHANGED
Binary file
|
common/lang/tribe-common-hu_HU.mo
CHANGED
Binary file
|
common/lang/tribe-common-id_ID.mo
CHANGED
Binary file
|
common/lang/tribe-common-is_IS.mo
CHANGED
Binary file
|
common/lang/tribe-common-it_IT.mo
CHANGED
Binary file
|
common/lang/tribe-common-ja.mo
CHANGED
Binary file
|
common/lang/tribe-common-lt_LT.mo
CHANGED
Binary file
|
common/lang/tribe-common-lv.mo
CHANGED
Binary file
|
common/lang/tribe-common-nb_NO.mo
CHANGED
Binary file
|
common/lang/tribe-common-nl_NL.mo
CHANGED
Binary file
|
common/lang/tribe-common-pt_BR.mo
CHANGED
Binary file
|
common/lang/tribe-common-pt_PT.mo
CHANGED
Binary file
|
common/lang/tribe-common-ro_RO.mo
CHANGED
Binary file
|
common/lang/tribe-common-ru_RU.mo
CHANGED
Binary file
|
common/lang/tribe-common-sk_SK.mo
CHANGED
Binary file
|
common/lang/tribe-common-sl_SI.mo
CHANGED
Binary file
|
common/lang/tribe-common-sr_RS.mo
CHANGED
Binary file
|
common/lang/tribe-common-sv_SE.mo
CHANGED
Binary file
|
common/lang/tribe-common-tr_TR.mo
CHANGED
Binary file
|
common/lang/tribe-common-zh_CN.mo
CHANGED
Binary file
|
common/lang/tribe-common-zh_TW.mo
CHANGED
Binary file
|
common/lang/tribe-common.pot
CHANGED
@@ -2,13 +2,13 @@
|
|
2 |
Â
# This file is distributed under the same license as the Tribe Common package.
|
3 |
Â
msgid ""
|
4 |
Â
msgstr ""
|
5 |
-
"Project-Id-Version: Tribe Common 4.12.
|
6 |
Â
"Report-Msgid-Bugs-To: http://m.tri.be/191x\n"
|
7 |
-
"POT-Creation-Date: 2020-
|
8 |
Â
"MIME-Version: 1.0\n"
|
9 |
Â
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
Â
"Content-Transfer-Encoding: 8bit\n"
|
11 |
-
"PO-Revision-Date: 2020-
|
12 |
Â
"Last-Translator: \n"
|
13 |
Â
"Language-Team: \n"
|
14 |
Â
|
@@ -28,7 +28,7 @@ msgstr ""
|
|
28 |
Â
msgid "Return to WordPress Updates"
|
29 |
Â
msgstr ""
|
30 |
Â
|
31 |
-
#: src/Tribe/Admin/Help_Page.php:56 src/admin-views/tribe-options-help.php:
|
32 |
Â
msgid "Copy to clipboard"
|
33 |
Â
msgstr ""
|
34 |
Â
|
@@ -40,7 +40,7 @@ msgstr ""
|
|
40 |
Â
msgid "Press \"Cmd + C\" to copy"
|
41 |
Â
msgstr ""
|
42 |
Â
|
43 |
-
#: src/Tribe/Admin/Help_Page.php:79 src/Tribe/Customizer.php:
|
44 |
Â
#: src/Tribe/Plugins_API.php:25
|
45 |
Â
msgid "The Events Calendar"
|
46 |
Â
msgstr ""
|
@@ -51,128 +51,128 @@ msgid ""
|
|
51 |
Â
"easily share your events."
|
52 |
Â
msgstr ""
|
53 |
Â
|
54 |
-
#: src/Tribe/Admin/Help_Page.php:
|
55 |
Â
msgid "Event Tickets"
|
56 |
Â
msgstr ""
|
57 |
Â
|
58 |
-
#: src/Tribe/Admin/Help_Page.php:
|
59 |
Â
msgid ""
|
60 |
Â
"Events Tickets is a carefully crafted, extensible plugin that lets you "
|
61 |
Â
"easily sell tickets for your events."
|
62 |
Â
msgstr ""
|
63 |
Â
|
64 |
-
#: src/Tribe/Admin/Help_Page.php:
|
65 |
Â
msgid "Advanced Post Manager"
|
66 |
Â
msgstr ""
|
67 |
Â
|
68 |
-
#: src/Tribe/Admin/Help_Page.php:
|
69 |
Â
msgid ""
|
70 |
Â
"Turbo charge your posts admin for any custom post type with sortable filters "
|
71 |
Â
"and columns, and auto-registration of metaboxes."
|
72 |
Â
msgstr ""
|
73 |
Â
|
74 |
-
#: src/Tribe/Admin/Help_Page.php:
|
75 |
Â
msgid " and "
|
76 |
Â
msgstr ""
|
77 |
Â
|
78 |
-
#: src/Tribe/Admin/Help_Page.php:
|
79 |
Â
msgid "Events Calendar PRO"
|
80 |
Â
msgstr ""
|
81 |
Â
|
82 |
-
#: src/Tribe/Admin/Help_Page.php:
|
83 |
Â
msgid "Eventbrite Tickets"
|
84 |
Â
msgstr ""
|
85 |
Â
|
86 |
-
#: src/Tribe/Admin/Help_Page.php:
|
87 |
Â
msgid "Community Events"
|
88 |
Â
msgstr ""
|
89 |
Â
|
90 |
-
#: src/Tribe/Admin/Help_Page.php:
|
91 |
Â
msgid "Event Aggregator"
|
92 |
Â
msgstr ""
|
93 |
Â
|
94 |
-
#: src/Tribe/Admin/Help_Page.php:
|
95 |
Â
msgid "Filter Bar"
|
96 |
Â
msgstr ""
|
97 |
Â
|
98 |
-
#: src/Tribe/Admin/Help_Page.php:
|
99 |
Â
msgid "Virtual Events"
|
100 |
Â
msgstr ""
|
101 |
Â
|
102 |
-
#: src/Tribe/Admin/Help_Page.php:
|
103 |
Â
msgid "Event Tickets Plus"
|
104 |
Â
msgstr ""
|
105 |
Â
|
106 |
-
#: src/Tribe/Admin/Help_Page.php:
|
107 |
Â
msgid "Community Tickets"
|
108 |
Â
msgstr ""
|
109 |
Â
|
110 |
-
#: src/Tribe/Admin/Help_Page.php:
|
111 |
Â
msgctxt "not available"
|
112 |
Â
msgid "n/a"
|
113 |
Â
msgstr ""
|
114 |
Â
|
115 |
-
#: src/Tribe/Admin/Help_Page.php:
|
116 |
Â
msgid "You need to upgrade!"
|
117 |
Â
msgstr ""
|
118 |
Â
|
119 |
-
#: src/Tribe/Admin/Help_Page.php:
|
120 |
Â
msgid "You are up to date!"
|
121 |
Â
msgstr ""
|
122 |
Â
|
123 |
-
#: src/Tribe/Admin/Help_Page.php:
|
124 |
Â
msgid "Activate %s"
|
125 |
Â
msgstr ""
|
126 |
Â
|
127 |
-
#: src/Tribe/Admin/Help_Page.php:
|
128 |
Â
msgid "Activate Plugin"
|
129 |
Â
msgstr ""
|
130 |
Â
|
131 |
-
#: src/Tribe/Admin/Help_Page.php:
|
132 |
Â
msgid "Upgrade Plugin"
|
133 |
Â
msgstr ""
|
134 |
Â
|
135 |
-
#: src/Tribe/Admin/Help_Page.php:
|
136 |
Â
msgid "Install %s"
|
137 |
Â
msgstr ""
|
138 |
Â
|
139 |
-
#: src/Tribe/Admin/Help_Page.php:
|
140 |
Â
msgid "Install Plugin"
|
141 |
Â
msgstr ""
|
142 |
Â
|
143 |
-
#: src/Tribe/Admin/Help_Page.php:
|
144 |
Â
msgid "Latest Version:"
|
145 |
Â
msgstr ""
|
146 |
Â
|
147 |
-
#: src/Tribe/Admin/Help_Page.php:
|
148 |
Â
msgid "Requires:"
|
149 |
Â
msgstr ""
|
150 |
Â
|
151 |
-
#: src/Tribe/Admin/Help_Page.php:
|
152 |
Â
msgid "WordPress "
|
153 |
Â
msgstr ""
|
154 |
Â
|
155 |
-
#: src/Tribe/Admin/Help_Page.php:
|
156 |
Â
msgid "Active Users:"
|
157 |
Â
msgstr ""
|
158 |
Â
|
159 |
-
#: src/Tribe/Admin/Help_Page.php:
|
160 |
Â
msgid "Rating:"
|
161 |
Â
msgstr ""
|
162 |
Â
|
163 |
-
#: src/Tribe/Admin/Help_Page.php:
|
164 |
Â
msgid "Premium Add-Ons"
|
165 |
Â
msgstr ""
|
166 |
Â
|
167 |
-
#: src/Tribe/Admin/Help_Page.php:
|
168 |
Â
msgid "Plugin Active"
|
169 |
Â
msgstr ""
|
170 |
Â
|
171 |
-
#: src/Tribe/Admin/Help_Page.php:
|
172 |
Â
msgid "Plugin Inactive"
|
173 |
Â
msgstr ""
|
174 |
Â
|
175 |
-
#: src/Tribe/Admin/Help_Page.php:
|
176 |
Â
msgid "Visit the Add-on Page"
|
177 |
Â
msgstr ""
|
178 |
Â
|
@@ -223,148 +223,148 @@ msgstr ""
|
|
223 |
Â
msgid "Cannot look for Terms without a taxonomy"
|
224 |
Â
msgstr ""
|
225 |
Â
|
226 |
-
#: src/Tribe/Ajax/Dropdown.php:
|
227 |
Â
msgid "Missing data source for this dropdown"
|
228 |
Â
msgstr ""
|
229 |
Â
|
230 |
-
#: src/Tribe/Ajax/Dropdown.php:
|
231 |
Â
msgid "Empty data set for this dropdown"
|
232 |
Â
msgstr ""
|
233 |
Â
|
234 |
-
#: src/Tribe/Ajax/Dropdown.php:
|
235 |
Â
msgid "The \"%s\" source is invalid and cannot be reached on \"%s\" instance."
|
236 |
Â
msgstr ""
|
237 |
Â
|
238 |
Â
#: src/Tribe/App_Shop.php:50 src/Tribe/App_Shop.php:51
|
239 |
-
#: src/Tribe/App_Shop.php:
|
240 |
Â
msgid "Event Add-Ons"
|
241 |
Â
msgstr ""
|
242 |
Â
|
243 |
-
#: src/Tribe/App_Shop.php:
|
244 |
Â
msgid "Events Marketing Bundle"
|
245 |
Â
msgstr ""
|
246 |
Â
|
247 |
-
#: src/Tribe/App_Shop.php:
|
248 |
-
#: src/Tribe/App_Shop.php:
|
249 |
Â
msgid "Save over 20%"
|
250 |
Â
msgstr ""
|
251 |
Â
|
252 |
-
#: src/Tribe/App_Shop.php:
|
253 |
Â
msgid "Ticket sales, attendee management, and email marketing for your events"
|
254 |
Â
msgstr ""
|
255 |
Â
|
256 |
-
#: src/Tribe/App_Shop.php:
|
257 |
Â
msgid "Event Importer Bundle"
|
258 |
Â
msgstr ""
|
259 |
Â
|
260 |
-
#: src/Tribe/App_Shop.php:
|
261 |
Â
msgid "Save over 25%"
|
262 |
Â
msgstr ""
|
263 |
Â
|
264 |
-
#: src/Tribe/App_Shop.php:
|
265 |
Â
msgid ""
|
266 |
Â
"Fill your calendar with events from across the web, including Google "
|
267 |
Â
"Calendar, Meetup, and more."
|
268 |
Â
msgstr ""
|
269 |
Â
|
270 |
-
#: src/Tribe/App_Shop.php:
|
271 |
Â
msgid "Virtual Events Marketing Bundle"
|
272 |
Â
msgstr ""
|
273 |
Â
|
274 |
-
#: src/Tribe/App_Shop.php:
|
275 |
Â
msgid "Streamline your online events and increase revenue."
|
276 |
Â
msgstr ""
|
277 |
Â
|
278 |
-
#: src/Tribe/App_Shop.php:
|
279 |
Â
msgid "Sell tickets and earn revenue for online events"
|
280 |
Â
msgstr ""
|
281 |
Â
|
282 |
-
#: src/Tribe/App_Shop.php:
|
283 |
Â
msgid "Zoom integration"
|
284 |
Â
msgstr ""
|
285 |
Â
|
286 |
-
#: src/Tribe/App_Shop.php:
|
287 |
Â
msgid "Automated emails optimized for virtual events"
|
288 |
Â
msgstr ""
|
289 |
Â
|
290 |
-
#: src/Tribe/App_Shop.php:
|
291 |
Â
msgid "Add recurring events"
|
292 |
Â
msgstr ""
|
293 |
Â
|
294 |
-
#: src/Tribe/App_Shop.php:
|
295 |
Â
msgid "Community Manager Bundle"
|
296 |
Â
msgstr ""
|
297 |
Â
|
298 |
-
#: src/Tribe/App_Shop.php:
|
299 |
Â
msgid ""
|
300 |
Â
"Handle event submissions with ticket sales and everything you need to build "
|
301 |
Â
"a robust community."
|
302 |
Â
msgstr ""
|
303 |
Â
|
304 |
-
#: src/Tribe/App_Shop.php:
|
305 |
Â
msgid "Ultimate Bundle"
|
306 |
Â
msgstr ""
|
307 |
Â
|
308 |
-
#: src/Tribe/App_Shop.php:
|
309 |
Â
msgid "All of our premium events management plugins at a deep discount."
|
310 |
Â
msgstr ""
|
311 |
Â
|
312 |
-
#: src/Tribe/App_Shop.php:
|
313 |
Â
msgid "Website URL CTA"
|
314 |
Â
msgstr ""
|
315 |
Â
|
316 |
-
#: src/Tribe/App_Shop.php:
|
317 |
Â
msgid ""
|
318 |
Â
"Create a strong call-to-action for attendees to \"Join Webinar\" instead of "
|
319 |
Â
"only sharing a website address."
|
320 |
Â
msgstr ""
|
321 |
Â
|
322 |
-
#: src/Tribe/App_Shop.php:
|
323 |
Â
msgid "Link Directly to Webinar"
|
324 |
Â
msgstr ""
|
325 |
Â
|
326 |
-
#: src/Tribe/App_Shop.php:
|
327 |
Â
msgid ""
|
328 |
Â
"When users click on the event title, they’ll be taken right to the source of "
|
329 |
Â
"your event, offering a direct route to join."
|
330 |
Â
msgstr ""
|
331 |
Â
|
332 |
-
#: src/Tribe/App_Shop.php:
|
333 |
Â
msgid "Events Happening Now"
|
334 |
Â
msgstr ""
|
335 |
Â
|
336 |
-
#: src/Tribe/App_Shop.php:
|
337 |
Â
msgid ""
|
338 |
Â
"Use this shortcode to display events that are currently in progress, like "
|
339 |
Â
"webinars and livestreams."
|
340 |
Â
msgstr ""
|
341 |
Â
|
342 |
-
#: src/Tribe/App_Shop.php:
|
343 |
Â
msgid "Custom Venue Links"
|
344 |
Â
msgstr ""
|
345 |
Â
|
346 |
-
#: src/Tribe/App_Shop.php:
|
347 |
Â
msgid ""
|
348 |
Â
"Turn the venue name for your event into a clickable URL — a great way to "
|
349 |
Â
"link directly to a venue’s website or a virtual meeting."
|
350 |
Â
msgstr ""
|
351 |
Â
|
352 |
-
#: src/Tribe/App_Shop.php:
|
353 |
Â
msgid "Adjust Label"
|
354 |
Â
msgstr ""
|
355 |
Â
|
356 |
-
#: src/Tribe/App_Shop.php:
|
357 |
Â
msgid ""
|
358 |
Â
"Change \"Events\" to \"Webinars,\" or \"Venues\" to \"Livestream,\" or "
|
359 |
Â
"\"Organizers\" to \"Hosts.\" Tailor your calendar for virtual events and "
|
360 |
Â
"meetings."
|
361 |
Â
msgstr ""
|
362 |
Â
|
363 |
-
#: src/Tribe/App_Shop.php:
|
364 |
Â
msgid "Reach Attendees"
|
365 |
Â
msgstr ""
|
366 |
Â
|
367 |
-
#: src/Tribe/App_Shop.php:
|
368 |
Â
msgid ""
|
369 |
Â
"From registration to attendance history, view every step of the event "
|
370 |
Â
"lifecycle with this HubSpot integration."
|
@@ -386,7 +386,7 @@ msgstr ""
|
|
386 |
Â
msgid "Rate %1$sEvent Tickets%2$s %3$s"
|
387 |
Â
msgstr ""
|
388 |
Â
|
389 |
-
#: src/Tribe/Customizer.php:
|
390 |
Â
msgid ""
|
391 |
Â
"Use the following panel of your customizer to change the styling of your "
|
392 |
Â
"Calendar and Event pages."
|
@@ -570,7 +570,7 @@ msgstr ""
|
|
570 |
Â
msgid "A list of links to the term own, archive and parent REST URL"
|
571 |
Â
msgstr ""
|
572 |
Â
|
573 |
-
#: src/Tribe/Editor/Blocks/Abstract.php:
|
574 |
Â
msgid "Problem loading the block, please remove this block to restart."
|
575 |
Â
msgstr ""
|
576 |
Â
|
@@ -1845,107 +1845,107 @@ msgstr ""
|
|
1845 |
Â
msgid "Null logger (will log nothing)"
|
1846 |
Â
msgstr ""
|
1847 |
Â
|
1848 |
-
#: src/Tribe/Log.php:
|
1849 |
Â
msgid "Cannot set %s as the current logging engine"
|
1850 |
Â
msgstr ""
|
1851 |
Â
|
1852 |
-
#: src/Tribe/Log.php:
|
1853 |
Â
msgid "Disabled"
|
1854 |
Â
msgstr ""
|
1855 |
Â
|
1856 |
-
#: src/Tribe/Log.php:
|
1857 |
Â
msgid "Only errors"
|
1858 |
Â
msgstr ""
|
1859 |
Â
|
1860 |
-
#: src/Tribe/Log.php:
|
1861 |
Â
msgid "Warnings and errors"
|
1862 |
Â
msgstr ""
|
1863 |
Â
|
1864 |
-
#: src/Tribe/Log.php:
|
1865 |
Â
msgid "Full debug (all events)"
|
1866 |
Â
msgstr ""
|
1867 |
Â
|
1868 |
-
#: src/Tribe/Main.php:
|
1869 |
Â
msgid ": activate to sort column ascending"
|
1870 |
Â
msgstr ""
|
1871 |
Â
|
1872 |
-
#: src/Tribe/Main.php:
|
1873 |
Â
msgid ": activate to sort column descending"
|
1874 |
Â
msgstr ""
|
1875 |
Â
|
1876 |
-
#: src/Tribe/Main.php:
|
1877 |
Â
msgid "Show _MENU_ entries"
|
1878 |
Â
msgstr ""
|
1879 |
Â
|
1880 |
-
#: src/Tribe/Main.php:
|
1881 |
Â
msgid "No data available in table"
|
1882 |
Â
msgstr ""
|
1883 |
Â
|
1884 |
-
#: src/Tribe/Main.php:
|
1885 |
Â
msgid "Showing _START_ to _END_ of _TOTAL_ entries"
|
1886 |
Â
msgstr ""
|
1887 |
Â
|
1888 |
-
#: src/Tribe/Main.php:
|
1889 |
Â
msgid "Showing 0 to 0 of 0 entries"
|
1890 |
Â
msgstr ""
|
1891 |
Â
|
1892 |
-
#: src/Tribe/Main.php:
|
1893 |
Â
msgid "(filtered from _MAX_ total entries)"
|
1894 |
Â
msgstr ""
|
1895 |
Â
|
1896 |
-
#: src/Tribe/Main.php:
|
1897 |
Â
msgid "No matching records found"
|
1898 |
Â
msgstr ""
|
1899 |
Â
|
1900 |
-
#: src/Tribe/Main.php:
|
1901 |
Â
msgid "Search:"
|
1902 |
Â
msgstr ""
|
1903 |
Â
|
1904 |
-
#: src/Tribe/Main.php:
|
1905 |
Â
msgid "All items on this page were selected. "
|
1906 |
Â
msgstr ""
|
1907 |
Â
|
1908 |
-
#: src/Tribe/Main.php:
|
1909 |
Â
msgid "Select all pages"
|
1910 |
Â
msgstr ""
|
1911 |
Â
|
1912 |
-
#: src/Tribe/Main.php:
|
1913 |
Â
msgid "Clear Selection."
|
1914 |
Â
msgstr ""
|
1915 |
Â
|
1916 |
-
#: src/Tribe/Main.php:
|
1917 |
Â
msgid "All"
|
1918 |
Â
msgstr ""
|
1919 |
Â
|
1920 |
-
#: src/Tribe/Main.php:
|
1921 |
Â
msgid "Next"
|
1922 |
Â
msgstr ""
|
1923 |
Â
|
1924 |
-
#: src/Tribe/Main.php:
|
1925 |
Â
msgid "Previous"
|
1926 |
Â
msgstr ""
|
1927 |
Â
|
1928 |
-
#: src/Tribe/Main.php:
|
1929 |
Â
msgid ": Selected %d rows"
|
1930 |
Â
msgstr ""
|
1931 |
Â
|
1932 |
-
#: src/Tribe/Main.php:
|
1933 |
Â
msgid ": Selected 1 row"
|
1934 |
Â
msgstr ""
|
1935 |
Â
|
1936 |
-
#: src/Tribe/Main.php:
|
1937 |
Â
msgid "Prev"
|
1938 |
Â
msgstr ""
|
1939 |
Â
|
1940 |
-
#: src/Tribe/Main.php:
|
1941 |
Â
msgid "Today"
|
1942 |
Â
msgstr ""
|
1943 |
Â
|
1944 |
-
#: src/Tribe/Main.php:
|
1945 |
Â
msgid "Done"
|
1946 |
Â
msgstr ""
|
1947 |
Â
|
1948 |
-
#: src/Tribe/Main.php:
|
1949 |
Â
msgid "Clear"
|
1950 |
Â
msgstr ""
|
1951 |
Â
|
@@ -2432,16 +2432,16 @@ msgstr ""
|
|
2432 |
Â
msgid "Display"
|
2433 |
Â
msgstr ""
|
2434 |
Â
|
2435 |
-
#: src/Tribe/Settings_Manager.php:
|
2436 |
Â
msgid "Network"
|
2437 |
Â
msgstr ""
|
2438 |
Â
|
2439 |
-
#: src/Tribe/Settings_Manager.php:
|
2440 |
Â
#: src/admin-views/tribe-options-licenses.php:57
|
2441 |
Â
msgid "Licenses"
|
2442 |
Â
msgstr ""
|
2443 |
Â
|
2444 |
-
#: src/Tribe/Settings_Manager.php:
|
2445 |
Â
msgid "Help"
|
2446 |
Â
msgstr ""
|
2447 |
Â
|
@@ -2741,22 +2741,22 @@ msgstr ""
|
|
2741 |
Â
msgid "Download log"
|
2742 |
Â
msgstr ""
|
2743 |
Â
|
2744 |
-
#: src/admin-views/tribe-options-display.php:
|
2745 |
Â
msgid "Date Format Settings"
|
2746 |
Â
msgstr ""
|
2747 |
Â
|
2748 |
-
#: src/admin-views/tribe-options-display.php:
|
2749 |
Â
msgid ""
|
2750 |
Â
"The following three fields accept the date format options available to the "
|
2751 |
Â
"PHP %1$s function. <a href=\"%2$s\" target=\"_blank\">Learn how to make your "
|
2752 |
Â
"own date format here</a>."
|
2753 |
Â
msgstr ""
|
2754 |
Â
|
2755 |
-
#: src/admin-views/tribe-options-display.php:
|
2756 |
Â
msgid "Compact Date Format"
|
2757 |
Â
msgstr ""
|
2758 |
Â
|
2759 |
-
#: src/admin-views/tribe-options-display.php:
|
2760 |
Â
msgid ""
|
2761 |
Â
"Select the date format used for elements with minimal space, such as in "
|
2762 |
Â
"datepickers."
|
@@ -2867,28 +2867,28 @@ msgid ""
|
|
2867 |
Â
"steps:"
|
2868 |
Â
msgstr ""
|
2869 |
Â
|
2870 |
-
#: src/admin-views/tribe-options-help.php:
|
2871 |
Â
msgid ""
|
2872 |
Â
"%s. All of the common (and not-so-common) answers to questions we see are "
|
2873 |
Â
"here. It’s often the fastest path to finding an answer!"
|
2874 |
Â
msgstr ""
|
2875 |
Â
|
2876 |
-
#: src/admin-views/tribe-options-help.php:
|
2877 |
Â
msgid "Check our Knowledgebase"
|
2878 |
Â
msgstr ""
|
2879 |
Â
|
2880 |
-
#: src/admin-views/tribe-options-help.php:
|
2881 |
Â
msgid ""
|
2882 |
Â
"%s. Testing for an existing conflict is the best start for in-depth "
|
2883 |
Â
"troubleshooting. We will often ask you to follow these steps when opening a "
|
2884 |
Â
"new thread, so doing this ahead of time will be super helpful."
|
2885 |
Â
msgstr ""
|
2886 |
Â
|
2887 |
-
#: src/admin-views/tribe-options-help.php:
|
2888 |
Â
msgid "Test for a theme or plugin conflict"
|
2889 |
Â
msgstr ""
|
2890 |
Â
|
2891 |
-
#: src/admin-views/tribe-options-help.php:
|
2892 |
Â
msgid ""
|
2893 |
Â
"%s. There are very few issues we haven’t seen and it’s likely another user "
|
2894 |
Â
"has already asked your question and gotten an answer from our support staff. "
|
@@ -2896,25 +2896,25 @@ msgid ""
|
|
2896 |
Â
"for anyone to search and review."
|
2897 |
Â
msgstr ""
|
2898 |
Â
|
2899 |
-
#: src/admin-views/tribe-options-help.php:
|
2900 |
Â
msgid "Search our support help desk"
|
2901 |
Â
msgstr ""
|
2902 |
Â
|
2903 |
-
#: src/admin-views/tribe-options-help.php:
|
2904 |
Â
msgid ""
|
2905 |
Â
"Please note that all hands-on support is provided via the help desk. You can "
|
2906 |
Â
"email or tweet at us… ​but we will probably point you back to the help desk 😄"
|
2907 |
Â
msgstr ""
|
2908 |
Â
|
2909 |
-
#: src/admin-views/tribe-options-help.php:
|
2910 |
Â
msgid "Read more about our support policy"
|
2911 |
Â
msgstr ""
|
2912 |
Â
|
2913 |
-
#: src/admin-views/tribe-options-help.php:
|
2914 |
Â
msgid "System Information"
|
2915 |
Â
msgstr ""
|
2916 |
Â
|
2917 |
-
#: src/admin-views/tribe-options-help.php:
|
2918 |
Â
msgid ""
|
2919 |
Â
"The details of your calendar plugin and settings is often needed for you or "
|
2920 |
Â
"our staff to help troubleshoot an issue. Please opt-in below to "
|
@@ -2922,19 +2922,19 @@ msgid ""
|
|
2922 |
Â
"allow us to assist you faster if you post in our help desk."
|
2923 |
Â
msgstr ""
|
2924 |
Â
|
2925 |
-
#: src/admin-views/tribe-options-help.php:
|
2926 |
Â
msgid "Recent Template Changes"
|
2927 |
Â
msgstr ""
|
2928 |
Â
|
2929 |
-
#: src/admin-views/tribe-options-help.php:
|
2930 |
Â
msgid "Event Log"
|
2931 |
Â
msgstr ""
|
2932 |
Â
|
2933 |
-
#: src/admin-views/tribe-options-help.php:
|
2934 |
Â
msgid "News and Tutorials"
|
2935 |
Â
msgstr ""
|
2936 |
Â
|
2937 |
-
#: src/admin-views/tribe-options-help.php:
|
2938 |
Â
msgid "More..."
|
2939 |
Â
msgstr ""
|
2940 |
Â
|
2 |
Â
# This file is distributed under the same license as the Tribe Common package.
|
3 |
Â
msgid ""
|
4 |
Â
msgstr ""
|
5 |
+
"Project-Id-Version: Tribe Common 4.12.14\n"
|
6 |
Â
"Report-Msgid-Bugs-To: http://m.tri.be/191x\n"
|
7 |
+
"POT-Creation-Date: 2020-12-02 16:14:02+00:00\n"
|
8 |
Â
"MIME-Version: 1.0\n"
|
9 |
Â
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
Â
"Content-Transfer-Encoding: 8bit\n"
|
11 |
+
"PO-Revision-Date: 2020-12-02 16:14\n"
|
12 |
Â
"Last-Translator: \n"
|
13 |
Â
"Language-Team: \n"
|
14 |
Â
|
28 |
Â
msgid "Return to WordPress Updates"
|
29 |
Â
msgstr ""
|
30 |
Â
|
31 |
+
#: src/Tribe/Admin/Help_Page.php:56 src/admin-views/tribe-options-help.php:80
|
32 |
Â
msgid "Copy to clipboard"
|
33 |
Â
msgstr ""
|
34 |
Â
|
40 |
Â
msgid "Press \"Cmd + C\" to copy"
|
41 |
Â
msgstr ""
|
42 |
Â
|
43 |
+
#: src/Tribe/Admin/Help_Page.php:79 src/Tribe/Customizer.php:583
|
44 |
Â
#: src/Tribe/Plugins_API.php:25
|
45 |
Â
msgid "The Events Calendar"
|
46 |
Â
msgstr ""
|
51 |
Â
"easily share your events."
|
52 |
Â
msgstr ""
|
53 |
Â
|
54 |
+
#: src/Tribe/Admin/Help_Page.php:98 src/Tribe/Plugins_API.php:76
|
55 |
Â
msgid "Event Tickets"
|
56 |
Â
msgstr ""
|
57 |
Â
|
58 |
+
#: src/Tribe/Admin/Help_Page.php:102
|
59 |
Â
msgid ""
|
60 |
Â
"Events Tickets is a carefully crafted, extensible plugin that lets you "
|
61 |
Â
"easily sell tickets for your events."
|
62 |
Â
msgstr ""
|
63 |
Â
|
64 |
+
#: src/Tribe/Admin/Help_Page.php:117
|
65 |
Â
msgid "Advanced Post Manager"
|
66 |
Â
msgstr ""
|
67 |
Â
|
68 |
+
#: src/Tribe/Admin/Help_Page.php:121
|
69 |
Â
msgid ""
|
70 |
Â
"Turbo charge your posts admin for any custom post type with sortable filters "
|
71 |
Â
"and columns, and auto-registration of metaboxes."
|
72 |
Â
msgstr ""
|
73 |
Â
|
74 |
+
#: src/Tribe/Admin/Help_Page.php:199
|
75 |
Â
msgid " and "
|
76 |
Â
msgstr ""
|
77 |
Â
|
78 |
+
#: src/Tribe/Admin/Help_Page.php:223
|
79 |
Â
msgid "Events Calendar PRO"
|
80 |
Â
msgstr ""
|
81 |
Â
|
82 |
+
#: src/Tribe/Admin/Help_Page.php:232 src/Tribe/Plugins_API.php:179
|
83 |
Â
msgid "Eventbrite Tickets"
|
84 |
Â
msgstr ""
|
85 |
Â
|
86 |
+
#: src/Tribe/Admin/Help_Page.php:240 src/Tribe/Plugins_API.php:144
|
87 |
Â
msgid "Community Events"
|
88 |
Â
msgstr ""
|
89 |
Â
|
90 |
+
#: src/Tribe/Admin/Help_Page.php:248 src/Tribe/Plugins_API.php:42
|
91 |
Â
msgid "Event Aggregator"
|
92 |
Â
msgstr ""
|
93 |
Â
|
94 |
+
#: src/Tribe/Admin/Help_Page.php:258 src/Tribe/Plugins_API.php:127
|
95 |
Â
msgid "Filter Bar"
|
96 |
Â
msgstr ""
|
97 |
Â
|
98 |
+
#: src/Tribe/Admin/Help_Page.php:266 src/Tribe/Plugins_API.php:213
|
99 |
Â
msgid "Virtual Events"
|
100 |
Â
msgstr ""
|
101 |
Â
|
102 |
+
#: src/Tribe/Admin/Help_Page.php:274 src/Tribe/Plugins_API.php:93
|
103 |
Â
msgid "Event Tickets Plus"
|
104 |
Â
msgstr ""
|
105 |
Â
|
106 |
+
#: src/Tribe/Admin/Help_Page.php:283 src/Tribe/Plugins_API.php:161
|
107 |
Â
msgid "Community Tickets"
|
108 |
Â
msgstr ""
|
109 |
Â
|
110 |
+
#: src/Tribe/Admin/Help_Page.php:444
|
111 |
Â
msgctxt "not available"
|
112 |
Â
msgid "n/a"
|
113 |
Â
msgstr ""
|
114 |
Â
|
115 |
+
#: src/Tribe/Admin/Help_Page.php:452
|
116 |
Â
msgid "You need to upgrade!"
|
117 |
Â
msgstr ""
|
118 |
Â
|
119 |
+
#: src/Tribe/Admin/Help_Page.php:452 src/Tribe/Admin/Help_Page.php:827
|
120 |
Â
msgid "You are up to date!"
|
121 |
Â
msgstr ""
|
122 |
Â
|
123 |
+
#: src/Tribe/Admin/Help_Page.php:817
|
124 |
Â
msgid "Activate %s"
|
125 |
Â
msgstr ""
|
126 |
Â
|
127 |
+
#: src/Tribe/Admin/Help_Page.php:817
|
128 |
Â
msgid "Activate Plugin"
|
129 |
Â
msgstr ""
|
130 |
Â
|
131 |
+
#: src/Tribe/Admin/Help_Page.php:825
|
132 |
Â
msgid "Upgrade Plugin"
|
133 |
Â
msgstr ""
|
134 |
Â
|
135 |
+
#: src/Tribe/Admin/Help_Page.php:841
|
136 |
Â
msgid "Install %s"
|
137 |
Â
msgstr ""
|
138 |
Â
|
139 |
+
#: src/Tribe/Admin/Help_Page.php:841
|
140 |
Â
msgid "Install Plugin"
|
141 |
Â
msgstr ""
|
142 |
Â
|
143 |
+
#: src/Tribe/Admin/Help_Page.php:858
|
144 |
Â
msgid "Latest Version:"
|
145 |
Â
msgstr ""
|
146 |
Â
|
147 |
+
#: src/Tribe/Admin/Help_Page.php:861
|
148 |
Â
msgid "Requires:"
|
149 |
Â
msgstr ""
|
150 |
Â
|
151 |
+
#: src/Tribe/Admin/Help_Page.php:862
|
152 |
Â
msgid "WordPress "
|
153 |
Â
msgstr ""
|
154 |
Â
|
155 |
+
#: src/Tribe/Admin/Help_Page.php:864
|
156 |
Â
msgid "Active Users:"
|
157 |
Â
msgstr ""
|
158 |
Â
|
159 |
+
#: src/Tribe/Admin/Help_Page.php:867
|
160 |
Â
msgid "Rating:"
|
161 |
Â
msgstr ""
|
162 |
Â
|
163 |
+
#: src/Tribe/Admin/Help_Page.php:890
|
164 |
Â
msgid "Premium Add-Ons"
|
165 |
Â
msgstr ""
|
166 |
Â
|
167 |
+
#: src/Tribe/Admin/Help_Page.php:896
|
168 |
Â
msgid "Plugin Active"
|
169 |
Â
msgstr ""
|
170 |
Â
|
171 |
+
#: src/Tribe/Admin/Help_Page.php:898
|
172 |
Â
msgid "Plugin Inactive"
|
173 |
Â
msgstr ""
|
174 |
Â
|
175 |
+
#: src/Tribe/Admin/Help_Page.php:903
|
176 |
Â
msgid "Visit the Add-on Page"
|
177 |
Â
msgstr ""
|
178 |
Â
|
223 |
Â
msgid "Cannot look for Terms without a taxonomy"
|
224 |
Â
msgstr ""
|
225 |
Â
|
226 |
+
#: src/Tribe/Ajax/Dropdown.php:189
|
227 |
Â
msgid "Missing data source for this dropdown"
|
228 |
Â
msgstr ""
|
229 |
Â
|
230 |
+
#: src/Tribe/Ajax/Dropdown.php:202
|
231 |
Â
msgid "Empty data set for this dropdown"
|
232 |
Â
msgstr ""
|
233 |
Â
|
234 |
+
#: src/Tribe/Ajax/Dropdown.php:252
|
235 |
Â
msgid "The \"%s\" source is invalid and cannot be reached on \"%s\" instance."
|
236 |
Â
msgstr ""
|
237 |
Â
|
238 |
Â
#: src/Tribe/App_Shop.php:50 src/Tribe/App_Shop.php:51
|
239 |
+
#: src/Tribe/App_Shop.php:82
|
240 |
Â
msgid "Event Add-Ons"
|
241 |
Â
msgstr ""
|
242 |
Â
|
243 |
+
#: src/Tribe/App_Shop.php:175
|
244 |
Â
msgid "Events Marketing Bundle"
|
245 |
Â
msgstr ""
|
246 |
Â
|
247 |
+
#: src/Tribe/App_Shop.php:178 src/Tribe/App_Shop.php:202
|
248 |
+
#: src/Tribe/App_Shop.php:221 src/Tribe/App_Shop.php:234
|
249 |
Â
msgid "Save over 20%"
|
250 |
Â
msgstr ""
|
251 |
Â
|
252 |
+
#: src/Tribe/App_Shop.php:179
|
253 |
Â
msgid "Ticket sales, attendee management, and email marketing for your events"
|
254 |
Â
msgstr ""
|
255 |
Â
|
256 |
+
#: src/Tribe/App_Shop.php:187
|
257 |
Â
msgid "Event Importer Bundle"
|
258 |
Â
msgstr ""
|
259 |
Â
|
260 |
+
#: src/Tribe/App_Shop.php:190
|
261 |
Â
msgid "Save over 25%"
|
262 |
Â
msgstr ""
|
263 |
Â
|
264 |
+
#: src/Tribe/App_Shop.php:191
|
265 |
Â
msgid ""
|
266 |
Â
"Fill your calendar with events from across the web, including Google "
|
267 |
Â
"Calendar, Meetup, and more."
|
268 |
Â
msgstr ""
|
269 |
Â
|
270 |
+
#: src/Tribe/App_Shop.php:199
|
271 |
Â
msgid "Virtual Events Marketing Bundle"
|
272 |
Â
msgstr ""
|
273 |
Â
|
274 |
+
#: src/Tribe/App_Shop.php:203
|
275 |
Â
msgid "Streamline your online events and increase revenue."
|
276 |
Â
msgstr ""
|
277 |
Â
|
278 |
+
#: src/Tribe/App_Shop.php:211
|
279 |
Â
msgid "Sell tickets and earn revenue for online events"
|
280 |
Â
msgstr ""
|
281 |
Â
|
282 |
+
#: src/Tribe/App_Shop.php:212 src/Tribe/Plugins_API.php:218
|
283 |
Â
msgid "Zoom integration"
|
284 |
Â
msgstr ""
|
285 |
Â
|
286 |
+
#: src/Tribe/App_Shop.php:213
|
287 |
Â
msgid "Automated emails optimized for virtual events"
|
288 |
Â
msgstr ""
|
289 |
Â
|
290 |
+
#: src/Tribe/App_Shop.php:214
|
291 |
Â
msgid "Add recurring events"
|
292 |
Â
msgstr ""
|
293 |
Â
|
294 |
+
#: src/Tribe/App_Shop.php:218
|
295 |
Â
msgid "Community Manager Bundle"
|
296 |
Â
msgstr ""
|
297 |
Â
|
298 |
+
#: src/Tribe/App_Shop.php:222
|
299 |
Â
msgid ""
|
300 |
Â
"Handle event submissions with ticket sales and everything you need to build "
|
301 |
Â
"a robust community."
|
302 |
Â
msgstr ""
|
303 |
Â
|
304 |
+
#: src/Tribe/App_Shop.php:231
|
305 |
Â
msgid "Ultimate Bundle"
|
306 |
Â
msgstr ""
|
307 |
Â
|
308 |
+
#: src/Tribe/App_Shop.php:235
|
309 |
Â
msgid "All of our premium events management plugins at a deep discount."
|
310 |
Â
msgstr ""
|
311 |
Â
|
312 |
+
#: src/Tribe/App_Shop.php:262
|
313 |
Â
msgid "Website URL CTA"
|
314 |
Â
msgstr ""
|
315 |
Â
|
316 |
+
#: src/Tribe/App_Shop.php:265
|
317 |
Â
msgid ""
|
318 |
Â
"Create a strong call-to-action for attendees to \"Join Webinar\" instead of "
|
319 |
Â
"only sharing a website address."
|
320 |
Â
msgstr ""
|
321 |
Â
|
322 |
+
#: src/Tribe/App_Shop.php:268
|
323 |
Â
msgid "Link Directly to Webinar"
|
324 |
Â
msgstr ""
|
325 |
Â
|
326 |
+
#: src/Tribe/App_Shop.php:271
|
327 |
Â
msgid ""
|
328 |
Â
"When users click on the event title, they’ll be taken right to the source of "
|
329 |
Â
"your event, offering a direct route to join."
|
330 |
Â
msgstr ""
|
331 |
Â
|
332 |
+
#: src/Tribe/App_Shop.php:274
|
333 |
Â
msgid "Events Happening Now"
|
334 |
Â
msgstr ""
|
335 |
Â
|
336 |
+
#: src/Tribe/App_Shop.php:277
|
337 |
Â
msgid ""
|
338 |
Â
"Use this shortcode to display events that are currently in progress, like "
|
339 |
Â
"webinars and livestreams."
|
340 |
Â
msgstr ""
|
341 |
Â
|
342 |
+
#: src/Tribe/App_Shop.php:280
|
343 |
Â
msgid "Custom Venue Links"
|
344 |
Â
msgstr ""
|
345 |
Â
|
346 |
+
#: src/Tribe/App_Shop.php:283
|
347 |
Â
msgid ""
|
348 |
Â
"Turn the venue name for your event into a clickable URL — a great way to "
|
349 |
Â
"link directly to a venue’s website or a virtual meeting."
|
350 |
Â
msgstr ""
|
351 |
Â
|
352 |
+
#: src/Tribe/App_Shop.php:286
|
353 |
Â
msgid "Adjust Label"
|
354 |
Â
msgstr ""
|
355 |
Â
|
356 |
+
#: src/Tribe/App_Shop.php:289
|
357 |
Â
msgid ""
|
358 |
Â
"Change \"Events\" to \"Webinars,\" or \"Venues\" to \"Livestream,\" or "
|
359 |
Â
"\"Organizers\" to \"Hosts.\" Tailor your calendar for virtual events and "
|
360 |
Â
"meetings."
|
361 |
Â
msgstr ""
|
362 |
Â
|
363 |
+
#: src/Tribe/App_Shop.php:292
|
364 |
Â
msgid "Reach Attendees"
|
365 |
Â
msgstr ""
|
366 |
Â
|
367 |
+
#: src/Tribe/App_Shop.php:295
|
368 |
Â
msgid ""
|
369 |
Â
"From registration to attendance history, view every step of the event "
|
370 |
Â
"lifecycle with this HubSpot integration."
|
386 |
Â
msgid "Rate %1$sEvent Tickets%2$s %3$s"
|
387 |
Â
msgstr ""
|
388 |
Â
|
389 |
+
#: src/Tribe/Customizer.php:584
|
390 |
Â
msgid ""
|
391 |
Â
"Use the following panel of your customizer to change the styling of your "
|
392 |
Â
"Calendar and Event pages."
|
570 |
Â
msgid "A list of links to the term own, archive and parent REST URL"
|
571 |
Â
msgstr ""
|
572 |
Â
|
573 |
+
#: src/Tribe/Editor/Blocks/Abstract.php:123
|
574 |
Â
msgid "Problem loading the block, please remove this block to restart."
|
575 |
Â
msgstr ""
|
576 |
Â
|
1845 |
Â
msgid "Null logger (will log nothing)"
|
1846 |
Â
msgstr ""
|
1847 |
Â
|
1848 |
+
#: src/Tribe/Log.php:288
|
1849 |
Â
msgid "Cannot set %s as the current logging engine"
|
1850 |
Â
msgstr ""
|
1851 |
Â
|
1852 |
+
#: src/Tribe/Log.php:387
|
1853 |
Â
msgid "Disabled"
|
1854 |
Â
msgstr ""
|
1855 |
Â
|
1856 |
+
#: src/Tribe/Log.php:388
|
1857 |
Â
msgid "Only errors"
|
1858 |
Â
msgstr ""
|
1859 |
Â
|
1860 |
+
#: src/Tribe/Log.php:389
|
1861 |
Â
msgid "Warnings and errors"
|
1862 |
Â
msgstr ""
|
1863 |
Â
|
1864 |
+
#: src/Tribe/Log.php:390
|
1865 |
Â
msgid "Full debug (all events)"
|
1866 |
Â
msgstr ""
|
1867 |
Â
|
1868 |
+
#: src/Tribe/Main.php:310
|
1869 |
Â
msgid ": activate to sort column ascending"
|
1870 |
Â
msgstr ""
|
1871 |
Â
|
1872 |
+
#: src/Tribe/Main.php:311
|
1873 |
Â
msgid ": activate to sort column descending"
|
1874 |
Â
msgstr ""
|
1875 |
Â
|
1876 |
+
#: src/Tribe/Main.php:313
|
1877 |
Â
msgid "Show _MENU_ entries"
|
1878 |
Â
msgstr ""
|
1879 |
Â
|
1880 |
+
#: src/Tribe/Main.php:314
|
1881 |
Â
msgid "No data available in table"
|
1882 |
Â
msgstr ""
|
1883 |
Â
|
1884 |
+
#: src/Tribe/Main.php:315
|
1885 |
Â
msgid "Showing _START_ to _END_ of _TOTAL_ entries"
|
1886 |
Â
msgstr ""
|
1887 |
Â
|
1888 |
+
#: src/Tribe/Main.php:316
|
1889 |
Â
msgid "Showing 0 to 0 of 0 entries"
|
1890 |
Â
msgstr ""
|
1891 |
Â
|
1892 |
+
#: src/Tribe/Main.php:317
|
1893 |
Â
msgid "(filtered from _MAX_ total entries)"
|
1894 |
Â
msgstr ""
|
1895 |
Â
|
1896 |
+
#: src/Tribe/Main.php:318
|
1897 |
Â
msgid "No matching records found"
|
1898 |
Â
msgstr ""
|
1899 |
Â
|
1900 |
+
#: src/Tribe/Main.php:319
|
1901 |
Â
msgid "Search:"
|
1902 |
Â
msgstr ""
|
1903 |
Â
|
1904 |
+
#: src/Tribe/Main.php:320
|
1905 |
Â
msgid "All items on this page were selected. "
|
1906 |
Â
msgstr ""
|
1907 |
Â
|
1908 |
+
#: src/Tribe/Main.php:321
|
1909 |
Â
msgid "Select all pages"
|
1910 |
Â
msgstr ""
|
1911 |
Â
|
1912 |
+
#: src/Tribe/Main.php:322
|
1913 |
Â
msgid "Clear Selection."
|
1914 |
Â
msgstr ""
|
1915 |
Â
|
1916 |
+
#: src/Tribe/Main.php:324
|
1917 |
Â
msgid "All"
|
1918 |
Â
msgstr ""
|
1919 |
Â
|
1920 |
+
#: src/Tribe/Main.php:325 src/Tribe/Main.php:342
|
1921 |
Â
msgid "Next"
|
1922 |
Â
msgstr ""
|
1923 |
Â
|
1924 |
+
#: src/Tribe/Main.php:326
|
1925 |
Â
msgid "Previous"
|
1926 |
Â
msgstr ""
|
1927 |
Â
|
1928 |
+
#: src/Tribe/Main.php:331
|
1929 |
Â
msgid ": Selected %d rows"
|
1930 |
Â
msgstr ""
|
1931 |
Â
|
1932 |
+
#: src/Tribe/Main.php:332
|
1933 |
Â
msgid ": Selected 1 row"
|
1934 |
Â
msgstr ""
|
1935 |
Â
|
1936 |
+
#: src/Tribe/Main.php:343
|
1937 |
Â
msgid "Prev"
|
1938 |
Â
msgstr ""
|
1939 |
Â
|
1940 |
+
#: src/Tribe/Main.php:344 src/Tribe/Main.php:346
|
1941 |
Â
msgid "Today"
|
1942 |
Â
msgstr ""
|
1943 |
Â
|
1944 |
+
#: src/Tribe/Main.php:345
|
1945 |
Â
msgid "Done"
|
1946 |
Â
msgstr ""
|
1947 |
Â
|
1948 |
+
#: src/Tribe/Main.php:347
|
1949 |
Â
msgid "Clear"
|
1950 |
Â
msgstr ""
|
1951 |
Â
|
2432 |
Â
msgid "Display"
|
2433 |
Â
msgstr ""
|
2434 |
Â
|
2435 |
+
#: src/Tribe/Settings_Manager.php:259
|
2436 |
Â
msgid "Network"
|
2437 |
Â
msgstr ""
|
2438 |
Â
|
2439 |
+
#: src/Tribe/Settings_Manager.php:293
|
2440 |
Â
#: src/admin-views/tribe-options-licenses.php:57
|
2441 |
Â
msgid "Licenses"
|
2442 |
Â
msgstr ""
|
2443 |
Â
|
2444 |
+
#: src/Tribe/Settings_Manager.php:323
|
2445 |
Â
msgid "Help"
|
2446 |
Â
msgstr ""
|
2447 |
Â
|
2741 |
Â
msgid "Download log"
|
2742 |
Â
msgstr ""
|
2743 |
Â
|
2744 |
+
#: src/admin-views/tribe-options-display.php:23
|
2745 |
Â
msgid "Date Format Settings"
|
2746 |
Â
msgstr ""
|
2747 |
Â
|
2748 |
+
#: src/admin-views/tribe-options-display.php:29
|
2749 |
Â
msgid ""
|
2750 |
Â
"The following three fields accept the date format options available to the "
|
2751 |
Â
"PHP %1$s function. <a href=\"%2$s\" target=\"_blank\">Learn how to make your "
|
2752 |
Â
"own date format here</a>."
|
2753 |
Â
msgstr ""
|
2754 |
Â
|
2755 |
+
#: src/admin-views/tribe-options-display.php:37
|
2756 |
Â
msgid "Compact Date Format"
|
2757 |
Â
msgstr ""
|
2758 |
Â
|
2759 |
+
#: src/admin-views/tribe-options-display.php:38
|
2760 |
Â
msgid ""
|
2761 |
Â
"Select the date format used for elements with minimal space, such as in "
|
2762 |
Â
"datepickers."
|
2867 |
Â
"steps:"
|
2868 |
Â
msgstr ""
|
2869 |
Â
|
2870 |
+
#: src/admin-views/tribe-options-help.php:33
|
2871 |
Â
msgid ""
|
2872 |
Â
"%s. All of the common (and not-so-common) answers to questions we see are "
|
2873 |
Â
"here. It’s often the fastest path to finding an answer!"
|
2874 |
Â
msgstr ""
|
2875 |
Â
|
2876 |
+
#: src/admin-views/tribe-options-help.php:37
|
2877 |
Â
msgid "Check our Knowledgebase"
|
2878 |
Â
msgstr ""
|
2879 |
Â
|
2880 |
+
#: src/admin-views/tribe-options-help.php:43
|
2881 |
Â
msgid ""
|
2882 |
Â
"%s. Testing for an existing conflict is the best start for in-depth "
|
2883 |
Â
"troubleshooting. We will often ask you to follow these steps when opening a "
|
2884 |
Â
"new thread, so doing this ahead of time will be super helpful."
|
2885 |
Â
msgstr ""
|
2886 |
Â
|
2887 |
+
#: src/admin-views/tribe-options-help.php:47
|
2888 |
Â
msgid "Test for a theme or plugin conflict"
|
2889 |
Â
msgstr ""
|
2890 |
Â
|
2891 |
+
#: src/admin-views/tribe-options-help.php:53
|
2892 |
Â
msgid ""
|
2893 |
Â
"%s. There are very few issues we haven’t seen and it’s likely another user "
|
2894 |
Â
"has already asked your question and gotten an answer from our support staff. "
|
2896 |
Â
"for anyone to search and review."
|
2897 |
Â
msgstr ""
|
2898 |
Â
|
2899 |
+
#: src/admin-views/tribe-options-help.php:57
|
2900 |
Â
msgid "Search our support help desk"
|
2901 |
Â
msgstr ""
|
2902 |
Â
|
2903 |
+
#: src/admin-views/tribe-options-help.php:67
|
2904 |
Â
msgid ""
|
2905 |
Â
"Please note that all hands-on support is provided via the help desk. You can "
|
2906 |
Â
"email or tweet at us… ​but we will probably point you back to the help desk 😄"
|
2907 |
Â
msgstr ""
|
2908 |
Â
|
2909 |
+
#: src/admin-views/tribe-options-help.php:68
|
2910 |
Â
msgid "Read more about our support policy"
|
2911 |
Â
msgstr ""
|
2912 |
Â
|
2913 |
+
#: src/admin-views/tribe-options-help.php:71
|
2914 |
Â
msgid "System Information"
|
2915 |
Â
msgstr ""
|
2916 |
Â
|
2917 |
+
#: src/admin-views/tribe-options-help.php:72
|
2918 |
Â
msgid ""
|
2919 |
Â
"The details of your calendar plugin and settings is often needed for you or "
|
2920 |
Â
"our staff to help troubleshoot an issue. Please opt-in below to "
|
2922 |
Â
"allow us to assist you faster if you post in our help desk."
|
2923 |
Â
msgstr ""
|
2924 |
Â
|
2925 |
+
#: src/admin-views/tribe-options-help.php:82
|
2926 |
Â
msgid "Recent Template Changes"
|
2927 |
Â
msgstr ""
|
2928 |
Â
|
2929 |
+
#: src/admin-views/tribe-options-help.php:85
|
2930 |
Â
msgid "Event Log"
|
2931 |
Â
msgstr ""
|
2932 |
Â
|
2933 |
+
#: src/admin-views/tribe-options-help.php:104
|
2934 |
Â
msgid "News and Tutorials"
|
2935 |
Â
msgstr ""
|
2936 |
Â
|
2937 |
+
#: src/admin-views/tribe-options-help.php:110
|
2938 |
Â
msgid "More..."
|
2939 |
Â
msgstr ""
|
2940 |
Â
|
common/src/Tribe/Admin/Activation_Page.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Â
* Shows a welcome or update message after the plugin is installed/updated.
|
4 |
Â
*/
|
5 |
Â
class Tribe__Admin__Activation_Page {
|
6 |
-
protected $args =
|
7 |
Â
public $update_slug = 'update-message-';
|
8 |
Â
public $welcome_slug = 'welcome-message-';
|
9 |
Â
protected $current_context = '';
|
@@ -24,8 +24,8 @@ class Tribe__Admin__Activation_Page {
|
|
24 |
Â
* @type string $welcome_page_template
|
25 |
Â
* }
|
26 |
Â
*/
|
27 |
-
public function __construct( array $args =
|
28 |
-
$this->args = wp_parse_args( $args,
|
29 |
Â
'slug' => '',
|
30 |
Â
'activation_transient' => '',
|
31 |
Â
'version' => '',
|
@@ -35,9 +35,9 @@ class Tribe__Admin__Activation_Page {
|
|
35 |
Â
'update_page_template' => '',
|
36 |
Â
'welcome_page_title' => '',
|
37 |
Â
'welcome_page_template' => '',
|
38 |
-
|
39 |
Â
|
40 |
-
$this->update_slug
|
41 |
Â
$this->welcome_slug .= $this->args['slug'];
|
42 |
Â
|
43 |
Â
$this->hooks();
|
@@ -76,11 +76,11 @@ class Tribe__Admin__Activation_Page {
|
|
76 |
Â
return;
|
77 |
Â
}
|
78 |
Â
|
79 |
-
add_action( 'admin_init',
|
80 |
-
add_action( 'admin_menu',
|
81 |
Â
|
82 |
-
add_action( 'update_plugin_complete_actions',
|
83 |
-
add_action( 'update_bulk_plugins_complete_actions',
|
84 |
Â
}
|
85 |
Â
|
86 |
Â
/**
|
@@ -92,7 +92,7 @@ class Tribe__Admin__Activation_Page {
|
|
92 |
Â
* @return array The filtered Links
|
93 |
Â
*/
|
94 |
Â
public function update_complete_actions( $actions, $plugin ) {
|
95 |
-
$plugins =
|
96 |
Â
|
97 |
Â
if ( ! empty( $_GET['plugins'] ) ) {
|
98 |
Â
$plugins = explode( ',', esc_attr( $_GET['plugins'] ) );
|
@@ -262,8 +262,8 @@ class Tribe__Admin__Activation_Page {
|
|
262 |
Â
}
|
263 |
Â
|
264 |
Â
$this->disable_default_settings_page();
|
265 |
-
add_filter( 'admin_body_class',
|
266 |
-
add_action( Tribe__Settings::instance()->admin_page,
|
267 |
Â
}
|
268 |
Â
|
269 |
Â
/**
|
@@ -283,7 +283,7 @@ class Tribe__Admin__Activation_Page {
|
|
283 |
Â
* in the Events > Settings slot instead, for this request only).
|
284 |
Â
*/
|
285 |
Â
protected function disable_default_settings_page() {
|
286 |
-
remove_action( Tribe__Settings::instance()->admin_page,
|
287 |
Â
}
|
288 |
Â
|
289 |
Â
/**
|
3 |
Â
* Shows a welcome or update message after the plugin is installed/updated.
|
4 |
Â
*/
|
5 |
Â
class Tribe__Admin__Activation_Page {
|
6 |
+
protected $args = [];
|
7 |
Â
public $update_slug = 'update-message-';
|
8 |
Â
public $welcome_slug = 'welcome-message-';
|
9 |
Â
protected $current_context = '';
|
24 |
Â
* @type string $welcome_page_template
|
25 |
Â
* }
|
26 |
Â
*/
|
27 |
+
public function __construct( array $args = [] ) {
|
28 |
+
$this->args = wp_parse_args( $args, [
|
29 |
Â
'slug' => '',
|
30 |
Â
'activation_transient' => '',
|
31 |
Â
'version' => '',
|
35 |
Â
'update_page_template' => '',
|
36 |
Â
'welcome_page_title' => '',
|
37 |
Â
'welcome_page_template' => '',
|
38 |
+
] );
|
39 |
Â
|
40 |
+
$this->update_slug .= $this->args['slug'];
|
41 |
Â
$this->welcome_slug .= $this->args['slug'];
|
42 |
Â
|
43 |
Â
$this->hooks();
|
76 |
Â
return;
|
77 |
Â
}
|
78 |
Â
|
79 |
+
add_action( 'admin_init', [ $this, 'maybe_redirect' ], 10, 0 );
|
80 |
+
add_action( 'admin_menu', [ $this, 'register_page' ], 100, 0 ); // come in after the default page is registered
|
81 |
Â
|
82 |
+
add_action( 'update_plugin_complete_actions', [ $this, 'update_complete_actions' ], 15, 2 );
|
83 |
+
add_action( 'update_bulk_plugins_complete_actions', [ $this, 'update_complete_actions' ], 15, 2 );
|
84 |
Â
}
|
85 |
Â
|
86 |
Â
/**
|
92 |
Â
* @return array The filtered Links
|
93 |
Â
*/
|
94 |
Â
public function update_complete_actions( $actions, $plugin ) {
|
95 |
+
$plugins = [];
|
96 |
Â
|
97 |
Â
if ( ! empty( $_GET['plugins'] ) ) {
|
98 |
Â
$plugins = explode( ',', esc_attr( $_GET['plugins'] ) );
|
262 |
Â
}
|
263 |
Â
|
264 |
Â
$this->disable_default_settings_page();
|
265 |
+
add_filter( 'admin_body_class', [ $this, 'admin_body_class' ] );
|
266 |
+
add_action( Tribe__Settings::instance()->admin_page, [ $this, 'display_page' ] );
|
267 |
Â
}
|
268 |
Â
|
269 |
Â
/**
|
283 |
Â
* in the Events > Settings slot instead, for this request only).
|
284 |
Â
*/
|
285 |
Â
protected function disable_default_settings_page() {
|
286 |
+
remove_action( Tribe__Settings::instance()->admin_page, [ Tribe__Settings::instance(), 'generatePage' ] );
|
287 |
Â
}
|
288 |
Â
|
289 |
Â
/**
|
common/src/Tribe/Admin/Help_Page.php
CHANGED
@@ -72,50 +72,59 @@ class Tribe__Admin__Help_Page {
|
|
72 |
Â
* @return array
|
73 |
Â
*/
|
74 |
Â
public function get_plugins( $plugin_name = null, $is_active = true ) {
|
75 |
-
$plugins =
|
76 |
Â
|
77 |
-
$plugins['the-events-calendar'] =
|
78 |
Â
'name' => 'the-events-calendar',
|
79 |
Â
'title' => esc_html__( 'The Events Calendar', 'tribe-common' ),
|
80 |
Â
'repo' => 'https://wordpress.org/plugins/the-events-calendar/',
|
81 |
Â
'forum' => 'https://wordpress.org/support/plugin/the-events-calendar/',
|
82 |
Â
'stars_url' => 'https://wordpress.org/support/plugin/the-events-calendar/reviews/?filter=5',
|
83 |
-
'description' => esc_html__(
|
Â
|
|
Â
|
|
Â
|
|
84 |
Â
'is_active' => false,
|
85 |
Â
'version' => null,
|
86 |
-
|
87 |
Â
|
88 |
Â
if ( class_exists( 'Tribe__Events__Main' ) ) {
|
89 |
Â
$plugins['the-events-calendar']['version'] = Tribe__Events__Main::VERSION;
|
90 |
Â
$plugins['the-events-calendar']['is_active'] = true;
|
91 |
Â
}
|
92 |
Â
|
93 |
-
$plugins['event-tickets'] =
|
94 |
Â
'name' => 'event-tickets',
|
95 |
Â
'title' => esc_html__( 'Event Tickets', 'tribe-common' ),
|
96 |
Â
'repo' => 'https://wordpress.org/plugins/event-tickets/',
|
97 |
Â
'forum' => 'https://wordpress.org/support/plugin/event-tickets',
|
98 |
Â
'stars_url' => 'https://wordpress.org/support/plugin/event-tickets/reviews/?filter=5',
|
99 |
-
'description' => esc_html__(
|
Â
|
|
Â
|
|
Â
|
|
100 |
Â
'is_active' => false,
|
101 |
Â
'version' => null,
|
102 |
-
|
103 |
Â
|
104 |
Â
if ( class_exists( 'Tribe__Tickets__Main' ) ) {
|
105 |
Â
$plugins['event-tickets']['version'] = Tribe__Tickets__Main::VERSION;
|
106 |
Â
$plugins['event-tickets']['is_active'] = true;
|
107 |
Â
}
|
108 |
Â
|
109 |
-
$plugins['advanced-post-manager'] =
|
110 |
Â
'name' => 'advanced-post-manager',
|
111 |
Â
'title' => esc_html__( 'Advanced Post Manager', 'tribe-common' ),
|
112 |
Â
'repo' => 'https://wordpress.org/plugins/advanced-post-manager/',
|
113 |
Â
'forum' => 'https://wordpress.org/support/plugin/advanced-post-manager/',
|
114 |
Â
'stars_url' => 'https://wordpress.org/support/plugin/advanced-post-manager/reviews/?filter=5',
|
115 |
-
'description' => esc_html__(
|
Â
|
|
Â
|
|
Â
|
|
116 |
Â
'is_active' => false,
|
117 |
Â
'version' => null,
|
118 |
-
|
119 |
Â
|
120 |
Â
if ( class_exists( 'Tribe_APM' ) ) {
|
121 |
Â
$plugins['advanced-post-manager']['version'] = 1;
|
@@ -156,7 +165,7 @@ class Tribe__Admin__Help_Page {
|
|
156 |
Â
public function get_plugin_forum_links( $is_active = true ) {
|
157 |
Â
$plugins = $this->get_plugins( null, $is_active );
|
158 |
Â
|
159 |
-
$list =
|
160 |
Â
foreach ( $plugins as $plugin ) {
|
161 |
Â
$list[] = '<a href="' . esc_url( $plugin['forum'] ) . '" target="_blank">' . $plugin['title'] . '</a>';
|
162 |
Â
}
|
@@ -207,73 +216,75 @@ class Tribe__Admin__Help_Page {
|
|
207 |
Â
* @return array
|
208 |
Â
*/
|
209 |
Â
public function get_addons( $plugin = null, $is_active = null, $is_important = null ) {
|
210 |
-
$addons =
|
211 |
-
|
212 |
-
$addons['events-calendar-pro'] =
|
213 |
-
'id'
|
214 |
-
'title'
|
215 |
-
'link'
|
216 |
-
'plugin'
|
217 |
-
'is_active'
|
218 |
Â
'is_important' => true,
|
219 |
-
|
220 |
Â
|
221 |
-
$addons['eventbrite-tickets'] =
|
222 |
Â
'id' => 'eventbrite-tickets',
|
223 |
Â
'title' => esc_html__( 'Eventbrite Tickets', 'tribe-common' ),
|
224 |
Â
'link' => 'http://m.tri.be/ds',
|
225 |
-
'plugin' =>
|
226 |
Â
'is_active' => class_exists( 'Tribe__Events__Tickets__Eventbrite__Main' ),
|
227 |
-
|
228 |
Â
|
229 |
-
$addons['community-events'] =
|
230 |
Â
'id' => 'community-events',
|
231 |
Â
'title' => esc_html__( 'Community Events', 'tribe-common' ),
|
232 |
Â
'link' => 'http://m.tri.be/dt',
|
233 |
-
'plugin' =>
|
234 |
Â
'is_active' => class_exists( 'Tribe__Events__Community__Main' ),
|
235 |
-
|
236 |
Â
|
237 |
-
$addons['event-aggregator'] =
|
238 |
Â
'id' => 'event-aggregator',
|
239 |
Â
'title' => esc_html__( 'Event Aggregator', 'tribe-common' ),
|
240 |
Â
'link' => 'http://m.tri.be/19mk',
|
241 |
-
'plugin' =>
|
242 |
-
'is_active' => class_exists( 'Tribe__Events__Aggregator' ) && tribe(
|
243 |
-
|
Â
|
|
Â
|
|
244 |
Â
|
245 |
-
$addons['events-filter-bar'] =
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
Â
|
253 |
Â
$addons['events-virtual'] = [
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
Â
];
|
260 |
Â
|
261 |
-
$addons['event-tickets-plus'] =
|
262 |
-
'id'
|
263 |
-
'title'
|
264 |
-
'link'
|
265 |
-
'plugin'
|
266 |
-
'is_active'
|
267 |
Â
'is_important' => true,
|
268 |
-
|
269 |
Â
|
270 |
-
$addons['event-community-tickets'] =
|
271 |
Â
'id' => 'event-community-tickets',
|
272 |
Â
'title' => esc_html__( 'Community Tickets', 'tribe-common' ),
|
273 |
Â
'link' => 'http://m.tri.be/18m2',
|
274 |
-
'plugin' =>
|
275 |
Â
'is_active' => class_exists( 'Tribe__Events__Community__Tickets__Main' ),
|
276 |
-
|
277 |
Â
|
278 |
Â
/**
|
279 |
Â
* Filter the array of premium addons upsold on the sidebar of the Settings > Help tab
|
@@ -288,7 +299,7 @@ class Tribe__Admin__Help_Page {
|
|
288 |
Â
}
|
289 |
Â
|
290 |
Â
// Allow for easily grab the addons for a plugin
|
291 |
-
$filtered =
|
292 |
Â
foreach ( $addons as $id => $addon ) {
|
293 |
Â
if ( ! is_null( $plugin ) && ! in_array( $plugin, (array) $addon['plugin'] ) ) {
|
294 |
Â
continue;
|
@@ -318,10 +329,10 @@ class Tribe__Admin__Help_Page {
|
|
318 |
Â
|
319 |
Â
public function is_active( $should_be_active ) {
|
320 |
Â
$plugins = $this->get_plugins( null, true );
|
321 |
-
$addons
|
322 |
Â
|
323 |
-
$actives
|
324 |
-
$is_active =
|
325 |
Â
|
326 |
Â
foreach ( $actives as $id => $active ) {
|
327 |
Â
if ( in_array( $id, (array) $should_be_active ) ) {
|
@@ -342,11 +353,11 @@ class Tribe__Admin__Help_Page {
|
|
342 |
Â
* @return string Link with the GA arguments
|
343 |
Â
*/
|
344 |
Â
public function get_ga_link( $link = null, $relative = true ) {
|
345 |
-
$query_args =
|
346 |
Â
'utm_source' => 'helptab',
|
347 |
Â
'utm_medium' => 'plugin-tec',
|
348 |
Â
'utm_campaign' => 'in-app',
|
349 |
-
|
350 |
Â
|
351 |
Â
if ( true === $relative ) {
|
352 |
Â
$link = trailingslashit( Tribe__Main::$tec_url . $link );
|
@@ -363,8 +374,8 @@ class Tribe__Admin__Help_Page {
|
|
363 |
Â
* @return array Feed Title and Link
|
364 |
Â
*/
|
365 |
Â
public function get_feed_items() {
|
366 |
-
$news_rss
|
367 |
-
$news_feed =
|
368 |
Â
|
369 |
Â
if ( ! is_wp_error( $news_rss ) ) {
|
370 |
Â
/**
|
@@ -376,10 +387,10 @@ class Tribe__Admin__Help_Page {
|
|
376 |
Â
$rss_items = $news_rss->get_items( 0, $maxitems );
|
377 |
Â
if ( $maxitems > 0 ) {
|
378 |
Â
foreach ( $rss_items as $item ) {
|
379 |
-
$item
|
380 |
Â
'title' => esc_html( $item->get_title() ),
|
381 |
Â
'link' => esc_url( $item->get_permalink() ),
|
382 |
-
|
383 |
Â
$news_feed[] = $item;
|
384 |
Â
}
|
385 |
Â
}
|
@@ -417,16 +428,16 @@ class Tribe__Admin__Help_Page {
|
|
417 |
Â
}
|
418 |
Â
|
419 |
Â
// Fetch the data
|
420 |
-
$data = plugins_api( 'plugin_information',
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
Â
|
431 |
Â
if ( ! is_wp_error( $data ) ) {
|
432 |
Â
// Format Downloaded Infomation
|
@@ -487,13 +498,13 @@ class Tribe__Admin__Help_Page {
|
|
487 |
Â
}
|
488 |
Â
|
489 |
Â
// Only add List Item if is a UL or OL
|
490 |
-
if ( in_array( $line['type'],
|
491 |
Â
$text .= '<li>' . "\n";
|
492 |
Â
}
|
493 |
Â
|
494 |
Â
$text .= $this->get_content_html( $item );
|
495 |
Â
|
496 |
-
if ( in_array( $line['type'],
|
497 |
Â
$text .= '</li>' . "\n";
|
498 |
Â
}
|
499 |
Â
}
|
@@ -515,7 +526,7 @@ class Tribe__Admin__Help_Page {
|
|
515 |
Â
* @access private
|
516 |
Â
* @var array
|
517 |
Â
*/
|
518 |
-
private $sections =
|
519 |
Â
|
520 |
Â
/**
|
521 |
Â
* Incremented with each method call, then stored in $section->uid.
|
@@ -573,7 +584,7 @@ class Tribe__Admin__Help_Page {
|
|
573 |
Â
// Everytime you call this we will add this up
|
574 |
Â
self::$section_count++;
|
575 |
Â
|
576 |
-
$possible_types = (array) apply_filters( 'tribe_help_available_section_types',
|
577 |
Â
|
578 |
Â
// Set a Default type
|
579 |
Â
if ( empty( $type ) || ! in_array( $type, $possible_types ) ) {
|
@@ -581,21 +592,21 @@ class Tribe__Admin__Help_Page {
|
|
581 |
Â
}
|
582 |
Â
|
583 |
Â
// Create the section and Sanitize the values to avoid having to do it later
|
584 |
-
$section = (object)
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
Â
|
590 |
-
|
591 |
-
|
592 |
Â
|
593 |
-
|
594 |
-
|
595 |
Â
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
Â
|
600 |
Â
$this->sections[ $section->id ] = $section;
|
601 |
Â
|
@@ -614,7 +625,7 @@ class Tribe__Admin__Help_Page {
|
|
614 |
Â
*
|
615 |
Â
* @return object The content item added
|
616 |
Â
*/
|
617 |
-
public function add_section_content( $section_id, $content, $priority = 10, $arguments =
|
618 |
Â
$section_id = sanitize_html_class( $section_id );
|
619 |
Â
|
620 |
Â
// Check if the section exists
|
@@ -659,13 +670,13 @@ class Tribe__Admin__Help_Page {
|
|
659 |
Â
public function remove_section( $section_id ) {
|
660 |
Â
if (
|
661 |
Â
! isset( $this->sections[ $section_id ] ) &&
|
662 |
-
! in_array( (object)
|
663 |
Â
) {
|
664 |
Â
// There are no sections to remove, so false
|
665 |
Â
return false;
|
666 |
Â
}
|
667 |
Â
|
668 |
-
$removed =
|
669 |
Â
foreach ( $this->sections as $id => $section ) {
|
670 |
Â
if ( ! is_numeric( $id ) && ! is_numeric( $section_id ) && ! empty( $section->id ) ) {
|
671 |
Â
if ( $section->id === $section_id ) {
|
@@ -719,9 +730,9 @@ class Tribe__Admin__Help_Page {
|
|
719 |
Â
}
|
720 |
Â
|
721 |
Â
// Sort by Priority
|
722 |
-
uasort( $sections,
|
723 |
Â
|
724 |
-
$html =
|
725 |
Â
|
726 |
Â
foreach ( $sections as $index => $section ) {
|
727 |
Â
$section = (object) $section;
|
@@ -744,7 +755,7 @@ class Tribe__Admin__Help_Page {
|
|
744 |
Â
$section = apply_filters( 'tribe_help_section_' . $section->id, $section, $this );
|
745 |
Â
|
746 |
Â
// Sort by Priority
|
747 |
-
uasort( $section->content,
|
748 |
Â
|
749 |
Â
$html[ $section->id . '-start' ] = '<div id="tribe-' . sanitize_html_class( $section->id ) . '" class="tribe-help-section clearfix tribe-section-type-' . sanitize_html_class( $section->type ) . '">';
|
750 |
Â
|
@@ -795,20 +806,20 @@ class Tribe__Admin__Help_Page {
|
|
795 |
Â
$plugin_exists = isset( $plugins[ $status['file'] ] );
|
796 |
Â
|
797 |
Â
if ( 'install' !== $status['status'] && ! $plugin_active ) {
|
798 |
-
$args =
|
799 |
-
'action'
|
800 |
-
'plugin'
|
801 |
Â
'plugin_status' => 'all',
|
802 |
-
'paged'
|
803 |
-
's'
|
804 |
-
|
805 |
Â
$activate_url = wp_nonce_url( add_query_arg( $args, 'plugins.php' ), 'activate-plugin_' . $status['file'] );
|
806 |
Â
$link = '<a class="button" href="' . $activate_url . '" aria-label="' . esc_attr( sprintf( esc_attr__( 'Activate %s', 'tribe-common' ), $plugin->name ) ) . '">' . esc_html__( 'Activate Plugin', 'tribe-common' ) . '</a>';
|
807 |
Â
} elseif ( 'update_available' === $status['status'] ) {
|
808 |
-
$args =
|
809 |
Â
'action' => 'upgrade-plugin',
|
810 |
Â
'plugin' => $status['file'],
|
811 |
-
|
812 |
Â
$update_url = wp_nonce_url( add_query_arg( $args, 'update.php' ), 'upgrade-plugin_' . $status['file'] );
|
813 |
Â
|
814 |
Â
$link = '<a class="button" href="' . $update_url . '">' . esc_html__( 'Upgrade Plugin', 'tribe-common' ) . '</a>';
|
@@ -819,13 +830,13 @@ class Tribe__Admin__Help_Page {
|
|
819 |
Â
|
820 |
Â
if ( ! isset( $link ) ) {
|
821 |
Â
if ( $api_data ) {
|
822 |
-
$args =
|
823 |
Â
'tab' => 'plugin-information',
|
824 |
Â
'plugin' => $plugin->name,
|
825 |
Â
'TB_iframe' => true,
|
826 |
Â
'width' => 772,
|
827 |
Â
'height' => 600,
|
828 |
-
|
829 |
Â
$iframe_url = add_query_arg( $args, admin_url( '/plugin-install.php' ) );
|
830 |
Â
$link = '<a class="button thickbox" href="' . $iframe_url . '" aria-label="' . esc_attr( sprintf( esc_attr__( 'Install %s', 'tribe-common' ), $plugin->name ) ) . '">' . esc_html__( 'Install Plugin', 'tribe-common' ) . '</a>';
|
831 |
Â
} else {
|
@@ -854,13 +865,17 @@ class Tribe__Admin__Help_Page {
|
|
854 |
Â
<dd><?php echo esc_html( number_format( $api_data->active_installs ) ); ?>+</dd>
|
855 |
Â
|
856 |
Â
<dt><?php esc_html_e( 'Rating:', 'tribe-common' ); ?></dt>
|
857 |
-
<dd
|
858 |
-
<?php
|
859 |
-
|
860 |
-
|
861 |
-
|
862 |
-
|
863 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
864 |
Â
</dl>
|
865 |
Â
<?php } ?>
|
866 |
Â
|
72 |
Â
* @return array
|
73 |
Â
*/
|
74 |
Â
public function get_plugins( $plugin_name = null, $is_active = true ) {
|
75 |
+
$plugins = [];
|
76 |
Â
|
77 |
+
$plugins['the-events-calendar'] = [
|
78 |
Â
'name' => 'the-events-calendar',
|
79 |
Â
'title' => esc_html__( 'The Events Calendar', 'tribe-common' ),
|
80 |
Â
'repo' => 'https://wordpress.org/plugins/the-events-calendar/',
|
81 |
Â
'forum' => 'https://wordpress.org/support/plugin/the-events-calendar/',
|
82 |
Â
'stars_url' => 'https://wordpress.org/support/plugin/the-events-calendar/reviews/?filter=5',
|
83 |
+
'description' => esc_html__(
|
84 |
+
'The Events Calendar is a carefully crafted, extensible plugin that lets you easily share your events.',
|
85 |
+
'tribe-common'
|
86 |
+
),
|
87 |
Â
'is_active' => false,
|
88 |
Â
'version' => null,
|
89 |
+
];
|
90 |
Â
|
91 |
Â
if ( class_exists( 'Tribe__Events__Main' ) ) {
|
92 |
Â
$plugins['the-events-calendar']['version'] = Tribe__Events__Main::VERSION;
|
93 |
Â
$plugins['the-events-calendar']['is_active'] = true;
|
94 |
Â
}
|
95 |
Â
|
96 |
+
$plugins['event-tickets'] = [
|
97 |
Â
'name' => 'event-tickets',
|
98 |
Â
'title' => esc_html__( 'Event Tickets', 'tribe-common' ),
|
99 |
Â
'repo' => 'https://wordpress.org/plugins/event-tickets/',
|
100 |
Â
'forum' => 'https://wordpress.org/support/plugin/event-tickets',
|
101 |
Â
'stars_url' => 'https://wordpress.org/support/plugin/event-tickets/reviews/?filter=5',
|
102 |
+
'description' => esc_html__(
|
103 |
+
'Events Tickets is a carefully crafted, extensible plugin that lets you easily sell tickets for your events.',
|
104 |
+
'tribe-common'
|
105 |
+
),
|
106 |
Â
'is_active' => false,
|
107 |
Â
'version' => null,
|
108 |
+
];
|
109 |
Â
|
110 |
Â
if ( class_exists( 'Tribe__Tickets__Main' ) ) {
|
111 |
Â
$plugins['event-tickets']['version'] = Tribe__Tickets__Main::VERSION;
|
112 |
Â
$plugins['event-tickets']['is_active'] = true;
|
113 |
Â
}
|
114 |
Â
|
115 |
+
$plugins['advanced-post-manager'] = [
|
116 |
Â
'name' => 'advanced-post-manager',
|
117 |
Â
'title' => esc_html__( 'Advanced Post Manager', 'tribe-common' ),
|
118 |
Â
'repo' => 'https://wordpress.org/plugins/advanced-post-manager/',
|
119 |
Â
'forum' => 'https://wordpress.org/support/plugin/advanced-post-manager/',
|
120 |
Â
'stars_url' => 'https://wordpress.org/support/plugin/advanced-post-manager/reviews/?filter=5',
|
121 |
+
'description' => esc_html__(
|
122 |
+
'Turbo charge your posts admin for any custom post type with sortable filters and columns, and auto-registration of metaboxes.',
|
123 |
+
'tribe-common'
|
124 |
+
),
|
125 |
Â
'is_active' => false,
|
126 |
Â
'version' => null,
|
127 |
+
];
|
128 |
Â
|
129 |
Â
if ( class_exists( 'Tribe_APM' ) ) {
|
130 |
Â
$plugins['advanced-post-manager']['version'] = 1;
|
165 |
Â
public function get_plugin_forum_links( $is_active = true ) {
|
166 |
Â
$plugins = $this->get_plugins( null, $is_active );
|
167 |
Â
|
168 |
+
$list = [];
|
169 |
Â
foreach ( $plugins as $plugin ) {
|
170 |
Â
$list[] = '<a href="' . esc_url( $plugin['forum'] ) . '" target="_blank">' . $plugin['title'] . '</a>';
|
171 |
Â
}
|
216 |
Â
* @return array
|
217 |
Â
*/
|
218 |
Â
public function get_addons( $plugin = null, $is_active = null, $is_important = null ) {
|
219 |
+
$addons = [];
|
220 |
+
|
221 |
+
$addons['events-calendar-pro'] = [
|
222 |
+
'id' => 'events-calendar-pro',
|
223 |
+
'title' => esc_html__( 'Events Calendar PRO', 'tribe-common' ),
|
224 |
+
'link' => 'http://m.tri.be/dr',
|
225 |
+
'plugin' => [ 'the-events-calendar' ],
|
226 |
+
'is_active' => class_exists( 'Tribe__Events__Pro__Main' ),
|
227 |
Â
'is_important' => true,
|
228 |
+
];
|
229 |
Â
|
230 |
+
$addons['eventbrite-tickets'] = [
|
231 |
Â
'id' => 'eventbrite-tickets',
|
232 |
Â
'title' => esc_html__( 'Eventbrite Tickets', 'tribe-common' ),
|
233 |
Â
'link' => 'http://m.tri.be/ds',
|
234 |
+
'plugin' => [ 'the-events-calendar' ],
|
235 |
Â
'is_active' => class_exists( 'Tribe__Events__Tickets__Eventbrite__Main' ),
|
236 |
+
];
|
237 |
Â
|
238 |
+
$addons['community-events'] = [
|
239 |
Â
'id' => 'community-events',
|
240 |
Â
'title' => esc_html__( 'Community Events', 'tribe-common' ),
|
241 |
Â
'link' => 'http://m.tri.be/dt',
|
242 |
+
'plugin' => [ 'the-events-calendar' ],
|
243 |
Â
'is_active' => class_exists( 'Tribe__Events__Community__Main' ),
|
244 |
+
];
|
245 |
Â
|
246 |
+
$addons['event-aggregator'] = [
|
247 |
Â
'id' => 'event-aggregator',
|
248 |
Â
'title' => esc_html__( 'Event Aggregator', 'tribe-common' ),
|
249 |
Â
'link' => 'http://m.tri.be/19mk',
|
250 |
+
'plugin' => [ 'the-events-calendar' ],
|
251 |
+
'is_active' => class_exists( 'Tribe__Events__Aggregator' ) && tribe(
|
252 |
+
'events-aggregator.main'
|
253 |
+
)->is_service_active(),
|
254 |
+
];
|
255 |
Â
|
256 |
+
$addons['events-filter-bar'] = [
|
257 |
+
'id' => 'events-filter-bar',
|
258 |
+
'title' => esc_html__( 'Filter Bar', 'tribe-common' ),
|
259 |
+
'link' => 'http://m.tri.be/hu',
|
260 |
+
'plugin' => [ 'the-events-calendar' ],
|
261 |
+
'is_active' => class_exists( 'Tribe__Events__Filterbar__View' ),
|
262 |
+
];
|
263 |
Â
|
264 |
Â
$addons['events-virtual'] = [
|
265 |
+
'id' => 'events-virtual',
|
266 |
+
'title' => esc_html__( 'Virtual Events', 'tribe-common' ),
|
267 |
+
'link' => 'http://m.tri.be/1alb',
|
268 |
+
'plugin' => [ 'the-events-calendar' ],
|
269 |
+
'is_active' => class_exists( '\Tribe\Events\Virtual\Plugin' ),
|
270 |
Â
];
|
271 |
Â
|
272 |
+
$addons['event-tickets-plus'] = [
|
273 |
+
'id' => 'event-tickets-plus',
|
274 |
+
'title' => esc_html__( 'Event Tickets Plus', 'tribe-common' ),
|
275 |
+
'link' => 'http://m.tri.be/18wa',
|
276 |
+
'plugin' => [ 'event-tickets' ],
|
277 |
+
'is_active' => class_exists( 'Tribe__Tickets_Plus__Main' ),
|
278 |
Â
'is_important' => true,
|
279 |
+
];
|
280 |
Â
|
281 |
+
$addons['event-community-tickets'] = [
|
282 |
Â
'id' => 'event-community-tickets',
|
283 |
Â
'title' => esc_html__( 'Community Tickets', 'tribe-common' ),
|
284 |
Â
'link' => 'http://m.tri.be/18m2',
|
285 |
+
'plugin' => [ 'event-tickets' ],
|
286 |
Â
'is_active' => class_exists( 'Tribe__Events__Community__Tickets__Main' ),
|
287 |
+
];
|
288 |
Â
|
289 |
Â
/**
|
290 |
Â
* Filter the array of premium addons upsold on the sidebar of the Settings > Help tab
|
299 |
Â
}
|
300 |
Â
|
301 |
Â
// Allow for easily grab the addons for a plugin
|
302 |
+
$filtered = [];
|
303 |
Â
foreach ( $addons as $id => $addon ) {
|
304 |
Â
if ( ! is_null( $plugin ) && ! in_array( $plugin, (array) $addon['plugin'] ) ) {
|
305 |
Â
continue;
|
329 |
Â
|
330 |
Â
public function is_active( $should_be_active ) {
|
331 |
Â
$plugins = $this->get_plugins( null, true );
|
332 |
+
$addons = $this->get_addons( null, true );
|
333 |
Â
|
334 |
+
$actives = array_merge( $plugins, $addons );
|
335 |
+
$is_active = [];
|
336 |
Â
|
337 |
Â
foreach ( $actives as $id => $active ) {
|
338 |
Â
if ( in_array( $id, (array) $should_be_active ) ) {
|
353 |
Â
* @return string Link with the GA arguments
|
354 |
Â
*/
|
355 |
Â
public function get_ga_link( $link = null, $relative = true ) {
|
356 |
+
$query_args = [
|
357 |
Â
'utm_source' => 'helptab',
|
358 |
Â
'utm_medium' => 'plugin-tec',
|
359 |
Â
'utm_campaign' => 'in-app',
|
360 |
+
];
|
361 |
Â
|
362 |
Â
if ( true === $relative ) {
|
363 |
Â
$link = trailingslashit( Tribe__Main::$tec_url . $link );
|
374 |
Â
* @return array Feed Title and Link
|
375 |
Â
*/
|
376 |
Â
public function get_feed_items() {
|
377 |
+
$news_rss = fetch_feed( Tribe__Main::FEED_URL );
|
378 |
+
$news_feed = [];
|
379 |
Â
|
380 |
Â
if ( ! is_wp_error( $news_rss ) ) {
|
381 |
Â
/**
|
387 |
Â
$rss_items = $news_rss->get_items( 0, $maxitems );
|
388 |
Â
if ( $maxitems > 0 ) {
|
389 |
Â
foreach ( $rss_items as $item ) {
|
390 |
+
$item = [
|
391 |
Â
'title' => esc_html( $item->get_title() ),
|
392 |
Â
'link' => esc_url( $item->get_permalink() ),
|
393 |
+
];
|
394 |
Â
$news_feed[] = $item;
|
395 |
Â
}
|
396 |
Â
}
|
428 |
Â
}
|
429 |
Â
|
430 |
Â
// Fetch the data
|
431 |
+
$data = plugins_api( 'plugin_information', [
|
432 |
+
'slug' => $plugin->name,
|
433 |
+
'is_ssl' => is_ssl(),
|
434 |
+
'fields' => [
|
435 |
+
'banners' => true,
|
436 |
+
'reviews' => true,
|
437 |
+
'downloaded' => true,
|
438 |
+
'active_installs' => true,
|
439 |
+
],
|
440 |
+
] );
|
441 |
Â
|
442 |
Â
if ( ! is_wp_error( $data ) ) {
|
443 |
Â
// Format Downloaded Infomation
|
498 |
Â
}
|
499 |
Â
|
500 |
Â
// Only add List Item if is a UL or OL
|
501 |
+
if ( in_array( $line['type'], [ 'ul', 'ol' ] ) ) {
|
502 |
Â
$text .= '<li>' . "\n";
|
503 |
Â
}
|
504 |
Â
|
505 |
Â
$text .= $this->get_content_html( $item );
|
506 |
Â
|
507 |
+
if ( in_array( $line['type'], [ 'ul', 'ol' ] ) ) {
|
508 |
Â
$text .= '</li>' . "\n";
|
509 |
Â
}
|
510 |
Â
}
|
526 |
Â
* @access private
|
527 |
Â
* @var array
|
528 |
Â
*/
|
529 |
+
private $sections = [];
|
530 |
Â
|
531 |
Â
/**
|
532 |
Â
* Incremented with each method call, then stored in $section->uid.
|
584 |
Â
// Everytime you call this we will add this up
|
585 |
Â
self::$section_count++;
|
586 |
Â
|
587 |
+
$possible_types = (array) apply_filters( 'tribe_help_available_section_types', [ 'default', 'box' ] );
|
588 |
Â
|
589 |
Â
// Set a Default type
|
590 |
Â
if ( empty( $type ) || ! in_array( $type, $possible_types ) ) {
|
592 |
Â
}
|
593 |
Â
|
594 |
Â
// Create the section and Sanitize the values to avoid having to do it later
|
595 |
+
$section = (object) [
|
596 |
+
'id' => sanitize_html_class( $id ),
|
597 |
+
'title' => esc_html( $title ),
|
598 |
+
'priority' => absint( $priority ),
|
599 |
+
'type' => sanitize_html_class( $type ),
|
600 |
Â
|
601 |
+
// This Method Unique count integer used for ordering with priority
|
602 |
+
'unique_call_order' => self::$section_count,
|
603 |
Â
|
604 |
+
// Counter for ordering Content
|
605 |
+
'content_count' => 0,
|
606 |
Â
|
607 |
+
// Setup the Base for the content to come
|
608 |
+
'content' => [],
|
609 |
+
];
|
610 |
Â
|
611 |
Â
$this->sections[ $section->id ] = $section;
|
612 |
Â
|
625 |
Â
*
|
626 |
Â
* @return object The content item added
|
627 |
Â
*/
|
628 |
+
public function add_section_content( $section_id, $content, $priority = 10, $arguments = [] ) {
|
629 |
Â
$section_id = sanitize_html_class( $section_id );
|
630 |
Â
|
631 |
Â
// Check if the section exists
|
670 |
Â
public function remove_section( $section_id ) {
|
671 |
Â
if (
|
672 |
Â
! isset( $this->sections[ $section_id ] ) &&
|
673 |
+
! in_array( (object) [ 'id' => $section_id ], $this->sections, true )
|
674 |
Â
) {
|
675 |
Â
// There are no sections to remove, so false
|
676 |
Â
return false;
|
677 |
Â
}
|
678 |
Â
|
679 |
+
$removed = [];
|
680 |
Â
foreach ( $this->sections as $id => $section ) {
|
681 |
Â
if ( ! is_numeric( $id ) && ! is_numeric( $section_id ) && ! empty( $section->id ) ) {
|
682 |
Â
if ( $section->id === $section_id ) {
|
730 |
Â
}
|
731 |
Â
|
732 |
Â
// Sort by Priority
|
733 |
+
uasort( $sections, [ $this, 'by_priority' ] );
|
734 |
Â
|
735 |
+
$html = [];
|
736 |
Â
|
737 |
Â
foreach ( $sections as $index => $section ) {
|
738 |
Â
$section = (object) $section;
|
755 |
Â
$section = apply_filters( 'tribe_help_section_' . $section->id, $section, $this );
|
756 |
Â
|
757 |
Â
// Sort by Priority
|
758 |
+
uasort( $section->content, [ $this, 'by_priority' ] );
|
759 |
Â
|
760 |
Â
$html[ $section->id . '-start' ] = '<div id="tribe-' . sanitize_html_class( $section->id ) . '" class="tribe-help-section clearfix tribe-section-type-' . sanitize_html_class( $section->type ) . '">';
|
761 |
Â
|
806 |
Â
$plugin_exists = isset( $plugins[ $status['file'] ] );
|
807 |
Â
|
808 |
Â
if ( 'install' !== $status['status'] && ! $plugin_active ) {
|
809 |
+
$args = [
|
810 |
+
'action' => 'activate',
|
811 |
+
'plugin' => $status['file'],
|
812 |
Â
'plugin_status' => 'all',
|
813 |
+
'paged' => 1,
|
814 |
+
's' => '',
|
815 |
+
];
|
816 |
Â
$activate_url = wp_nonce_url( add_query_arg( $args, 'plugins.php' ), 'activate-plugin_' . $status['file'] );
|
817 |
Â
$link = '<a class="button" href="' . $activate_url . '" aria-label="' . esc_attr( sprintf( esc_attr__( 'Activate %s', 'tribe-common' ), $plugin->name ) ) . '">' . esc_html__( 'Activate Plugin', 'tribe-common' ) . '</a>';
|
818 |
Â
} elseif ( 'update_available' === $status['status'] ) {
|
819 |
+
$args = [
|
820 |
Â
'action' => 'upgrade-plugin',
|
821 |
Â
'plugin' => $status['file'],
|
822 |
+
];
|
823 |
Â
$update_url = wp_nonce_url( add_query_arg( $args, 'update.php' ), 'upgrade-plugin_' . $status['file'] );
|
824 |
Â
|
825 |
Â
$link = '<a class="button" href="' . $update_url . '">' . esc_html__( 'Upgrade Plugin', 'tribe-common' ) . '</a>';
|
830 |
Â
|
831 |
Â
if ( ! isset( $link ) ) {
|
832 |
Â
if ( $api_data ) {
|
833 |
+
$args = [
|
834 |
Â
'tab' => 'plugin-information',
|
835 |
Â
'plugin' => $plugin->name,
|
836 |
Â
'TB_iframe' => true,
|
837 |
Â
'width' => 772,
|
838 |
Â
'height' => 600,
|
839 |
+
];
|
840 |
Â
$iframe_url = add_query_arg( $args, admin_url( '/plugin-install.php' ) );
|
841 |
Â
$link = '<a class="button thickbox" href="' . $iframe_url . '" aria-label="' . esc_attr( sprintf( esc_attr__( 'Install %s', 'tribe-common' ), $plugin->name ) ) . '">' . esc_html__( 'Install Plugin', 'tribe-common' ) . '</a>';
|
842 |
Â
} else {
|
865 |
Â
<dd><?php echo esc_html( number_format( $api_data->active_installs ) ); ?>+</dd>
|
866 |
Â
|
867 |
Â
<dt><?php esc_html_e( 'Rating:', 'tribe-common' ); ?></dt>
|
868 |
+
<dd>
|
869 |
+
<a href="<?php echo esc_url( $plugin->stars_url ); ?>" target="_blank">
|
870 |
+
<?php
|
871 |
+
wp_star_rating( [
|
872 |
+
'rating' => $api_data->rating,
|
873 |
+
'type' => 'percent',
|
874 |
+
'number' => $api_data->num_ratings,
|
875 |
+
] );
|
876 |
+
?>
|
877 |
+
</a>
|
878 |
+
</dd>
|
879 |
Â
</dl>
|
880 |
Â
<?php } ?>
|
881 |
Â
|
common/src/Tribe/Admin/Live_Date_Preview.php
CHANGED
@@ -3,12 +3,12 @@
|
|
3 |
Â
* Facilitiates live date previews in the Events > Settings > Display admin screen.
|
4 |
Â
*/
|
5 |
Â
class Tribe__Admin__Live_Date_Preview {
|
6 |
-
protected $target_fields =
|
7 |
Â
'dateWithYearFormat',
|
8 |
Â
'dateWithoutYearFormat',
|
9 |
Â
'monthAndYearFormat',
|
10 |
Â
'weekDayFormat',
|
11 |
-
|
12 |
Â
|
13 |
Â
/**
|
14 |
Â
* Static Singleton Holder
|
@@ -31,7 +31,7 @@ class Tribe__Admin__Live_Date_Preview {
|
|
31 |
Â
* the user is actually on that tab).
|
32 |
Â
*/
|
33 |
Â
public function __construct() {
|
34 |
-
add_action( 'tribe_settings_after_do_tabs',
|
35 |
Â
}
|
36 |
Â
|
37 |
Â
/**
|
@@ -50,10 +50,10 @@ class Tribe__Admin__Live_Date_Preview {
|
|
50 |
Â
*/
|
51 |
Â
$this->target_fields = (array) apply_filters( 'tribe_settings_date_preview_fields', $this->target_fields );
|
52 |
Â
|
53 |
-
add_filter( 'tribe_field_div_end',
|
54 |
Â
|
55 |
Â
// We are still before `admin_enqueue_scripts` making it safe to use `tribe_asset`
|
56 |
-
tribe_asset( Tribe__Main::instance(), 'tribe-date-live-refresh', 'admin-date-preview.js',
|
57 |
Â
}
|
58 |
Â
|
59 |
Â
public function setup_date_previews( $html, $field ) {
|
3 |
Â
* Facilitiates live date previews in the Events > Settings > Display admin screen.
|
4 |
Â
*/
|
5 |
Â
class Tribe__Admin__Live_Date_Preview {
|
6 |
+
protected $target_fields = [
|
7 |
Â
'dateWithYearFormat',
|
8 |
Â
'dateWithoutYearFormat',
|
9 |
Â
'monthAndYearFormat',
|
10 |
Â
'weekDayFormat',
|
11 |
+
];
|
12 |
Â
|
13 |
Â
/**
|
14 |
Â
* Static Singleton Holder
|
31 |
Â
* the user is actually on that tab).
|
32 |
Â
*/
|
33 |
Â
public function __construct() {
|
34 |
+
add_action( 'tribe_settings_after_do_tabs', [ $this, 'listen' ] );
|
35 |
Â
}
|
36 |
Â
|
37 |
Â
/**
|
50 |
Â
*/
|
51 |
Â
$this->target_fields = (array) apply_filters( 'tribe_settings_date_preview_fields', $this->target_fields );
|
52 |
Â
|
53 |
+
add_filter( 'tribe_field_div_end', [ $this, 'setup_date_previews' ], 10, 2 );
|
54 |
Â
|
55 |
Â
// We are still before `admin_enqueue_scripts` making it safe to use `tribe_asset`
|
56 |
+
tribe_asset( Tribe__Main::instance(), 'tribe-date-live-refresh', 'admin-date-preview.js', [ 'jquery' ], 'admin_enqueue_scripts' );
|
57 |
Â
}
|
58 |
Â
|
59 |
Â
public function setup_date_previews( $html, $field ) {
|
common/src/Tribe/Admin/Notice/Marketing.php
CHANGED
@@ -154,7 +154,7 @@ class Tribe__Admin__Notice__Marketing {
|
|
154 |
Â
* @return string
|
155 |
Â
*/
|
156 |
Â
public function black_friday_display_notice() {
|
157 |
-
Tribe__Assets::instance()->enqueue(
|
158 |
Â
|
159 |
Â
$current_screen = get_current_screen();
|
160 |
Â
|
154 |
Â
* @return string
|
155 |
Â
*/
|
156 |
Â
public function black_friday_display_notice() {
|
157 |
+
Tribe__Assets::instance()->enqueue( [ 'tribe-common-admin' ] );
|
158 |
Â
|
159 |
Â
$current_screen = get_current_screen();
|
160 |
Â
|
common/src/Tribe/Admin/Notice/Php_Version.php
CHANGED
@@ -9,13 +9,13 @@ class Tribe__Admin__Notice__Php_Version {
|
|
9 |
Â
// display the PHP version notice
|
10 |
Â
tribe_notice(
|
11 |
Â
'php-deprecated',
|
12 |
-
|
13 |
-
|
14 |
Â
'type' => 'warning',
|
15 |
Â
'dismiss' => 1,
|
16 |
Â
'wrap' => 'p',
|
17 |
-
|
18 |
-
|
19 |
Â
);
|
20 |
Â
|
21 |
Â
}
|
9 |
Â
// display the PHP version notice
|
10 |
Â
tribe_notice(
|
11 |
Â
'php-deprecated',
|
12 |
+
[ $this, 'display_notice' ],
|
13 |
+
[
|
14 |
Â
'type' => 'warning',
|
15 |
Â
'dismiss' => 1,
|
16 |
Â
'wrap' => 'p',
|
17 |
+
],
|
18 |
+
[ $this, 'should_display' ]
|
19 |
Â
);
|
20 |
Â
|
21 |
Â
}
|
common/src/Tribe/Admin/Notice/Plugin_Download.php
CHANGED
@@ -7,7 +7,7 @@ class Tribe__Admin__Notice__Plugin_Download {
|
|
7 |
Â
|
8 |
Â
private $plugin_path;
|
9 |
Â
|
10 |
-
private $plugins_required =
|
11 |
Â
|
12 |
Â
/**
|
13 |
Â
* @param string $plugin_path Path to the plugin file we're showing a notice for
|
@@ -17,7 +17,7 @@ class Tribe__Admin__Notice__Plugin_Download {
|
|
17 |
Â
|
18 |
Â
tribe_notice(
|
19 |
Â
plugin_basename( $plugin_path ),
|
20 |
-
|
21 |
Â
);
|
22 |
Â
}
|
23 |
Â
|
@@ -60,7 +60,7 @@ class Tribe__Admin__Notice__Plugin_Download {
|
|
60 |
Â
}
|
61 |
Â
|
62 |
Â
$plugin_data = get_plugin_data( $this->plugin_path );
|
63 |
-
$req_plugins =
|
64 |
Â
|
65 |
Â
if ( empty( $this->plugins_required ) ) {
|
66 |
Â
return;
|
@@ -111,10 +111,10 @@ class Tribe__Admin__Notice__Plugin_Download {
|
|
111 |
Â
$plugin_name[] = $plugin_data['Name'];
|
112 |
Â
}
|
113 |
Â
|
114 |
-
$allowed_html =
|
115 |
-
'strong' =>
|
116 |
-
'a' =>
|
117 |
-
|
118 |
Â
|
119 |
Â
$plugin_names_clean_text = wp_kses( $this->implode_with_grammar( $plugin_name ), $allowed_html );
|
120 |
Â
$req_plugin_names_clean_text = wp_kses( $this->implode_with_grammar( $req_plugins ), $allowed_html );
|
7 |
Â
|
8 |
Â
private $plugin_path;
|
9 |
Â
|
10 |
+
private $plugins_required = [];
|
11 |
Â
|
12 |
Â
/**
|
13 |
Â
* @param string $plugin_path Path to the plugin file we're showing a notice for
|
17 |
Â
|
18 |
Â
tribe_notice(
|
19 |
Â
plugin_basename( $plugin_path ),
|
20 |
+
[ $this, 'show_inactive_plugins_alert' ]
|
21 |
Â
);
|
22 |
Â
}
|
23 |
Â
|
60 |
Â
}
|
61 |
Â
|
62 |
Â
$plugin_data = get_plugin_data( $this->plugin_path );
|
63 |
+
$req_plugins = [];
|
64 |
Â
|
65 |
Â
if ( empty( $this->plugins_required ) ) {
|
66 |
Â
return;
|
111 |
Â
$plugin_name[] = $plugin_data['Name'];
|
112 |
Â
}
|
113 |
Â
|
114 |
+
$allowed_html = [
|
115 |
+
'strong' => [],
|
116 |
+
'a' => [ 'href' => [] ],
|
117 |
+
];
|
118 |
Â
|
119 |
Â
$plugin_names_clean_text = wp_kses( $this->implode_with_grammar( $plugin_name ), $allowed_html );
|
120 |
Â
$req_plugin_names_clean_text = wp_kses( $this->implode_with_grammar( $req_plugins ), $allowed_html );
|
common/src/Tribe/Admin/Notice/Plugin_Upgrade_Notice.php
CHANGED
@@ -46,7 +46,7 @@ class Tribe__Admin__Notice__Plugin_Upgrade_Notice {
|
|
46 |
Â
$this->current_version = $current_version;
|
47 |
Â
$this->plugin_path = $plugin_path;
|
48 |
Â
|
49 |
-
add_action( "in_plugin_update_message-$plugin_path",
|
50 |
Â
}
|
51 |
Â
|
52 |
Â
/**
|
46 |
Â
$this->current_version = $current_version;
|
47 |
Â
$this->plugin_path = $plugin_path;
|
48 |
Â
|
49 |
+
add_action( "in_plugin_update_message-$plugin_path", [ $this, 'maybe_run' ] );
|
50 |
Â
}
|
51 |
Â
|
52 |
Â
/**
|
common/src/Tribe/Admin/Notices.php
CHANGED
@@ -65,7 +65,7 @@ class Tribe__Admin__Notices {
|
|
65 |
Â
*
|
66 |
Â
* @var array
|
67 |
Â
*/
|
68 |
-
protected $notices =
|
69 |
Â
|
70 |
Â
/**
|
71 |
Â
* Register the Methods in the correct places
|
@@ -80,7 +80,7 @@ class Tribe__Admin__Notices {
|
|
80 |
Â
}
|
81 |
Â
|
82 |
Â
// Before we bail on the
|
83 |
-
add_action( 'wp_ajax_tribe_notice_dismiss',
|
84 |
Â
|
85 |
Â
// Doing AJAX? bail.
|
86 |
Â
if ( tribe( 'context' )->doing_ajax() ) {
|
@@ -88,14 +88,14 @@ class Tribe__Admin__Notices {
|
|
88 |
Â
}
|
89 |
Â
|
90 |
Â
// Hook the actual rendering of notices
|
91 |
-
add_action( 'current_screen',
|
92 |
Â
|
93 |
Â
// Add our notice dismissal script
|
94 |
Â
tribe_asset(
|
95 |
Â
Tribe__Main::instance(),
|
96 |
Â
'tribe-notice-dismiss',
|
97 |
Â
'notice-dismiss.js',
|
98 |
-
|
99 |
Â
'admin_enqueue_scripts'
|
100 |
Â
);
|
101 |
Â
}
|
@@ -180,7 +180,7 @@ class Tribe__Admin__Notices {
|
|
180 |
Â
$wrap = isset( $notice->wrap ) ? $notice->wrap : false;
|
181 |
Â
|
182 |
Â
if ( is_callable( $content ) ) {
|
183 |
-
$content = call_user_func_array( $content,
|
184 |
Â
}
|
185 |
Â
|
186 |
Â
// Return the rendered HTML
|
@@ -219,7 +219,7 @@ class Tribe__Admin__Notices {
|
|
219 |
Â
$notice = $this->get( $slug );
|
220 |
Â
$this->notices[ $slug ]->is_rendered = true;
|
221 |
Â
|
222 |
-
$classes
|
223 |
Â
$classes[] = sanitize_html_class( 'notice-' . $notice->type );
|
224 |
Â
$classes[] = sanitize_html_class( 'tribe-notice-' . $notice->slug );
|
225 |
Â
|
@@ -382,10 +382,10 @@ class Tribe__Admin__Notices {
|
|
382 |
Â
* @return int
|
383 |
Â
*/
|
384 |
Â
public function undismiss_for_all( $slug ) {
|
385 |
-
$user_query = new WP_User_Query(
|
386 |
Â
'meta_key' => self::$meta_key,
|
387 |
Â
'meta_value' => $slug,
|
388 |
-
|
389 |
Â
|
390 |
Â
$affected = 0;
|
391 |
Â
|
@@ -411,23 +411,23 @@ class Tribe__Admin__Notices {
|
|
411 |
Â
*
|
412 |
Â
* @return stdClass
|
413 |
Â
*/
|
414 |
-
public function register( $slug, $callback, $arguments =
|
415 |
Â
// Prevent weird stuff here
|
416 |
Â
$slug = sanitize_title_with_dashes( $slug );
|
417 |
Â
|
418 |
-
$defaults =
|
419 |
-
'callback'
|
420 |
-
'content'
|
421 |
-
'action'
|
422 |
-
'priority'
|
423 |
-
'expire'
|
424 |
-
'dismiss'
|
425 |
-
'type'
|
426 |
-
'is_rendered'
|
427 |
-
'wrap'
|
428 |
-
|
429 |
-
|
430 |
-
$defaults['callback'] =
|
431 |
Â
$defaults['content'] = $callback;
|
432 |
Â
|
433 |
Â
if ( is_callable( $active_callback ) ) {
|
@@ -467,9 +467,9 @@ class Tribe__Admin__Notices {
|
|
467 |
Â
*
|
468 |
Â
* @return stdClass Which notice was registered
|
469 |
Â
*/
|
470 |
-
public function register_transient( $slug, $html, $arguments =
|
471 |
Â
$notices = $this->get_transients();
|
472 |
-
$notices[ $slug ] =
|
473 |
Â
$this->set_transients( $notices );
|
474 |
Â
}
|
475 |
Â
|
@@ -557,7 +557,7 @@ class Tribe__Admin__Notices {
|
|
557 |
Â
|
558 |
Â
$transient = self::$transient_notices_name;
|
559 |
Â
$notices = get_transient( $transient );
|
560 |
-
$notices = is_array( $notices ) ? $notices :
|
561 |
Â
|
562 |
Â
if ( $this->did_prune_transients ) {
|
563 |
Â
$this->did_prune_transients = true;
|
65 |
Â
*
|
66 |
Â
* @var array
|
67 |
Â
*/
|
68 |
+
protected $notices = [];
|
69 |
Â
|
70 |
Â
/**
|
71 |
Â
* Register the Methods in the correct places
|
80 |
Â
}
|
81 |
Â
|
82 |
Â
// Before we bail on the
|
83 |
+
add_action( 'wp_ajax_tribe_notice_dismiss', [ $this, 'maybe_dismiss' ] );
|
84 |
Â
|
85 |
Â
// Doing AJAX? bail.
|
86 |
Â
if ( tribe( 'context' )->doing_ajax() ) {
|
88 |
Â
}
|
89 |
Â
|
90 |
Â
// Hook the actual rendering of notices
|
91 |
+
add_action( 'current_screen', [ $this, 'hook' ], 20 );
|
92 |
Â
|
93 |
Â
// Add our notice dismissal script
|
94 |
Â
tribe_asset(
|
95 |
Â
Tribe__Main::instance(),
|
96 |
Â
'tribe-notice-dismiss',
|
97 |
Â
'notice-dismiss.js',
|
98 |
+
[ 'jquery' ],
|
99 |
Â
'admin_enqueue_scripts'
|
100 |
Â
);
|
101 |
Â
}
|
180 |
Â
$wrap = isset( $notice->wrap ) ? $notice->wrap : false;
|
181 |
Â
|
182 |
Â
if ( is_callable( $content ) ) {
|
183 |
+
$content = call_user_func_array( $content, [ $notice ] );
|
184 |
Â
}
|
185 |
Â
|
186 |
Â
// Return the rendered HTML
|
219 |
Â
$notice = $this->get( $slug );
|
220 |
Â
$this->notices[ $slug ]->is_rendered = true;
|
221 |
Â
|
222 |
+
$classes = [ 'tribe-dismiss-notice', 'notice' ];
|
223 |
Â
$classes[] = sanitize_html_class( 'notice-' . $notice->type );
|
224 |
Â
$classes[] = sanitize_html_class( 'tribe-notice-' . $notice->slug );
|
225 |
Â
|
382 |
Â
* @return int
|
383 |
Â
*/
|
384 |
Â
public function undismiss_for_all( $slug ) {
|
385 |
+
$user_query = new WP_User_Query( [
|
386 |
Â
'meta_key' => self::$meta_key,
|
387 |
Â
'meta_value' => $slug,
|
388 |
+
] );
|
389 |
Â
|
390 |
Â
$affected = 0;
|
391 |
Â
|
411 |
Â
*
|
412 |
Â
* @return stdClass
|
413 |
Â
*/
|
414 |
+
public function register( $slug, $callback, $arguments = [], $active_callback = null ) {
|
415 |
Â
// Prevent weird stuff here
|
416 |
Â
$slug = sanitize_title_with_dashes( $slug );
|
417 |
Â
|
418 |
+
$defaults = [
|
419 |
+
'callback' => null,
|
420 |
+
'content' => null,
|
421 |
+
'action' => 'admin_notices',
|
422 |
+
'priority' => 10,
|
423 |
+
'expire' => false,
|
424 |
+
'dismiss' => false,
|
425 |
+
'type' => 'error',
|
426 |
+
'is_rendered' => false,
|
427 |
+
'wrap' => false,
|
428 |
+
];
|
429 |
+
|
430 |
+
$defaults['callback'] = [ $this, 'render_' . $slug ];
|
431 |
Â
$defaults['content'] = $callback;
|
432 |
Â
|
433 |
Â
if ( is_callable( $active_callback ) ) {
|
467 |
Â
*
|
468 |
Â
* @return stdClass Which notice was registered
|
469 |
Â
*/
|
470 |
+
public function register_transient( $slug, $html, $arguments = [], $expire = null ) {
|
471 |
Â
$notices = $this->get_transients();
|
472 |
+
$notices[ $slug ] = [ $html, $arguments, time() + $expire ];
|
473 |
Â
$this->set_transients( $notices );
|
474 |
Â
}
|
475 |
Â
|
557 |
Â
|
558 |
Â
$transient = self::$transient_notices_name;
|
559 |
Â
$notices = get_transient( $transient );
|
560 |
+
$notices = is_array( $notices ) ? $notices : [];
|
561 |
Â
|
562 |
Â
if ( $this->did_prune_transients ) {
|
563 |
Â
$this->did_prune_transients = true;
|
common/src/Tribe/Ajax/Dropdown.php
CHANGED
@@ -15,8 +15,8 @@ class Tribe__Ajax__Dropdown {
|
|
15 |
Â
* @return void
|
16 |
Â
*/
|
17 |
Â
public function hook() {
|
18 |
-
add_action( 'wp_ajax_tribe_dropdown',
|
19 |
-
add_action( 'wp_ajax_nopriv_tribe_dropdown',
|
20 |
Â
}
|
21 |
Â
|
22 |
Â
/**
|
@@ -118,7 +118,7 @@ class Tribe__Ajax__Dropdown {
|
|
118 |
Â
}
|
119 |
Â
|
120 |
Â
foreach ( $into as $term ) {
|
121 |
-
$term->children =
|
122 |
Â
$this->sort_terms_hierarchically( $terms, $term->children, $term->term_id );
|
123 |
Â
}
|
124 |
Â
}
|
@@ -135,6 +135,9 @@ class Tribe__Ajax__Dropdown {
|
|
135 |
Â
public function convert_children_to_array( $results ) {
|
136 |
Â
if ( isset( $results->children ) ) {
|
137 |
Â
$results->children = $this->convert_children_to_array( $results->children );
|
Â
|
|
Â
|
|
Â
|
|
138 |
Â
} else {
|
139 |
Â
foreach ( $results as $key => $item ) {
|
140 |
Â
$item = $this->convert_children_to_array( $item );
|
@@ -142,7 +145,7 @@ class Tribe__Ajax__Dropdown {
|
|
142 |
Â
}
|
143 |
Â
|
144 |
Â
if ( empty( $results ) ) {
|
145 |
-
return
|
146 |
Â
}
|
147 |
Â
|
148 |
Â
return array_values( (array) $results );
|
@@ -157,12 +160,12 @@ class Tribe__Ajax__Dropdown {
|
|
157 |
Â
* @return object
|
158 |
Â
*/
|
159 |
Â
public function parse_params( $params ) {
|
160 |
-
$defaults =
|
161 |
Â
'search' => null,
|
162 |
Â
'page' => 0,
|
163 |
-
'args' =>
|
164 |
Â
'source' => null,
|
165 |
-
|
166 |
Â
|
167 |
Â
$arguments = wp_parse_args( $params, $defaults );
|
168 |
Â
|
@@ -180,7 +183,7 @@ class Tribe__Ajax__Dropdown {
|
|
180 |
Â
*/
|
181 |
Â
public function route() {
|
182 |
Â
// Push all POST params into a Default set of data
|
183 |
-
$args = $this->parse_params( empty( $_POST ) ?
|
184 |
Â
|
185 |
Â
if ( empty( $args->source ) ) {
|
186 |
Â
$this->error( esc_attr__( 'Missing data source for this dropdown', 'tribe-common' ) );
|
@@ -189,9 +192,9 @@ class Tribe__Ajax__Dropdown {
|
|
189 |
Â
// Define a Filter to allow external calls to our Select2 Dropboxes
|
190 |
Â
$filter = sanitize_key( 'tribe_dropdown_' . $args->source );
|
191 |
Â
if ( has_filter( $filter ) ) {
|
192 |
-
$data = apply_filters( $filter,
|
193 |
Â
} else {
|
194 |
-
$data = call_user_func_array(
|
195 |
Â
}
|
196 |
Â
|
197 |
Â
// if we got a empty dataset we return an error
|
@@ -213,7 +216,7 @@ class Tribe__Ajax__Dropdown {
|
|
213 |
Â
private function success( $data ) {
|
214 |
Â
// We need a Results item for Select2 Work
|
215 |
Â
if ( ! isset( $data['results'] ) ) {
|
216 |
-
$data['results'] =
|
217 |
Â
}
|
218 |
Â
|
219 |
Â
wp_send_json_success( $data );
|
@@ -228,10 +231,10 @@ class Tribe__Ajax__Dropdown {
|
|
228 |
Â
* @return void
|
229 |
Â
*/
|
230 |
Â
private function error( $message ) {
|
231 |
-
$data =
|
232 |
Â
'message' => $message,
|
233 |
-
'results' =>
|
234 |
-
|
235 |
Â
wp_send_json_error( $data );
|
236 |
Â
}
|
237 |
Â
|
15 |
Â
* @return void
|
16 |
Â
*/
|
17 |
Â
public function hook() {
|
18 |
+
add_action( 'wp_ajax_tribe_dropdown', [ $this, 'route' ] );
|
19 |
+
add_action( 'wp_ajax_nopriv_tribe_dropdown', [ $this, 'route' ] );
|
20 |
Â
}
|
21 |
Â
|
22 |
Â
/**
|
118 |
Â
}
|
119 |
Â
|
120 |
Â
foreach ( $into as $term ) {
|
121 |
+
$term->children = [];
|
122 |
Â
$this->sort_terms_hierarchically( $terms, $term->children, $term->term_id );
|
123 |
Â
}
|
124 |
Â
}
|
135 |
Â
public function convert_children_to_array( $results ) {
|
136 |
Â
if ( isset( $results->children ) ) {
|
137 |
Â
$results->children = $this->convert_children_to_array( $results->children );
|
138 |
+
if ( empty( $results->children ) ) {
|
139 |
+
unset( $results->children );
|
140 |
+
}
|
141 |
Â
} else {
|
142 |
Â
foreach ( $results as $key => $item ) {
|
143 |
Â
$item = $this->convert_children_to_array( $item );
|
145 |
Â
}
|
146 |
Â
|
147 |
Â
if ( empty( $results ) ) {
|
148 |
+
return [];
|
149 |
Â
}
|
150 |
Â
|
151 |
Â
return array_values( (array) $results );
|
160 |
Â
* @return object
|
161 |
Â
*/
|
162 |
Â
public function parse_params( $params ) {
|
163 |
+
$defaults = [
|
164 |
Â
'search' => null,
|
165 |
Â
'page' => 0,
|
166 |
+
'args' => [],
|
167 |
Â
'source' => null,
|
168 |
+
];
|
169 |
Â
|
170 |
Â
$arguments = wp_parse_args( $params, $defaults );
|
171 |
Â
|
183 |
Â
*/
|
184 |
Â
public function route() {
|
185 |
Â
// Push all POST params into a Default set of data
|
186 |
+
$args = $this->parse_params( empty( $_POST ) ? [] : $_POST );
|
187 |
Â
|
188 |
Â
if ( empty( $args->source ) ) {
|
189 |
Â
$this->error( esc_attr__( 'Missing data source for this dropdown', 'tribe-common' ) );
|
192 |
Â
// Define a Filter to allow external calls to our Select2 Dropboxes
|
193 |
Â
$filter = sanitize_key( 'tribe_dropdown_' . $args->source );
|
194 |
Â
if ( has_filter( $filter ) ) {
|
195 |
+
$data = apply_filters( $filter, [], $args->search, $args->page, $args->args, $args->source );
|
196 |
Â
} else {
|
197 |
+
$data = call_user_func_array( [ $this, $args->source ], (array) $args );
|
198 |
Â
}
|
199 |
Â
|
200 |
Â
// if we got a empty dataset we return an error
|
216 |
Â
private function success( $data ) {
|
217 |
Â
// We need a Results item for Select2 Work
|
218 |
Â
if ( ! isset( $data['results'] ) ) {
|
219 |
+
$data['results'] = [];
|
220 |
Â
}
|
221 |
Â
|
222 |
Â
wp_send_json_success( $data );
|
231 |
Â
* @return void
|
232 |
Â
*/
|
233 |
Â
private function error( $message ) {
|
234 |
+
$data = [
|
235 |
Â
'message' => $message,
|
236 |
+
'results' => [],
|
237 |
+
];
|
238 |
Â
wp_send_json_error( $data );
|
239 |
Â
}
|
240 |
Â
|
common/src/Tribe/Ajax/Operations.php
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
Â
*/
|
9 |
Â
class Tribe__Ajax__Operations {
|
10 |
Â
|
11 |
-
public function verify_or_exit( $nonce, $action, $exit_data =
|
12 |
Â
if ( ! wp_verify_nonce( $nonce, $action ) ) {
|
13 |
Â
exit( $exit_data );
|
14 |
Â
}
|
@@ -16,7 +16,7 @@ class Tribe__Ajax__Operations {
|
|
16 |
Â
return true;
|
17 |
Â
}
|
18 |
Â
|
19 |
-
public function exit_data( $data =
|
20 |
Â
exit( $data );
|
21 |
Â
}
|
22 |
Â
}
|
8 |
Â
*/
|
9 |
Â
class Tribe__Ajax__Operations {
|
10 |
Â
|
11 |
+
public function verify_or_exit( $nonce, $action, $exit_data = [] ) {
|
12 |
Â
if ( ! wp_verify_nonce( $nonce, $action ) ) {
|
13 |
Â
exit( $exit_data );
|
14 |
Â
}
|
16 |
Â
return true;
|
17 |
Â
}
|
18 |
Â
|
19 |
+
public function exit_data( $data = [] ) {
|
20 |
Â
exit( $data );
|
21 |
Â
}
|
22 |
Â
}
|
common/src/Tribe/App_Shop.php
CHANGED
@@ -33,8 +33,8 @@ if ( ! class_exists( 'Tribe__App_Shop' ) ) {
|
|
33 |
Â
* Class constructor
|
34 |
Â
*/
|
35 |
Â
public function __construct() {
|
36 |
-
add_action( 'admin_menu',
|
37 |
-
add_action( 'wp_before_admin_bar_render',
|
38 |
Â
|
39 |
Â
$this->register_assets();
|
40 |
Â
}
|
@@ -53,7 +53,17 @@ if ( ! class_exists( 'Tribe__App_Shop' ) ) {
|
|
53 |
Â
|
54 |
Â
$where = Tribe__Settings::instance()->get_parent_slug();
|
55 |
Â
|
56 |
-
$this->admin_page = add_submenu_page(
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
57 |
Â
}
|
58 |
Â
|
59 |
Â
/**
|
@@ -67,12 +77,12 @@ if ( ! class_exists( 'Tribe__App_Shop' ) ) {
|
|
67 |
Â
if ( current_user_can( $capability ) ) {
|
68 |
Â
global $wp_admin_bar;
|
69 |
Â
|
70 |
-
$wp_admin_bar->add_menu(
|
71 |
Â
'id' => 'tribe-events-app-shop',
|
72 |
Â
'title' => esc_html__( 'Event Add-Ons', 'tribe-common' ),
|
73 |
-
'href' => Tribe__Settings::instance()->get_url(
|
74 |
Â
'parent' => 'tribe-events-settings-group',
|
75 |
-
|
76 |
Â
}
|
77 |
Â
}
|
78 |
Â
|
@@ -82,14 +92,14 @@ if ( ! class_exists( 'Tribe__App_Shop' ) ) {
|
|
82 |
Â
protected function register_assets() {
|
83 |
Â
tribe_assets(
|
84 |
Â
Tribe__Main::instance(),
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
Â
'admin_enqueue_scripts',
|
90 |
-
|
91 |
-
'conditionals' =>
|
92 |
-
|
93 |
Â
);
|
94 |
Â
}
|
95 |
Â
|
33 |
Â
* Class constructor
|
34 |
Â
*/
|
35 |
Â
public function __construct() {
|
36 |
+
add_action( 'admin_menu', [ $this, 'add_menu_page' ], 100 );
|
37 |
+
add_action( 'wp_before_admin_bar_render', [ $this, 'add_toolbar_item' ], 20 );
|
38 |
Â
|
39 |
Â
$this->register_assets();
|
40 |
Â
}
|
53 |
Â
|
54 |
Â
$where = Tribe__Settings::instance()->get_parent_slug();
|
55 |
Â
|
56 |
+
$this->admin_page = add_submenu_page(
|
57 |
+
$where,
|
58 |
+
$page_title,
|
59 |
+
$menu_title,
|
60 |
+
$capability,
|
61 |
+
self::MENU_SLUG,
|
62 |
+
[
|
63 |
+
$this,
|
64 |
+
'do_menu_page',
|
65 |
+
]
|
66 |
+
);
|
67 |
Â
}
|
68 |
Â
|
69 |
Â
/**
|
77 |
Â
if ( current_user_can( $capability ) ) {
|
78 |
Â
global $wp_admin_bar;
|
79 |
Â
|
80 |
+
$wp_admin_bar->add_menu( [
|
81 |
Â
'id' => 'tribe-events-app-shop',
|
82 |
Â
'title' => esc_html__( 'Event Add-Ons', 'tribe-common' ),
|
83 |
+
'href' => Tribe__Settings::instance()->get_url( [ 'page' => self::MENU_SLUG ] ),
|
84 |
Â
'parent' => 'tribe-events-settings-group',
|
85 |
+
] );
|
86 |
Â
}
|
87 |
Â
}
|
88 |
Â
|
92 |
Â
protected function register_assets() {
|
93 |
Â
tribe_assets(
|
94 |
Â
Tribe__Main::instance(),
|
95 |
+
[
|
96 |
+
[ 'tribe-app-shop-css', 'app-shop.css' ],
|
97 |
+
[ 'tribe-app-shop-js', 'app-shop.js', [ 'jquery' ] ],
|
98 |
+
],
|
99 |
Â
'admin_enqueue_scripts',
|
100 |
+
[
|
101 |
+
'conditionals' => [ $this, 'is_current_page' ],
|
102 |
+
]
|
103 |
Â
);
|
104 |
Â
}
|
105 |
Â
|
common/src/Tribe/Asset/Data.php
CHANGED
@@ -1,67 +1,67 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Handles adding script data to the page in cases where localizing a
|
4 |
-
* specific script is not suitable.
|
5 |
-
*
|
6 |
-
* Should generally be accessed via tribe( 'tribe.asset.script-data' )
|
7 |
-
* rather than via direct instantiation.
|
8 |
-
*/
|
9 |
-
class Tribe__Asset__Data {
|
10 |
-
/**
|
11 |
-
* Container for any JS data objects that should be added to the page.
|
12 |
-
*
|
13 |
-
* @var array
|
14 |
-
*/
|
15 |
-
protected $objects =
|
16 |
-
|
17 |
-
/**
|
18 |
-
* Hooks up the method used to actually render the JSON data.
|
19 |
-
*/
|
20 |
-
public function hook() {
|
21 |
-
if ( is_admin() ) {
|
22 |
-
add_action( 'admin_footer',
|
23 |
-
add_action( 'customize_controls_print_footer_scripts',
|
24 |
-
} else {
|
25 |
-
add_action( 'wp_footer',
|
26 |
-
}
|
27 |
-
}
|
28 |
-
|
29 |
-
/**
|
30 |
-
* Adds the provided data to the list of objects that should be available
|
31 |
-
* to other scripts.
|
32 |
-
*
|
33 |
-
* @param string $object_name Object name.
|
34 |
-
* @param array $data Object data.
|
35 |
-
*/
|
36 |
-
public function add( $object_name, $data ) {
|
37 |
-
/**
|
38 |
-
* Allow plugins to filter data for a specific object.
|
39 |
-
*
|
40 |
-
* @since 4.8.4
|
41 |
-
*
|
42 |
-
* @param array $data Object data.
|
43 |
-
* @param string $object_name Object name.
|
44 |
-
*/
|
45 |
-
$data = apply_filters( "tribe_asset_data_add_object_{$object_name}", $data, $object_name );
|
46 |
-
|
47 |
-
$this->objects[ $object_name ] = $data;
|
48 |
-
}
|
49 |
-
|
50 |
-
/**
|
51 |
-
* Outputs the
|
52 |
-
* @internal
|
53 |
-
*/
|
54 |
-
public function render_json() {
|
55 |
-
if ( empty( $this->objects ) ) {
|
56 |
-
return;
|
57 |
-
}
|
58 |
-
|
59 |
-
echo '<script> /* <![CDATA[ */';
|
60 |
-
|
61 |
-
foreach ( $this->objects as $object_name => $data ) {
|
62 |
-
echo 'var ' . esc_html( $object_name ) . ' = ' . wp_json_encode( $data ) . ';';
|
63 |
-
}
|
64 |
-
|
65 |
-
echo '/* ]]> */ </script>';
|
66 |
-
}
|
67 |
-
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Handles adding script data to the page in cases where localizing a
|
4 |
+
* specific script is not suitable.
|
5 |
+
*
|
6 |
+
* Should generally be accessed via tribe( 'tribe.asset.script-data' )
|
7 |
+
* rather than via direct instantiation.
|
8 |
+
*/
|
9 |
+
class Tribe__Asset__Data {
|
10 |
+
/**
|
11 |
+
* Container for any JS data objects that should be added to the page.
|
12 |
+
*
|
13 |
+
* @var array
|
14 |
+
*/
|
15 |
+
protected $objects = [];
|
16 |
+
|
17 |
+
/**
|
18 |
+
* Hooks up the method used to actually render the JSON data.
|
19 |
+
*/
|
20 |
+
public function hook() {
|
21 |
+
if ( is_admin() ) {
|
22 |
+
add_action( 'admin_footer', [ $this, 'render_json' ] );
|
23 |
+
add_action( 'customize_controls_print_footer_scripts', [ $this, 'render_json' ] );
|
24 |
+
} else {
|
25 |
+
add_action( 'wp_footer', [ $this, 'render_json' ] );
|
26 |
+
}
|
27 |
+
}
|
28 |
+
|
29 |
+
/**
|
30 |
+
* Adds the provided data to the list of objects that should be available
|
31 |
+
* to other scripts.
|
32 |
+
*
|
33 |
+
* @param string $object_name Object name.
|
34 |
+
* @param array $data Object data.
|
35 |
+
*/
|
36 |
+
public function add( $object_name, $data ) {
|
37 |
+
/**
|
38 |
+
* Allow plugins to filter data for a specific object.
|
39 |
+
*
|
40 |
+
* @since 4.8.4
|
41 |
+
*
|
42 |
+
* @param array $data Object data.
|
43 |
+
* @param string $object_name Object name.
|
44 |
+
*/
|
45 |
+
$data = apply_filters( "tribe_asset_data_add_object_{$object_name}", $data, $object_name );
|
46 |
+
|
47 |
+
$this->objects[ $object_name ] = $data;
|
48 |
+
}
|
49 |
+
|
50 |
+
/**
|
51 |
+
* Outputs the
|
52 |
+
* @internal
|
53 |
+
*/
|
54 |
+
public function render_json() {
|
55 |
+
if ( empty( $this->objects ) ) {
|
56 |
+
return;
|
57 |
+
}
|
58 |
+
|
59 |
+
echo '<script> /* <![CDATA[ */';
|
60 |
+
|
61 |
+
foreach ( $this->objects as $object_name => $data ) {
|
62 |
+
echo 'var ' . esc_html( $object_name ) . ' = ' . wp_json_encode( $data ) . ';';
|
63 |
+
}
|
64 |
+
|
65 |
+
echo '/* ]]> */ </script>';
|
66 |
+
}
|
67 |
+
}
|
common/src/Tribe/Assets.php
CHANGED
@@ -539,8 +539,8 @@ class Tribe__Assets {
|
|
539 |
Â
}
|
540 |
Â
|
541 |
Â
if ( isset( $arguments['translations']['domain'], $arguments['translations']['path'] ) ) {
|
542 |
-
$asset->
|
543 |
-
$asset->
|
544 |
Â
}
|
545 |
Â
|
546 |
Â
/**
|
539 |
Â
}
|
540 |
Â
|
541 |
Â
if ( isset( $arguments['translations']['domain'], $arguments['translations']['path'] ) ) {
|
542 |
+
$asset->translations['domain'] = $arguments['translations']['domain'];
|
543 |
+
$asset->translations['path'] = $arguments['translations']['path'];
|
544 |
Â
}
|
545 |
Â
|
546 |
Â
/**
|
common/src/Tribe/Assets_Pipeline.php
CHANGED
@@ -12,7 +12,7 @@ class Tribe__Assets_Pipeline {
|
|
12 |
Â
* @since 4.7.7
|
13 |
Â
*/
|
14 |
Â
public function hook() {
|
15 |
-
add_filter( 'script_loader_tag',
|
16 |
Â
}
|
17 |
Â
|
18 |
Â
/**
|
12 |
Â
* @since 4.7.7
|
13 |
Â
*/
|
14 |
Â
public function hook() {
|
15 |
+
add_filter( 'script_loader_tag', [ $this, 'prevent_underscore_conflict' ], 10, 2 );
|
16 |
Â
}
|
17 |
Â
|
18 |
Â
/**
|
common/src/Tribe/Autoloader.php
CHANGED
@@ -77,12 +77,12 @@
|
|
77 |
Â
protected $dir_separator = '__';
|
78 |
Â
|
79 |
Â
/** @var string[] */
|
80 |
-
protected $fallback_dirs =
|
81 |
Â
|
82 |
Â
/**
|
83 |
Â
* @var array
|
84 |
Â
*/
|
85 |
-
protected $class_paths =
|
86 |
Â
|
87 |
Â
/**
|
88 |
Â
* Returns the singleton instance of the class.
|
@@ -130,7 +130,7 @@
|
|
130 |
Â
}
|
131 |
Â
|
132 |
Â
if ( ! isset( $this->prefixes[ $prefix ] ) ) {
|
133 |
-
$this->prefixes[ $prefix ] =
|
134 |
Â
}
|
135 |
Â
|
136 |
Â
$this->prefixes[ $prefix ][] = $root_dir;
|
@@ -148,7 +148,7 @@
|
|
148 |
Â
* autoload register.
|
149 |
Â
*/
|
150 |
Â
public function register_autoloader() {
|
151 |
-
spl_autoload_register(
|
152 |
Â
}
|
153 |
Â
|
154 |
Â
/**
|
77 |
Â
protected $dir_separator = '__';
|
78 |
Â
|
79 |
Â
/** @var string[] */
|
80 |
+
protected $fallback_dirs = [];
|
81 |
Â
|
82 |
Â
/**
|
83 |
Â
* @var array
|
84 |
Â
*/
|
85 |
+
protected $class_paths = [];
|
86 |
Â
|
87 |
Â
/**
|
88 |
Â
* Returns the singleton instance of the class.
|
130 |
Â
}
|
131 |
Â
|
132 |
Â
if ( ! isset( $this->prefixes[ $prefix ] ) ) {
|
133 |
+
$this->prefixes[ $prefix ] = [];
|
134 |
Â
}
|
135 |
Â
|
136 |
Â
$this->prefixes[ $prefix ][] = $root_dir;
|
148 |
Â
* autoload register.
|
149 |
Â
*/
|
150 |
Â
public function register_autoloader() {
|
151 |
+
spl_autoload_register( [ $this, 'autoload' ] );
|
152 |
Â
}
|
153 |
Â
|
154 |
Â
/**
|
common/src/Tribe/Cache.php
CHANGED
@@ -87,6 +87,10 @@ class Tribe__Cache implements ArrayAccess {
|
|
87 |
Â
* @return bool
|
88 |
Â
*/
|
89 |
Â
public function set_transient( $id, $value, $expiration = 0, $expiration_trigger = '' ) {
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
90 |
Â
return set_transient( $this->get_id( $id, $expiration_trigger ), $value, $expiration );
|
91 |
Â
}
|
92 |
Â
|
@@ -146,7 +150,17 @@ class Tribe__Cache implements ArrayAccess {
|
|
146 |
Â
* @return bool
|
147 |
Â
*/
|
148 |
Â
public function delete( $id, $expiration_trigger = '' ) {
|
149 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
150 |
Â
}
|
151 |
Â
|
152 |
Â
/**
|
@@ -496,4 +510,36 @@ class Tribe__Cache implements ArrayAccess {
|
|
496 |
Â
}
|
497 |
Â
} while ( ! empty( $post_objects ) && is_array( $post_objects ) && count( $post_objects ) < count( $post_ids ) );
|
498 |
Â
}
|
499 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
87 |
Â
* @return bool
|
88 |
Â
*/
|
89 |
Â
public function set_transient( $id, $value, $expiration = 0, $expiration_trigger = '' ) {
|
90 |
+
if ( $this->data_size_over_packet_size( $value ) ) {
|
91 |
+
return false;
|
92 |
+
}
|
93 |
+
|
94 |
Â
return set_transient( $this->get_id( $id, $expiration_trigger ), $value, $expiration );
|
95 |
Â
}
|
96 |
Â
|
150 |
Â
* @return bool
|
151 |
Â
*/
|
152 |
Â
public function delete( $id, $expiration_trigger = '' ) {
|
153 |
+
$flipped = array_flip( $this->non_persistent_keys );
|
154 |
+
$group = isset( $flipped[ $id ] ) ? 'tribe-events-non-persistent' : 'tribe-events';
|
155 |
+
|
156 |
+
// Delete from non-persistent keys list.
|
157 |
+
if ( 'tribe-events-non-persistent' === $group ) {
|
158 |
+
$index = $flipped[ $id ];
|
159 |
+
|
160 |
+
unset( $this->non_persistent_keys[ $index ] );
|
161 |
+
}
|
162 |
+
|
163 |
+
return wp_cache_delete( $this->get_id( $id, $expiration_trigger ), $group );
|
164 |
Â
}
|
165 |
Â
|
166 |
Â
/**
|
510 |
Â
}
|
511 |
Â
} while ( ! empty( $post_objects ) && is_array( $post_objects ) && count( $post_objects ) < count( $post_ids ) );
|
512 |
Â
}
|
513 |
+
|
514 |
+
/**
|
515 |
+
* If NOT using an external object caching system, then check if the size, in bytes, of the data
|
516 |
+
* to write to the database would fit into the `max_allowed_packet` setting or not.
|
517 |
+
*
|
518 |
+
* @since TBD
|
519 |
+
*
|
520 |
+
* @param string|array|object $value The value to check.
|
521 |
+
*
|
522 |
+
* @return bool Whether the data, in its serialized form, would fit into the current database `max_allowed_packet`
|
523 |
+
* setting or not.
|
524 |
+
*/
|
525 |
+
public function data_size_over_packet_size( $value ) {
|
526 |
+
if ( wp_using_ext_object_cache() ) {
|
527 |
+
// We cannot know and that is a concern of the external caching system.
|
528 |
+
return false;
|
529 |
+
}
|
530 |
+
|
531 |
+
try {
|
532 |
+
$serialized_value = maybe_serialize( $value );
|
533 |
+
$size = strlen( $serialized_value );
|
534 |
+
} catch ( Exception $e ) {
|
535 |
+
// The underlying function would run into the same issue, bail and do not set the transient.
|
536 |
+
return true;
|
537 |
+
}
|
538 |
+
|
539 |
+
/** @var Tribe__Feature_Detection $feature_detection */
|
540 |
+
$feature_detection = tribe( 'feature-detection' );
|
541 |
+
|
542 |
+
// If the size of the string is above 90% of the database `max_allowed_packet` setting, then it should not be written to the db.
|
543 |
+
return $size > ( $feature_detection->get_mysql_max_packet_size() * .9 );
|
544 |
+
}
|
545 |
+
}
|
common/src/Tribe/Changelog_Reader.php
CHANGED
@@ -17,7 +17,7 @@ class Tribe__Changelog_Reader {
|
|
17 |
Â
$contents = $this->extract_changelog_section();
|
18 |
Â
$lines = explode( "\n", $contents );
|
19 |
Â
|
20 |
-
$sections
|
21 |
Â
$current_section = '';
|
22 |
Â
foreach ( $lines as $line ) {
|
23 |
Â
$line = trim( $line );
|
@@ -27,7 +27,7 @@ class Tribe__Changelog_Reader {
|
|
27 |
Â
}
|
28 |
Â
$header = trim( $line, '= ' );
|
29 |
Â
$current_section = esc_html( $header );
|
30 |
-
$sections[ $current_section ] =
|
31 |
Â
} elseif ( strlen( $line ) > 0 ) {
|
32 |
Â
$message = trim( $line, '* ' );
|
33 |
Â
$sections[ $current_section ][] = esc_html( $message );
|
17 |
Â
$contents = $this->extract_changelog_section();
|
18 |
Â
$lines = explode( "\n", $contents );
|
19 |
Â
|
20 |
+
$sections = [];
|
21 |
Â
$current_section = '';
|
22 |
Â
foreach ( $lines as $line ) {
|
23 |
Â
$line = trim( $line );
|
27 |
Â
}
|
28 |
Â
$header = trim( $line, '= ' );
|
29 |
Â
$current_section = esc_html( $header );
|
30 |
+
$sections[ $current_section ] = [];
|
31 |
Â
} elseif ( strlen( $line ) > 0 ) {
|
32 |
Â
$message = trim( $line, '* ' );
|
33 |
Â
$sections[ $current_section ][] = esc_html( $message );
|
common/src/Tribe/Context.php
CHANGED
@@ -190,13 +190,13 @@ class Tribe__Context {
|
|
190 |
Â
*
|
191 |
Â
* @var array
|
192 |
Â
*/
|
193 |
-
protected static $associative_locations =
|
194 |
Â
self::TRANSIENT,
|
195 |
Â
self::METHOD,
|
196 |
Â
self::STATIC_METHOD,
|
197 |
Â
self::PROP,
|
198 |
Â
self::STATIC_PROP,
|
199 |
-
|
200 |
Â
|
201 |
Â
/**
|
202 |
Â
* Whether the static dynamic locations were set or not.
|
@@ -213,7 +213,7 @@ class Tribe__Context {
|
|
213 |
Â
*
|
214 |
Â
* @var array
|
215 |
Â
*/
|
216 |
-
protected $override_locations =
|
217 |
Â
|
218 |
Â
/**
|
219 |
Â
* Whether the context of the current HTTP request is an AJAX one or not.
|
@@ -234,7 +234,8 @@ class Tribe__Context {
|
|
234 |
Â
*
|
235 |
Â
* @var array
|
236 |
Â
*/
|
237 |
-
protected $request_cache =
|
Â
|
|
238 |
Â
/**
|
239 |
Â
* Whether this context should use the default locations or not.
|
240 |
Â
* This flag property is set to `false` when a context is obtained using
|
@@ -281,7 +282,7 @@ class Tribe__Context {
|
|
281 |
Â
}
|
282 |
Â
|
283 |
Â
if ( ! empty( $post_or_type ) ) {
|
284 |
-
$lookup =
|
285 |
Â
|
286 |
Â
$current_post = Tribe__Utils__Array::get_in_any( $lookup, 'post', get_post() );
|
287 |
Â
|
@@ -292,7 +293,7 @@ class Tribe__Context {
|
|
292 |
Â
return ! empty( $post ) && $post == $current_post;
|
293 |
Â
}
|
294 |
Â
|
295 |
-
$post_types = is_array( $post_or_type ) ? $post_or_type :
|
296 |
Â
|
297 |
Â
$post = $is_post ? get_post( $current_post ) : null;
|
298 |
Â
|
@@ -306,7 +307,7 @@ class Tribe__Context {
|
|
306 |
Â
$post_type = Tribe__Utils__Array::get_in_any( $lookup, 'post_type', 'post' );
|
307 |
Â
}
|
308 |
Â
|
309 |
-
return (bool) count( array_intersect( $post_types,
|
310 |
Â
}
|
311 |
Â
|
312 |
Â
return $is_new || $is_post;
|
@@ -446,7 +447,7 @@ class Tribe__Context {
|
|
446 |
Â
if ( null !== $key ) {
|
447 |
Â
unset( $this->request_cache[ $key ] );
|
448 |
Â
} else {
|
449 |
-
$this->request_cache =
|
450 |
Â
}
|
451 |
Â
}
|
452 |
Â
|
@@ -753,7 +754,7 @@ class Tribe__Context {
|
|
753 |
Â
|
754 |
Â
foreach ( $classes_and_methods as $class => $method ) {
|
755 |
Â
$the_value = class_exists( $class ) && method_exists( $class, $method )
|
756 |
-
? call_user_func(
|
757 |
Â
: self::NOT_FOUND;
|
758 |
Â
|
759 |
Â
if ( $the_value !== self::NOT_FOUND ) {
|
@@ -867,16 +868,16 @@ class Tribe__Context {
|
|
867 |
Â
foreach ( $targets as $arg_1 => $arg_2 ) {
|
868 |
Â
if ( self::FUNC === $location && is_array( $arg_2 ) && is_callable( $arg_2 ) ) {
|
869 |
Â
// Handles write functions specified as an array.
|
870 |
-
$location_args =
|
871 |
Â
} else {
|
872 |
Â
$location_args = in_array( $location, self::$associative_locations, true )
|
873 |
-
?
|
874 |
Â
: (array) $arg_2;
|
875 |
Â
}
|
876 |
Â
|
877 |
-
$args = array_merge( $location_args,
|
878 |
Â
|
879 |
-
call_user_func_array(
|
880 |
Â
}
|
881 |
Â
}
|
882 |
Â
}
|
@@ -1055,7 +1056,7 @@ class Tribe__Context {
|
|
1055 |
Â
if ( ! class_exists( $class ) ) {
|
1056 |
Â
return;
|
1057 |
Â
}
|
1058 |
-
call_user_func(
|
1059 |
Â
}
|
1060 |
Â
|
1061 |
Â
/**
|
@@ -1071,7 +1072,7 @@ class Tribe__Context {
|
|
1071 |
Â
if ( ! tribe()->offsetExists( $binding ) ) {
|
1072 |
Â
return;
|
1073 |
Â
}
|
1074 |
-
call_user_func(
|
1075 |
Â
}
|
1076 |
Â
|
1077 |
Â
/**
|
@@ -1142,7 +1143,7 @@ class Tribe__Context {
|
|
1142 |
Â
*/
|
1143 |
Â
public function to_array( ) {
|
1144 |
Â
$locations = array_keys( array_merge( $this->get_locations(), $this->request_cache ) );
|
1145 |
-
$dump =
|
1146 |
Â
|
1147 |
Â
foreach ( $locations as $location ) {
|
1148 |
Â
$the_value = $this->get( $location, self::NOT_FOUND );
|
@@ -1232,7 +1233,7 @@ class Tribe__Context {
|
|
1232 |
Â
public function get_orm_args( array $fields = null, $whitelist = true ) {
|
1233 |
Â
$locations = $this->get_locations();
|
1234 |
Â
$dump = $this->to_array();
|
1235 |
-
$orm_args =
|
1236 |
Â
$is_global_context = tribe_context() === $this;
|
1237 |
Â
|
1238 |
Â
foreach ( $dump as $key => $value ) {
|
190 |
Â
*
|
191 |
Â
* @var array
|
192 |
Â
*/
|
193 |
+
protected static $associative_locations = [
|
194 |
Â
self::TRANSIENT,
|
195 |
Â
self::METHOD,
|
196 |
Â
self::STATIC_METHOD,
|
197 |
Â
self::PROP,
|
198 |
Â
self::STATIC_PROP,
|
199 |
+
];
|
200 |
Â
|
201 |
Â
/**
|
202 |
Â
* Whether the static dynamic locations were set or not.
|
213 |
Â
*
|
214 |
Â
* @var array
|
215 |
Â
*/
|
216 |
+
protected $override_locations = [];
|
217 |
Â
|
218 |
Â
/**
|
219 |
Â
* Whether the context of the current HTTP request is an AJAX one or not.
|
234 |
Â
*
|
235 |
Â
* @var array
|
236 |
Â
*/
|
237 |
+
protected $request_cache = [];
|
238 |
+
|
239 |
Â
/**
|
240 |
Â
* Whether this context should use the default locations or not.
|
241 |
Â
* This flag property is set to `false` when a context is obtained using
|
282 |
Â
}
|
283 |
Â
|
284 |
Â
if ( ! empty( $post_or_type ) ) {
|
285 |
+
$lookup = [ $_GET, $_POST, $_REQUEST ];
|
286 |
Â
|
287 |
Â
$current_post = Tribe__Utils__Array::get_in_any( $lookup, 'post', get_post() );
|
288 |
Â
|
293 |
Â
return ! empty( $post ) && $post == $current_post;
|
294 |
Â
}
|
295 |
Â
|
296 |
+
$post_types = is_array( $post_or_type ) ? $post_or_type : [ $post_or_type ];
|
297 |
Â
|
298 |
Â
$post = $is_post ? get_post( $current_post ) : null;
|
299 |
Â
|
307 |
Â
$post_type = Tribe__Utils__Array::get_in_any( $lookup, 'post_type', 'post' );
|
308 |
Â
}
|
309 |
Â
|
310 |
+
return (bool) count( array_intersect( $post_types, [ $post_type ] ) );
|
311 |
Â
}
|
312 |
Â
|
313 |
Â
return $is_new || $is_post;
|
447 |
Â
if ( null !== $key ) {
|
448 |
Â
unset( $this->request_cache[ $key ] );
|
449 |
Â
} else {
|
450 |
+
$this->request_cache = [];
|
451 |
Â
}
|
452 |
Â
}
|
453 |
Â
|
754 |
Â
|
755 |
Â
foreach ( $classes_and_methods as $class => $method ) {
|
756 |
Â
$the_value = class_exists( $class ) && method_exists( $class, $method )
|
757 |
+
? call_user_func( [ $class, $method ] )
|
758 |
Â
: self::NOT_FOUND;
|
759 |
Â
|
760 |
Â
if ( $the_value !== self::NOT_FOUND ) {
|
868 |
Â
foreach ( $targets as $arg_1 => $arg_2 ) {
|
869 |
Â
if ( self::FUNC === $location && is_array( $arg_2 ) && is_callable( $arg_2 ) ) {
|
870 |
Â
// Handles write functions specified as an array.
|
871 |
+
$location_args = [ $arg_2 ];
|
872 |
Â
} else {
|
873 |
Â
$location_args = in_array( $location, self::$associative_locations, true )
|
874 |
+
? [ $arg_1, $arg_2 ]
|
875 |
Â
: (array) $arg_2;
|
876 |
Â
}
|
877 |
Â
|
878 |
+
$args = array_merge( $location_args, [ $value ] );
|
879 |
Â
|
880 |
+
call_user_func_array( [ $this, $write_func ], $args );
|
881 |
Â
}
|
882 |
Â
}
|
883 |
Â
}
|
1056 |
Â
if ( ! class_exists( $class ) ) {
|
1057 |
Â
return;
|
1058 |
Â
}
|
1059 |
+
call_user_func( [ $class, $method ], $value );
|
1060 |
Â
}
|
1061 |
Â
|
1062 |
Â
/**
|
1072 |
Â
if ( ! tribe()->offsetExists( $binding ) ) {
|
1073 |
Â
return;
|
1074 |
Â
}
|
1075 |
+
call_user_func( [ tribe( $binding ), $method ], $value );
|
1076 |
Â
}
|
1077 |
Â
|
1078 |
Â
/**
|
1143 |
Â
*/
|
1144 |
Â
public function to_array( ) {
|
1145 |
Â
$locations = array_keys( array_merge( $this->get_locations(), $this->request_cache ) );
|
1146 |
+
$dump = [];
|
1147 |
Â
|
1148 |
Â
foreach ( $locations as $location ) {
|
1149 |
Â
$the_value = $this->get( $location, self::NOT_FOUND );
|
1233 |
Â
public function get_orm_args( array $fields = null, $whitelist = true ) {
|
1234 |
Â
$locations = $this->get_locations();
|
1235 |
Â
$dump = $this->to_array();
|
1236 |
+
$orm_args = [];
|
1237 |
Â
$is_global_context = tribe_context() === $this;
|
1238 |
Â
|
1239 |
Â
foreach ( $dump as $key => $value ) {
|
common/src/Tribe/Cost_Utils.php
CHANGED
@@ -86,7 +86,7 @@ class Tribe__Cost_Utils {
|
|
86 |
Â
* @return array
|
87 |
Â
*/
|
88 |
Â
public function get_separators() {
|
89 |
-
$separators =
|
90 |
Â
|
91 |
Â
/**
|
92 |
Â
* Filters the cost string possible separators, those must be only 1 char.
|
@@ -161,29 +161,33 @@ class Tribe__Cost_Utils {
|
|
161 |
Â
*
|
162 |
Â
* @return string|array The merged cost range.
|
163 |
Â
*/
|
164 |
-
public function merge_cost_ranges( $original_string_cost, $merging_cost, $with_currency_symbol, $sorted_mins =
|
165 |
Â
if ( empty( $merging_cost ) || $original_string_cost === $merging_cost ) {
|
166 |
Â
return $original_string_cost;
|
167 |
Â
}
|
168 |
Â
|
169 |
Â
$_merging_cost = array_map(
|
170 |
-
|
171 |
Â
);
|
172 |
-
$_merging_cost = array_map(
|
173 |
Â
$numeric_merging_cost_costs = array_filter( $_merging_cost, 'is_numeric' );
|
174 |
Â
|
175 |
-
$matches =
|
176 |
Â
preg_match_all(
|
177 |
Â
'!\d+(?:([' . preg_quote( $this->_supported_decimal_separators ) . '])\d+)?!', $original_string_cost,
|
178 |
Â
$matches
|
179 |
Â
);
|
180 |
Â
$this->_current_original_cost_separator = empty( $matches[1][0] ) ? '.' : $matches[1][0];
|
181 |
-
$matches[0] = empty( $matches[0] )
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
187 |
Â
$numeric_orignal_costs = empty( $matches[0] ) ? $matches[0] : array_map(
|
188 |
Â
'floatval', $matches[0]
|
189 |
Â
);
|
@@ -215,10 +219,10 @@ class Tribe__Cost_Utils {
|
|
215 |
Â
$cost_max = empty( $all_numeric_costs ) ? '' : max( $all_numeric_costs );
|
216 |
Â
}
|
217 |
Â
|
218 |
-
$cost = array_filter(
|
219 |
Â
|
220 |
Â
if ( $with_currency_symbol ) {
|
221 |
-
$formatted_cost =
|
222 |
Â
foreach ( $cost as $c ) {
|
223 |
Â
$formatted_cost[] = is_numeric( $c ) ? tribe_format_currency( $c ) : $c;
|
224 |
Â
}
|
@@ -226,7 +230,8 @@ class Tribe__Cost_Utils {
|
|
226 |
Â
}
|
227 |
Â
|
228 |
Â
return empty( $cost ) ? $original_string_cost : array_map(
|
229 |
-
|
Â
|
|
230 |
Â
);
|
231 |
Â
}
|
232 |
Â
|
@@ -304,7 +309,7 @@ class Tribe__Cost_Utils {
|
|
304 |
Â
*/
|
305 |
Â
public function parse_cost_range( $costs, $max_decimals = null, $sort = true ) {
|
306 |
Â
if ( ! is_array( $costs ) && ! is_string( $costs ) ) {
|
307 |
-
return
|
308 |
Â
}
|
309 |
Â
|
310 |
Â
// make sure costs is an array
|
@@ -312,7 +317,7 @@ class Tribe__Cost_Utils {
|
|
312 |
Â
|
313 |
Â
// If there aren't any costs, return a blank array
|
314 |
Â
if ( 0 === count( $costs ) ) {
|
315 |
-
return
|
316 |
Â
}
|
317 |
Â
|
318 |
Â
// Build the regular expression
|
@@ -324,7 +329,7 @@ class Tribe__Cost_Utils {
|
|
324 |
Â
if ( preg_match_all( '/' . $price_regex . '/', $cost, $matches ) ) {
|
325 |
Â
$cost = reset( $matches );
|
326 |
Â
} else {
|
327 |
-
$cost =
|
328 |
Â
continue;
|
329 |
Â
}
|
330 |
Â
|
@@ -340,7 +345,7 @@ class Tribe__Cost_Utils {
|
|
340 |
Â
$max = max( $max_decimals, $max );
|
341 |
Â
}
|
342 |
Â
|
343 |
-
$output_costs =
|
344 |
Â
$costs = call_user_func_array( 'array_merge', $costs );
|
345 |
Â
|
346 |
Â
foreach ( $costs as $cost ) {
|
@@ -348,7 +353,7 @@ class Tribe__Cost_Utils {
|
|
348 |
Â
|
349 |
Â
if ( is_numeric( $numeric_cost ) ) {
|
350 |
Â
// Creates a Well Balanced Index that will perform good on a Key Sorting method
|
351 |
-
$index = str_replace(
|
352 |
Â
} else {
|
353 |
Â
// Makes sure that we have "index-safe" string
|
354 |
Â
$index = sanitize_title( $numeric_cost );
|
@@ -410,7 +415,7 @@ class Tribe__Cost_Utils {
|
|
410 |
Â
* @return int|float
|
411 |
Â
*/
|
412 |
Â
protected function numerize_numbers( $value ) {
|
413 |
-
$matches =
|
414 |
Â
|
415 |
Â
$pattern = '/(\\d{1,}([' . $this->_supported_decimal_separators . ']\\d{1,}))/';
|
416 |
Â
|
@@ -436,7 +441,7 @@ class Tribe__Cost_Utils {
|
|
436 |
Â
return false;
|
437 |
Â
}
|
438 |
Â
|
439 |
-
$currency_symbols =
|
440 |
Â
$i = 0;
|
441 |
Â
foreach ( $costs as $string => $value ) {
|
442 |
Â
if ( is_numeric( $string ) ) {
|
@@ -471,7 +476,7 @@ class Tribe__Cost_Utils {
|
|
471 |
Â
return false;
|
472 |
Â
}
|
473 |
Â
|
474 |
-
$currency_positions =
|
475 |
Â
foreach ( $original_costs as $original_cost ) {
|
476 |
Â
$currency_symbol_position = strpos( trim( $original_cost ), $currency_symbol );
|
477 |
Â
if ( false === $currency_symbol_position ) {
|
86 |
Â
* @return array
|
87 |
Â
*/
|
88 |
Â
public function get_separators() {
|
89 |
+
$separators = [ ',', '.' ];
|
90 |
Â
|
91 |
Â
/**
|
92 |
Â
* Filters the cost string possible separators, those must be only 1 char.
|
161 |
Â
*
|
162 |
Â
* @return string|array The merged cost range.
|
163 |
Â
*/
|
164 |
+
public function merge_cost_ranges( $original_string_cost, $merging_cost, $with_currency_symbol, $sorted_mins = [], $sorted_maxs = [] ) {
|
165 |
Â
if ( empty( $merging_cost ) || $original_string_cost === $merging_cost ) {
|
166 |
Â
return $original_string_cost;
|
167 |
Â
}
|
168 |
Â
|
169 |
Â
$_merging_cost = array_map(
|
170 |
+
[ $this, 'convert_decimal_separator' ], (array) $merging_cost
|
171 |
Â
);
|
172 |
+
$_merging_cost = array_map( [ $this, 'numerize_numbers' ], $_merging_cost );
|
173 |
Â
$numeric_merging_cost_costs = array_filter( $_merging_cost, 'is_numeric' );
|
174 |
Â
|
175 |
+
$matches = [];
|
176 |
Â
preg_match_all(
|
177 |
Â
'!\d+(?:([' . preg_quote( $this->_supported_decimal_separators ) . '])\d+)?!', $original_string_cost,
|
178 |
Â
$matches
|
179 |
Â
);
|
180 |
Â
$this->_current_original_cost_separator = empty( $matches[1][0] ) ? '.' : $matches[1][0];
|
181 |
+
$matches[0] = empty( $matches[0] )
|
182 |
+
? $matches[0]
|
183 |
+
: array_map(
|
184 |
+
[
|
185 |
+
$this,
|
186 |
+
'convert_decimal_separator',
|
187 |
+
],
|
188 |
+
$matches[0]
|
189 |
+
);
|
190 |
+
|
191 |
Â
$numeric_orignal_costs = empty( $matches[0] ) ? $matches[0] : array_map(
|
192 |
Â
'floatval', $matches[0]
|
193 |
Â
);
|
219 |
Â
$cost_max = empty( $all_numeric_costs ) ? '' : max( $all_numeric_costs );
|
220 |
Â
}
|
221 |
Â
|
222 |
+
$cost = array_filter( [ $cost_min, $cost_max ] );
|
223 |
Â
|
224 |
Â
if ( $with_currency_symbol ) {
|
225 |
+
$formatted_cost = [];
|
226 |
Â
foreach ( $cost as $c ) {
|
227 |
Â
$formatted_cost[] = is_numeric( $c ) ? tribe_format_currency( $c ) : $c;
|
228 |
Â
}
|
230 |
Â
}
|
231 |
Â
|
232 |
Â
return empty( $cost ) ? $original_string_cost : array_map(
|
233 |
+
[ $this, 'restore_original_decimal_separator' ],
|
234 |
+
$cost
|
235 |
Â
);
|
236 |
Â
}
|
237 |
Â
|
309 |
Â
*/
|
310 |
Â
public function parse_cost_range( $costs, $max_decimals = null, $sort = true ) {
|
311 |
Â
if ( ! is_array( $costs ) && ! is_string( $costs ) ) {
|
312 |
+
return [];
|
313 |
Â
}
|
314 |
Â
|
315 |
Â
// make sure costs is an array
|
317 |
Â
|
318 |
Â
// If there aren't any costs, return a blank array
|
319 |
Â
if ( 0 === count( $costs ) ) {
|
320 |
+
return [];
|
321 |
Â
}
|
322 |
Â
|
323 |
Â
// Build the regular expression
|
329 |
Â
if ( preg_match_all( '/' . $price_regex . '/', $cost, $matches ) ) {
|
330 |
Â
$cost = reset( $matches );
|
331 |
Â
} else {
|
332 |
+
$cost = [ $cost ];
|
333 |
Â
continue;
|
334 |
Â
}
|
335 |
Â
|
345 |
Â
$max = max( $max_decimals, $max );
|
346 |
Â
}
|
347 |
Â
|
348 |
+
$output_costs = [];
|
349 |
Â
$costs = call_user_func_array( 'array_merge', $costs );
|
350 |
Â
|
351 |
Â
foreach ( $costs as $cost ) {
|
353 |
Â
|
354 |
Â
if ( is_numeric( $numeric_cost ) ) {
|
355 |
Â
// Creates a Well Balanced Index that will perform good on a Key Sorting method
|
356 |
+
$index = str_replace( [ '.', ',' ], '', number_format( $numeric_cost, $max ) );
|
357 |
Â
} else {
|
358 |
Â
// Makes sure that we have "index-safe" string
|
359 |
Â
$index = sanitize_title( $numeric_cost );
|
415 |
Â
* @return int|float
|
416 |
Â
*/
|
417 |
Â
protected function numerize_numbers( $value ) {
|
418 |
+
$matches = [];
|
419 |
Â
|
420 |
Â
$pattern = '/(\\d{1,}([' . $this->_supported_decimal_separators . ']\\d{1,}))/';
|
421 |
Â
|
441 |
Â
return false;
|
442 |
Â
}
|
443 |
Â
|
444 |
+
$currency_symbols = [];
|
445 |
Â
$i = 0;
|
446 |
Â
foreach ( $costs as $string => $value ) {
|
447 |
Â
if ( is_numeric( $string ) ) {
|
476 |
Â
return false;
|
477 |
Â
}
|
478 |
Â
|
479 |
+
$currency_positions = [];
|
480 |
Â
foreach ( $original_costs as $original_cost ) {
|
481 |
Â
$currency_symbol_position = strpos( trim( $original_cost ), $currency_symbol );
|
482 |
Â
if ( false === $currency_symbol_position ) {
|
common/src/Tribe/Credits.php
CHANGED
@@ -13,8 +13,8 @@ class Tribe__Credits {
|
|
13 |
Â
* Hook the functionality of this class into the world
|
14 |
Â
*/
|
15 |
Â
public function hook() {
|
16 |
-
add_filter( 'tribe_events_after_html',
|
17 |
-
add_filter( 'admin_footer_text',
|
18 |
Â
}
|
19 |
Â
|
20 |
Â
/**
|
@@ -43,7 +43,7 @@ class Tribe__Credits {
|
|
43 |
Â
public function rating_nudge( $footer_text ) {
|
44 |
Â
$admin_helpers = Tribe__Admin__Helpers::instance();
|
45 |
Â
|
46 |
-
add_filter( 'tribe_tickets_post_types',
|
47 |
Â
|
48 |
Â
// only display custom text on Tribe Admin Pages
|
49 |
Â
if ( $admin_helpers->is_screen() || $admin_helpers->is_post_type_screen() ) {
|
@@ -69,7 +69,7 @@ class Tribe__Credits {
|
|
69 |
Â
}
|
70 |
Â
}
|
71 |
Â
|
72 |
-
remove_filter( 'tribe_tickets_post_types',
|
73 |
Â
|
74 |
Â
return $footer_text;
|
75 |
Â
}
|
@@ -80,7 +80,7 @@ class Tribe__Credits {
|
|
80 |
Â
* This will limit the request for ratings to only those post type pages
|
81 |
Â
*/
|
82 |
Â
public function tmp_return_tribe_events( $unused_post_types ) {
|
83 |
-
return
|
84 |
Â
}
|
85 |
Â
|
86 |
Â
/**
|
13 |
Â
* Hook the functionality of this class into the world
|
14 |
Â
*/
|
15 |
Â
public function hook() {
|
16 |
+
add_filter( 'tribe_events_after_html', [ $this, 'html_comment_credit' ] );
|
17 |
+
add_filter( 'admin_footer_text', [ $this, 'rating_nudge' ], 1, 2 );
|
18 |
Â
}
|
19 |
Â
|
20 |
Â
/**
|
43 |
Â
public function rating_nudge( $footer_text ) {
|
44 |
Â
$admin_helpers = Tribe__Admin__Helpers::instance();
|
45 |
Â
|
46 |
+
add_filter( 'tribe_tickets_post_types', [ $this, 'tmp_return_tribe_events' ], 99 );
|
47 |
Â
|
48 |
Â
// only display custom text on Tribe Admin Pages
|
49 |
Â
if ( $admin_helpers->is_screen() || $admin_helpers->is_post_type_screen() ) {
|
69 |
Â
}
|
70 |
Â
}
|
71 |
Â
|
72 |
+
remove_filter( 'tribe_tickets_post_types', [ $this, 'tmp_return_tribe_events' ], 99 );
|
73 |
Â
|
74 |
Â
return $footer_text;
|
75 |
Â
}
|
80 |
Â
* This will limit the request for ratings to only those post type pages
|
81 |
Â
*/
|
82 |
Â
public function tmp_return_tribe_events( $unused_post_types ) {
|
83 |
+
return [ 'tribe_events' ];
|
84 |
Â
}
|
85 |
Â
|
86 |
Â
/**
|
common/src/Tribe/Customizer.php
CHANGED
@@ -64,7 +64,7 @@ final class Tribe__Customizer {
|
|
64 |
Â
* @access private
|
65 |
Â
* @var array
|
66 |
Â
*/
|
67 |
-
private $sections_class =
|
68 |
Â
|
69 |
Â
/**
|
70 |
Â
* Array of Sections Classes, for non-panel pages
|
@@ -73,7 +73,7 @@ final class Tribe__Customizer {
|
|
73 |
Â
* @access private
|
74 |
Â
* @var array
|
75 |
Â
*/
|
76 |
-
private $settings =
|
77 |
Â
|
78 |
Â
/**
|
79 |
Â
* Inline Style has been added
|
@@ -110,16 +110,17 @@ final class Tribe__Customizer {
|
|
110 |
Â
$this->ID = apply_filters( 'tribe_customizer_panel_id', 'tribe_customizer', $this );
|
111 |
Â
|
112 |
Â
// Hook the Registering methods
|
113 |
-
add_action( 'customize_register',
|
114 |
Â
|
115 |
-
add_action( 'wp_print_footer_scripts',
|
116 |
Â
|
117 |
Â
// front end styles from customizer
|
118 |
-
add_action( 'wp_enqueue_scripts',
|
119 |
-
add_action( 'tribe_events_pro_widget_render',
|
120 |
-
add_action( 'wp_print_footer_scripts',
|
Â
|
|
121 |
Â
|
122 |
-
add_filter( "default_option_{$this->ID}",
|
123 |
Â
}
|
124 |
Â
|
125 |
Â
/**
|
@@ -137,7 +138,7 @@ final class Tribe__Customizer {
|
|
137 |
Â
return $sections;
|
138 |
Â
}
|
139 |
Â
|
140 |
-
return get_option( 'tribe_events_pro_customizer',
|
141 |
Â
}
|
142 |
Â
|
143 |
Â
/**
|
@@ -230,7 +231,7 @@ final class Tribe__Customizer {
|
|
230 |
Â
*
|
231 |
Â
* @return mixed Return the variable based on the index
|
232 |
Â
*/
|
233 |
-
public static function search_var( $variable = null, $indexes =
|
234 |
Â
if ( is_object( $variable ) ) {
|
235 |
Â
$variable = (array) $variable;
|
236 |
Â
}
|
@@ -270,7 +271,7 @@ final class Tribe__Customizer {
|
|
270 |
Â
*
|
271 |
Â
* @param array $defaults
|
272 |
Â
*/
|
273 |
-
$defaults[ $section->ID ] = apply_filters( "tribe_events_pro_customizer_section_{$section->ID}_defaults",
|
274 |
Â
|
275 |
Â
/**
|
276 |
Â
* Allow filtering the defaults for each settings to be filtered before the Ghost options to be set
|
@@ -279,7 +280,7 @@ final class Tribe__Customizer {
|
|
279 |
Â
*
|
280 |
Â
* @param array $defaults
|
281 |
Â
*/
|
282 |
-
$settings
|
283 |
Â
$defaults[ $section->ID ] = apply_filters( "tribe_customizer_section_{$section->ID}_defaults", $settings );
|
284 |
Â
$sections[ $section->ID ] = wp_parse_args( $settings, $defaults[ $section->ID ] );
|
285 |
Â
}
|
@@ -336,7 +337,7 @@ final class Tribe__Customizer {
|
|
336 |
Â
public function has_option() {
|
337 |
Â
$search = func_get_args();
|
338 |
Â
$option = self::get_option();
|
339 |
-
$real_option = get_option( $this->ID,
|
340 |
Â
|
341 |
Â
// Get section and Settign based on keys
|
342 |
Â
$section = reset( $search );
|
@@ -374,7 +375,7 @@ final class Tribe__Customizer {
|
|
374 |
Â
/**
|
375 |
Â
* Print the CSS for the customizer for shortcodes.
|
376 |
Â
*
|
377 |
-
* @
|
378 |
Â
*/
|
379 |
Â
public function shortcode_inline_style() {
|
380 |
Â
/**
|
@@ -393,6 +394,28 @@ final class Tribe__Customizer {
|
|
393 |
Â
$this->inline_style();
|
394 |
Â
}
|
395 |
Â
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
396 |
Â
/**
|
397 |
Â
* Print the CSS for the customizer using wp_add_inline_style
|
398 |
Â
*
|
@@ -420,7 +443,9 @@ final class Tribe__Customizer {
|
|
420 |
Â
return false;
|
421 |
Â
}
|
422 |
Â
|
423 |
-
$sheets = [
|
Â
|
|
Â
|
|
424 |
Â
|
425 |
Â
/**
|
426 |
Â
* Allow plugins to add themselves to this list.
|
@@ -457,15 +482,15 @@ final class Tribe__Customizer {
|
|
457 |
Â
$css = $template;
|
458 |
Â
$sections = $this->get_option();
|
459 |
Â
|
460 |
-
$search =
|
461 |
-
$replace =
|
462 |
Â
|
463 |
Â
foreach ( $sections as $section => $settings ) {
|
464 |
Â
if ( ! is_array( $settings ) ) {
|
465 |
Â
continue;
|
466 |
Â
}
|
467 |
Â
foreach ( $settings as $setting => $value ) {
|
468 |
-
$index =
|
469 |
Â
|
470 |
Â
// Add search based on Underscore template
|
471 |
Â
$search[] = '<%= ' . implode( '.', $index ) . ' %>';
|
@@ -554,13 +579,13 @@ final class Tribe__Customizer {
|
|
554 |
Â
return $panel;
|
555 |
Â
}
|
556 |
Â
|
557 |
-
$panel_args =
|
558 |
-
'title'
|
559 |
Â
'description' => esc_html__( 'Use the following panel of your customizer to change the styling of your Calendar and Event pages.', 'tribe-common' ),
|
560 |
Â
|
561 |
Â
// After `static_front_page`
|
562 |
-
'priority'
|
563 |
-
|
564 |
Â
|
565 |
Â
/**
|
566 |
Â
* Filter the Panel Arguments for WP Customize
|
@@ -714,10 +739,10 @@ final class Tribe__Customizer {
|
|
714 |
Â
// Add the Partial
|
715 |
Â
$this->manager->selective_refresh->add_partial(
|
716 |
Â
$name,
|
717 |
-
|
718 |
Â
'selector' => '#' . esc_attr( $this->ID . '_css' ),
|
719 |
-
'render_callback' =>
|
720 |
-
|
721 |
Â
);
|
722 |
Â
}
|
723 |
Â
}
|
64 |
Â
* @access private
|
65 |
Â
* @var array
|
66 |
Â
*/
|
67 |
+
private $sections_class = [];
|
68 |
Â
|
69 |
Â
/**
|
70 |
Â
* Array of Sections Classes, for non-panel pages
|
73 |
Â
* @access private
|
74 |
Â
* @var array
|
75 |
Â
*/
|
76 |
+
private $settings = [];
|
77 |
Â
|
78 |
Â
/**
|
79 |
Â
* Inline Style has been added
|
110 |
Â
$this->ID = apply_filters( 'tribe_customizer_panel_id', 'tribe_customizer', $this );
|
111 |
Â
|
112 |
Â
// Hook the Registering methods
|
113 |
+
add_action( 'customize_register', [ $this, 'register' ], 15 );
|
114 |
Â
|
115 |
+
add_action( 'wp_print_footer_scripts', [ $this, 'print_css_template' ], 15 );
|
116 |
Â
|
117 |
Â
// front end styles from customizer
|
118 |
+
add_action( 'wp_enqueue_scripts', [ $this, 'inline_style' ], 15 );
|
119 |
+
add_action( 'tribe_events_pro_widget_render', [ $this, 'inline_style' ], 101 );
|
120 |
+
add_action( 'wp_print_footer_scripts', [ $this, 'shortcode_inline_style' ], 5 );
|
121 |
+
add_action( 'wp_print_footer_scripts', [ $this, 'widget_inline_style' ], 5 );
|
122 |
Â
|
123 |
+
add_filter( "default_option_{$this->ID}", [ $this, 'maybe_fallback_get_option' ] );
|
124 |
Â
}
|
125 |
Â
|
126 |
Â
/**
|
138 |
Â
return $sections;
|
139 |
Â
}
|
140 |
Â
|
141 |
+
return get_option( 'tribe_events_pro_customizer', [] );
|
142 |
Â
}
|
143 |
Â
|
144 |
Â
/**
|
231 |
Â
*
|
232 |
Â
* @return mixed Return the variable based on the index
|
233 |
Â
*/
|
234 |
+
public static function search_var( $variable = null, $indexes = [], $default = null ) {
|
235 |
Â
if ( is_object( $variable ) ) {
|
236 |
Â
$variable = (array) $variable;
|
237 |
Â
}
|
271 |
Â
*
|
272 |
Â
* @param array $defaults
|
273 |
Â
*/
|
274 |
+
$defaults[ $section->ID ] = apply_filters( "tribe_events_pro_customizer_section_{$section->ID}_defaults", [] );
|
275 |
Â
|
276 |
Â
/**
|
277 |
Â
* Allow filtering the defaults for each settings to be filtered before the Ghost options to be set
|
280 |
Â
*
|
281 |
Â
* @param array $defaults
|
282 |
Â
*/
|
283 |
+
$settings = isset( $sections[ $section->ID ] ) ? $sections[ $section->ID ] : [];
|
284 |
Â
$defaults[ $section->ID ] = apply_filters( "tribe_customizer_section_{$section->ID}_defaults", $settings );
|
285 |
Â
$sections[ $section->ID ] = wp_parse_args( $settings, $defaults[ $section->ID ] );
|
286 |
Â
}
|
337 |
Â
public function has_option() {
|
338 |
Â
$search = func_get_args();
|
339 |
Â
$option = self::get_option();
|
340 |
+
$real_option = get_option( $this->ID, [] );
|
341 |
Â
|
342 |
Â
// Get section and Settign based on keys
|
343 |
Â
$section = reset( $search );
|
375 |
Â
/**
|
376 |
Â
* Print the CSS for the customizer for shortcodes.
|
377 |
Â
*
|
378 |
+
* @since 4.12.6
|
379 |
Â
*/
|
380 |
Â
public function shortcode_inline_style() {
|
381 |
Â
/**
|
394 |
Â
$this->inline_style();
|
395 |
Â
}
|
396 |
Â
|
397 |
+
/**
|
398 |
+
* Print the CSS for the customizer for widgets.
|
399 |
+
*
|
400 |
+
* @since TBD
|
401 |
+
*/
|
402 |
+
public function widget_inline_style() {
|
403 |
+
/**
|
404 |
+
* Whether customizer styles should print for widgets or not.
|
405 |
+
*
|
406 |
+
* @since TBD
|
407 |
+
*
|
408 |
+
* @param boolean $should_print Whether the inline styles should be printed on screen.
|
409 |
+
*/
|
410 |
+
$should_print = apply_filters( 'tribe_customizer_should_print_widget_customizer_styles', false );
|
411 |
+
|
412 |
+
if ( empty( $should_print ) ) {
|
413 |
+
return;
|
414 |
+
}
|
415 |
+
|
416 |
+
$this->inline_style();
|
417 |
+
}
|
418 |
+
|
419 |
Â
/**
|
420 |
Â
* Print the CSS for the customizer using wp_add_inline_style
|
421 |
Â
*
|
443 |
Â
return false;
|
444 |
Â
}
|
445 |
Â
|
446 |
+
$sheets = [
|
447 |
+
'tribe-common-full-style',
|
448 |
+
];
|
449 |
Â
|
450 |
Â
/**
|
451 |
Â
* Allow plugins to add themselves to this list.
|
482 |
Â
$css = $template;
|
483 |
Â
$sections = $this->get_option();
|
484 |
Â
|
485 |
+
$search = [];
|
486 |
+
$replace = [];
|
487 |
Â
|
488 |
Â
foreach ( $sections as $section => $settings ) {
|
489 |
Â
if ( ! is_array( $settings ) ) {
|
490 |
Â
continue;
|
491 |
Â
}
|
492 |
Â
foreach ( $settings as $setting => $value ) {
|
493 |
+
$index = [ $section, $setting ];
|
494 |
Â
|
495 |
Â
// Add search based on Underscore template
|
496 |
Â
$search[] = '<%= ' . implode( '.', $index ) . ' %>';
|
579 |
Â
return $panel;
|
580 |
Â
}
|
581 |
Â
|
582 |
+
$panel_args = [
|
583 |
+
'title' => esc_html__( 'The Events Calendar', 'tribe-common' ),
|
584 |
Â
'description' => esc_html__( 'Use the following panel of your customizer to change the styling of your Calendar and Event pages.', 'tribe-common' ),
|
585 |
Â
|
586 |
Â
// After `static_front_page`
|
587 |
+
'priority' => 125,
|
588 |
+
];
|
589 |
Â
|
590 |
Â
/**
|
591 |
Â
* Filter the Panel Arguments for WP Customize
|
739 |
Â
// Add the Partial
|
740 |
Â
$this->manager->selective_refresh->add_partial(
|
741 |
Â
$name,
|
742 |
+
[
|
743 |
Â
'selector' => '#' . esc_attr( $this->ID . '_css' ),
|
744 |
+
'render_callback' => [ $this, 'print_css_template' ],
|
745 |
+
]
|
746 |
Â
);
|
747 |
Â
}
|
748 |
Â
}
|
common/src/Tribe/Customizer/Control.php
ADDED
@@ -0,0 +1,20 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* The base class for any custom Control.
|
4 |
+
*
|
5 |
+
* @since TBD
|
6 |
+
*
|
7 |
+
* @package Tribe\Customizer
|
8 |
+
*/
|
9 |
+
|
10 |
+
namespace Tribe\Customizer;
|
11 |
+
|
12 |
+
/**
|
13 |
+
* Class Control
|
14 |
+
*
|
15 |
+
* @since TBD
|
16 |
+
*
|
17 |
+
* @package Tribe\Customizer
|
18 |
+
*/
|
19 |
+
abstract class Control extends \WP_Customize_Control {
|
20 |
+
}
|
common/src/Tribe/Customizer/Controls/Heading.php
ADDED
@@ -0,0 +1,52 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Models a Customizer heading, a Control just in name, it does not control any setting.
|
4 |
+
*
|
5 |
+
* @since TBD
|
6 |
+
*
|
7 |
+
* @package Tribe\Customizer\Controls
|
8 |
+
*/
|
9 |
+
|
10 |
+
namespace Tribe\Customizer\Controls;
|
11 |
+
|
12 |
+
use Tribe\Customizer\Control;
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Class Heading
|
16 |
+
*
|
17 |
+
* @since TBD
|
18 |
+
*
|
19 |
+
* @package Tribe\Customizer\Controls
|
20 |
+
*/
|
21 |
+
class Heading extends Control {
|
22 |
+
/**
|
23 |
+
* Anyone able to set theme options will be able to see the header.
|
24 |
+
*
|
25 |
+
* @since TBD
|
26 |
+
*
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
public $capability = 'edit_theme_options';
|
30 |
+
|
31 |
+
/**
|
32 |
+
* The heading does not control any setting.
|
33 |
+
*
|
34 |
+
* @since TBD
|
35 |
+
*
|
36 |
+
* @var array<string,mixed>
|
37 |
+
*/
|
38 |
+
public $settings = [];
|
39 |
+
|
40 |
+
/**
|
41 |
+
* Render the control's content
|
42 |
+
*
|
43 |
+
* @since TBD
|
44 |
+
*/
|
45 |
+
public function render_content() {
|
46 |
+
?>
|
47 |
+
<h4 style="font-size: 16px; font-weight: normal; line-height: 1.75; margin-top: 0; margin-bottom: 0px;">
|
48 |
+
<?php echo esc_html( $this->label ); ?>
|
49 |
+
</h4>
|
50 |
+
<?php
|
51 |
+
}
|
52 |
+
}
|
common/src/Tribe/Customizer/Section.php
CHANGED
@@ -41,7 +41,7 @@ abstract class Tribe__Customizer__Section {
|
|
41 |
Â
* @access private
|
42 |
Â
* @var array
|
43 |
Â
*/
|
44 |
-
public $defaults =
|
45 |
Â
|
46 |
Â
/**
|
47 |
Â
* Information to setup the Section
|
@@ -51,12 +51,12 @@ abstract class Tribe__Customizer__Section {
|
|
51 |
Â
* @access public
|
52 |
Â
* @var array
|
53 |
Â
*/
|
54 |
-
public $arguments =
|
55 |
Â
'priority' => 10,
|
56 |
Â
'capability' => 'edit_theme_options',
|
57 |
Â
'title' => null,
|
58 |
Â
'description' => null,
|
59 |
-
|
60 |
Â
|
61 |
Â
/**
|
62 |
Â
* Overwrite this method to create the Fields/Settings for this section
|
@@ -85,7 +85,7 @@ abstract class Tribe__Customizer__Section {
|
|
85 |
Â
* @param array $settings The actual options on the database
|
86 |
Â
* @return array
|
87 |
Â
*/
|
88 |
-
public function create_ghost_settings( $settings =
|
89 |
Â
return $settings;
|
90 |
Â
}
|
91 |
Â
|
@@ -147,15 +147,15 @@ abstract class Tribe__Customizer__Section {
|
|
147 |
Â
$this->setup();
|
148 |
Â
|
149 |
Â
// Hook the Register methods
|
150 |
-
add_action( "tribe_customizer_register_{$this->ID}_settings",
|
151 |
-
add_filter( 'tribe_customizer_pre_sections',
|
152 |
Â
|
153 |
Â
// Append this section CSS template
|
154 |
-
add_filter( 'tribe_customizer_css_template',
|
155 |
-
add_filter( "tribe_customizer_section_{$this->ID}_defaults",
|
156 |
Â
|
157 |
Â
// Create the Ghost Options
|
158 |
-
add_filter( 'tribe_customizer_pre_get_option',
|
159 |
Â
|
160 |
Â
// By Default Invoking a new Section will load, unless `load` is set to false
|
161 |
Â
if ( true === (bool) $this->load ) {
|
@@ -167,7 +167,7 @@ abstract class Tribe__Customizer__Section {
|
|
167 |
Â
* A way to apply filters when getting the Customizer options
|
168 |
Â
* @return array
|
169 |
Â
*/
|
170 |
-
public function get_defaults( $settings =
|
171 |
Â
// Create Ghost Options
|
172 |
Â
return $this->create_ghost_settings( wp_parse_args( $settings, $this->defaults ) );
|
173 |
Â
}
|
41 |
Â
* @access private
|
42 |
Â
* @var array
|
43 |
Â
*/
|
44 |
+
public $defaults = [];
|
45 |
Â
|
46 |
Â
/**
|
47 |
Â
* Information to setup the Section
|
51 |
Â
* @access public
|
52 |
Â
* @var array
|
53 |
Â
*/
|
54 |
+
public $arguments = [
|
55 |
Â
'priority' => 10,
|
56 |
Â
'capability' => 'edit_theme_options',
|
57 |
Â
'title' => null,
|
58 |
Â
'description' => null,
|
59 |
+
];
|
60 |
Â
|
61 |
Â
/**
|
62 |
Â
* Overwrite this method to create the Fields/Settings for this section
|
85 |
Â
* @param array $settings The actual options on the database
|
86 |
Â
* @return array
|
87 |
Â
*/
|
88 |
+
public function create_ghost_settings( $settings = [] ) {
|
89 |
Â
return $settings;
|
90 |
Â
}
|
91 |
Â
|
147 |
Â
$this->setup();
|
148 |
Â
|
149 |
Â
// Hook the Register methods
|
150 |
+
add_action( "tribe_customizer_register_{$this->ID}_settings", [ $this, 'register_settings' ], 10, 2 );
|
151 |
+
add_filter( 'tribe_customizer_pre_sections', [ $this, 'register' ], 10, 2 );
|
152 |
Â
|
153 |
Â
// Append this section CSS template
|
154 |
+
add_filter( 'tribe_customizer_css_template', [ $this, 'get_css_template' ], 15 );
|
155 |
+
add_filter( "tribe_customizer_section_{$this->ID}_defaults", [ $this, 'get_defaults' ], 10 );
|
156 |
Â
|
157 |
Â
// Create the Ghost Options
|
158 |
+
add_filter( 'tribe_customizer_pre_get_option', [ $this, 'filter_settings' ], 10, 2 );
|
159 |
Â
|
160 |
Â
// By Default Invoking a new Section will load, unless `load` is set to false
|
161 |
Â
if ( true === (bool) $this->load ) {
|
167 |
Â
* A way to apply filters when getting the Customizer options
|
168 |
Â
* @return array
|
169 |
Â
*/
|
170 |
+
public function get_defaults( $settings = [] ) {
|
171 |
Â
// Create Ghost Options
|
172 |
Â
return $this->create_ghost_settings( wp_parse_args( $settings, $this->defaults ) );
|
173 |
Â
}
|
common/src/Tribe/Data.php
CHANGED
@@ -49,7 +49,7 @@ class Tribe__Data implements ArrayAccess, Iterator {
|
|
49 |
Â
* @param array|object $data An array or object of data.
|
50 |
Â
* @param mixed $default The default value that should be returned if a key is not set
|
51 |
Â
*/
|
52 |
-
public function __construct( $data =
|
53 |
Â
$this->data = (array) $data;
|
54 |
Â
$this->default = $default;
|
55 |
Â
}
|
49 |
Â
* @param array|object $data An array or object of data.
|
50 |
Â
* @param mixed $default The default value that should be returned if a key is not set
|
51 |
Â
*/
|
52 |
+
public function __construct( $data = [], $default = false ) {
|
53 |
Â
$this->data = (array) $data;
|
54 |
Â
$this->default = $default;
|
55 |
Â
}
|
common/src/Tribe/Date_Utils.php
CHANGED
@@ -35,10 +35,10 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
35 |
Â
*/
|
36 |
Â
private static $default_datepicker_format_index = 1;
|
37 |
Â
|
38 |
-
private static $localized_months_full
|
39 |
-
private static $localized_months_short =
|
40 |
-
private static $localized_weekdays
|
41 |
-
private static $localized_months
|
42 |
Â
|
43 |
Â
/**
|
44 |
Â
* Get the datepickerFormat index.
|
@@ -95,7 +95,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
95 |
Â
public static function datepicker_formats( $translate = null ) {
|
96 |
Â
|
97 |
Â
// The datepicker has issues when a period separator and no leading zero is used. Those formats are purposefully omitted.
|
98 |
-
$formats =
|
99 |
Â
0 => 'Y-m-d',
|
100 |
Â
1 => 'n/j/Y',
|
101 |
Â
2 => 'm/d/Y',
|
@@ -120,7 +120,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
120 |
Â
'm9' => 'Y.m',
|
121 |
Â
'm10' => 'm.Y',
|
122 |
Â
'm11' => 'm.Y',
|
123 |
-
|
124 |
Â
|
125 |
Â
if ( is_null( $translate ) ) {
|
126 |
Â
return $formats;
|
@@ -140,55 +140,55 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
140 |
Â
*/
|
141 |
Â
public static function datetime_from_format( $format, $date ) {
|
142 |
Â
// Reverse engineer the relevant date formats
|
143 |
-
$keys =
|
144 |
Â
// Year with 4 Digits
|
145 |
-
'Y' =>
|
146 |
Â
|
147 |
Â
// Year with 2 Digits
|
148 |
-
'y' =>
|
149 |
Â
|
150 |
Â
// Month with leading 0
|
151 |
-
'm' =>
|
152 |
Â
|
153 |
Â
// Month without the leading 0
|
154 |
-
'n' =>
|
155 |
Â
|
156 |
Â
// Month ABBR 3 letters
|
157 |
-
'M' =>
|
158 |
Â
|
159 |
Â
// Month Name
|
160 |
-
'F' =>
|
161 |
Â
|
162 |
Â
// Day with leading 0
|
163 |
-
'd' =>
|
164 |
Â
|
165 |
Â
// Day without leading 0
|
166 |
-
'j' =>
|
167 |
Â
|
168 |
Â
// Day ABBR 3 Letters
|
169 |
-
'D' =>
|
170 |
Â
|
171 |
Â
// Day Name
|
172 |
-
'l' =>
|
173 |
Â
|
174 |
Â
// Hour 12h formatted, with leading 0
|
175 |
-
'h' =>
|
176 |
Â
|
177 |
Â
// Hour 24h formatted, with leading 0
|
178 |
-
'H' =>
|
179 |
Â
|
180 |
Â
// Hour 12h formatted, without leading 0
|
181 |
-
'g' =>
|
182 |
Â
|
183 |
Â
// Hour 24h formatted, without leading 0
|
184 |
-
'G' =>
|
185 |
Â
|
186 |
Â
// Minutes with leading 0
|
187 |
-
'i' =>
|
188 |
Â
|
189 |
Â
// Seconds with leading 0
|
190 |
-
's' =>
|
191 |
-
|
192 |
Â
|
193 |
Â
$date_regex = "/{$keys['Y'][1]}-{$keys['m'][1]}-{$keys['d'][1]}( {$keys['H'][1]}:{$keys['i'][1]}:{$keys['s'][1]})?$/";
|
194 |
Â
|
@@ -213,7 +213,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
213 |
Â
}
|
214 |
Â
}
|
215 |
Â
|
216 |
-
$dt =
|
217 |
Â
|
218 |
Â
// Now try to match it
|
219 |
Â
if ( preg_match( '#^' . $regex . '$#', $date, $dt ) ) {
|
@@ -377,7 +377,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
377 |
Â
* @return bool If the timestamp is a weekday.
|
378 |
Â
*/
|
379 |
Â
public static function is_weekday( $curdate ) {
|
380 |
-
return in_array( date( 'N', $curdate ),
|
381 |
Â
}
|
382 |
Â
|
383 |
Â
/**
|
@@ -388,7 +388,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
388 |
Â
* @return bool If the timestamp is a weekend.
|
389 |
Â
*/
|
390 |
Â
public static function is_weekend( $curdate ) {
|
391 |
-
return in_array( date( 'N', $curdate ),
|
392 |
Â
}
|
393 |
Â
|
394 |
Â
/**
|
@@ -664,7 +664,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
664 |
Â
}
|
665 |
Â
|
666 |
Â
if ( empty( self::$localized_months_full ) ) {
|
667 |
-
self::$localized_months_full =
|
668 |
Â
'January' => self::$localized_months['full']['01'],
|
669 |
Â
'February' => self::$localized_months['full']['02'],
|
670 |
Â
'March' => self::$localized_months['full']['03'],
|
@@ -677,7 +677,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
677 |
Â
'October' => self::$localized_months['full']['10'],
|
678 |
Â
'November' => self::$localized_months['full']['11'],
|
679 |
Â
'December' => self::$localized_months['full']['12'],
|
680 |
-
|
681 |
Â
}
|
682 |
Â
|
683 |
Â
return self::$localized_months_full;
|
@@ -696,7 +696,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
696 |
Â
}
|
697 |
Â
|
698 |
Â
if ( empty( self::$localized_months_short ) ) {
|
699 |
-
self::$localized_months_short =
|
700 |
Â
'Jan' => self::$localized_months['short']['01'],
|
701 |
Â
'Feb' => self::$localized_months['short']['02'],
|
702 |
Â
'Mar' => self::$localized_months['short']['03'],
|
@@ -709,7 +709,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
709 |
Â
'Oct' => self::$localized_months['short']['10'],
|
710 |
Â
'Nov' => self::$localized_months['short']['11'],
|
711 |
Â
'Dec' => self::$localized_months['short']['12'],
|
712 |
-
|
713 |
Â
}
|
714 |
Â
|
715 |
Â
return self::$localized_months_short;
|
@@ -797,7 +797,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
797 |
Â
public static function wp_locale_weekday( $weekday, $format = 'weekday' ) {
|
798 |
Â
$weekday = trim( $weekday );
|
799 |
Â
|
800 |
-
$valid_formats =
|
801 |
Â
'full',
|
802 |
Â
'weekday',
|
803 |
Â
'initial',
|
@@ -805,7 +805,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
805 |
Â
'abbrev',
|
806 |
Â
'abbr',
|
807 |
Â
'short',
|
808 |
-
|
809 |
Â
|
810 |
Â
// if there isn't a valid format, bail without providing a localized string
|
811 |
Â
if ( ! in_array( $format, $valid_formats ) ) {
|
@@ -819,7 +819,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
819 |
Â
// if the weekday isn't numeric, we need to convert to numeric in order to
|
820 |
Â
// leverage self::localized_weekdays
|
821 |
Â
if ( ! is_numeric( $weekday ) ) {
|
822 |
-
$days_of_week =
|
823 |
Â
'Sun',
|
824 |
Â
'Mon',
|
825 |
Â
'Tue',
|
@@ -827,7 +827,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
827 |
Â
'Thu',
|
828 |
Â
'Fri',
|
829 |
Â
'Sat',
|
830 |
-
|
831 |
Â
|
832 |
Â
$day_index = array_search( ucwords( substr( $weekday, 0, 3 ) ), $days_of_week );
|
833 |
Â
|
@@ -871,14 +871,14 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
871 |
Â
public static function wp_locale_month( $month, $format = 'month' ) {
|
872 |
Â
$month = trim( $month );
|
873 |
Â
|
874 |
-
$valid_formats =
|
875 |
Â
'full',
|
876 |
Â
'month',
|
877 |
Â
'abbreviation',
|
878 |
Â
'abbrev',
|
879 |
Â
'abbr',
|
880 |
Â
'short',
|
881 |
-
|
882 |
Â
|
883 |
Â
// if there isn't a valid format, bail without providing a localized string
|
884 |
Â
if ( ! in_array( $format, $valid_formats ) ) {
|
@@ -898,7 +898,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
898 |
Â
return $month;
|
899 |
Â
}
|
900 |
Â
} else {
|
901 |
-
$months =
|
902 |
Â
'Jan',
|
903 |
Â
'Feb',
|
904 |
Â
'Mar',
|
@@ -911,7 +911,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
911 |
Â
'Oct',
|
912 |
Â
'Nov',
|
913 |
Â
'Dec',
|
914 |
-
|
915 |
Â
|
916 |
Â
// convert the provided month to a 3-character month and find it in the months array so we
|
917 |
Â
// can build an appropriate month number
|
@@ -1184,7 +1184,7 @@ if ( ! class_exists( 'Tribe__Date_Utils' ) ) {
|
|
1184 |
Â
&& is_numeric( $month )
|
1185 |
Â
&& is_numeric( $year )
|
1186 |
Â
&& is_numeric( $week_direction )
|
1187 |
-
&& in_array( $week_direction,
|
1188 |
Â
)
|
1189 |
Â
) {
|
1190 |
Â
return false;
|
35 |
Â
*/
|
36 |
Â
private static $default_datepicker_format_index = 1;
|
37 |
Â
|
38 |
+
private static $localized_months_full = [];
|
39 |
+
private static $localized_months_short = [];
|
40 |
+
private static $localized_weekdays = [];
|
41 |
+
private static $localized_months = [];
|
42 |
Â
|
43 |
Â
/**
|
44 |
Â
* Get the datepickerFormat index.
|
95 |
Â
public static function datepicker_formats( $translate = null ) {
|
96 |
Â
|
97 |
Â
// The datepicker has issues when a period separator and no leading zero is used. Those formats are purposefully omitted.
|
98 |
+
$formats = [
|
99 |
Â
0 => 'Y-m-d',
|
100 |
Â
1 => 'n/j/Y',
|
101 |
Â
2 => 'm/d/Y',
|
120 |
Â
'm9' => 'Y.m',
|
121 |
Â
'm10' => 'm.Y',
|
122 |
Â
'm11' => 'm.Y',
|
123 |
+
];
|
124 |
Â
|
125 |
Â
if ( is_null( $translate ) ) {
|
126 |
Â
return $formats;
|
140 |
Â
*/
|
141 |
Â
public static function datetime_from_format( $format, $date ) {
|
142 |
Â
// Reverse engineer the relevant date formats
|
143 |
+
$keys = [
|
144 |
Â
// Year with 4 Digits
|
145 |
+
'Y' => [ 'year', '\d{4}' ],
|
146 |
Â
|
147 |
Â
// Year with 2 Digits
|
148 |
+
'y' => [ 'year', '\d{2}' ],
|
149 |
Â
|
150 |
Â
// Month with leading 0
|
151 |
+
'm' => [ 'month', '\d{2}' ],
|
152 |
Â
|
153 |
Â
// Month without the leading 0
|
154 |
+
'n' => [ 'month', '\d{1,2}' ],
|
155 |
Â
|
156 |
Â
// Month ABBR 3 letters
|
157 |
+
'M' => [ 'month', '[A-Z][a-z]{2}' ],
|
158 |
Â
|
159 |
Â
// Month Name
|
160 |
+
'F' => [ 'month', '[A-Z][a-z]{2,8}' ],
|
161 |
Â
|
162 |
Â
// Day with leading 0
|
163 |
+
'd' => [ 'day', '\d{2}' ],
|
164 |
Â
|
165 |
Â
// Day without leading 0
|
166 |
+
'j' => [ 'day', '\d{1,2}' ],
|
167 |
Â
|
168 |
Â
// Day ABBR 3 Letters
|
169 |
+
'D' => [ 'day', '[A-Z][a-z]{2}' ],
|
170 |
Â
|
171 |
Â
// Day Name
|
172 |
+
'l' => [ 'day', '[A-Z][a-z]{5,8}' ],
|
173 |
Â
|
174 |
Â
// Hour 12h formatted, with leading 0
|
175 |
+
'h' => [ 'hour', '\d{2}' ],
|
176 |
Â
|
177 |
Â
// Hour 24h formatted, with leading 0
|
178 |
+
'H' => [ 'hour', '\d{2}' ],
|
179 |
Â
|
180 |
Â
// Hour 12h formatted, without leading 0
|
181 |
+
'g' => [ 'hour', '\d{1,2}' ],
|
182 |
Â
|
183 |
Â
// Hour 24h formatted, without leading 0
|
184 |
+
'G' => [ 'hour', '\d{1,2}' ],
|
185 |
Â
|
186 |
Â
// Minutes with leading 0
|
187 |
+
'i' => [ 'minute', '\d{2}' ],
|
188 |
Â
|
189 |
Â
// Seconds with leading 0
|
190 |
+
's' => [ 'second', '\d{2}' ],
|
191 |
+
];
|
192 |
Â
|
193 |
Â
$date_regex = "/{$keys['Y'][1]}-{$keys['m'][1]}-{$keys['d'][1]}( {$keys['H'][1]}:{$keys['i'][1]}:{$keys['s'][1]})?$/";
|
194 |
Â
|
213 |
Â
}
|
214 |
Â
}
|
215 |
Â
|
216 |
+
$dt = [];
|
217 |
Â
|
218 |
Â
// Now try to match it
|
219 |
Â
if ( preg_match( '#^' . $regex . '$#', $date, $dt ) ) {
|
377 |
Â
* @return bool If the timestamp is a weekday.
|
378 |
Â
*/
|
379 |
Â
public static function is_weekday( $curdate ) {
|
380 |
+
return in_array( date( 'N', $curdate ), [ 1, 2, 3, 4, 5 ] );
|
381 |
Â
}
|
382 |
Â
|
383 |
Â
/**
|
388 |
Â
* @return bool If the timestamp is a weekend.
|
389 |
Â
*/
|
390 |
Â
public static function is_weekend( $curdate ) {
|
391 |
+
return in_array( date( 'N', $curdate ), [ 6, 7 ] );
|
392 |
Â
}
|
393 |
Â
|
394 |
Â
/**
|
664 |
Â
}
|
665 |
Â
|
666 |
Â
if ( empty( self::$localized_months_full ) ) {
|
667 |
+
self::$localized_months_full = [
|
668 |
Â
'January' => self::$localized_months['full']['01'],
|
669 |
Â
'February' => self::$localized_months['full']['02'],
|
670 |
Â
'March' => self::$localized_months['full']['03'],
|
677 |
Â
'October' => self::$localized_months['full']['10'],
|
678 |
Â
'November' => self::$localized_months['full']['11'],
|
679 |
Â
'December' => self::$localized_months['full']['12'],
|
680 |
+
];
|
681 |
Â
}
|
682 |
Â
|
683 |
Â
return self::$localized_months_full;
|
696 |
Â
}
|
697 |
Â
|
698 |
Â
if ( empty( self::$localized_months_short ) ) {
|
699 |
+
self::$localized_months_short = [
|
700 |
Â
'Jan' => self::$localized_months['short']['01'],
|
701 |
Â
'Feb' => self::$localized_months['short']['02'],
|
702 |
Â
'Mar' => self::$localized_months['short']['03'],
|
709 |
Â
'Oct' => self::$localized_months['short']['10'],
|
710 |
Â
'Nov' => self::$localized_months['short']['11'],
|
711 |
Â
'Dec' => self::$localized_months['short']['12'],
|
712 |
+
];
|
713 |
Â
}
|
714 |
Â
|
715 |
Â
return self::$localized_months_short;
|
797 |
Â
public static function wp_locale_weekday( $weekday, $format = 'weekday' ) {
|
798 |
Â
$weekday = trim( $weekday );
|
799 |
Â
|
800 |
+
$valid_formats = [
|
801 |
Â
'full',
|
802 |
Â
'weekday',
|
803 |
Â
'initial',
|
805 |
Â
'abbrev',
|
806 |
Â
'abbr',
|
807 |
Â
'short',
|
808 |
+
];
|
809 |
Â
|
810 |
Â
// if there isn't a valid format, bail without providing a localized string
|
811 |
Â
if ( ! in_array( $format, $valid_formats ) ) {
|
819 |
Â
// if the weekday isn't numeric, we need to convert to numeric in order to
|
820 |
Â
// leverage self::localized_weekdays
|
821 |
Â
if ( ! is_numeric( $weekday ) ) {
|
822 |
+
$days_of_week = [
|
823 |
Â
'Sun',
|
824 |
Â
'Mon',
|
825 |
Â
'Tue',
|
827 |
Â
'Thu',
|
828 |
Â
'Fri',
|
829 |
Â
'Sat',
|
830 |
+
];
|
831 |
Â
|
832 |
Â
$day_index = array_search( ucwords( substr( $weekday, 0, 3 ) ), $days_of_week );
|
833 |
Â
|
871 |
Â
public static function wp_locale_month( $month, $format = 'month' ) {
|
872 |
Â
$month = trim( $month );
|
873 |
Â
|
874 |
+
$valid_formats = [
|
875 |
Â
'full',
|
876 |
Â
'month',
|
877 |
Â
'abbreviation',
|
878 |
Â
'abbrev',
|
879 |
Â
'abbr',
|
880 |
Â
'short',
|
881 |
+
];
|
882 |
Â
|
883 |
Â
// if there isn't a valid format, bail without providing a localized string
|
884 |
Â
if ( ! in_array( $format, $valid_formats ) ) {
|
898 |
Â
return $month;
|
899 |
Â
}
|
900 |
Â
} else {
|
901 |
+
$months = [
|
902 |
Â
'Jan',
|
903 |
Â
'Feb',
|
904 |
Â
'Mar',
|
911 |
Â
'Oct',
|
912 |
Â
'Nov',
|
913 |
Â
'Dec',
|
914 |
+
];
|
915 |
Â
|
916 |
Â
// convert the provided month to a 3-character month and find it in the months array so we
|
917 |
Â
// can build an appropriate month number
|
1184 |
Â
&& is_numeric( $month )
|
1185 |
Â
&& is_numeric( $year )
|
1186 |
Â
&& is_numeric( $week_direction )
|
1187 |
+
&& in_array( $week_direction, [ -1, 1 ] )
|
1188 |
Â
)
|
1189 |
Â
) {
|
1190 |
Â
return false;
|
common/src/Tribe/Debug.php
CHANGED
@@ -5,7 +5,7 @@ class Tribe__Debug {
|
|
5 |
Â
* constructor
|
6 |
Â
*/
|
7 |
Â
public function __construct() {
|
8 |
-
add_action( 'tribe_debug',
|
9 |
Â
}
|
10 |
Â
|
11 |
Â
/**
|
5 |
Â
* constructor
|
6 |
Â
*/
|
7 |
Â
public function __construct() {
|
8 |
+
add_action( 'tribe_debug', [ __CLASS__, 'render' ], 10, 2 );
|
9 |
Â
}
|
10 |
Â
|
11 |
Â
/**
|
common/src/Tribe/Dependency.php
CHANGED
@@ -11,23 +11,23 @@ if ( ! class_exists( 'Tribe__Dependency' ) ) {
|
|
11 |
Â
/**
|
12 |
Â
* A multidimensional array of active tribe plugins in the following format
|
13 |
Â
*
|
14 |
-
*
|
15 |
Â
* 'class' => 'main class name',
|
16 |
Â
* 'version' => 'version num', (optional)
|
17 |
Â
* 'path' => 'Path to the main plugin/bootstrap file' (optional)
|
18 |
-
*
|
19 |
Â
*/
|
20 |
Â
protected $active_plugins = [];
|
21 |
Â
|
22 |
Â
/**
|
23 |
Â
* A multidimensional array of active tribe plugins in the following format
|
24 |
Â
*
|
25 |
-
*
|
26 |
Â
* 'class' => 'main class name',
|
27 |
Â
* 'path' => 'Path to the main plugin/bootstrap file'
|
28 |
Â
* 'version' => 'version num', (optional)
|
29 |
Â
* 'dependencies' => 'A multidimensional of dependencies' (optional)
|
30 |
-
*
|
31 |
Â
*/
|
32 |
Â
protected $registered_plugins = [];
|
33 |
Â
|
@@ -49,13 +49,13 @@ if ( ! class_exists( 'Tribe__Dependency' ) ) {
|
|
49 |
Â
* @param null|string $path Path to the main plugin/bootstrap file
|
50 |
Â
* @param array $dependencies An array of dependencies for a plugin
|
51 |
Â
*/
|
52 |
-
public function add_registered_plugin( $main_class, $version = null, $path = null, $dependencies =
|
53 |
-
$plugin =
|
54 |
Â
'class' => $main_class,
|
55 |
Â
'version' => $version,
|
56 |
Â
'path' => $path,
|
57 |
Â
'dependencies' => $dependencies,
|
58 |
-
|
59 |
Â
|
60 |
Â
$this->registered_plugins[ $main_class ] = $plugin;
|
61 |
Â
|
@@ -83,11 +83,11 @@ if ( ! class_exists( 'Tribe__Dependency' ) ) {
|
|
83 |
Â
* @param string $path Path to the main plugin/bootstrap file
|
84 |
Â
*/
|
85 |
Â
public function add_active_plugin( $main_class, $version = null, $path = null ) {
|
86 |
-
$plugin =
|
87 |
-
'class'
|
88 |
-
'version'
|
89 |
-
'path'
|
90 |
-
|
91 |
Â
|
92 |
Â
$this->active_plugins[ $main_class ] = $plugin;
|
93 |
Â
}
|
@@ -267,7 +267,7 @@ if ( ! class_exists( 'Tribe__Dependency' ) ) {
|
|
267 |
Â
*
|
268 |
Â
* @return bool
|
269 |
Â
*/
|
270 |
-
public function has_requisite_plugins( $plugins_required =
|
271 |
Â
foreach ( $plugins_required as $class => $version ) {
|
272 |
Â
// Return false if the plugin is not set or is a lesser version
|
273 |
Â
if ( ! $this->is_plugin_active( $class ) ) {
|
@@ -307,7 +307,7 @@ if ( ! class_exists( 'Tribe__Dependency' ) ) {
|
|
307 |
Â
*
|
308 |
Â
* @return true|int The number of failed dependency checks; `true` or `0` to indicate no checks failed.
|
309 |
Â
*/
|
310 |
-
public function has_valid_dependencies( $plugin, $dependencies =
|
311 |
Â
if ( empty( $dependencies ) ) {
|
312 |
Â
return true;
|
313 |
Â
}
|
@@ -415,7 +415,7 @@ if ( ! class_exists( 'Tribe__Dependency' ) ) {
|
|
415 |
Â
* @param array $classes_req Any Main class files/tribe plugins required for this to run.
|
416 |
Â
* @param array $dependencies an array of dependencies to check.
|
417 |
Â
*/
|
418 |
-
public function register_plugin( $file_path, $main_class, $version, $classes_req =
|
419 |
Â
/**
|
420 |
Â
* Filters the version string for a plugin.
|
421 |
Â
*
|
11 |
Â
/**
|
12 |
Â
* A multidimensional array of active tribe plugins in the following format
|
13 |
Â
*
|
14 |
+
* [
|
15 |
Â
* 'class' => 'main class name',
|
16 |
Â
* 'version' => 'version num', (optional)
|
17 |
Â
* 'path' => 'Path to the main plugin/bootstrap file' (optional)
|
18 |
+
* ]
|
19 |
Â
*/
|
20 |
Â
protected $active_plugins = [];
|
21 |
Â
|
22 |
Â
/**
|
23 |
Â
* A multidimensional array of active tribe plugins in the following format
|
24 |
Â
*
|
25 |
+
* [
|
26 |
Â
* 'class' => 'main class name',
|
27 |
Â
* 'path' => 'Path to the main plugin/bootstrap file'
|
28 |
Â
* 'version' => 'version num', (optional)
|
29 |
Â
* 'dependencies' => 'A multidimensional of dependencies' (optional)
|
30 |
+
* ]
|
31 |
Â
*/
|
32 |
Â
protected $registered_plugins = [];
|
33 |
Â
|
49 |
Â
* @param null|string $path Path to the main plugin/bootstrap file
|
50 |
Â
* @param array $dependencies An array of dependencies for a plugin
|
51 |
Â
*/
|
52 |
+
public function add_registered_plugin( $main_class, $version = null, $path = null, $dependencies = [] ) {
|
53 |
+
$plugin = [
|
54 |
Â
'class' => $main_class,
|
55 |
Â
'version' => $version,
|
56 |
Â
'path' => $path,
|
57 |
Â
'dependencies' => $dependencies,
|
58 |
+
];
|
59 |
Â
|
60 |
Â
$this->registered_plugins[ $main_class ] = $plugin;
|
61 |
Â
|
83 |
Â
* @param string $path Path to the main plugin/bootstrap file
|
84 |
Â
*/
|
85 |
Â
public function add_active_plugin( $main_class, $version = null, $path = null ) {
|
86 |
+
$plugin = [
|
87 |
+
'class' => $main_class,
|
88 |
+
'version' => $version,
|
89 |
+
'path' => $path,
|
90 |
+
];
|
91 |
Â
|
92 |
Â
$this->active_plugins[ $main_class ] = $plugin;
|
93 |
Â
}
|
267 |
Â
*
|
268 |
Â
* @return bool
|
269 |
Â
*/
|
270 |
+
public function has_requisite_plugins( $plugins_required = [] ) {
|
271 |
Â
foreach ( $plugins_required as $class => $version ) {
|
272 |
Â
// Return false if the plugin is not set or is a lesser version
|
273 |
Â
if ( ! $this->is_plugin_active( $class ) ) {
|
307 |
Â
*
|
308 |
Â
* @return true|int The number of failed dependency checks; `true` or `0` to indicate no checks failed.
|
309 |
Â
*/
|
310 |
+
public function has_valid_dependencies( $plugin, $dependencies = [], $addon = false ) {
|
311 |
Â
if ( empty( $dependencies ) ) {
|
312 |
Â
return true;
|
313 |
Â
}
|
415 |
Â
* @param array $classes_req Any Main class files/tribe plugins required for this to run.
|
416 |
Â
* @param array $dependencies an array of dependencies to check.
|
417 |
Â
*/
|
418 |
+
public function register_plugin( $file_path, $main_class, $version, $classes_req = [], $dependencies = [] ) {
|
419 |
Â
/**
|
420 |
Â
* Filters the version string for a plugin.
|
421 |
Â
*
|
common/src/Tribe/Deprecation.php
CHANGED
@@ -27,10 +27,10 @@ class Tribe__Deprecation {
|
|
27 |
Â
*
|
28 |
Â
* @var array
|
29 |
Â
*/
|
30 |
-
protected $deprecated_filters =
|
31 |
-
'tribe_cost_regex' =>
|
32 |
-
'tribe_rewrite_prepared_slug' =>
|
33 |
-
|
34 |
Â
|
35 |
Â
/**
|
36 |
Â
* An array specifying the tag, version and optional replacements
|
@@ -44,9 +44,9 @@ class Tribe__Deprecation {
|
|
44 |
Â
*
|
45 |
Â
* @var array
|
46 |
Â
*/
|
47 |
-
protected $deprecated_actions =
|
48 |
-
'tribe_pre_rewrite' =>
|
49 |
-
|
50 |
Â
|
51 |
Â
/**
|
52 |
Â
* @return Tribe__Deprecation
|
@@ -71,9 +71,9 @@ class Tribe__Deprecation {
|
|
71 |
Â
*/
|
72 |
Â
public function deprecate_actions() {
|
73 |
Â
foreach ( array_keys( $this->deprecated_actions ) as $new_action_tag ) {
|
74 |
-
add_action( $new_action_tag,
|
75 |
Â
add_filter(
|
76 |
-
$this->deprecated_actions[ $new_action_tag ][1],
|
77 |
Â
);
|
78 |
Â
}
|
79 |
Â
}
|
@@ -85,9 +85,9 @@ class Tribe__Deprecation {
|
|
85 |
Â
*/
|
86 |
Â
public function deprecate_filters() {
|
87 |
Â
foreach ( array_keys( $this->deprecated_filters ) as $new_filter_tag ) {
|
88 |
-
add_filter( $new_filter_tag,
|
89 |
Â
add_filter(
|
90 |
-
$this->deprecated_filters[ $new_filter_tag ][1],
|
91 |
Â
);
|
92 |
Â
}
|
93 |
Â
}
|
@@ -104,7 +104,7 @@ class Tribe__Deprecation {
|
|
104 |
Â
$action = $this->get_action_for_deprecated_tag( $action );
|
105 |
Â
}
|
106 |
Â
|
107 |
-
remove_action( $deprecated_tag,
|
108 |
Â
|
109 |
Â
if ( doing_action( $deprecated_tag ) || has_filter( $deprecated_tag ) ) {
|
110 |
Â
_deprecated_function(
|
@@ -112,7 +112,7 @@ class Tribe__Deprecation {
|
|
112 |
Â
);
|
113 |
Â
}
|
114 |
Â
|
115 |
-
add_action( $deprecated_tag,
|
116 |
Â
}
|
117 |
Â
|
118 |
Â
/**
|
@@ -133,17 +133,17 @@ class Tribe__Deprecation {
|
|
133 |
Â
$filter = $this->get_filter_for_deprecated_tag( $filter );
|
134 |
Â
}
|
135 |
Â
|
136 |
-
remove_filter( $deprecated_tag,
|
137 |
Â
|
138 |
Â
if ( has_filter( $deprecated_tag ) || doing_filter( $deprecated_tag ) ) {
|
139 |
-
$version = Tribe__Utils__Array::get( $this->deprecated_filters,
|
140 |
Â
|
141 |
Â
_deprecated_function(
|
142 |
Â
'The ' . $deprecated_tag . ' filter', $version, $filter
|
143 |
Â
);
|
144 |
Â
}
|
145 |
Â
|
146 |
-
add_filter( $deprecated_tag,
|
147 |
Â
|
148 |
Â
return $value;
|
149 |
Â
}
|
27 |
Â
*
|
28 |
Â
* @var array
|
29 |
Â
*/
|
30 |
+
protected $deprecated_filters = [
|
31 |
+
'tribe_cost_regex' => [ '4.3', 'tribe_events_cost_regex' ],
|
32 |
+
'tribe_rewrite_prepared_slug' => [ '4.3', 'tribe_events_rewrite_prepared_slug' ],
|
33 |
+
];
|
34 |
Â
|
35 |
Â
/**
|
36 |
Â
* An array specifying the tag, version and optional replacements
|
44 |
Â
*
|
45 |
Â
* @var array
|
46 |
Â
*/
|
47 |
+
protected $deprecated_actions = [
|
48 |
+
'tribe_pre_rewrite' => [ '4.3', 'tribe_events_pre_rewrite' ],
|
49 |
+
];
|
50 |
Â
|
51 |
Â
/**
|
52 |
Â
* @return Tribe__Deprecation
|
71 |
Â
*/
|
72 |
Â
public function deprecate_actions() {
|
73 |
Â
foreach ( array_keys( $this->deprecated_actions ) as $new_action_tag ) {
|
74 |
+
add_action( $new_action_tag, [ $this, 'deprecated_action_message' ] );
|
75 |
Â
add_filter(
|
76 |
+
$this->deprecated_actions[ $new_action_tag ][1], [ $this, 'deprecated_action_message' ]
|
77 |
Â
);
|
78 |
Â
}
|
79 |
Â
}
|
85 |
Â
*/
|
86 |
Â
public function deprecate_filters() {
|
87 |
Â
foreach ( array_keys( $this->deprecated_filters ) as $new_filter_tag ) {
|
88 |
+
add_filter( $new_filter_tag, [ $this, 'deprecated_filter_message' ] );
|
89 |
Â
add_filter(
|
90 |
+
$this->deprecated_filters[ $new_filter_tag ][1], [ $this, 'deprecated_filter_message' ]
|
91 |
Â
);
|
92 |
Â
}
|
93 |
Â
}
|
104 |
Â
$action = $this->get_action_for_deprecated_tag( $action );
|
105 |
Â
}
|
106 |
Â
|
107 |
+
remove_action( $deprecated_tag, [ $this, 'deprecated_action_message' ] );
|
108 |
Â
|
109 |
Â
if ( doing_action( $deprecated_tag ) || has_filter( $deprecated_tag ) ) {
|
110 |
Â
_deprecated_function(
|
112 |
Â
);
|
113 |
Â
}
|
114 |
Â
|
115 |
+
add_action( $deprecated_tag, [ $this, 'deprecated_action_message' ] );
|
116 |
Â
}
|
117 |
Â
|
118 |
Â
/**
|
133 |
Â
$filter = $this->get_filter_for_deprecated_tag( $filter );
|
134 |
Â
}
|
135 |
Â
|
136 |
+
remove_filter( $deprecated_tag, [ $this, 'deprecated_filter_message' ] );
|
137 |
Â
|
138 |
Â
if ( has_filter( $deprecated_tag ) || doing_filter( $deprecated_tag ) ) {
|
139 |
+
$version = Tribe__Utils__Array::get( $this->deprecated_filters, [ $filter, 0 ], null );
|
140 |
Â
|
141 |
Â
_deprecated_function(
|
142 |
Â
'The ' . $deprecated_tag . ' filter', $version, $filter
|
143 |
Â
);
|
144 |
Â
}
|
145 |
Â
|
146 |
+
add_filter( $deprecated_tag, [ $this, 'deprecated_filter_message' ] );
|
147 |
Â
|
148 |
Â
return $value;
|
149 |
Â
}
|
common/src/Tribe/Documentation/Swagger/Cost_Details_Definition_Provider.php
CHANGED
@@ -16,25 +16,25 @@ class Tribe__Documentation__Swagger__Cost_Details_Definition_Provider
|
|
16 |
Â
* @return array An array description of a Swagger supported component.
|
17 |
Â
*/
|
18 |
Â
public function get_documentation() {
|
19 |
-
$documentation =
|
20 |
Â
'type' => 'object',
|
21 |
-
'properties' =>
|
22 |
-
'currency_symbol'
|
23 |
-
'type'
|
24 |
Â
'description' => __( 'The cost currency symbol', 'tribe-common' ),
|
25 |
-
|
26 |
-
'currency_position ' =>
|
27 |
-
'type'
|
28 |
Â
'description' => __( 'The position of the currency symbol in the cost string', 'tribe-common' ),
|
29 |
-
'enum'
|
30 |
-
|
31 |
-
'values'
|
32 |
-
'type'
|
33 |
-
'items'
|
34 |
Â
'description' => __( 'A sorted array of all the numeric values for the cost', 'tribe-common' ),
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
Â
|
39 |
Â
/**
|
40 |
Â
* Filters the Swagger documentation generated for a cost details in the TEC REST API.
|
16 |
Â
* @return array An array description of a Swagger supported component.
|
17 |
Â
*/
|
18 |
Â
public function get_documentation() {
|
19 |
+
$documentation = [
|
20 |
Â
'type' => 'object',
|
21 |
+
'properties' => [
|
22 |
+
'currency_symbol' => [
|
23 |
+
'type' => 'string',
|
24 |
Â
'description' => __( 'The cost currency symbol', 'tribe-common' ),
|
25 |
+
],
|
26 |
+
'currency_position ' => [
|
27 |
+
'type' => 'string',
|
28 |
Â
'description' => __( 'The position of the currency symbol in the cost string', 'tribe-common' ),
|
29 |
+
'enum' => [ 'prefix', 'postfix' ],
|
30 |
+
],
|
31 |
+
'values' => [
|
32 |
+
'type' => 'array',
|
33 |
+
'items' => [ 'type' => 'integer' ],
|
34 |
Â
'description' => __( 'A sorted array of all the numeric values for the cost', 'tribe-common' ),
|
35 |
+
],
|
36 |
+
],
|
37 |
+
];
|
38 |
Â
|
39 |
Â
/**
|
40 |
Â
* Filters the Swagger documentation generated for a cost details in the TEC REST API.
|
common/src/Tribe/Documentation/Swagger/Date_Details_Definition_Provider.php
CHANGED
@@ -16,35 +16,35 @@ class Tribe__Documentation__Swagger__Date_Details_Definition_Provider
|
|
16 |
Â
* @return array An array description of a Swagger supported component.
|
17 |
Â
*/
|
18 |
Â
public function get_documentation() {
|
19 |
-
$documentation =
|
20 |
Â
'type' => 'object',
|
21 |
-
'properties' =>
|
22 |
-
'year' =>
|
23 |
-
'type'
|
24 |
Â
'description' => __( 'The date year', 'tribe-common' ),
|
25 |
-
|
26 |
-
'month'
|
27 |
-
'type'
|
28 |
Â
'description' => __( 'The date month', 'tribe-common' ),
|
29 |
-
|
30 |
-
'day'
|
31 |
-
'type'
|
32 |
Â
'description' => __( 'The date day', 'tribe-common' ),
|
33 |
-
|
34 |
-
'hour'
|
35 |
-
'type'
|
36 |
Â
'description' => __( 'The date hour', 'tribe-common' ),
|
37 |
-
|
38 |
-
'minutes' =>
|
39 |
-
'type'
|
40 |
Â
'description' => __( 'The date minutes', 'tribe-common' ),
|
41 |
-
|
42 |
-
'seconds' =>
|
43 |
-
'type'
|
44 |
Â
'description' => __( 'The date seconds', 'tribe-common' ),
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
Â
|
49 |
Â
/**
|
50 |
Â
* Filters the Swagger documentation generated for an date details in the TEC REST API.
|
16 |
Â
* @return array An array description of a Swagger supported component.
|
17 |
Â
*/
|
18 |
Â
public function get_documentation() {
|
19 |
+
$documentation = [
|
20 |
Â
'type' => 'object',
|
21 |
+
'properties' => [
|
22 |
+
'year' => [
|
23 |
+
'type' => 'integer',
|
24 |
Â
'description' => __( 'The date year', 'tribe-common' ),
|
25 |
+
],
|
26 |
+
'month' => [
|
27 |
+
'type' => 'integer',
|
28 |
Â
'description' => __( 'The date month', 'tribe-common' ),
|
29 |
+
],
|
30 |
+
'day' => [
|
31 |
+
'type' => 'integer',
|
32 |
Â
'description' => __( 'The date day', 'tribe-common' ),
|
33 |
+
],
|
34 |
+
'hour' => [
|
35 |
+
'type' => 'integer',
|
36 |
Â
'description' => __( 'The date hour', 'tribe-common' ),
|
37 |
+
],
|
38 |
+
'minutes' => [
|
39 |
+
'type' => 'integer',
|
40 |
Â
'description' => __( 'The date minutes', 'tribe-common' ),
|
41 |
+
],
|
42 |
+
'seconds' => [
|
43 |
+
'type' => 'integer',
|
44 |
Â
'description' => __( 'The date seconds', 'tribe-common' ),
|
45 |
+
],
|
46 |
+
],
|
47 |
+
];
|
48 |
Â
|
49 |
Â
/**
|
50 |
Â
* Filters the Swagger documentation generated for an date details in the TEC REST API.
|
common/src/Tribe/Documentation/Swagger/Image_Definition_Provider.php
CHANGED
@@ -16,39 +16,39 @@ class Tribe__Documentation__Swagger__Image_Definition_Provider
|
|
16 |
Â
* @return array An array description of a Swagger supported component.
|
17 |
Â
*/
|
18 |
Â
public function get_documentation() {
|
19 |
-
$documentation =
|
20 |
Â
'type' => 'object',
|
21 |
-
'properties' =>
|
22 |
-
'url' =>
|
23 |
Â
'type' => 'string',
|
24 |
Â
'format' => 'uri',
|
25 |
Â
'description' => __( 'The URL to the full size version of the image', 'tribe-common' ),
|
26 |
-
|
27 |
-
'id' =>
|
28 |
Â
'type' => 'integer',
|
29 |
Â
'description' => __( 'The image WordPress post ID', 'tribe-common' ),
|
30 |
-
|
31 |
-
'extension' =>
|
32 |
Â
'type' => 'string',
|
33 |
Â
'description' => __( 'The image file extension', 'tribe-common' ),
|
34 |
-
|
35 |
-
'width' =>
|
36 |
Â
'type' => 'integer',
|
37 |
Â
'description' => __( 'The image natural width in pixels', 'tribe-common' ),
|
38 |
-
|
39 |
-
'height' =>
|
40 |
Â
'type' => 'integer',
|
41 |
Â
'description' => __( 'The image natural height in pixels', 'tribe-common' ),
|
42 |
-
|
43 |
-
'sizes' =>
|
44 |
Â
'type' => 'array',
|
45 |
Â
'description' => __( 'The details about each size available for the image', 'tribe-common' ),
|
46 |
-
'items' =>
|
47 |
Â
'$ref' => '#/components/schemas/ImageSize',
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
Â
|
53 |
Â
/**
|
54 |
Â
* Filters the Swagger documentation generated for an image deatails in the TEC REST API.
|
16 |
Â
* @return array An array description of a Swagger supported component.
|
17 |
Â
*/
|
18 |
Â
public function get_documentation() {
|
19 |
+
$documentation = [
|
20 |
Â
'type' => 'object',
|
21 |
+
'properties' => [
|
22 |
+
'url' => [
|
23 |
Â
'type' => 'string',
|
24 |
Â
'format' => 'uri',
|
25 |
Â
'description' => __( 'The URL to the full size version of the image', 'tribe-common' ),
|
26 |
+
],
|
27 |
+
'id' => [
|
28 |
Â
'type' => 'integer',
|
29 |
Â
'description' => __( 'The image WordPress post ID', 'tribe-common' ),
|
30 |
+
],
|
31 |
+
'extension' => [
|
32 |
Â
'type' => 'string',
|
33 |
Â
'description' => __( 'The image file extension', 'tribe-common' ),
|
34 |
+
],
|
35 |
+
'width' => [
|
36 |
Â
'type' => 'integer',
|
37 |
Â
'description' => __( 'The image natural width in pixels', 'tribe-common' ),
|
38 |
+
],
|
39 |
+
'height' => [
|
40 |
Â
'type' => 'integer',
|
41 |
Â
'description' => __( 'The image natural height in pixels', 'tribe-common' ),
|
42 |
+
],
|
43 |
+
'sizes' => [
|
44 |
Â
'type' => 'array',
|
45 |
Â
'description' => __( 'The details about each size available for the image', 'tribe-common' ),
|
46 |
+
'items' => [
|
47 |
Â
'$ref' => '#/components/schemas/ImageSize',
|
48 |
+
],
|
49 |
+
],
|
50 |
+
],
|
51 |
+
];
|
52 |
Â
|
53 |
Â
/**
|
54 |
Â
* Filters the Swagger documentation generated for an image deatails in the TEC REST API.
|
common/src/Tribe/Documentation/Swagger/Image_Size_Definition_Provider.php
CHANGED
@@ -16,28 +16,28 @@ class Tribe__Documentation__Swagger__Image_Size_Definition_Provider
|
|
16 |
Â
* @return array An array description of a Swagger supported component.
|
17 |
Â
*/
|
18 |
Â
public function get_documentation() {
|
19 |
-
$documentation =
|
20 |
Â
'type' => 'object',
|
21 |
-
'properties' =>
|
22 |
-
'width'
|
23 |
-
'type'
|
24 |
Â
'description' => __( 'The image width in pixels in the specified size', 'tribe-common' ),
|
25 |
-
|
26 |
-
'height'
|
27 |
-
'type'
|
28 |
Â
'description' => __( 'The image height in pixels in the specified size', 'tribe-common' ),
|
29 |
-
|
30 |
-
'mime-type' =>
|
31 |
-
'type'
|
32 |
Â
'description' => __( 'The image mime-type', 'tribe-common' ),
|
33 |
-
|
34 |
-
'url'
|
35 |
-
'type'
|
36 |
-
'format'
|
37 |
Â
'description' => __( 'The link to the image in the specified size on the site', 'tribe-common' ),
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
Â
|
42 |
Â
/**
|
43 |
Â
* Filters the Swagger documentation generated for an image size in the TEC REST API.
|
16 |
Â
* @return array An array description of a Swagger supported component.
|
17 |
Â
*/
|
18 |
Â
public function get_documentation() {
|
19 |
+
$documentation = [
|
20 |
Â
'type' => 'object',
|
21 |
+
'properties' => [
|
22 |
+
'width' => [
|
23 |
+
'type' => 'integer',
|
24 |
Â
'description' => __( 'The image width in pixels in the specified size', 'tribe-common' ),
|
25 |
+
],
|
26 |
+
'height' => [
|
27 |
+
'type' => 'integer',
|
28 |
Â
'description' => __( 'The image height in pixels in the specified size', 'tribe-common' ),
|
29 |
+
],
|
30 |
+
'mime-type' => [
|
31 |
+
'type' => 'string',
|
32 |
Â
'description' => __( 'The image mime-type', 'tribe-common' ),
|
33 |
+
],
|
34 |
+
'url' => [
|
35 |
+
'type' => 'string',
|
36 |
+
'format' => 'uri',
|
37 |
Â
'description' => __( 'The link to the image in the specified size on the site', 'tribe-common' ),
|
38 |
+
],
|
39 |
+
],
|
40 |
+
];
|
41 |
Â
|
42 |
Â
/**
|
43 |
Â
* Filters the Swagger documentation generated for an image size in the TEC REST API.
|
common/src/Tribe/Documentation/Swagger/Term_Definition_Provider.php
CHANGED
@@ -16,48 +16,48 @@ class Tribe__Documentation__Swagger__Term_Definition_Provider
|
|
16 |
Â
* @return array An array description of a Swagger supported component.
|
17 |
Â
*/
|
18 |
Â
public function get_documentation() {
|
19 |
-
$documentation =
|
20 |
Â
'type' => 'object',
|
21 |
-
'properties' =>
|
22 |
-
'id'
|
23 |
-
'type'
|
24 |
Â
'description' => __( 'The WordPress term ID', 'tribe-common' ),
|
25 |
-
|
26 |
-
'name'
|
27 |
-
'type'
|
28 |
Â
'description' => __( 'The term name', 'tribe-common' ),
|
29 |
-
|
30 |
-
'slug'
|
31 |
-
'type'
|
32 |
Â
'description' => __( 'The term slug', 'tribe-common' ),
|
33 |
-
|
34 |
-
'taxonomy'
|
35 |
-
'type'
|
36 |
Â
'description' => __( 'The taxonomy the term belongs to', 'tribe-common' ),
|
37 |
-
|
38 |
-
'description' =>
|
39 |
-
'type'
|
40 |
Â
'description' => __( 'The term description', 'tribe-common' ),
|
41 |
-
|
42 |
-
'parent'
|
43 |
-
'type'
|
44 |
Â
'description' => __( 'The term parent term if any', 'tribe-common' ),
|
45 |
-
|
46 |
-
'count'
|
47 |
-
'type'
|
48 |
Â
'description' => __( 'The number of posts associated with the term', 'tribe-common' ),
|
49 |
-
|
50 |
-
'url'
|
51 |
-
'type'
|
52 |
Â
'description' => __( 'The URL to the term archive page', 'tribe-common' ),
|
53 |
-
|
54 |
-
'urls'
|
55 |
-
'type'
|
56 |
-
'items'
|
57 |
Â
'description' => __( 'A list of links to the term own, archive and parent REST URL', 'tribe-common' ),
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
Â
|
62 |
Â
/**
|
63 |
Â
* Filters the Swagger documentation generated for an term in the TEC REST API.
|
16 |
Â
* @return array An array description of a Swagger supported component.
|
17 |
Â
*/
|
18 |
Â
public function get_documentation() {
|
19 |
+
$documentation = [
|
20 |
Â
'type' => 'object',
|
21 |
+
'properties' => [
|
22 |
+
'id' => [
|
23 |
+
'type' => 'integer',
|
24 |
Â
'description' => __( 'The WordPress term ID', 'tribe-common' ),
|
25 |
+
],
|
26 |
+
'name' => [
|
27 |
+
'type' => 'string',
|
28 |
Â
'description' => __( 'The term name', 'tribe-common' ),
|
29 |
+
],
|
30 |
+
'slug' => [
|
31 |
+
'type' => 'string',
|
32 |
Â
'description' => __( 'The term slug', 'tribe-common' ),
|
33 |
+
],
|
34 |
+
'taxonomy' => [
|
35 |
+
'type' => 'string',
|
36 |
Â
'description' => __( 'The taxonomy the term belongs to', 'tribe-common' ),
|
37 |
+
],
|
38 |
+
'description' => [
|
39 |
+
'type' => 'string',
|
40 |
Â
'description' => __( 'The term description', 'tribe-common' ),
|
41 |
+
],
|
42 |
+
'parent' => [
|
43 |
+
'type' => 'integer',
|
44 |
Â
'description' => __( 'The term parent term if any', 'tribe-common' ),
|
45 |
+
],
|
46 |
+
'count' => [
|
47 |
+
'type' => 'integer',
|
48 |
Â
'description' => __( 'The number of posts associated with the term', 'tribe-common' ),
|
49 |
+
],
|
50 |
+
'url' => [
|
51 |
+
'type' => 'string',
|
52 |
Â
'description' => __( 'The URL to the term archive page', 'tribe-common' ),
|
53 |
+
],
|
54 |
+
'urls' => [
|
55 |
+
'type' => 'array',
|
56 |
+
'items' => [ 'type' => 'string' ],
|
57 |
Â
'description' => __( 'A list of links to the term own, archive and parent REST URL', 'tribe-common' ),
|
58 |
+
],
|
59 |
+
],
|
60 |
+
];
|
61 |
Â
|
62 |
Â
/**
|
63 |
Â
* Filters the Swagger documentation generated for an term in the TEC REST API.
|
common/src/Tribe/Duplicate/Post.php
CHANGED
@@ -14,7 +14,7 @@ class Tribe__Duplicate__Post {
|
|
14 |
Â
/**
|
15 |
Â
* @var array The columns of the post table.
|
16 |
Â
*/
|
17 |
-
public static $post_table_columns =
|
18 |
Â
'ID',
|
19 |
Â
'post_author',
|
20 |
Â
'post_date',
|
@@ -38,17 +38,17 @@ class Tribe__Duplicate__Post {
|
|
38 |
Â
'post_type',
|
39 |
Â
'post_mime_type',
|
40 |
Â
'comment_count',
|
41 |
-
|
42 |
Â
|
43 |
Â
/**
|
44 |
Â
* @var array The post fields that should be used to find a duplicate.
|
45 |
Â
*/
|
46 |
-
protected $post_fields =
|
47 |
Â
|
48 |
Â
/**
|
49 |
Â
* @var array The custom fields that should be used to find a duplicate.
|
50 |
Â
*/
|
51 |
-
protected $custom_fields =
|
52 |
Â
|
53 |
Â
/**
|
54 |
Â
* @var Tribe__Duplicate__Strategy_Factory
|
@@ -93,7 +93,7 @@ class Tribe__Duplicate__Post {
|
|
93 |
Â
*/
|
94 |
Â
public function use_post_fields( array $post_fields ) {
|
95 |
Â
if ( empty( $post_fields ) ) {
|
96 |
-
$this->post_fields =
|
97 |
Â
|
98 |
Â
return;
|
99 |
Â
}
|
@@ -112,16 +112,16 @@ class Tribe__Duplicate__Post {
|
|
112 |
Â
* @since 4.6
|
113 |
Â
*/
|
114 |
Â
protected function cast_to_strategy( array $fields ) {
|
115 |
-
$cast =
|
116 |
Â
|
117 |
Â
foreach ( $fields as $key => $value ) {
|
118 |
Â
if ( is_numeric( $key ) ) {
|
119 |
-
$cast[ $value ] =
|
120 |
Â
} elseif ( is_array( $value ) ) {
|
121 |
Â
if ( ! empty( $value['match'] ) ) {
|
122 |
Â
$cast[ $key ] = $value;
|
123 |
Â
} else {
|
124 |
-
$cast[ $key ] = array_merge( $value,
|
125 |
Â
}
|
126 |
Â
}
|
127 |
Â
}
|
@@ -291,9 +291,9 @@ class Tribe__Duplicate__Post {
|
|
291 |
Â
/** @var wpdb $wpdb */
|
292 |
Â
global $wpdb;
|
293 |
Â
|
294 |
-
$where_frags
|
295 |
-
$custom_fields_where_frags =
|
296 |
-
$join
|
297 |
Â
|
298 |
Â
if ( ! empty( $this->post_fields ) ) {
|
299 |
Â
$queryable_post_fields = array_intersect_key( $postarr, $this->post_fields );
|
@@ -333,10 +333,10 @@ class Tribe__Duplicate__Post {
|
|
333 |
Â
*/
|
334 |
Â
$join_limit = apply_filters( 'tribe_duplicate_post_join_limit', $this->join_limit, $where_frags, $this->post_type );
|
335 |
Â
|
336 |
-
$excluded_status =
|
337 |
Â
'trash',
|
338 |
Â
'autodraft',
|
339 |
-
|
340 |
Â
|
341 |
Â
/**
|
342 |
Â
* Filters the excluded status.
|
@@ -360,7 +360,7 @@ class Tribe__Duplicate__Post {
|
|
360 |
Â
$post_status_conditional = $wpdb->prepare( "{$wpdb->posts}.post_status NOT IN ( {$in_string} )", $excluded_status );
|
361 |
Â
}
|
362 |
Â
|
363 |
-
$queries =
|
364 |
Â
|
365 |
Â
if ( ! empty( $join_limit ) && ! empty( $join ) ) {
|
366 |
Â
while ( count( $join ) ) {
|
14 |
Â
/**
|
15 |
Â
* @var array The columns of the post table.
|
16 |
Â
*/
|
17 |
+
public static $post_table_columns = [
|
18 |
Â
'ID',
|
19 |
Â
'post_author',
|
20 |
Â
'post_date',
|
38 |
Â
'post_type',
|
39 |
Â
'post_mime_type',
|
40 |
Â
'comment_count',
|
41 |
+
];
|
42 |
Â
|
43 |
Â
/**
|
44 |
Â
* @var array The post fields that should be used to find a duplicate.
|
45 |
Â
*/
|
46 |
+
protected $post_fields = [];
|
47 |
Â
|
48 |
Â
/**
|
49 |
Â
* @var array The custom fields that should be used to find a duplicate.
|
50 |
Â
*/
|
51 |
+
protected $custom_fields = [];
|
52 |
Â
|
53 |
Â
/**
|
54 |
Â
* @var Tribe__Duplicate__Strategy_Factory
|
93 |
Â
*/
|
94 |
Â
public function use_post_fields( array $post_fields ) {
|
95 |
Â
if ( empty( $post_fields ) ) {
|
96 |
+
$this->post_fields = [];
|
97 |
Â
|
98 |
Â
return;
|
99 |
Â
}
|
112 |
Â
* @since 4.6
|
113 |
Â
*/
|
114 |
Â
protected function cast_to_strategy( array $fields ) {
|
115 |
+
$cast = [];
|
116 |
Â
|
117 |
Â
foreach ( $fields as $key => $value ) {
|
118 |
Â
if ( is_numeric( $key ) ) {
|
119 |
+
$cast[ $value ] = [ 'match' => 'same' ];
|
120 |
Â
} elseif ( is_array( $value ) ) {
|
121 |
Â
if ( ! empty( $value['match'] ) ) {
|
122 |
Â
$cast[ $key ] = $value;
|
123 |
Â
} else {
|
124 |
+
$cast[ $key ] = array_merge( $value, [ 'match' => 'same' ] );
|
125 |
Â
}
|
126 |
Â
}
|
127 |
Â
}
|
291 |
Â
/** @var wpdb $wpdb */
|
292 |
Â
global $wpdb;
|
293 |
Â
|
294 |
+
$where_frags = [];
|
295 |
+
$custom_fields_where_frags = [];
|
296 |
+
$join = [];
|
297 |
Â
|
298 |
Â
if ( ! empty( $this->post_fields ) ) {
|
299 |
Â
$queryable_post_fields = array_intersect_key( $postarr, $this->post_fields );
|
333 |
Â
*/
|
334 |
Â
$join_limit = apply_filters( 'tribe_duplicate_post_join_limit', $this->join_limit, $where_frags, $this->post_type );
|
335 |
Â
|
336 |
+
$excluded_status = [
|
337 |
Â
'trash',
|
338 |
Â
'autodraft',
|
339 |
+
];
|
340 |
Â
|
341 |
Â
/**
|
342 |
Â
* Filters the excluded status.
|
360 |
Â
$post_status_conditional = $wpdb->prepare( "{$wpdb->posts}.post_status NOT IN ( {$in_string} )", $excluded_status );
|
361 |
Â
}
|
362 |
Â
|
363 |
+
$queries = [];
|
364 |
Â
|
365 |
Â
if ( ! empty( $join_limit ) && ! empty( $join ) ) {
|
366 |
Â
while ( count( $join ) ) {
|
common/src/Tribe/Duplicate/Strategy/Base.php
CHANGED
@@ -19,6 +19,6 @@ abstract class Tribe__Duplicate__Strategy__Base {
|
|
19 |
Â
* @since 4.6
|
20 |
Â
*/
|
21 |
Â
protected function is_a_numeric_post_field( $key ) {
|
22 |
-
return in_array( $key,
|
23 |
Â
}
|
24 |
Â
}
|
19 |
Â
* @since 4.6
|
20 |
Â
*/
|
21 |
Â
protected function is_a_numeric_post_field( $key ) {
|
22 |
+
return in_array( $key, [ 'ID', 'post_author', 'post_parent', 'menu_order', 'comment_count' ] );
|
23 |
Â
}
|
24 |
Â
}
|
common/src/Tribe/Duplicate/Strategy/Like.php
CHANGED
@@ -31,7 +31,7 @@ class Tribe__Duplicate__Strategy__Like
|
|
31 |
Â
|
32 |
Â
$frags = $this->get_where_frags( $value );
|
33 |
Â
|
34 |
-
$where_frags =
|
35 |
Â
foreach ( $frags as $frag ) {
|
36 |
Â
$formatted_frag = '%' . $wpdb->esc_like( strtolower( trim( $frag ) ) ) . '%';
|
37 |
Â
$where_frags[] = $wpdb->prepare( "{$key} LIKE %s", $formatted_frag );
|
@@ -73,7 +73,7 @@ class Tribe__Duplicate__Strategy__Like
|
|
73 |
Â
|
74 |
Â
$frags = $this->get_where_frags( $value );
|
75 |
Â
|
76 |
-
$where_frags =
|
77 |
Â
foreach ( $frags as $frag ) {
|
78 |
Â
$formatted_frag = '%' . $wpdb->esc_like( strtolower( trim( $frag ) ) ) . '%';
|
79 |
Â
$query = "{$table_alias}.meta_value LIKE %s";
|
31 |
Â
|
32 |
Â
$frags = $this->get_where_frags( $value );
|
33 |
Â
|
34 |
+
$where_frags = [];
|
35 |
Â
foreach ( $frags as $frag ) {
|
36 |
Â
$formatted_frag = '%' . $wpdb->esc_like( strtolower( trim( $frag ) ) ) . '%';
|
37 |
Â
$where_frags[] = $wpdb->prepare( "{$key} LIKE %s", $formatted_frag );
|
73 |
Â
|
74 |
Â
$frags = $this->get_where_frags( $value );
|
75 |
Â
|
76 |
+
$where_frags = [ $wpdb->prepare( "{$table_alias}.meta_key = %s", $key ) ];
|
77 |
Â
foreach ( $frags as $frag ) {
|
78 |
Â
$formatted_frag = '%' . $wpdb->esc_like( strtolower( trim( $frag ) ) ) . '%';
|
79 |
Â
$query = "{$table_alias}.meta_value LIKE %s";
|
common/src/Tribe/Duplicate/Strategy_Factory.php
CHANGED
@@ -8,14 +8,14 @@
|
|
8 |
Â
* @since 4.6
|
9 |
Â
*/
|
10 |
Â
class Tribe__Duplicate__Strategy_Factory {
|
11 |
-
protected $strategy_map =
|
12 |
Â
|
13 |
Â
public function __construct() {
|
14 |
-
$strategy_map =
|
15 |
Â
'default' => 'Tribe__Duplicate__Strategy__Same',
|
16 |
Â
'same' => 'Tribe__Duplicate__Strategy__Same',
|
17 |
Â
'like' => 'Tribe__Duplicate__Strategy__Like',
|
18 |
-
|
19 |
Â
|
20 |
Â
/**
|
21 |
Â
* Filters the strategies managed by the strategy factory.
|
8 |
Â
* @since 4.6
|
9 |
Â
*/
|
10 |
Â
class Tribe__Duplicate__Strategy_Factory {
|
11 |
+
protected $strategy_map = [];
|
12 |
Â
|
13 |
Â
public function __construct() {
|
14 |
+
$strategy_map = [
|
15 |
Â
'default' => 'Tribe__Duplicate__Strategy__Same',
|
16 |
Â
'same' => 'Tribe__Duplicate__Strategy__Same',
|
17 |
Â
'like' => 'Tribe__Duplicate__Strategy__Like',
|
18 |
+
];
|
19 |
Â
|
20 |
Â
/**
|
21 |
Â
* Filters the strategies managed by the strategy factory.
|
common/src/Tribe/Editor.php
CHANGED
@@ -91,10 +91,10 @@ class Tribe__Editor {
|
|
91 |
Â
*
|
92 |
Â
* @return array
|
93 |
Â
*/
|
94 |
-
public function add_support( $args =
|
95 |
Â
// Make sure we have the Support argument and it's an array
|
96 |
Â
if ( ! isset( $args['supports'] ) || ! is_array( $args['supports'] ) ) {
|
97 |
-
$args['supports'] =
|
98 |
Â
}
|
99 |
Â
|
100 |
Â
// Add Editor Support
|
@@ -114,13 +114,13 @@ class Tribe__Editor {
|
|
114 |
Â
*
|
115 |
Â
* @return array
|
116 |
Â
*/
|
117 |
-
public function add_rest_support( $args =
|
118 |
Â
// Blocks Editor requires REST support
|
119 |
Â
$args['show_in_rest'] = true;
|
120 |
Â
|
121 |
Â
// Make sure we have the Support argument and it's an array
|
122 |
Â
if ( ! isset( $args['supports'] ) || ! is_array( $args['supports'] ) ) {
|
123 |
-
$args['supports'] =
|
124 |
Â
}
|
125 |
Â
|
126 |
Â
if ( ! in_array( 'revisions', $args['supports'] ) ) {
|
@@ -196,7 +196,7 @@ class Tribe__Editor {
|
|
196 |
Â
* @return bool
|
197 |
Â
*/
|
198 |
Â
public function is_classic_option_active() {
|
199 |
-
$valid_values =
|
200 |
Â
|
201 |
Â
return in_array( (string) get_option( 'classic-editor-replace' ), $valid_values, true );
|
202 |
Â
}
|
91 |
Â
*
|
92 |
Â
* @return array
|
93 |
Â
*/
|
94 |
+
public function add_support( $args = [] ) {
|
95 |
Â
// Make sure we have the Support argument and it's an array
|
96 |
Â
if ( ! isset( $args['supports'] ) || ! is_array( $args['supports'] ) ) {
|
97 |
+
$args['supports'] = [];
|
98 |
Â
}
|
99 |
Â
|
100 |
Â
// Add Editor Support
|
114 |
Â
*
|
115 |
Â
* @return array
|
116 |
Â
*/
|
117 |
+
public function add_rest_support( $args = [] ) {
|
118 |
Â
// Blocks Editor requires REST support
|
119 |
Â
$args['show_in_rest'] = true;
|
120 |
Â
|
121 |
Â
// Make sure we have the Support argument and it's an array
|
122 |
Â
if ( ! isset( $args['supports'] ) || ! is_array( $args['supports'] ) ) {
|
123 |
+
$args['supports'] = [];
|
124 |
Â
}
|
125 |
Â
|
126 |
Â
if ( ! in_array( 'revisions', $args['supports'] ) ) {
|
196 |
Â
* @return bool
|
197 |
Â
*/
|
198 |
Â
public function is_classic_option_active() {
|
199 |
+
$valid_values = [ 'replace', 'classic' ];
|
200 |
Â
|
201 |
Â
return in_array( (string) get_option( 'classic-editor-replace' ), $valid_values, true );
|
202 |
Â
}
|
common/src/Tribe/Editor/Assets.php
CHANGED
@@ -1,4 +1,5 @@
|
|
1 |
Â
<?php
|
Â
|
|
2 |
Â
/**
|
3 |
Â
* Events Gutenberg Assets
|
4 |
Â
*
|
@@ -12,7 +13,7 @@ class Tribe__Editor__Assets {
|
|
12 |
Â
* @return void
|
13 |
Â
*/
|
14 |
Â
public function hook() {
|
15 |
-
add_action( 'tribe_plugins_loaded',
|
16 |
Â
}
|
17 |
Â
|
18 |
Â
/**
|
@@ -35,12 +36,22 @@ class Tribe__Editor__Assets {
|
|
35 |
Â
/**
|
36 |
Â
* @todo revise this dependencies
|
37 |
Â
*/
|
38 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
39 |
Â
'enqueue_block_editor_assets',
|
40 |
-
|
41 |
Â
'in_footer' => false,
|
42 |
-
'localize'
|
43 |
-
|
44 |
Â
'name' => 'tribe_editor_config',
|
45 |
Â
/**
|
46 |
Â
* Array used to setup the FE with custom variables from the BE
|
@@ -50,10 +61,10 @@ class Tribe__Editor__Assets {
|
|
50 |
Â
* @param array An array with the variables to be localized
|
51 |
Â
*/
|
52 |
Â
'data' => tribe_callback( 'common.editor.configuration', 'localize' ),
|
53 |
-
|
54 |
-
|
55 |
Â
'priority' => 11,
|
56 |
-
|
57 |
Â
);
|
58 |
Â
|
59 |
Â
tribe_asset(
|
@@ -63,13 +74,23 @@ class Tribe__Editor__Assets {
|
|
63 |
Â
/**
|
64 |
Â
* @todo revise this dependencies
|
65 |
Â
*/
|
66 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
67 |
Â
'enqueue_block_editor_assets',
|
68 |
-
|
69 |
Â
'in_footer' => false,
|
70 |
-
'localize' =>
|
71 |
Â
'priority' => 12,
|
72 |
-
|
73 |
Â
);
|
74 |
Â
tribe_asset(
|
75 |
Â
$plugin,
|
@@ -78,13 +99,23 @@ class Tribe__Editor__Assets {
|
|
78 |
Â
/**
|
79 |
Â
* @todo revise this dependencies
|
80 |
Â
*/
|
81 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
82 |
Â
'enqueue_block_editor_assets',
|
83 |
-
|
84 |
Â
'in_footer' => false,
|
85 |
-
'localize' =>
|
86 |
Â
'priority' => 13,
|
87 |
-
|
88 |
Â
);
|
89 |
Â
tribe_asset(
|
90 |
Â
$plugin,
|
@@ -93,13 +124,23 @@ class Tribe__Editor__Assets {
|
|
93 |
Â
/**
|
94 |
Â
* @todo revise this dependencies
|
95 |
Â
*/
|
96 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
97 |
Â
'enqueue_block_editor_assets',
|
98 |
-
|
99 |
Â
'in_footer' => false,
|
100 |
-
'localize' =>
|
101 |
Â
'priority' => 14,
|
102 |
-
|
103 |
Â
);
|
104 |
Â
tribe_asset(
|
105 |
Â
$plugin,
|
@@ -108,7 +149,7 @@ class Tribe__Editor__Assets {
|
|
108 |
Â
/**
|
109 |
Â
* @todo revise this dependencies
|
110 |
Â
*/
|
111 |
-
|
112 |
Â
'react',
|
113 |
Â
'react-dom',
|
114 |
Â
'wp-components',
|
@@ -118,13 +159,13 @@ class Tribe__Editor__Assets {
|
|
118 |
Â
'wp-i18n',
|
119 |
Â
'wp-element',
|
120 |
Â
'wp-editor',
|
121 |
-
|
122 |
Â
'enqueue_block_editor_assets',
|
123 |
-
|
124 |
Â
'in_footer' => false,
|
125 |
-
'localize' =>
|
126 |
Â
'priority' => 15,
|
127 |
-
|
128 |
Â
);
|
129 |
Â
tribe_asset(
|
130 |
Â
$plugin,
|
@@ -133,13 +174,23 @@ class Tribe__Editor__Assets {
|
|
133 |
Â
/**
|
134 |
Â
* @todo revise this dependencies
|
135 |
Â
*/
|
136 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
137 |
Â
'enqueue_block_editor_assets',
|
138 |
-
|
139 |
Â
'in_footer' => false,
|
140 |
-
'localize' =>
|
141 |
Â
'priority' => 16,
|
142 |
-
|
143 |
Â
);
|
144 |
Â
tribe_asset(
|
145 |
Â
$plugin,
|
@@ -148,7 +199,7 @@ class Tribe__Editor__Assets {
|
|
148 |
Â
/**
|
149 |
Â
* @todo revise this dependencies
|
150 |
Â
*/
|
151 |
-
|
152 |
Â
'react',
|
153 |
Â
'react-dom',
|
154 |
Â
'wp-components',
|
@@ -158,13 +209,13 @@ class Tribe__Editor__Assets {
|
|
158 |
Â
'wp-i18n',
|
159 |
Â
'wp-element',
|
160 |
Â
'wp-editor',
|
161 |
-
|
162 |
Â
'enqueue_block_editor_assets',
|
163 |
-
|
164 |
Â
'in_footer' => false,
|
165 |
-
'localize' =>
|
166 |
Â
'priority' => 17,
|
167 |
-
|
168 |
Â
);
|
169 |
Â
/**
|
170 |
Â
* @todo: figure out why element styles are loading for tickets but not events.
|
@@ -176,7 +227,7 @@ class Tribe__Editor__Assets {
|
|
176 |
Â
/**
|
177 |
Â
* @todo revise this dependencies
|
178 |
Â
*/
|
179 |
-
|
180 |
Â
'react',
|
181 |
Â
'react-dom',
|
182 |
Â
'wp-components',
|
@@ -186,23 +237,23 @@ class Tribe__Editor__Assets {
|
|
186 |
Â
'wp-i18n',
|
187 |
Â
'wp-element',
|
188 |
Â
'wp-editor',
|
189 |
-
|
190 |
Â
'enqueue_block_editor_assets',
|
191 |
-
|
192 |
Â
'in_footer' => false,
|
193 |
-
'localize' =>
|
194 |
Â
'priority' => 17,
|
195 |
-
|
196 |
Â
);
|
197 |
Â
tribe_asset(
|
198 |
Â
$plugin,
|
199 |
Â
'tribe-common-gutenberg-elements-styles',
|
200 |
Â
'app/elements.css',
|
201 |
-
|
202 |
Â
'enqueue_block_editor_assets',
|
203 |
-
|
204 |
-
'in_footer'
|
205 |
-
|
206 |
Â
);
|
207 |
Â
}
|
208 |
Â
}
|
1 |
Â
<?php
|
2 |
+
|
3 |
Â
/**
|
4 |
Â
* Events Gutenberg Assets
|
5 |
Â
*
|
13 |
Â
* @return void
|
14 |
Â
*/
|
15 |
Â
public function hook() {
|
16 |
+
add_action( 'tribe_plugins_loaded', [ $this, 'register' ] );
|
17 |
Â
}
|
18 |
Â
|
19 |
Â
/**
|
36 |
Â
/**
|
37 |
Â
* @todo revise this dependencies
|
38 |
Â
*/
|
39 |
+
[
|
40 |
+
'react',
|
41 |
+
'react-dom',
|
42 |
+
'wp-components',
|
43 |
+
'wp-api',
|
44 |
+
'wp-api-request',
|
45 |
+
'wp-blocks',
|
46 |
+
'wp-i18n',
|
47 |
+
'wp-element',
|
48 |
+
'wp-editor',
|
49 |
+
],
|
50 |
Â
'enqueue_block_editor_assets',
|
51 |
+
[
|
52 |
Â
'in_footer' => false,
|
53 |
+
'localize' => [
|
54 |
+
[
|
55 |
Â
'name' => 'tribe_editor_config',
|
56 |
Â
/**
|
57 |
Â
* Array used to setup the FE with custom variables from the BE
|
61 |
Â
* @param array An array with the variables to be localized
|
62 |
Â
*/
|
63 |
Â
'data' => tribe_callback( 'common.editor.configuration', 'localize' ),
|
64 |
+
],
|
65 |
+
],
|
66 |
Â
'priority' => 11,
|
67 |
+
]
|
68 |
Â
);
|
69 |
Â
|
70 |
Â
tribe_asset(
|
74 |
Â
/**
|
75 |
Â
* @todo revise this dependencies
|
76 |
Â
*/
|
77 |
+
[
|
78 |
+
'react',
|
79 |
+
'react-dom',
|
80 |
+
'wp-components',
|
81 |
+
'wp-api',
|
82 |
+
'wp-api-request',
|
83 |
+
'wp-blocks',
|
84 |
+
'wp-i18n',
|
85 |
+
'wp-element',
|
86 |
+
'wp-editor',
|
87 |
+
],
|
88 |
Â
'enqueue_block_editor_assets',
|
89 |
+
[
|
90 |
Â
'in_footer' => false,
|
91 |
+
'localize' => [],
|
92 |
Â
'priority' => 12,
|
93 |
+
]
|
94 |
Â
);
|
95 |
Â
tribe_asset(
|
96 |
Â
$plugin,
|
99 |
Â
/**
|
100 |
Â
* @todo revise this dependencies
|
101 |
Â
*/
|
102 |
+
[
|
103 |
+
'react',
|
104 |
+
'react-dom',
|
105 |
+
'wp-components',
|
106 |
+
'wp-api',
|
107 |
+
'wp-api-request',
|
108 |
+
'wp-blocks',
|
109 |
+
'wp-i18n',
|
110 |
+
'wp-element',
|
111 |
+
'wp-editor',
|
112 |
+
],
|
113 |
Â
'enqueue_block_editor_assets',
|
114 |
+
[
|
115 |
Â
'in_footer' => false,
|
116 |
+
'localize' => [],
|
117 |
Â
'priority' => 13,
|
118 |
+
]
|
119 |
Â
);
|
120 |
Â
tribe_asset(
|
121 |
Â
$plugin,
|
124 |
Â
/**
|
125 |
Â
* @todo revise this dependencies
|
126 |
Â
*/
|
127 |
+
[
|
128 |
+
'react',
|
129 |
+
'react-dom',
|
130 |
+
'wp-components',
|
131 |
+
'wp-api',
|
132 |
+
'wp-api-request',
|
133 |
+
'wp-blocks',
|
134 |
+
'wp-i18n',
|
135 |
+
'wp-element',
|
136 |
+
'wp-editor',
|
137 |
+
],
|
138 |
Â
'enqueue_block_editor_assets',
|
139 |
+
[
|
140 |
Â
'in_footer' => false,
|
141 |
+
'localize' => [],
|
142 |
Â
'priority' => 14,
|
143 |
+
]
|
144 |
Â
);
|
145 |
Â
tribe_asset(
|
146 |
Â
$plugin,
|
149 |
Â
/**
|
150 |
Â
* @todo revise this dependencies
|
151 |
Â
*/
|
152 |
+
[
|
153 |
Â
'react',
|
154 |
Â
'react-dom',
|
155 |
Â
'wp-components',
|
159 |
Â
'wp-i18n',
|
160 |
Â
'wp-element',
|
161 |
Â
'wp-editor',
|
162 |
+
],
|
163 |
Â
'enqueue_block_editor_assets',
|
164 |
+
[
|
165 |
Â
'in_footer' => false,
|
166 |
+
'localize' => [],
|
167 |
Â
'priority' => 15,
|
168 |
+
]
|
169 |
Â
);
|
170 |
Â
tribe_asset(
|
171 |
Â
$plugin,
|
174 |
Â
/**
|
175 |
Â
* @todo revise this dependencies
|
176 |
Â
*/
|
177 |
+
[
|
178 |
+
'react',
|
179 |
+
'react-dom',
|
180 |
+
'wp-components',
|
181 |
+
'wp-api',
|
182 |
+
'wp-api-request',
|
183 |
+
'wp-blocks',
|
184 |
+
'wp-i18n',
|
185 |
+
'wp-element',
|
186 |
+
'wp-editor',
|
187 |
+
],
|
188 |
Â
'enqueue_block_editor_assets',
|
189 |
+
[
|
190 |
Â
'in_footer' => false,
|
191 |
+
'localize' => [],
|
192 |
Â
'priority' => 16,
|
193 |
+
]
|
194 |
Â
);
|
195 |
Â
tribe_asset(
|
196 |
Â
$plugin,
|
199 |
Â
/**
|
200 |
Â
* @todo revise this dependencies
|
201 |
Â
*/
|
202 |
+
[
|
203 |
Â
'react',
|
204 |
Â
'react-dom',
|
205 |
Â
'wp-components',
|
209 |
Â
'wp-i18n',
|
210 |
Â
'wp-element',
|
211 |
Â
'wp-editor',
|
212 |
+
],
|
213 |
Â
'enqueue_block_editor_assets',
|
214 |
+
[
|
215 |
Â
'in_footer' => false,
|
216 |
+
'localize' => [],
|
217 |
Â
'priority' => 17,
|
218 |
+
]
|
219 |
Â
);
|
220 |
Â
/**
|
221 |
Â
* @todo: figure out why element styles are loading for tickets but not events.
|
227 |
Â
/**
|
228 |
Â
* @todo revise this dependencies
|
229 |
Â
*/
|
230 |
+
[
|
231 |
Â
'react',
|
232 |
Â
'react-dom',
|
233 |
Â
'wp-components',
|
237 |
Â
'wp-i18n',
|
238 |
Â
'wp-element',
|
239 |
Â
'wp-editor',
|
240 |
+
],
|
241 |
Â
'enqueue_block_editor_assets',
|
242 |
+
[
|
243 |
Â
'in_footer' => false,
|
244 |
+
'localize' => [],
|
245 |
Â
'priority' => 17,
|
246 |
+
]
|
247 |
Â
);
|
248 |
Â
tribe_asset(
|
249 |
Â
$plugin,
|
250 |
Â
'tribe-common-gutenberg-elements-styles',
|
251 |
Â
'app/elements.css',
|
252 |
+
[],
|
253 |
Â
'enqueue_block_editor_assets',
|
254 |
+
[
|
255 |
+
'in_footer' => false,
|
256 |
+
]
|
257 |
Â
);
|
258 |
Â
}
|
259 |
Â
}
|
common/src/Tribe/Editor/Blocks/Abstract.php
CHANGED
@@ -47,7 +47,7 @@ implements Tribe__Editor__Blocks__Interface {
|
|
47 |
Â
*
|
48 |
Â
* @return array
|
49 |
Â
*/
|
50 |
-
public function attributes( $params =
|
51 |
Â
|
52 |
Â
// get the default attributes
|
53 |
Â
$default_attributes = $this->default_attributes();
|
@@ -80,7 +80,7 @@ implements Tribe__Editor__Blocks__Interface {
|
|
80 |
Â
*/
|
81 |
Â
public function default_attributes() {
|
82 |
Â
|
83 |
-
$attributes =
|
84 |
Â
|
85 |
Â
/**
|
86 |
Â
* Filters the default attributes
|
@@ -102,12 +102,8 @@ implements Tribe__Editor__Blocks__Interface {
|
|
102 |
Â
*
|
103 |
Â
* @return string
|
104 |
Â
*/
|
105 |
-
public function render( $attributes =
|
106 |
-
|
107 |
-
$json_string = json_encode( $attributes, JSON_PRETTY_PRINT );
|
108 |
-
} else {
|
109 |
-
$json_string = json_encode( $attributes );
|
110 |
-
}
|
111 |
Â
|
112 |
Â
return
|
113 |
Â
'<pre class="tribe-placeholder-text-' . $this->name() . '">' .
|
@@ -136,13 +132,13 @@ implements Tribe__Editor__Blocks__Interface {
|
|
136 |
Â
* @return void
|
137 |
Â
*/
|
138 |
Â
public function register() {
|
139 |
-
$block_args =
|
140 |
-
'render_callback' =>
|
141 |
-
|
142 |
Â
|
143 |
Â
register_block_type( $this->name(), $block_args );
|
144 |
Â
|
145 |
-
add_action( 'wp_ajax_' . $this->get_ajax_action(),
|
146 |
Â
|
147 |
Â
$this->assets();
|
148 |
Â
$this->hook();
|
47 |
Â
*
|
48 |
Â
* @return array
|
49 |
Â
*/
|
50 |
+
public function attributes( $params = [] ) {
|
51 |
Â
|
52 |
Â
// get the default attributes
|
53 |
Â
$default_attributes = $this->default_attributes();
|
80 |
Â
*/
|
81 |
Â
public function default_attributes() {
|
82 |
Â
|
83 |
+
$attributes = [];
|
84 |
Â
|
85 |
Â
/**
|
86 |
Â
* Filters the default attributes
|
102 |
Â
*
|
103 |
Â
* @return string
|
104 |
Â
*/
|
105 |
+
public function render( $attributes = [] ) {
|
106 |
+
$json_string = json_encode( $attributes, JSON_PRETTY_PRINT );
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
107 |
Â
|
108 |
Â
return
|
109 |
Â
'<pre class="tribe-placeholder-text-' . $this->name() . '">' .
|
132 |
Â
* @return void
|
133 |
Â
*/
|
134 |
Â
public function register() {
|
135 |
+
$block_args = [
|
136 |
+
'render_callback' => [ $this, 'render' ],
|
137 |
+
];
|
138 |
Â
|
139 |
Â
register_block_type( $this->name(), $block_args );
|
140 |
Â
|
141 |
+
add_action( 'wp_ajax_' . $this->get_ajax_action(), [ $this, 'ajax' ] );
|
142 |
Â
|
143 |
Â
$this->assets();
|
144 |
Â
$this->hook();
|
common/src/Tribe/Editor/Blocks/Interface.php
CHANGED
@@ -38,7 +38,7 @@ interface Tribe__Editor__Blocks__Interface {
|
|
38 |
Â
*
|
39 |
Â
* @return string
|
40 |
Â
*/
|
41 |
-
public function render( $attributes =
|
42 |
Â
|
43 |
Â
/**
|
44 |
Â
* Does the registration for PHP rendering for the Block, important due to been
|
38 |
Â
*
|
39 |
Â
* @return string
|
40 |
Â
*/
|
41 |
+
public function render( $attributes = [] );
|
42 |
Â
|
43 |
Â
/**
|
44 |
Â
* Does the registration for PHP rendering for the Block, important due to been
|
common/src/Tribe/Editor/Configuration.php
CHANGED
@@ -16,31 +16,31 @@ class Tribe__Editor__Configuration implements Tribe__Editor__Configuration_Inter
|
|
16 |
Â
* @return array
|
17 |
Â
*/
|
18 |
Â
public function localize() {
|
19 |
-
$editor_config =
|
20 |
-
'common' =>
|
21 |
Â
'adminUrl' => admin_url(),
|
22 |
-
'timeZone' =>
|
23 |
Â
'showTimeZone' => false,
|
24 |
Â
'label' => $this->get_timezone_label(),
|
25 |
-
|
26 |
-
'rest' =>
|
27 |
Â
'url' => get_rest_url(),
|
28 |
-
'nonce' =>
|
29 |
Â
'wp_rest' => wp_create_nonce( 'wp_rest' ),
|
30 |
-
|
31 |
-
'namespaces' =>
|
32 |
Â
'core' => 'wp/v2',
|
33 |
-
|
34 |
-
|
35 |
Â
'dateSettings' => $this->get_date_settings(),
|
36 |
-
'constants' =>
|
37 |
Â
'hideUpsell' => ( defined( 'TRIBE_HIDE_UPSELL' ) && TRIBE_HIDE_UPSELL ),
|
38 |
-
|
39 |
Â
'countries' => tribe( 'languages.locations' )->get_countries(),
|
40 |
Â
'usStates' => Tribe__View_Helpers::loadStates(),
|
41 |
-
|
42 |
Â
'blocks' => [],
|
43 |
-
|
44 |
Â
|
45 |
Â
/**
|
46 |
Â
* Filter the default configuration used to localize variables
|
@@ -76,31 +76,31 @@ class Tribe__Editor__Configuration implements Tribe__Editor__Configuration_Inter
|
|
76 |
Â
public function get_date_settings() {
|
77 |
Â
global $wp_locale;
|
78 |
Â
|
79 |
-
return
|
80 |
-
'l10n' =>
|
81 |
Â
'locale' => get_user_locale(),
|
82 |
Â
'months' => array_values( $wp_locale->month ),
|
83 |
Â
'monthsShort' => array_values( $wp_locale->month_abbrev ),
|
84 |
Â
'weekdays' => array_values( $wp_locale->weekday ),
|
85 |
Â
'weekdaysShort' => array_values( $wp_locale->weekday_abbrev ),
|
86 |
Â
'meridiem' => (object) $wp_locale->meridiem,
|
87 |
-
'relative' =>
|
88 |
Â
/* translators: %s: duration */
|
89 |
Â
'future' => __( '%s from now', 'default' ),
|
90 |
Â
/* translators: %s: duration */
|
91 |
Â
'past' => __( '%s ago', 'default' ),
|
92 |
-
|
93 |
-
|
94 |
-
'formats' =>
|
95 |
Â
'time' => get_option( 'time_format', __( 'g:i a', 'default' ) ),
|
96 |
Â
'date' => get_option( 'date_format', __( 'F j, Y', 'default' ) ),
|
97 |
Â
'dateNoYear' => __( 'F j', 'default' ),
|
98 |
Â
'datetime' => get_option( 'date_format', __( 'F j, Y', 'default' ) ) . ' ' . get_option( 'time_format', __( 'g:i a', 'default' ) ),
|
99 |
-
|
100 |
-
'timezone' =>
|
101 |
Â
'offset' => get_option( 'gmt_offset', 0 ),
|
102 |
Â
'string' => $this->get_timezone_label(),
|
103 |
-
|
104 |
-
|
105 |
Â
}
|
106 |
Â
}
|
16 |
Â
* @return array
|
17 |
Â
*/
|
18 |
Â
public function localize() {
|
19 |
+
$editor_config = [
|
20 |
+
'common' => [
|
21 |
Â
'adminUrl' => admin_url(),
|
22 |
+
'timeZone' => [
|
23 |
Â
'showTimeZone' => false,
|
24 |
Â
'label' => $this->get_timezone_label(),
|
25 |
+
],
|
26 |
+
'rest' => [
|
27 |
Â
'url' => get_rest_url(),
|
28 |
+
'nonce' => [
|
29 |
Â
'wp_rest' => wp_create_nonce( 'wp_rest' ),
|
30 |
+
],
|
31 |
+
'namespaces' => [
|
32 |
Â
'core' => 'wp/v2',
|
33 |
+
],
|
34 |
+
],
|
35 |
Â
'dateSettings' => $this->get_date_settings(),
|
36 |
+
'constants' => [
|
37 |
Â
'hideUpsell' => ( defined( 'TRIBE_HIDE_UPSELL' ) && TRIBE_HIDE_UPSELL ),
|
38 |
+
],
|
39 |
Â
'countries' => tribe( 'languages.locations' )->get_countries(),
|
40 |
Â
'usStates' => Tribe__View_Helpers::loadStates(),
|
41 |
+
],
|
42 |
Â
'blocks' => [],
|
43 |
+
];
|
44 |
Â
|
45 |
Â
/**
|
46 |
Â
* Filter the default configuration used to localize variables
|
76 |
Â
public function get_date_settings() {
|
77 |
Â
global $wp_locale;
|
78 |
Â
|
79 |
+
return [
|
80 |
+
'l10n' => [
|
81 |
Â
'locale' => get_user_locale(),
|
82 |
Â
'months' => array_values( $wp_locale->month ),
|
83 |
Â
'monthsShort' => array_values( $wp_locale->month_abbrev ),
|
84 |
Â
'weekdays' => array_values( $wp_locale->weekday ),
|
85 |
Â
'weekdaysShort' => array_values( $wp_locale->weekday_abbrev ),
|
86 |
Â
'meridiem' => (object) $wp_locale->meridiem,
|
87 |
+
'relative' => [
|
88 |
Â
/* translators: %s: duration */
|
89 |
Â
'future' => __( '%s from now', 'default' ),
|
90 |
Â
/* translators: %s: duration */
|
91 |
Â
'past' => __( '%s ago', 'default' ),
|
92 |
+
],
|
93 |
+
],
|
94 |
+
'formats' => [
|
95 |
Â
'time' => get_option( 'time_format', __( 'g:i a', 'default' ) ),
|
96 |
Â
'date' => get_option( 'date_format', __( 'F j, Y', 'default' ) ),
|
97 |
Â
'dateNoYear' => __( 'F j', 'default' ),
|
98 |
Â
'datetime' => get_option( 'date_format', __( 'F j, Y', 'default' ) ) . ' ' . get_option( 'time_format', __( 'g:i a', 'default' ) ),
|
99 |
+
],
|
100 |
+
'timezone' => [
|
101 |
Â
'offset' => get_option( 'gmt_offset', 0 ),
|
102 |
Â
'string' => $this->get_timezone_label(),
|
103 |
+
],
|
104 |
+
];
|
105 |
Â
}
|
106 |
Â
}
|
common/src/Tribe/Editor/Meta.php
CHANGED
@@ -16,13 +16,13 @@ abstract class Tribe__Editor__Meta
|
|
16 |
Â
* @return array
|
17 |
Â
*/
|
18 |
Â
protected function text() {
|
19 |
-
return
|
20 |
-
'auth_callback' =>
|
21 |
Â
'sanitize_callback' => 'sanitize_text_field',
|
22 |
Â
'type' => 'string',
|
23 |
Â
'single' => true,
|
24 |
Â
'show_in_rest' => true,
|
25 |
-
|
26 |
Â
}
|
27 |
Â
|
28 |
Â
/**
|
@@ -33,13 +33,13 @@ abstract class Tribe__Editor__Meta
|
|
33 |
Â
* @return array
|
34 |
Â
*/
|
35 |
Â
protected function textarea() {
|
36 |
-
return
|
37 |
-
'auth_callback' =>
|
38 |
Â
'sanitize_callback' => 'sanitize_textarea_field',
|
39 |
Â
'type' => 'string',
|
40 |
Â
'single' => true,
|
41 |
Â
'show_in_rest' => true,
|
42 |
-
|
43 |
Â
}
|
44 |
Â
|
45 |
Â
/**
|
@@ -50,13 +50,13 @@ abstract class Tribe__Editor__Meta
|
|
50 |
Â
* @return array
|
51 |
Â
*/
|
52 |
Â
protected function url() {
|
53 |
-
return
|
54 |
-
'auth_callback' =>
|
55 |
Â
'sanitize_callback' => 'esc_url_raw',
|
56 |
Â
'type' => 'string',
|
57 |
Â
'single' => true,
|
58 |
Â
'show_in_rest' => true,
|
59 |
-
|
60 |
Â
}
|
61 |
Â
|
62 |
Â
/**
|
@@ -67,13 +67,13 @@ abstract class Tribe__Editor__Meta
|
|
67 |
Â
* @return array
|
68 |
Â
*/
|
69 |
Â
protected function numeric() {
|
70 |
-
return
|
71 |
-
'auth_callback' =>
|
72 |
Â
'sanitize_callback' => 'absint',
|
73 |
Â
'type' => 'number',
|
74 |
Â
'single' => true,
|
75 |
Â
'show_in_rest' => true,
|
76 |
-
|
77 |
Â
}
|
78 |
Â
|
79 |
Â
/***
|
@@ -84,13 +84,13 @@ abstract class Tribe__Editor__Meta
|
|
84 |
Â
* @return array
|
85 |
Â
*/
|
86 |
Â
protected function boolean() {
|
87 |
-
return
|
88 |
-
'auth_callback' =>
|
89 |
-
'sanitize_callback' =>
|
90 |
Â
'type' => 'boolean',
|
91 |
Â
'single' => true,
|
92 |
Â
'show_in_rest' => true,
|
93 |
-
|
94 |
Â
}
|
95 |
Â
|
96 |
Â
/**
|
@@ -101,14 +101,14 @@ abstract class Tribe__Editor__Meta
|
|
101 |
Â
* @return array
|
102 |
Â
*/
|
103 |
Â
protected function numeric_array() {
|
104 |
-
return
|
105 |
Â
'description' => __( 'Numeric Array', 'tribe-common' ),
|
106 |
-
'auth_callback' =>
|
107 |
-
'sanitize_callback' =>
|
108 |
Â
'type' => 'number',
|
109 |
Â
'single' => false,
|
110 |
Â
'show_in_rest' => true,
|
111 |
-
|
112 |
Â
}
|
113 |
Â
|
114 |
Â
/**
|
@@ -119,14 +119,14 @@ abstract class Tribe__Editor__Meta
|
|
119 |
Â
* @return array
|
120 |
Â
*/
|
121 |
Â
protected function text_array() {
|
122 |
-
return
|
123 |
Â
'description' => __( 'Text Array', 'tribe-common' ),
|
124 |
-
'auth_callback' =>
|
125 |
-
'sanitize_callback' =>
|
126 |
Â
'type' => 'string',
|
127 |
Â
'single' => false,
|
128 |
Â
'show_in_rest' => true,
|
129 |
-
|
130 |
Â
}
|
131 |
Â
|
132 |
Â
/**
|
16 |
Â
* @return array
|
17 |
Â
*/
|
18 |
Â
protected function text() {
|
19 |
+
return [
|
20 |
+
'auth_callback' => [ $this, 'auth_callback' ],
|
21 |
Â
'sanitize_callback' => 'sanitize_text_field',
|
22 |
Â
'type' => 'string',
|
23 |
Â
'single' => true,
|
24 |
Â
'show_in_rest' => true,
|
25 |
+
];
|
26 |
Â
}
|
27 |
Â
|
28 |
Â
/**
|
33 |
Â
* @return array
|
34 |
Â
*/
|
35 |
Â
protected function textarea() {
|
36 |
+
return [
|
37 |
+
'auth_callback' => [ $this, 'auth_callback' ],
|
38 |
Â
'sanitize_callback' => 'sanitize_textarea_field',
|
39 |
Â
'type' => 'string',
|
40 |
Â
'single' => true,
|
41 |
Â
'show_in_rest' => true,
|
42 |
+
];
|
43 |
Â
}
|
44 |
Â
|
45 |
Â
/**
|
50 |
Â
* @return array
|
51 |
Â
*/
|
52 |
Â
protected function url() {
|
53 |
+
return [
|
54 |
+
'auth_callback' => [ $this, 'auth_callback' ],
|
55 |
Â
'sanitize_callback' => 'esc_url_raw',
|
56 |
Â
'type' => 'string',
|
57 |
Â
'single' => true,
|
58 |
Â
'show_in_rest' => true,
|
59 |
+
];
|
60 |
Â
}
|
61 |
Â
|
62 |
Â
/**
|
67 |
Â
* @return array
|
68 |
Â
*/
|
69 |
Â
protected function numeric() {
|
70 |
+
return [
|
71 |
+
'auth_callback' => [ $this, 'auth_callback' ],
|
72 |
Â
'sanitize_callback' => 'absint',
|
73 |
Â
'type' => 'number',
|
74 |
Â
'single' => true,
|
75 |
Â
'show_in_rest' => true,
|
76 |
+
];
|
77 |
Â
}
|
78 |
Â
|
79 |
Â
/***
|
84 |
Â
* @return array
|
85 |
Â
*/
|
86 |
Â
protected function boolean() {
|
87 |
+
return [
|
88 |
+
'auth_callback' => [ $this, 'auth_callback' ],
|
89 |
+
'sanitize_callback' => [ $this, 'sanitize_boolean' ],
|
90 |
Â
'type' => 'boolean',
|
91 |
Â
'single' => true,
|
92 |
Â
'show_in_rest' => true,
|
93 |
+
];
|
94 |
Â
}
|
95 |
Â
|
96 |
Â
/**
|
101 |
Â
* @return array
|
102 |
Â
*/
|
103 |
Â
protected function numeric_array() {
|
104 |
+
return [
|
105 |
Â
'description' => __( 'Numeric Array', 'tribe-common' ),
|
106 |
+
'auth_callback' => [ $this, 'auth_callback' ],
|
107 |
+
'sanitize_callback' => [ $this, 'sanitize_numeric_array' ],
|
108 |
Â
'type' => 'number',
|
109 |
Â
'single' => false,
|
110 |
Â
'show_in_rest' => true,
|
111 |
+
];
|
112 |
Â
}
|
113 |
Â
|
114 |
Â
/**
|
119 |
Â
* @return array
|
120 |
Â
*/
|
121 |
Â
protected function text_array() {
|
122 |
+
return [
|
123 |
Â
'description' => __( 'Text Array', 'tribe-common' ),
|
124 |
+
'auth_callback' => [ $this, 'auth_callback' ],
|
125 |
+
'sanitize_callback' => [ $this, 'sanitize_text_array' ],
|
126 |
Â
'type' => 'string',
|
127 |
Â
'single' => false,
|
128 |
Â
'show_in_rest' => true,
|
129 |
+
];
|
130 |
Â
}
|
131 |
Â
|
132 |
Â
/**
|
common/src/Tribe/Editor/Provider.php
CHANGED
@@ -18,7 +18,7 @@ class Tribe__Editor__Provider extends tad_DI52_ServiceProvider {
|
|
18 |
Â
return;
|
19 |
Â
}
|
20 |
Â
|
21 |
-
$this->container->singleton( 'editor.assets', 'Tribe__Editor__Assets',
|
22 |
Â
|
23 |
Â
$this->hook();
|
24 |
Â
|
@@ -36,7 +36,7 @@ class Tribe__Editor__Provider extends tad_DI52_ServiceProvider {
|
|
36 |
Â
*/
|
37 |
Â
protected function hook() {
|
38 |
Â
// Setup the registration of Blocks
|
39 |
-
add_action( 'init',
|
40 |
Â
}
|
41 |
Â
|
42 |
Â
/**
|
18 |
Â
return;
|
19 |
Â
}
|
20 |
Â
|
21 |
+
$this->container->singleton( 'editor.assets', 'Tribe__Editor__Assets', [ 'hook' ] );
|
22 |
Â
|
23 |
Â
$this->hook();
|
24 |
Â
|
36 |
Â
*/
|
37 |
Â
protected function hook() {
|
38 |
Â
// Setup the registration of Blocks
|
39 |
+
add_action( 'init', [ $this, 'register_blocks' ], 20 );
|
40 |
Â
}
|
41 |
Â
|
42 |
Â
/**
|
common/src/Tribe/Editor/Utils.php
CHANGED
@@ -95,10 +95,10 @@ class Tribe__Editor__Utils {
|
|
95 |
Â
return false;
|
96 |
Â
}
|
97 |
Â
|
98 |
-
return wp_update_post(
|
99 |
Â
'ID' => $post_id,
|
100 |
Â
'post_content' => $next_content,
|
101 |
-
|
102 |
Â
}
|
103 |
Â
|
104 |
Â
/**
|
95 |
Â
return false;
|
96 |
Â
}
|
97 |
Â
|
98 |
+
return wp_update_post( [
|
99 |
Â
'ID' => $post_id,
|
100 |
Â
'post_content' => $next_content,
|
101 |
+
] );
|
102 |
Â
}
|
103 |
Â
|
104 |
Â
/**
|
common/src/Tribe/Error.php
CHANGED
@@ -7,7 +7,7 @@ class Tribe__Error {
|
|
7 |
Â
* All the Errors Registered
|
8 |
Â
* @var array
|
9 |
Â
*/
|
10 |
-
private $items =
|
11 |
Â
|
12 |
Â
/**
|
13 |
Â
* Static Singleton Holder
|
@@ -49,9 +49,9 @@ class Tribe__Error {
|
|
49 |
Â
*
|
50 |
Â
* @return WP_Error
|
51 |
Â
*/
|
52 |
-
public function send( $indexes, $context =
|
53 |
Â
if ( ! $this->exists( $indexes ) ) {
|
54 |
-
$indexes =
|
55 |
Â
}
|
56 |
Â
|
57 |
Â
// Fetches the Errors
|
@@ -170,7 +170,7 @@ class Tribe__Error {
|
|
170 |
Â
$variable = $variable[ $index ];
|
171 |
Â
}
|
172 |
Â
|
173 |
-
$return
|
174 |
Â
$was_namespace = is_array( $variable );
|
175 |
Â
|
176 |
Â
/**
|
7 |
Â
* All the Errors Registered
|
8 |
Â
* @var array
|
9 |
Â
*/
|
10 |
+
private $items = [];
|
11 |
Â
|
12 |
Â
/**
|
13 |
Â
* Static Singleton Holder
|
49 |
Â
*
|
50 |
Â
* @return WP_Error
|
51 |
Â
*/
|
52 |
+
public function send( $indexes, $context = [], $sprintf = [] ) {
|
53 |
Â
if ( ! $this->exists( $indexes ) ) {
|
54 |
+
$indexes = [ 'unknown' ];
|
55 |
Â
}
|
56 |
Â
|
57 |
Â
// Fetches the Errors
|
170 |
Â
$variable = $variable[ $index ];
|
171 |
Â
}
|
172 |
Â
|
173 |
+
$return = [];
|
174 |
Â
$was_namespace = is_array( $variable );
|
175 |
Â
|
176 |
Â
/**
|
common/src/Tribe/Exception.php
CHANGED
@@ -45,7 +45,7 @@ class Tribe__Exception extends Exception {
|
|
45 |
Â
*/
|
46 |
Â
private function get_log_type_for_exception_code( $code ) {
|
47 |
Â
$map = array(
|
48 |
-
// @todo:
|
49 |
Â
);
|
50 |
Â
|
51 |
Â
return isset( $map[ $code ] ) ? $map[ $code ] : Tribe__Log::ERROR;
|
45 |
Â
*/
|
46 |
Â
private function get_log_type_for_exception_code( $code ) {
|
47 |
Â
$map = array(
|
48 |
+
// @todo [BTRIA-583]: Let's add a decent exception code to log type map here.
|
49 |
Â
);
|
50 |
Â
|
51 |
Â
return isset( $map[ $code ] ) ? $map[ $code ] : Tribe__Log::ERROR;
|
common/src/Tribe/Extension.php
CHANGED
@@ -42,7 +42,7 @@ abstract class Tribe__Extension {
|
|
42 |
Â
* resulting data is stored in this.
|
43 |
Â
* }
|
44 |
Â
*/
|
45 |
-
protected $args =
|
46 |
Â
|
47 |
Â
/**
|
48 |
Â
* The various extension instances
|
@@ -53,7 +53,7 @@ abstract class Tribe__Extension {
|
|
53 |
Â
* @type object $child_class_name instance
|
54 |
Â
* }
|
55 |
Â
*/
|
56 |
-
private static $instances =
|
57 |
Â
|
58 |
Â
/**
|
59 |
Â
* Get singleton instance of child class
|
@@ -101,7 +101,7 @@ abstract class Tribe__Extension {
|
|
101 |
Â
if ( did_action( $init_hook ) > 0 ) {
|
102 |
Â
$this->register();
|
103 |
Â
} else {
|
104 |
-
add_action( $init_hook,
|
105 |
Â
}
|
106 |
Â
}
|
107 |
Â
|
@@ -127,7 +127,7 @@ abstract class Tribe__Extension {
|
|
127 |
Â
* @param string|null $minimum_version Minimum acceptable version of plugin.
|
128 |
Â
*/
|
129 |
Â
final protected function add_required_plugin( $main_class, $minimum_version = null ) {
|
130 |
-
$this->set(
|
131 |
Â
}
|
132 |
Â
|
133 |
Â
/**
|
@@ -143,7 +143,7 @@ abstract class Tribe__Extension {
|
|
143 |
Â
$this->get_plugin_file(),
|
144 |
Â
__( 'Tutorial', 'tribe-common' ),
|
145 |
Â
$url,
|
146 |
-
|
147 |
Â
);
|
148 |
Â
}
|
149 |
Â
|
@@ -391,7 +391,7 @@ abstract class Tribe__Extension {
|
|
391 |
Â
|
392 |
Â
// Class name was not set by debug_backtrace() hackery.
|
393 |
Â
if ( null === $class_name ) {
|
394 |
-
tribe_notice( 'tribe_debug_backtrace_disabled',
|
395 |
Â
}
|
396 |
Â
|
397 |
Â
return $class_name;
|
42 |
Â
* resulting data is stored in this.
|
43 |
Â
* }
|
44 |
Â
*/
|
45 |
+
protected $args = [];
|
46 |
Â
|
47 |
Â
/**
|
48 |
Â
* The various extension instances
|
53 |
Â
* @type object $child_class_name instance
|
54 |
Â
* }
|
55 |
Â
*/
|
56 |
+
private static $instances = [];
|
57 |
Â
|
58 |
Â
/**
|
59 |
Â
* Get singleton instance of child class
|
101 |
Â
if ( did_action( $init_hook ) > 0 ) {
|
102 |
Â
$this->register();
|
103 |
Â
} else {
|
104 |
+
add_action( $init_hook, [ $this, 'register' ] );
|
105 |
Â
}
|
106 |
Â
}
|
107 |
Â
|
127 |
Â
* @param string|null $minimum_version Minimum acceptable version of plugin.
|
128 |
Â
*/
|
129 |
Â
final protected function add_required_plugin( $main_class, $minimum_version = null ) {
|
130 |
+
$this->set( [ 'requires', $main_class ], $minimum_version );
|
131 |
Â
}
|
132 |
Â
|
133 |
Â
/**
|
143 |
Â
$this->get_plugin_file(),
|
144 |
Â
__( 'Tutorial', 'tribe-common' ),
|
145 |
Â
$url,
|
146 |
+
[ 'class' => 'tribe-meta-link-extension' ]
|
147 |
Â
);
|
148 |
Â
}
|
149 |
Â
|
391 |
Â
|
392 |
Â
// Class name was not set by debug_backtrace() hackery.
|
393 |
Â
if ( null === $class_name ) {
|
394 |
+
tribe_notice( 'tribe_debug_backtrace_disabled', [ __CLASS__, 'notice_debug_backtrace' ] );
|
395 |
Â
}
|
396 |
Â
|
397 |
Â
return $class_name;
|
common/src/Tribe/Extension_Loader.php
CHANGED
@@ -15,7 +15,7 @@ class Tribe__Extension_Loader {
|
|
15 |
Â
* @param array $plugin_basename Plugin header key/value pairs.
|
16 |
Â
* }
|
17 |
Â
*/
|
18 |
-
private $plugin_data =
|
19 |
Â
|
20 |
Â
/**
|
21 |
Â
* Class instance.
|
@@ -51,7 +51,7 @@ class Tribe__Extension_Loader {
|
|
51 |
Â
* @return array Prefixes
|
52 |
Â
*/
|
53 |
Â
public static function get_extension_file_prefixes() {
|
54 |
-
$prefixes =
|
55 |
Â
|
56 |
Â
/**
|
57 |
Â
* Filter which plugin folder prefixes are considered tribe extensions.
|
@@ -97,13 +97,17 @@ class Tribe__Extension_Loader {
|
|
97 |
Â
|
98 |
Â
// Class instantiation.
|
99 |
Â
if ( class_exists( $p_data['ExtensionClass'] ) ) {
|
100 |
-
$extension_args =
|
101 |
Â
'file' => $plugin_file,
|
102 |
Â
'plugin_data' => $p_data,
|
103 |
-
|
104 |
Â
|
105 |
Â
// Instantiates extension instance.
|
106 |
-
$extension = call_user_func(
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
107 |
Â
|
108 |
Â
if ( null !== $extension ) {
|
109 |
Â
$success = true;
|
15 |
Â
* @param array $plugin_basename Plugin header key/value pairs.
|
16 |
Â
* }
|
17 |
Â
*/
|
18 |
+
private $plugin_data = [];
|
19 |
Â
|
20 |
Â
/**
|
21 |
Â
* Class instance.
|
51 |
Â
* @return array Prefixes
|
52 |
Â
*/
|
53 |
Â
public static function get_extension_file_prefixes() {
|
54 |
+
$prefixes = [ 'tribe-ext-' ];
|
55 |
Â
|
56 |
Â
/**
|
57 |
Â
* Filter which plugin folder prefixes are considered tribe extensions.
|
97 |
Â
|
98 |
Â
// Class instantiation.
|
99 |
Â
if ( class_exists( $p_data['ExtensionClass'] ) ) {
|
100 |
+
$extension_args = [
|
101 |
Â
'file' => $plugin_file,
|
102 |
Â
'plugin_data' => $p_data,
|
103 |
+
];
|
104 |
Â
|
105 |
Â
// Instantiates extension instance.
|
106 |
+
$extension = call_user_func(
|
107 |
+
[ $p_data['ExtensionClass'], 'instance' ],
|
108 |
+
$p_data['ExtensionClass'],
|
109 |
+
$extension_args
|
110 |
+
);
|
111 |
Â
|
112 |
Â
if ( null !== $extension ) {
|
113 |
Â
$success = true;
|
common/src/Tribe/Field.php
CHANGED
@@ -68,7 +68,7 @@ if ( ! class_exists( 'Tribe__Field' ) ) {
|
|
68 |
Â
public function __construct( $id, $field, $value = null ) {
|
69 |
Â
|
70 |
Â
// setup the defaults
|
71 |
-
$this->defaults =
|
72 |
Â
'type' => 'html',
|
73 |
Â
'name' => $id,
|
74 |
Â
'fieldset_attributes' => [],
|
@@ -90,10 +90,10 @@ if ( ! class_exists( 'Tribe__Field' ) ) {
|
|
90 |
Â
'clear_after' => true,
|
91 |
Â
'tooltip_first' => false,
|
92 |
Â
'allow_clear' => false,
|
93 |
-
|
94 |
Â
|
95 |
Â
// a list of valid field types, to prevent screwy behavior
|
96 |
-
$this->valid_field_types =
|
97 |
Â
'heading',
|
98 |
Â
'html',
|
99 |
Â
'text',
|
@@ -109,7 +109,7 @@ if ( ! class_exists( 'Tribe__Field' ) ) {
|
|
109 |
Â
'license_key',
|
110 |
Â
'wrapped_html',
|
111 |
Â
'email',
|
112 |
-
|
113 |
Â
|
114 |
Â
$this->valid_field_types = apply_filters( 'tribe_valid_field_types', $this->valid_field_types );
|
115 |
Â
|
@@ -221,7 +221,7 @@ if ( ! class_exists( 'Tribe__Field' ) ) {
|
|
221 |
Â
} elseif ( in_array( $this->type, $this->valid_field_types ) ) {
|
222 |
Â
|
223 |
Â
// the specified type exists, run the appropriate method
|
224 |
-
$field = call_user_func(
|
225 |
Â
|
226 |
Â
// filter the output
|
227 |
Â
$field = apply_filters( 'tribe_field_output_' . $this->type, $field, $this->id, $this );
|
@@ -275,8 +275,8 @@ if ( ! class_exists( 'Tribe__Field' ) ) {
|
|
275 |
Â
if ( $this->label ) {
|
276 |
Â
if ( isset( $this->label_attributes ) ) {
|
277 |
Â
$this->label_attributes['class'] = isset( $this->label_attributes['class'] ) ?
|
278 |
-
implode( ' ', array_merge(
|
279 |
-
|
280 |
Â
$this->label_attributes = $this->concat_attributes( $this->label_attributes );
|
281 |
Â
}
|
282 |
Â
$return = sprintf( '<legend class="tribe-field-label" %s>%s</legend>', $this->label_attributes, $this->label );
|
@@ -496,10 +496,10 @@ if ( ! class_exists( 'Tribe__Field' ) ) {
|
|
496 |
Â
* @return string the field
|
497 |
Â
*/
|
498 |
Â
public function wysiwyg() {
|
499 |
-
$settings =
|
500 |
Â
'teeny' => true,
|
501 |
Â
'wpautop' => true,
|
502 |
-
|
503 |
Â
ob_start();
|
504 |
Â
wp_editor( html_entity_decode( ( $this->value ) ), $this->name, $settings );
|
505 |
Â
$editor = ob_get_clean();
|
@@ -560,7 +560,7 @@ if ( ! class_exists( 'Tribe__Field' ) ) {
|
|
560 |
Â
|
561 |
Â
if ( ! is_array( $this->value ) ) {
|
562 |
Â
if ( ! empty( $this->value ) ) {
|
563 |
-
$this->value =
|
564 |
Â
} else {
|
565 |
Â
$this->value = [];
|
566 |
Â
}
|
@@ -779,7 +779,7 @@ if ( ! class_exists( 'Tribe__Field' ) ) {
|
|
779 |
Â
*
|
780 |
Â
* Example usage:
|
781 |
Â
*
|
782 |
-
* $attrs =
|
783 |
Â
* printf ( '<p %s>%s</p>', tribe_concat_attributes( $attrs ), 'bar' );
|
784 |
Â
*
|
785 |
Â
* // <p> class="one two" style="color:red;">bar</p>
|
68 |
Â
public function __construct( $id, $field, $value = null ) {
|
69 |
Â
|
70 |
Â
// setup the defaults
|
71 |
+
$this->defaults = [
|
72 |
Â
'type' => 'html',
|
73 |
Â
'name' => $id,
|
74 |
Â
'fieldset_attributes' => [],
|
90 |
Â
'clear_after' => true,
|
91 |
Â
'tooltip_first' => false,
|
92 |
Â
'allow_clear' => false,
|
93 |
+
];
|
94 |
Â
|
95 |
Â
// a list of valid field types, to prevent screwy behavior
|
96 |
+
$this->valid_field_types = [
|
97 |
Â
'heading',
|
98 |
Â
'html',
|
99 |
Â
'text',
|
109 |
Â
'license_key',
|
110 |
Â
'wrapped_html',
|
111 |
Â
'email',
|
112 |
+
];
|
113 |
Â
|
114 |
Â
$this->valid_field_types = apply_filters( 'tribe_valid_field_types', $this->valid_field_types );
|
115 |
Â
|
221 |
Â
} elseif ( in_array( $this->type, $this->valid_field_types ) ) {
|
222 |
Â
|
223 |
Â
// the specified type exists, run the appropriate method
|
224 |
+
$field = call_user_func( [ $this, $this->type ] );
|
225 |
Â
|
226 |
Â
// filter the output
|
227 |
Â
$field = apply_filters( 'tribe_field_output_' . $this->type, $field, $this->id, $this );
|
275 |
Â
if ( $this->label ) {
|
276 |
Â
if ( isset( $this->label_attributes ) ) {
|
277 |
Â
$this->label_attributes['class'] = isset( $this->label_attributes['class'] ) ?
|
278 |
+
implode( ' ', array_merge( [ 'tribe-field-label' ], $this->label_attributes['class'] ) ) :
|
279 |
+
[ 'tribe-field-label' ];
|
280 |
Â
$this->label_attributes = $this->concat_attributes( $this->label_attributes );
|
281 |
Â
}
|
282 |
Â
$return = sprintf( '<legend class="tribe-field-label" %s>%s</legend>', $this->label_attributes, $this->label );
|
496 |
Â
* @return string the field
|
497 |
Â
*/
|
498 |
Â
public function wysiwyg() {
|
499 |
+
$settings = [
|
500 |
Â
'teeny' => true,
|
501 |
Â
'wpautop' => true,
|
502 |
+
];
|
503 |
Â
ob_start();
|
504 |
Â
wp_editor( html_entity_decode( ( $this->value ) ), $this->name, $settings );
|
505 |
Â
$editor = ob_get_clean();
|
560 |
Â
|
561 |
Â
if ( ! is_array( $this->value ) ) {
|
562 |
Â
if ( ! empty( $this->value ) ) {
|
563 |
+
$this->value = [ $this->value ];
|
564 |
Â
} else {
|
565 |
Â
$this->value = [];
|
566 |
Â
}
|
779 |
Â
*
|
780 |
Â
* Example usage:
|
781 |
Â
*
|
782 |
+
* $attrs = [ 'class' => ['one', 'two'], 'style' => 'color:red;' ];
|
783 |
Â
* printf ( '<p %s>%s</p>', tribe_concat_attributes( $attrs ), 'bar' );
|
784 |
Â
*
|
785 |
Â
* // <p> class="one two" style="color:red;">bar</p>
|
common/src/Tribe/JSON_LD/Abstract.php
CHANGED
@@ -19,14 +19,14 @@ abstract class Tribe__JSON_LD__Abstract {
|
|
19 |
Â
*
|
20 |
Â
* @var array
|
21 |
Â
*/
|
22 |
-
private static $instances =
|
23 |
Â
|
24 |
Â
/**
|
25 |
Â
* Holder for the Already fetched Posts
|
26 |
Â
*
|
27 |
Â
* @var array
|
28 |
Â
*/
|
29 |
-
protected static $posts =
|
30 |
Â
|
31 |
Â
/**
|
32 |
Â
* Holder for a post when it has multiple types
|
@@ -35,7 +35,7 @@ abstract class Tribe__JSON_LD__Abstract {
|
|
35 |
Â
*
|
36 |
Â
* @var array
|
37 |
Â
*/
|
38 |
-
protected static $types =
|
39 |
Â
|
40 |
Â
/**
|
41 |
Â
* The class singleton constructor.
|
@@ -72,24 +72,24 @@ abstract class Tribe__JSON_LD__Abstract {
|
|
72 |
Â
* be generated, the `$post` parameter is not a valid post ID or object or the data
|
73 |
Â
* for the post has been fetched already.
|
74 |
Â
*/
|
75 |
-
public function get_data( $post = null, $args =
|
76 |
Â
$post_id = Tribe__Main::post_id_helper( $post );
|
77 |
Â
if ( ! $post_id ) {
|
78 |
-
return
|
79 |
Â
}
|
80 |
Â
|
81 |
Â
// This prevents a JSON_LD from existing twice one the same page
|
82 |
Â
if ( $this->exists( $post_id ) && $this->type_exists( $post_id, $this->type ) ) {
|
83 |
-
return
|
84 |
Â
}
|
85 |
Â
|
86 |
Â
$post = get_post( $post_id );
|
87 |
Â
|
88 |
Â
if ( empty( $post->ID ) ) {
|
89 |
-
return
|
90 |
Â
}
|
91 |
Â
|
92 |
-
$data = (object)
|
93 |
Â
|
94 |
Â
// We may need to prevent the context to be triggered
|
95 |
Â
if ( ! isset( $args['context'] ) || false !== $args['context'] ) {
|
@@ -112,7 +112,7 @@ abstract class Tribe__JSON_LD__Abstract {
|
|
112 |
Â
|
113 |
Â
// Index by ID: this will allow filter code to identify the actual event being referred to
|
114 |
Â
// without injecting an additional property
|
115 |
-
return
|
116 |
Â
}
|
117 |
Â
|
118 |
Â
/**
|
@@ -149,7 +149,7 @@ abstract class Tribe__JSON_LD__Abstract {
|
|
149 |
Â
*
|
150 |
Â
* @return string
|
151 |
Â
*/
|
152 |
-
public function get_markup( $post = null, $args =
|
153 |
Â
$data = $this->get_data( $post, $args );
|
154 |
Â
$type = strtolower( esc_attr( $this->type ) );
|
155 |
Â
$this->set_type( $post, $type );
|
@@ -182,7 +182,7 @@ abstract class Tribe__JSON_LD__Abstract {
|
|
182 |
Â
return ! empty( $html ) ? implode( "\r\n", $html ) : '';
|
183 |
Â
}
|
184 |
Â
|
185 |
-
public function markup( $post = null, $args =
|
186 |
Â
$html = $this->get_markup( $post, $args );
|
187 |
Â
|
188 |
Â
/**
|
@@ -296,7 +296,7 @@ abstract class Tribe__JSON_LD__Abstract {
|
|
296 |
Â
}
|
297 |
Â
|
298 |
Â
if ( empty( self::$types[ $id ] ) ) {
|
299 |
-
self::$types[ $id ] =
|
300 |
Â
} else {
|
301 |
Â
self::$types[ $id ][] = $this->type;
|
302 |
Â
}
|
@@ -343,8 +343,8 @@ abstract class Tribe__JSON_LD__Abstract {
|
|
343 |
Â
* Added for testing purposes.
|
344 |
Â
*/
|
345 |
Â
public static function unregister_all() {
|
346 |
-
self::$posts =
|
347 |
-
self::$types =
|
348 |
Â
}
|
349 |
Â
|
350 |
Â
/**
|
19 |
Â
*
|
20 |
Â
* @var array
|
21 |
Â
*/
|
22 |
+
private static $instances = [];
|
23 |
Â
|
24 |
Â
/**
|
25 |
Â
* Holder for the Already fetched Posts
|
26 |
Â
*
|
27 |
Â
* @var array
|
28 |
Â
*/
|
29 |
+
protected static $posts = [];
|
30 |
Â
|
31 |
Â
/**
|
32 |
Â
* Holder for a post when it has multiple types
|
35 |
Â
*
|
36 |
Â
* @var array
|
37 |
Â
*/
|
38 |
+
protected static $types = [];
|
39 |
Â
|
40 |
Â
/**
|
41 |
Â
* The class singleton constructor.
|
72 |
Â
* be generated, the `$post` parameter is not a valid post ID or object or the data
|
73 |
Â
* for the post has been fetched already.
|
74 |
Â
*/
|
75 |
+
public function get_data( $post = null, $args = [] ) {
|
76 |
Â
$post_id = Tribe__Main::post_id_helper( $post );
|
77 |
Â
if ( ! $post_id ) {
|
78 |
+
return [];
|
79 |
Â
}
|
80 |
Â
|
81 |
Â
// This prevents a JSON_LD from existing twice one the same page
|
82 |
Â
if ( $this->exists( $post_id ) && $this->type_exists( $post_id, $this->type ) ) {
|
83 |
+
return [];
|
84 |
Â
}
|
85 |
Â
|
86 |
Â
$post = get_post( $post_id );
|
87 |
Â
|
88 |
Â
if ( empty( $post->ID ) ) {
|
89 |
+
return [];
|
90 |
Â
}
|
91 |
Â
|
92 |
+
$data = (object) [];
|
93 |
Â
|
94 |
Â
// We may need to prevent the context to be triggered
|
95 |
Â
if ( ! isset( $args['context'] ) || false !== $args['context'] ) {
|
112 |
Â
|
113 |
Â
// Index by ID: this will allow filter code to identify the actual event being referred to
|
114 |
Â
// without injecting an additional property
|
115 |
+
return [ $post->ID => $data ];
|
116 |
Â
}
|
117 |
Â
|
118 |
Â
/**
|
149 |
Â
*
|
150 |
Â
* @return string
|
151 |
Â
*/
|
152 |
+
public function get_markup( $post = null, $args = [] ) {
|
153 |
Â
$data = $this->get_data( $post, $args );
|
154 |
Â
$type = strtolower( esc_attr( $this->type ) );
|
155 |
Â
$this->set_type( $post, $type );
|
182 |
Â
return ! empty( $html ) ? implode( "\r\n", $html ) : '';
|
183 |
Â
}
|
184 |
Â
|
185 |
+
public function markup( $post = null, $args = [] ) {
|
186 |
Â
$html = $this->get_markup( $post, $args );
|
187 |
Â
|
188 |
Â
/**
|
296 |
Â
}
|
297 |
Â
|
298 |
Â
if ( empty( self::$types[ $id ] ) ) {
|
299 |
+
self::$types[ $id ] = [ $this->type ];
|
300 |
Â
} else {
|
301 |
Â
self::$types[ $id ][] = $this->type;
|
302 |
Â
}
|
343 |
Â
* Added for testing purposes.
|
344 |
Â
*/
|
345 |
Â
public static function unregister_all() {
|
346 |
+
self::$posts = [];
|
347 |
+
self::$types = [];
|
348 |
Â
}
|
349 |
Â
|
350 |
Â
/**
|
common/src/Tribe/Languages/Locations.php
CHANGED
@@ -23,7 +23,7 @@ class Tribe__Languages__Locations {
|
|
23 |
Â
* }
|
24 |
Â
*/
|
25 |
Â
public function get_countries() {
|
26 |
-
return tribe( 'cache' )->get( 'tribe_country_list', '',
|
27 |
Â
}
|
28 |
Â
|
29 |
Â
/**
|
@@ -38,7 +38,7 @@ class Tribe__Languages__Locations {
|
|
38 |
Â
* }
|
39 |
Â
*/
|
40 |
Â
public function get_us_states() {
|
41 |
-
return tribe( 'cache' )->get( 'tribe_us_states_list', '',
|
42 |
Â
}
|
43 |
Â
|
44 |
Â
/**
|
@@ -51,7 +51,7 @@ class Tribe__Languages__Locations {
|
|
51 |
Â
* }
|
52 |
Â
*/
|
53 |
Â
public function build_country_array() {
|
54 |
-
$countries =
|
55 |
Â
'US' => esc_html__( 'United States', 'tribe-common' ),
|
56 |
Â
'AF' => esc_html__( 'Afghanistan', 'tribe-common' ),
|
57 |
Â
'AX' => esc_html__( 'Åland Islands', 'tribe-common' ),
|
@@ -295,7 +295,7 @@ class Tribe__Languages__Locations {
|
|
295 |
Â
'YE' => esc_html__( 'Yemen', 'tribe-common' ),
|
296 |
Â
'ZM' => esc_html__( 'Zambia', 'tribe-common' ),
|
297 |
Â
'ZW' => esc_html__( 'Zimbabwe', 'tribe-common' ),
|
298 |
-
|
299 |
Â
|
300 |
Â
// Perform a natural sort, ensures the countries are in the expected order even once translated.
|
301 |
Â
natsort( $countries );
|
@@ -320,7 +320,7 @@ class Tribe__Languages__Locations {
|
|
320 |
Â
* }
|
321 |
Â
*/
|
322 |
Â
public function build_us_states_array() {
|
323 |
-
$states =
|
324 |
Â
'AL' => esc_html__( 'Alabama', 'tribe-common' ),
|
325 |
Â
'AK' => esc_html__( 'Alaska', 'tribe-common' ),
|
326 |
Â
'AZ' => esc_html__( 'Arizona', 'tribe-common' ),
|
@@ -331,7 +331,7 @@ class Tribe__Languages__Locations {
|
|
331 |
Â
'DE' => esc_html__( 'Delaware', 'tribe-common' ),
|
332 |
Â
'DC' => esc_html__( 'District of Columbia', 'tribe-common' ),
|
333 |
Â
'FL' => esc_html__( 'Florida', 'tribe-common' ),
|
334 |
-
'GA' => esc_html_x( 'Georgia', 'The US state Georgia','tribe-common' ),
|
335 |
Â
'HI' => esc_html__( 'Hawaii', 'tribe-common' ),
|
336 |
Â
'ID' => esc_html__( 'Idaho', 'tribe-common' ),
|
337 |
Â
'IL' => esc_html__( 'Illinois', 'tribe-common' ),
|
@@ -372,7 +372,7 @@ class Tribe__Languages__Locations {
|
|
372 |
Â
'WV' => esc_html__( 'West Virginia', 'tribe-common' ),
|
373 |
Â
'WI' => esc_html__( 'Wisconsin', 'tribe-common' ),
|
374 |
Â
'WY' => esc_html__( 'Wyoming', 'tribe-common' ),
|
375 |
-
|
376 |
Â
|
377 |
Â
// Perform a natural sort, ensures the states are in the expected order even once translated.
|
378 |
Â
natsort( $states );
|
23 |
Â
* }
|
24 |
Â
*/
|
25 |
Â
public function get_countries() {
|
26 |
+
return tribe( 'cache' )->get( 'tribe_country_list', '', [ $this, 'build_country_array' ] );
|
27 |
Â
}
|
28 |
Â
|
29 |
Â
/**
|
38 |
Â
* }
|
39 |
Â
*/
|
40 |
Â
public function get_us_states() {
|
41 |
+
return tribe( 'cache' )->get( 'tribe_us_states_list', '', [ $this, 'build_us_states_array' ] );
|
42 |
Â
}
|
43 |
Â
|
44 |
Â
/**
|
51 |
Â
* }
|
52 |
Â
*/
|
53 |
Â
public function build_country_array() {
|
54 |
+
$countries = [
|
55 |
Â
'US' => esc_html__( 'United States', 'tribe-common' ),
|
56 |
Â
'AF' => esc_html__( 'Afghanistan', 'tribe-common' ),
|
57 |
Â
'AX' => esc_html__( 'Åland Islands', 'tribe-common' ),
|
295 |
Â
'YE' => esc_html__( 'Yemen', 'tribe-common' ),
|
296 |
Â
'ZM' => esc_html__( 'Zambia', 'tribe-common' ),
|
297 |
Â
'ZW' => esc_html__( 'Zimbabwe', 'tribe-common' ),
|
298 |
+
];
|
299 |
Â
|
300 |
Â
// Perform a natural sort, ensures the countries are in the expected order even once translated.
|
301 |
Â
natsort( $countries );
|
320 |
Â
* }
|
321 |
Â
*/
|
322 |
Â
public function build_us_states_array() {
|
323 |
+
$states = [
|
324 |
Â
'AL' => esc_html__( 'Alabama', 'tribe-common' ),
|
325 |
Â
'AK' => esc_html__( 'Alaska', 'tribe-common' ),
|
326 |
Â
'AZ' => esc_html__( 'Arizona', 'tribe-common' ),
|
331 |
Â
'DE' => esc_html__( 'Delaware', 'tribe-common' ),
|
332 |
Â
'DC' => esc_html__( 'District of Columbia', 'tribe-common' ),
|
333 |
Â
'FL' => esc_html__( 'Florida', 'tribe-common' ),
|
334 |
+
'GA' => esc_html_x( 'Georgia', 'The US state Georgia', 'tribe-common' ),
|
335 |
Â
'HI' => esc_html__( 'Hawaii', 'tribe-common' ),
|
336 |
Â
'ID' => esc_html__( 'Idaho', 'tribe-common' ),
|
337 |
Â
'IL' => esc_html__( 'Illinois', 'tribe-common' ),
|
372 |
Â
'WV' => esc_html__( 'West Virginia', 'tribe-common' ),
|
373 |
Â
'WI' => esc_html__( 'Wisconsin', 'tribe-common' ),
|
374 |
Â
'WY' => esc_html__( 'Wyoming', 'tribe-common' ),
|
375 |
+
];
|
376 |
Â
|
377 |
Â
// Perform a natural sort, ensures the states are in the expected order even once translated.
|
378 |
Â
natsort( $states );
|
common/src/Tribe/Languages/Recaptcha_Map.php
CHANGED
@@ -16,7 +16,7 @@ class Tribe__Languages__Recaptcha_Map implements Tribe__Languages__Map_Interface
|
|
16 |
Â
* e.g. [ 'pt-BR' => 'Portuguese (Brazil)' ]
|
17 |
Â
*/
|
18 |
Â
public function get_supported_languages() {
|
19 |
-
return
|
20 |
Â
'ar' => 'Arabic',
|
21 |
Â
'af' => 'Afrikaans',
|
22 |
Â
'am' => 'Amharic',
|
@@ -87,7 +87,7 @@ class Tribe__Languages__Recaptcha_Map implements Tribe__Languages__Map_Interface
|
|
87 |
Â
'ur' => 'Urdu',
|
88 |
Â
'vi' => 'Vietnamese',
|
89 |
Â
'zu' => 'Zulu',
|
90 |
-
|
91 |
Â
}
|
92 |
Â
|
93 |
Â
/**
|
16 |
Â
* e.g. [ 'pt-BR' => 'Portuguese (Brazil)' ]
|
17 |
Â
*/
|
18 |
Â
public function get_supported_languages() {
|
19 |
+
return [
|
20 |
Â
'ar' => 'Arabic',
|
21 |
Â
'af' => 'Afrikaans',
|
22 |
Â
'am' => 'Amharic',
|
87 |
Â
'ur' => 'Urdu',
|
88 |
Â
'vi' => 'Vietnamese',
|
89 |
Â
'zu' => 'Zulu',
|
90 |
+
];
|
91 |
Â
}
|
92 |
Â
|
93 |
Â
/**
|
common/src/Tribe/Log.php
CHANGED
@@ -36,7 +36,7 @@ class Tribe__Log {
|
|
36 |
Â
*
|
37 |
Â
* @var array
|
38 |
Â
*/
|
39 |
-
protected $levels =
|
40 |
Â
|
41 |
Â
/**
|
42 |
Â
* Alternative representation of the $levels property allowing quick look
|
@@ -44,15 +44,14 @@ class Tribe__Log {
|
|
44 |
Â
*
|
45 |
Â
* @var array
|
46 |
Â
*/
|
47 |
-
protected $prioritized_levels =
|
48 |
Â
|
49 |
Â
/**
|
50 |
Â
* Instantiated loggers, stored for re-use.
|
51 |
Â
*
|
52 |
Â
* @var array
|
53 |
Â
*/
|
54 |
-
protected $loggers =
|
55 |
-
|
56 |
Â
|
57 |
Â
public function __construct() {
|
58 |
Â
if ( is_admin() ) {
|
@@ -75,7 +74,7 @@ class Tribe__Log {
|
|
75 |
Â
*/
|
76 |
Â
protected function log_cleanup() {
|
77 |
Â
$this->register_cleanup_task();
|
78 |
-
do_action( self::CLEANUP,
|
79 |
Â
}
|
80 |
Â
|
81 |
Â
/**
|
@@ -163,7 +162,7 @@ class Tribe__Log {
|
|
163 |
Â
$original_type = $type;
|
164 |
Â
|
165 |
Â
// some levels are really just debug information
|
166 |
-
$debug_types =
|
167 |
Â
|
168 |
Â
if ( in_array( $type, $debug_types ) ) {
|
169 |
Â
$type = self::DEBUG;
|
@@ -219,10 +218,10 @@ class Tribe__Log {
|
|
219 |
Â
* @return array
|
220 |
Â
*/
|
221 |
Â
public function get_logging_engines() {
|
222 |
-
$available_engines =
|
223 |
-
$bundled_engines
|
224 |
Â
'Tribe__Log__File_Logger',
|
225 |
-
|
226 |
Â
|
227 |
Â
foreach ( $bundled_engines as $engine_class ) {
|
228 |
Â
$engine = $this->get_engine( $engine_class );
|
@@ -384,12 +383,12 @@ class Tribe__Log {
|
|
384 |
Â
*
|
385 |
Â
* @param array $logging_levels
|
386 |
Â
*/
|
387 |
-
$this->levels = (array) apply_filters( 'tribe_common_logging_levels',
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
Â
}
|
394 |
Â
|
395 |
Â
return $this->levels;
|
36 |
Â
*
|
37 |
Â
* @var array
|
38 |
Â
*/
|
39 |
+
protected $levels = [];
|
40 |
Â
|
41 |
Â
/**
|
42 |
Â
* Alternative representation of the $levels property allowing quick look
|
44 |
Â
*
|
45 |
Â
* @var array
|
46 |
Â
*/
|
47 |
+
protected $prioritized_levels = [];
|
48 |
Â
|
49 |
Â
/**
|
50 |
Â
* Instantiated loggers, stored for re-use.
|
51 |
Â
*
|
52 |
Â
* @var array
|
53 |
Â
*/
|
54 |
+
protected $loggers = [];
|
Â
|
|
55 |
Â
|
56 |
Â
public function __construct() {
|
57 |
Â
if ( is_admin() ) {
|
74 |
Â
*/
|
75 |
Â
protected function log_cleanup() {
|
76 |
Â
$this->register_cleanup_task();
|
77 |
+
do_action( self::CLEANUP, [ $this, 'do_cleanup' ] );
|
78 |
Â
}
|
79 |
Â
|
80 |
Â
/**
|
162 |
Â
$original_type = $type;
|
163 |
Â
|
164 |
Â
// some levels are really just debug information
|
165 |
+
$debug_types = [ self::SUCCESS, self::COLORIZE ];
|
166 |
Â
|
167 |
Â
if ( in_array( $type, $debug_types ) ) {
|
168 |
Â
$type = self::DEBUG;
|
218 |
Â
* @return array
|
219 |
Â
*/
|
220 |
Â
public function get_logging_engines() {
|
221 |
+
$available_engines = [];
|
222 |
+
$bundled_engines = [
|
223 |
Â
'Tribe__Log__File_Logger',
|
224 |
+
];
|
225 |
Â
|
226 |
Â
foreach ( $bundled_engines as $engine_class ) {
|
227 |
Â
$engine = $this->get_engine( $engine_class );
|
383 |
Â
*
|
384 |
Â
* @param array $logging_levels
|
385 |
Â
*/
|
386 |
+
$this->levels = (array) apply_filters( 'tribe_common_logging_levels', [
|
387 |
+
[ self::DISABLE, __( 'Disabled', 'tribe-common' ) ],
|
388 |
+
[ self::ERROR, __( 'Only errors', 'tribe-common' ) ],
|
389 |
+
[ self::WARNING, __( 'Warnings and errors', 'tribe-common' ) ],
|
390 |
+
[ self::DEBUG, __( 'Full debug (all events)', 'tribe-common' ) ],
|
391 |
+
] );
|
392 |
Â
}
|
393 |
Â
|
394 |
Â
return $this->levels;
|
common/src/Tribe/Log/Action_Logger.php
CHANGED
@@ -78,7 +78,7 @@ class Action_Logger implements \Tribe__Log__Logger {
|
|
78 |
Â
*
|
79 |
Â
* @since 4.9.16
|
80 |
Â
*/
|
81 |
-
public function retrieve( $limit = 0, array $args =
|
82 |
Â
return [
|
83 |
Â
[
|
84 |
Â
'message' => __(
|
78 |
Â
*
|
79 |
Â
* @since 4.9.16
|
80 |
Â
*/
|
81 |
+
public function retrieve( $limit = 0, array $args = [] ) {
|
82 |
Â
return [
|
83 |
Â
[
|
84 |
Â
'message' => __(
|
common/src/Tribe/Log/Admin.php
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
Â
<?php
|
2 |
Â
class Tribe__Log__Admin {
|
3 |
Â
public function __construct() {
|
4 |
-
add_action( 'wp_ajax_tribe_logging_controls',
|
5 |
-
add_action( 'init',
|
6 |
-
add_action( 'plugins_loaded',
|
7 |
Â
}
|
8 |
Â
|
9 |
Â
/**
|
@@ -29,11 +29,11 @@ class Tribe__Log__Admin {
|
|
29 |
Â
* an appropriate response.
|
30 |
Â
*/
|
31 |
Â
public function listen() {
|
32 |
-
$fields = wp_parse_args( $_POST,
|
33 |
Â
'check' => '',
|
34 |
Â
'log-level' => '',
|
35 |
Â
'log-engine' => '',
|
36 |
-
|
37 |
Â
|
38 |
Â
foreach ( $fields as &$single_field ) {
|
39 |
Â
$single_field = sanitize_text_field( $single_field );
|
@@ -58,9 +58,9 @@ class Tribe__Log__Admin {
|
|
58 |
Â
*/
|
59 |
Â
do_action( 'tribe_common_updated_log_settings' );
|
60 |
Â
|
61 |
-
$data =
|
62 |
Â
'logs' => $this->get_available_logs(),
|
63 |
-
|
64 |
Â
|
65 |
Â
if ( ! empty( $fields['log-view'] ) ) {
|
66 |
Â
$data['entries'] = $this->get_log_entries( $fields['log-view'] );
|
@@ -103,17 +103,17 @@ class Tribe__Log__Admin {
|
|
103 |
Â
Tribe__Main::instance(),
|
104 |
Â
'tribe-common-logging-controls',
|
105 |
Â
'admin-log-controls.js',
|
106 |
-
|
107 |
Â
'admin_enqueue_scripts',
|
108 |
-
|
109 |
-
'conditionals' =>
|
110 |
-
'localize'
|
111 |
Â
'name' => 'tribe_logger_data',
|
112 |
-
'data' =>
|
113 |
Â
'check' => wp_create_nonce( 'logging-controls' ),
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
Â
);
|
118 |
Â
}
|
119 |
Â
|
@@ -130,7 +130,7 @@ class Tribe__Log__Admin {
|
|
130 |
Â
}
|
131 |
Â
|
132 |
Â
if ( empty( $available_logs ) ) {
|
133 |
-
return
|
134 |
Â
}
|
135 |
Â
|
136 |
Â
return $available_logs;
|
@@ -145,10 +145,10 @@ class Tribe__Log__Admin {
|
|
145 |
Â
$available_engines = $this->log_manager()->get_logging_engines();
|
146 |
Â
|
147 |
Â
if ( empty( $available_engines ) ) {
|
148 |
-
return
|
149 |
Â
}
|
150 |
Â
|
151 |
-
$engine_list =
|
152 |
Â
|
153 |
Â
foreach ( $available_engines as $class_name => $engine ) {
|
154 |
Â
/**
|
@@ -171,7 +171,7 @@ class Tribe__Log__Admin {
|
|
171 |
Â
return (array) $logger->retrieve();
|
172 |
Â
}
|
173 |
Â
|
174 |
-
return
|
175 |
Â
}
|
176 |
Â
|
177 |
Â
/**
|
@@ -182,7 +182,7 @@ class Tribe__Log__Admin {
|
|
182 |
Â
* @return array
|
183 |
Â
*/
|
184 |
Â
protected function get_logging_levels() {
|
185 |
-
$levels
|
186 |
Â
$available_levels = $this->log_manager()->get_logging_levels();
|
187 |
Â
|
188 |
Â
foreach ( $available_levels as $logging_level ) {
|
@@ -201,10 +201,10 @@ class Tribe__Log__Admin {
|
|
201 |
Â
* @return string
|
202 |
Â
*/
|
203 |
Â
protected function get_log_url( $log = null ) {
|
204 |
-
$query =
|
205 |
Â
'tribe-common-log' => 'download',
|
206 |
-
'check'
|
207 |
-
|
208 |
Â
|
209 |
Â
$log_download_url = add_query_arg( $query, get_admin_url( null, 'edit.php' ) );
|
210 |
Â
|
1 |
Â
<?php
|
2 |
Â
class Tribe__Log__Admin {
|
3 |
Â
public function __construct() {
|
4 |
+
add_action( 'wp_ajax_tribe_logging_controls', [ $this, 'listen' ] );
|
5 |
+
add_action( 'init', [ $this, 'serve_log_downloads' ] );
|
6 |
+
add_action( 'plugins_loaded', [ $this, 'register_script' ] );
|
7 |
Â
}
|
8 |
Â
|
9 |
Â
/**
|
29 |
Â
* an appropriate response.
|
30 |
Â
*/
|
31 |
Â
public function listen() {
|
32 |
+
$fields = wp_parse_args( $_POST, [
|
33 |
Â
'check' => '',
|
34 |
Â
'log-level' => '',
|
35 |
Â
'log-engine' => '',
|
36 |
+
] );
|
37 |
Â
|
38 |
Â
foreach ( $fields as &$single_field ) {
|
39 |
Â
$single_field = sanitize_text_field( $single_field );
|
58 |
Â
*/
|
59 |
Â
do_action( 'tribe_common_updated_log_settings' );
|
60 |
Â
|
61 |
+
$data = [
|
62 |
Â
'logs' => $this->get_available_logs(),
|
63 |
+
];
|
64 |
Â
|
65 |
Â
if ( ! empty( $fields['log-view'] ) ) {
|
66 |
Â
$data['entries'] = $this->get_log_entries( $fields['log-view'] );
|
103 |
Â
Tribe__Main::instance(),
|
104 |
Â
'tribe-common-logging-controls',
|
105 |
Â
'admin-log-controls.js',
|
106 |
+
[ 'jquery' ],
|
107 |
Â
'admin_enqueue_scripts',
|
108 |
+
[
|
109 |
+
'conditionals' => [ Tribe__Admin__Help_Page::instance(), 'is_current_page' ],
|
110 |
+
'localize' => (object) [
|
111 |
Â
'name' => 'tribe_logger_data',
|
112 |
+
'data' => [
|
113 |
Â
'check' => wp_create_nonce( 'logging-controls' ),
|
114 |
+
],
|
115 |
+
],
|
116 |
+
]
|
117 |
Â
);
|
118 |
Â
}
|
119 |
Â
|
130 |
Â
}
|
131 |
Â
|
132 |
Â
if ( empty( $available_logs ) ) {
|
133 |
+
return [ '' => _x( 'None currently available', 'log selector', 'tribe-common' ) ];
|
134 |
Â
}
|
135 |
Â
|
136 |
Â
return $available_logs;
|
145 |
Â
$available_engines = $this->log_manager()->get_logging_engines();
|
146 |
Â
|
147 |
Â
if ( empty( $available_engines ) ) {
|
148 |
+
return [ '' => _x( 'None currently available', 'log engines', 'tribe-common' ) ];
|
149 |
Â
}
|
150 |
Â
|
151 |
+
$engine_list = [];
|
152 |
Â
|
153 |
Â
foreach ( $available_engines as $class_name => $engine ) {
|
154 |
Â
/**
|
171 |
Â
return (array) $logger->retrieve();
|
172 |
Â
}
|
173 |
Â
|
174 |
+
return [];
|
175 |
Â
}
|
176 |
Â
|
177 |
Â
/**
|
182 |
Â
* @return array
|
183 |
Â
*/
|
184 |
Â
protected function get_logging_levels() {
|
185 |
+
$levels = [];
|
186 |
Â
$available_levels = $this->log_manager()->get_logging_levels();
|
187 |
Â
|
188 |
Â
foreach ( $available_levels as $logging_level ) {
|
201 |
Â
* @return string
|
202 |
Â
*/
|
203 |
Â
protected function get_log_url( $log = null ) {
|
204 |
+
$query = [
|
205 |
Â
'tribe-common-log' => 'download',
|
206 |
+
'check' => wp_create_nonce( 'download_log' ),
|
207 |
+
];
|
208 |
Â
|
209 |
Â
$log_download_url = add_query_arg( $query, get_admin_url( null, 'edit.php' ) );
|
210 |
Â
|
common/src/Tribe/Log/Canonical_Formatter.php
CHANGED
@@ -16,28 +16,28 @@ use Monolog\Formatter\LineFormatter;
|
|
16 |
Â
|
17 |
Â
class Canonical_Formatter implements FormatterInterface {
|
18 |
Â
/**
|
19 |
-
* @since
|
20 |
Â
*
|
21 |
Â
* @var string Our standard format for the Monolog LineFormatter.
|
22 |
Â
*/
|
23 |
Â
protected $standard_format = 'tribe.%channel%.%level_name%: %message%';
|
24 |
Â
|
25 |
Â
/**
|
26 |
-
* @since
|
27 |
Â
*
|
28 |
Â
* @var string Our standard format Monolog LineFormatter.
|
29 |
Â
*/
|
30 |
Â
protected $standard_formatter;
|
31 |
Â
|
32 |
Â
/**
|
33 |
-
* @since
|
34 |
Â
*
|
35 |
Â
* @var string Our context-aware format for the Monolog LineFormatter.
|
36 |
Â
*/
|
37 |
Â
protected $context_format = 'tribe-canonical-line channel=%channel% %message%';
|
38 |
Â
|
39 |
Â
/**
|
40 |
-
* @since
|
41 |
Â
*
|
42 |
Â
* @var string Our context-aware Monolog LineFormatter.
|
43 |
Â
*/
|
@@ -69,7 +69,7 @@ class Canonical_Formatter implements FormatterInterface {
|
|
69 |
Â
/**
|
70 |
Â
* Gets a LineFormatter whose format is context aware.
|
71 |
Â
*
|
72 |
-
* @since
|
73 |
Â
*
|
74 |
Â
* @return LineFormatter
|
75 |
Â
*/
|
@@ -84,7 +84,7 @@ class Canonical_Formatter implements FormatterInterface {
|
|
84 |
Â
/**
|
85 |
Â
* Gets a LineFormatter whose format is our standard logging format.
|
86 |
Â
*
|
87 |
-
* @since
|
88 |
Â
*
|
89 |
Â
* @return LineFormatter
|
90 |
Â
*/
|
@@ -101,7 +101,7 @@ class Canonical_Formatter implements FormatterInterface {
|
|
101 |
Â
*
|
102 |
Â
* This simply hands off the work of formatting Batches to the LineFormatter.
|
103 |
Â
*
|
104 |
-
* @since
|
105 |
Â
*
|
106 |
Â
* @param array $records A set of records to format
|
107 |
Â
* @return mixed The formatted set of records
|
16 |
Â
|
17 |
Â
class Canonical_Formatter implements FormatterInterface {
|
18 |
Â
/**
|
19 |
+
* @since 4.12.13
|
20 |
Â
*
|
21 |
Â
* @var string Our standard format for the Monolog LineFormatter.
|
22 |
Â
*/
|
23 |
Â
protected $standard_format = 'tribe.%channel%.%level_name%: %message%';
|
24 |
Â
|
25 |
Â
/**
|
26 |
+
* @since 4.12.13
|
27 |
Â
*
|
28 |
Â
* @var string Our standard format Monolog LineFormatter.
|
29 |
Â
*/
|
30 |
Â
protected $standard_formatter;
|
31 |
Â
|
32 |
Â
/**
|
33 |
+
* @since 4.12.13
|
34 |
Â
*
|
35 |
Â
* @var string Our context-aware format for the Monolog LineFormatter.
|
36 |
Â
*/
|
37 |
Â
protected $context_format = 'tribe-canonical-line channel=%channel% %message%';
|
38 |
Â
|
39 |
Â
/**
|
40 |
+
* @since 4.12.13
|
41 |
Â
*
|
42 |
Â
* @var string Our context-aware Monolog LineFormatter.
|
43 |
Â
*/
|
69 |
Â
/**
|
70 |
Â
* Gets a LineFormatter whose format is context aware.
|
71 |
Â
*
|
72 |
+
* @since 4.12.13
|
73 |
Â
*
|
74 |
Â
* @return LineFormatter
|
75 |
Â
*/
|
84 |
Â
/**
|
85 |
Â
* Gets a LineFormatter whose format is our standard logging format.
|
86 |
Â
*
|
87 |
+
* @since 4.12.13
|
88 |
Â
*
|
89 |
Â
* @return LineFormatter
|
90 |
Â
*/
|
101 |
Â
*
|
102 |
Â
* This simply hands off the work of formatting Batches to the LineFormatter.
|
103 |
Â
*
|
104 |
+
* @since 4.12.13
|
105 |
Â
*
|
106 |
Â
* @param array $records A set of records to format
|
107 |
Â
* @return mixed The formatted set of records
|
common/src/Tribe/Log/File_Logger.php
CHANGED
@@ -155,7 +155,7 @@ class Tribe__Log__File_Logger implements Tribe__Log__Logger {
|
|
155 |
Â
return;
|
156 |
Â
}
|
157 |
Â
|
158 |
-
fputcsv( $this->handle,
|
159 |
Â
}
|
160 |
Â
|
161 |
Â
/**
|
@@ -171,7 +171,7 @@ class Tribe__Log__File_Logger implements Tribe__Log__Logger {
|
|
171 |
Â
*
|
172 |
Â
* @return array
|
173 |
Â
*/
|
174 |
-
public function retrieve( $limit = 0, array $args =
|
175 |
Â
// Ensure we're in 'read' mode before we try to retrieve
|
176 |
Â
if ( 'r' !== $this->context ) {
|
177 |
Â
$this->set_context( 'r' );
|
@@ -179,10 +179,10 @@ class Tribe__Log__File_Logger implements Tribe__Log__Logger {
|
|
179 |
Â
|
180 |
Â
// Couldn't obtain the file handle? We'll bail out without causing further disruption
|
181 |
Â
if ( ! $this->handle ) {
|
182 |
-
return
|
183 |
Â
}
|
184 |
Â
|
185 |
-
$rows =
|
186 |
Â
|
187 |
Â
while ( $current_row = fgetcsv( $this->handle ) ) {
|
188 |
Â
if ( $limit && $limit === count( $rows ) ) {
|
@@ -212,7 +212,7 @@ class Tribe__Log__File_Logger implements Tribe__Log__Logger {
|
|
212 |
Â
* @return array
|
213 |
Â
*/
|
214 |
Â
public function list_available_logs() {
|
215 |
-
$logs =
|
216 |
Â
|
217 |
Â
// This could be called when the log dir is not accessible.
|
218 |
Â
if ( ! $this->is_available() ) {
|
@@ -238,13 +238,7 @@ class Tribe__Log__File_Logger implements Tribe__Log__Logger {
|
|
238 |
Â
}
|
239 |
Â
|
240 |
Â
$name = $node->getFilename();
|
241 |
-
|
242 |
-
// DirectoryIterator::getExtension() is only available on 5.3.6
|
243 |
-
if ( version_compare( phpversion(), '5.3.6', '>=' ) ) {
|
244 |
-
$ext = $node->getExtension();
|
245 |
-
} else {
|
246 |
-
$ext = pathinfo( $name, PATHINFO_EXTENSION );
|
247 |
-
}
|
248 |
Â
|
249 |
Â
// Skip unless it is a .log file with the expected prefix
|
250 |
Â
if ( 'log' !== $ext || 0 !== strpos( $name, $basename ) ) {
|
155 |
Â
return;
|
156 |
Â
}
|
157 |
Â
|
158 |
+
fputcsv( $this->handle, [ date_i18n( 'Y-m-d H:i:s' ), $entry, $type, $src ] );
|
159 |
Â
}
|
160 |
Â
|
161 |
Â
/**
|
171 |
Â
*
|
172 |
Â
* @return array
|
173 |
Â
*/
|
174 |
+
public function retrieve( $limit = 0, array $args = [] ) {
|
175 |
Â
// Ensure we're in 'read' mode before we try to retrieve
|
176 |
Â
if ( 'r' !== $this->context ) {
|
177 |
Â
$this->set_context( 'r' );
|
179 |
Â
|
180 |
Â
// Couldn't obtain the file handle? We'll bail out without causing further disruption
|
181 |
Â
if ( ! $this->handle ) {
|
182 |
+
return [];
|
183 |
Â
}
|
184 |
Â
|
185 |
+
$rows = [];
|
186 |
Â
|
187 |
Â
while ( $current_row = fgetcsv( $this->handle ) ) {
|
188 |
Â
if ( $limit && $limit === count( $rows ) ) {
|
212 |
Â
* @return array
|
213 |
Â
*/
|
214 |
Â
public function list_available_logs() {
|
215 |
+
$logs = [];
|
216 |
Â
|
217 |
Â
// This could be called when the log dir is not accessible.
|
218 |
Â
if ( ! $this->is_available() ) {
|
238 |
Â
}
|
239 |
Â
|
240 |
Â
$name = $node->getFilename();
|
241 |
+
$ext = $node->getExtension();
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
242 |
Â
|
243 |
Â
// Skip unless it is a .log file with the expected prefix
|
244 |
Â
if ( 'log' !== $ext || 0 !== strpos( $name, $basename ) ) {
|
common/src/Tribe/Log/Logger.php
CHANGED
@@ -43,7 +43,7 @@ interface Tribe__Log__Logger {
|
|
43 |
Â
*
|
44 |
Â
* @return array
|
45 |
Â
*/
|
46 |
-
public function retrieve( $limit = 0, array $args =
|
47 |
Â
|
48 |
Â
/**
|
49 |
Â
* Returns a list of currently accessible logs (current first, oldest last).
|
43 |
Â
*
|
44 |
Â
* @return array
|
45 |
Â
*/
|
46 |
+
public function retrieve( $limit = 0, array $args = [] );
|
47 |
Â
|
48 |
Â
/**
|
49 |
Â
* Returns a list of currently accessible logs (current first, oldest last).
|
common/src/Tribe/Log/Null_Logger.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Â
|
4 |
Â
/**
|
5 |
Â
* Class Null_Logger
|
6 |
-
*
|
7 |
Â
* Logs nothing, reads nothing.
|
8 |
Â
*/
|
9 |
Â
class Tribe__Log__Null_Logger implements Tribe__Log__Logger {
|
@@ -54,8 +54,8 @@ class Tribe__Log__Null_Logger implements Tribe__Log__Logger {
|
|
54 |
Â
*
|
55 |
Â
* @return array
|
56 |
Â
*/
|
57 |
-
public function retrieve( $limit = 0, array $args =
|
58 |
-
return
|
59 |
Â
}
|
60 |
Â
|
61 |
Â
/**
|
@@ -78,7 +78,7 @@ class Tribe__Log__Null_Logger implements Tribe__Log__Logger {
|
|
78 |
Â
* @return array
|
79 |
Â
*/
|
80 |
Â
public function list_available_logs() {
|
81 |
-
return
|
82 |
Â
}
|
83 |
Â
|
84 |
Â
/**
|
3 |
Â
|
4 |
Â
/**
|
5 |
Â
* Class Null_Logger
|
6 |
+
*
|
7 |
Â
* Logs nothing, reads nothing.
|
8 |
Â
*/
|
9 |
Â
class Tribe__Log__Null_Logger implements Tribe__Log__Logger {
|
54 |
Â
*
|
55 |
Â
* @return array
|
56 |
Â
*/
|
57 |
+
public function retrieve( $limit = 0, array $args = [] ) {
|
58 |
+
return [];
|
59 |
Â
}
|
60 |
Â
|
61 |
Â
/**
|
78 |
Â
* @return array
|
79 |
Â
*/
|
80 |
Â
public function list_available_logs() {
|
81 |
+
return [];
|
82 |
Â
}
|
83 |
Â
|
84 |
Â
/**
|
common/src/Tribe/Main.php
CHANGED
@@ -19,7 +19,7 @@ class Tribe__Main {
|
|
19 |
Â
const OPTIONNAME = 'tribe_events_calendar_options';
|
20 |
Â
const OPTIONNAMENETWORK = 'tribe_events_calendar_network_options';
|
21 |
Â
|
22 |
-
const VERSION = '4.12.
|
23 |
Â
|
24 |
Â
const FEED_URL = 'https://theeventscalendar.com/feed/';
|
25 |
Â
|
@@ -67,12 +67,7 @@ class Tribe__Main {
|
|
67 |
Â
return;
|
68 |
Â
}
|
69 |
Â
|
70 |
-
|
71 |
-
if ( version_compare( PHP_VERSION, '5.2.17', '<=' ) ) {
|
72 |
-
require_once realpath( dirname( dirname( dirname( __FILE__ ) ) ) . '/vendor/autoload_52.php' );
|
73 |
-
} else {
|
74 |
-
require_once realpath( dirname( dirname( dirname( __FILE__ ) ) ) . '/vendor/autoload.php' );
|
75 |
-
}
|
76 |
Â
|
77 |
Â
// the DI container class
|
78 |
Â
require_once dirname( __FILE__ ) . '/Container.php';
|
@@ -428,11 +423,14 @@ class Tribe__Main {
|
|
428 |
Â
// Are we on the Plugins page?
|
429 |
Â
$is_plugins = $helper->is_screen( 'plugins' );
|
430 |
Â
|
Â
|
|
Â
|
|
Â
|
|
431 |
Â
// Are we viewing a generic Tribe screen?
|
432 |
Â
// Includes: Events > Settings, Events > Help, App Shop page, and more.
|
433 |
Â
$is_tribe_screen = $helper->is_screen();
|
434 |
Â
|
435 |
-
return $is_post_type || $is_plugins || $is_tribe_screen;
|
436 |
Â
}
|
437 |
Â
|
438 |
Â
/**
|
@@ -561,7 +559,7 @@ class Tribe__Main {
|
|
561 |
Â
if ( 'plugins.php' !== $page ) {
|
562 |
Â
return;
|
563 |
Â
}
|
564 |
-
$notices = apply_filters( 'tribe_plugin_notices',
|
565 |
Â
wp_localize_script( 'tribe-pue-notices', 'tribe_plugin_notices', $notices );
|
566 |
Â
}
|
567 |
Â
|
19 |
Â
const OPTIONNAME = 'tribe_events_calendar_options';
|
20 |
Â
const OPTIONNAMENETWORK = 'tribe_events_calendar_network_options';
|
21 |
Â
|
22 |
+
const VERSION = '4.12.14';
|
23 |
Â
|
24 |
Â
const FEED_URL = 'https://theeventscalendar.com/feed/';
|
25 |
Â
|
67 |
Â
return;
|
68 |
Â
}
|
69 |
Â
|
70 |
+
require_once realpath( dirname( dirname( dirname( __FILE__ ) ) ) . '/vendor/autoload.php' );
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
71 |
Â
|
72 |
Â
// the DI container class
|
73 |
Â
require_once dirname( __FILE__ ) . '/Container.php';
|
423 |
Â
// Are we on the Plugins page?
|
424 |
Â
$is_plugins = $helper->is_screen( 'plugins' );
|
425 |
Â
|
426 |
+
// Are we on the Widgets page?
|
427 |
+
$is_widgets = $helper->is_screen( 'widgets' );
|
428 |
+
|
429 |
Â
// Are we viewing a generic Tribe screen?
|
430 |
Â
// Includes: Events > Settings, Events > Help, App Shop page, and more.
|
431 |
Â
$is_tribe_screen = $helper->is_screen();
|
432 |
Â
|
433 |
+
return $is_post_type || $is_plugins || $is_widgets || $is_tribe_screen;
|
434 |
Â
}
|
435 |
Â
|
436 |
Â
/**
|
559 |
Â
if ( 'plugins.php' !== $page ) {
|
560 |
Â
return;
|
561 |
Â
}
|
562 |
+
$notices = apply_filters( 'tribe_plugin_notices', [] );
|
563 |
Â
wp_localize_script( 'tribe-pue-notices', 'tribe_plugin_notices', $notices );
|
564 |
Â
}
|
565 |
Â
|
common/src/Tribe/Meta/Chunker.php
CHANGED
@@ -63,7 +63,7 @@ class Tribe__Meta__Chunker {
|
|
63 |
Â
/**
|
64 |
Â
* @var array The post types supported by the Chunker.
|
65 |
Â
*/
|
66 |
-
protected $post_types =
|
67 |
Â
|
68 |
Â
/**
|
69 |
Â
* @var int The filter priority at which Chunker will operate on meta CRUD operations.
|
@@ -95,11 +95,11 @@ class Tribe__Meta__Chunker {
|
|
95 |
Â
return;
|
96 |
Â
}
|
97 |
Â
|
98 |
-
add_filter( 'update_post_metadata',
|
99 |
-
add_filter( 'delete_post_metadata',
|
100 |
-
add_filter( 'add_post_metadata',
|
101 |
-
add_filter( 'get_post_metadata',
|
102 |
-
add_action( 'deleted_post',
|
103 |
Â
}
|
104 |
Â
|
105 |
Â
/**
|
@@ -114,8 +114,8 @@ class Tribe__Meta__Chunker {
|
|
114 |
Â
return;
|
115 |
Â
}
|
116 |
Â
|
117 |
-
$this->chunks_cache =
|
118 |
-
$this->post_ids_cache =
|
119 |
Â
|
120 |
Â
$chunked_keys = get_option( $this->chunked_keys_option_name );
|
121 |
Â
|
@@ -199,7 +199,7 @@ class Tribe__Meta__Chunker {
|
|
199 |
Â
$option = (array) get_option( $this->chunked_keys_option_name );
|
200 |
Â
|
201 |
Â
if ( ! isset( $option[ $post_id ] ) ) {
|
202 |
-
$option[ $post_id ] =
|
203 |
Â
} else {
|
204 |
Â
$option[ $post_id ][] = $meta_key;
|
205 |
Â
}
|
@@ -383,10 +383,10 @@ class Tribe__Meta__Chunker {
|
|
383 |
Â
protected function remove_checksum_for( $object_id, $meta_key ) {
|
384 |
Â
/** @var wpdb $wpdb */
|
385 |
Â
global $wpdb;
|
386 |
-
$data =
|
387 |
Â
'post_id' => $object_id,
|
388 |
Â
'meta_key' => $this->get_checksum_key( $meta_key ),
|
389 |
-
|
390 |
Â
$wpdb->delete( $wpdb->postmeta, $data );
|
391 |
Â
}
|
392 |
Â
|
@@ -481,7 +481,7 @@ class Tribe__Meta__Chunker {
|
|
481 |
Â
*/
|
482 |
Â
protected function prefix_chunks( array $chunks ) {
|
483 |
Â
$count = count( $chunks );
|
484 |
-
$prefixed =
|
485 |
Â
for ( $i = 0; $i < $count; $i ++ ) {
|
486 |
Â
$prefixed[] = "{$i}{$this->chunk_separator}{$chunks[$i]}";
|
487 |
Â
}
|
@@ -525,21 +525,21 @@ class Tribe__Meta__Chunker {
|
|
525 |
Â
$chunk_meta_key = $this->get_chunk_meta_key( $meta_key );
|
526 |
Â
$this->insert_meta( $object_id, $meta_key, $chunks[0] );
|
527 |
Â
foreach ( $chunks as $chunk ) {
|
528 |
-
$wpdb->insert( $wpdb->postmeta,
|
529 |
Â
'post_id' => $object_id,
|
530 |
Â
'meta_key' => $chunk_meta_key,
|
531 |
Â
'meta_value' => $chunk,
|
532 |
-
|
533 |
Â
}
|
534 |
Â
|
535 |
Â
$glued = $this->glue_chunks( $this->get_chunks_for( $object_id, $meta_key ) );
|
536 |
Â
$checksum_key = $this->get_checksum_key( $meta_key );
|
537 |
-
$wpdb->delete( $wpdb->postmeta,
|
538 |
-
$wpdb->insert( $wpdb->postmeta,
|
539 |
Â
'post_id' => $object_id,
|
540 |
Â
'meta_key' => $checksum_key,
|
541 |
Â
'meta_value' => md5( $glued ),
|
542 |
-
|
543 |
Â
}
|
544 |
Â
|
545 |
Â
/**
|
@@ -554,11 +554,11 @@ class Tribe__Meta__Chunker {
|
|
554 |
Â
protected function insert_meta( $object_id, $meta_key, $meta_value ) {
|
555 |
Â
/** @var wpdb $wpdb */
|
556 |
Â
global $wpdb;
|
557 |
-
$data =
|
558 |
Â
'post_id' => $object_id,
|
559 |
Â
'meta_key' => $meta_key,
|
560 |
Â
'meta_value' => maybe_serialize( $meta_value ),
|
561 |
-
|
562 |
Â
$wpdb->insert( $wpdb->postmeta, $data );
|
563 |
Â
}
|
564 |
Â
|
@@ -574,7 +574,7 @@ class Tribe__Meta__Chunker {
|
|
574 |
Â
* @see Tribe__Meta__Chunker::get_chunks_for()
|
575 |
Â
*/
|
576 |
Â
public function glue_chunks( array $chunks ) {
|
577 |
-
$ordered_chunks =
|
578 |
Â
foreach ( $chunks as $chunk ) {
|
579 |
Â
preg_match( '/(\\d+)' . preg_quote( $this->chunk_separator ) . '(.*)/', $chunk, $matches );
|
580 |
Â
$ordered_chunks[ $matches[1] ] = $matches[2];
|
@@ -614,7 +614,7 @@ class Tribe__Meta__Chunker {
|
|
614 |
Â
$object_id, $chunk_meta_key
|
615 |
Â
) );
|
616 |
Â
|
617 |
-
$meta_values =
|
618 |
Â
foreach ( $meta_ids as $meta_id ) {
|
619 |
Â
$query = $wpdb->prepare( "SELECT meta_value FROM {$wpdb->postmeta} WHERE meta_id = %d", $meta_id );
|
620 |
Â
$meta_values[] = $wpdb->get_var( $query );
|
@@ -736,11 +736,11 @@ class Tribe__Meta__Chunker {
|
|
736 |
Â
* Unhooks the Chunker from the metadata operations.
|
737 |
Â
*/
|
738 |
Â
public function unhook() {
|
739 |
-
remove_filter( 'update_post_metadata',
|
740 |
-
remove_filter( 'delete_post_metadata',
|
741 |
-
remove_filter( 'add_post_metadata',
|
742 |
-
remove_filter( 'get_post_metadata',
|
743 |
-
remove_action( 'deleted_post',
|
744 |
Â
}
|
745 |
Â
|
746 |
Â
/**
|
@@ -813,25 +813,25 @@ class Tribe__Meta__Chunker {
|
|
813 |
Â
$all_meta = $this->get_all_meta( $object_id );
|
814 |
Â
|
815 |
Â
if ( empty( $all_meta ) ) {
|
816 |
-
return
|
817 |
Â
}
|
818 |
Â
|
819 |
-
$grouped =
|
820 |
Â
foreach ( $all_meta as $entry ) {
|
821 |
Â
if ( ! isset( $grouped[ $entry['meta_key'] ] ) ) {
|
822 |
-
$grouped[ $entry['meta_key'] ] =
|
823 |
Â
} else {
|
824 |
Â
$grouped[ $entry['meta_key'] ][] = $entry['meta_value'];
|
825 |
Â
}
|
826 |
Â
}
|
827 |
Â
|
828 |
-
$chunker_meta_keys = array_filter( array_keys( $grouped ),
|
829 |
Â
|
830 |
Â
if ( empty( $chunker_meta_keys ) ) {
|
831 |
Â
return $grouped;
|
832 |
Â
}
|
833 |
Â
|
834 |
-
$checksum_keys = array_filter( $chunker_meta_keys,
|
835 |
Â
|
836 |
Â
if ( empty( $checksum_keys ) ) {
|
837 |
Â
return $grouped;
|
@@ -840,14 +840,14 @@ class Tribe__Meta__Chunker {
|
|
840 |
Â
$chunker_meta = array_intersect_key( $grouped, array_combine( $chunker_meta_keys, $chunker_meta_keys ) );
|
841 |
Â
$normal_meta = array_diff_key( $grouped, array_combine( $chunker_meta_keys, $chunker_meta_keys ) );
|
842 |
Â
foreach ( $checksum_keys as $checksum_key ) {
|
843 |
-
$normal_meta_key = str_replace(
|
844 |
Â
$chunk_meta_key = $this->get_chunk_meta_key( $normal_meta_key );
|
845 |
Â
|
846 |
Â
if ( empty( $chunker_meta[ $chunk_meta_key ] ) ) {
|
847 |
Â
continue;
|
848 |
Â
}
|
849 |
Â
|
850 |
-
$normal_meta[ $normal_meta_key ] =
|
851 |
Â
}
|
852 |
Â
|
853 |
Â
return $normal_meta;
|
@@ -881,7 +881,7 @@ class Tribe__Meta__Chunker {
|
|
881 |
Â
$query = $wpdb->prepare( "SELECT meta_key, meta_value FROM {$wpdb->postmeta} WHERE post_id = %d", $object_id );
|
882 |
Â
$results = $wpdb->get_results( $query, ARRAY_A );
|
883 |
Â
|
884 |
-
return ! empty( $results ) && is_array( $results ) ? $results :
|
885 |
Â
}
|
886 |
Â
|
887 |
Â
/**
|
63 |
Â
/**
|
64 |
Â
* @var array The post types supported by the Chunker.
|
65 |
Â
*/
|
66 |
+
protected $post_types = [];
|
67 |
Â
|
68 |
Â
/**
|
69 |
Â
* @var int The filter priority at which Chunker will operate on meta CRUD operations.
|
95 |
Â
return;
|
96 |
Â
}
|
97 |
Â
|
98 |
+
add_filter( 'update_post_metadata', [ $this, 'filter_update_metadata' ], $this->filter_priority, 4 );
|
99 |
+
add_filter( 'delete_post_metadata', [ $this, 'filter_delete_metadata' ], $this->filter_priority, 3 );
|
100 |
+
add_filter( 'add_post_metadata', [ $this, 'filter_add_metadata' ], $this->filter_priority, 4 );
|
101 |
+
add_filter( 'get_post_metadata', [ $this, 'filter_get_metadata' ], $this->filter_priority, 4 );
|
102 |
+
add_action( 'deleted_post', [ $this, 'remove_post_entry' ] );
|
103 |
Â
}
|
104 |
Â
|
105 |
Â
/**
|
114 |
Â
return;
|
115 |
Â
}
|
116 |
Â
|
117 |
+
$this->chunks_cache = [];
|
118 |
+
$this->post_ids_cache = [];
|
119 |
Â
|
120 |
Â
$chunked_keys = get_option( $this->chunked_keys_option_name );
|
121 |
Â
|
199 |
Â
$option = (array) get_option( $this->chunked_keys_option_name );
|
200 |
Â
|
201 |
Â
if ( ! isset( $option[ $post_id ] ) ) {
|
202 |
+
$option[ $post_id ] = [ $meta_key ];
|
203 |
Â
} else {
|
204 |
Â
$option[ $post_id ][] = $meta_key;
|
205 |
Â
}
|
383 |
Â
protected function remove_checksum_for( $object_id, $meta_key ) {
|
384 |
Â
/** @var wpdb $wpdb */
|
385 |
Â
global $wpdb;
|
386 |
+
$data = [
|
387 |
Â
'post_id' => $object_id,
|
388 |
Â
'meta_key' => $this->get_checksum_key( $meta_key ),
|
389 |
+
];
|
390 |
Â
$wpdb->delete( $wpdb->postmeta, $data );
|
391 |
Â
}
|
392 |
Â
|
481 |
Â
*/
|
482 |
Â
protected function prefix_chunks( array $chunks ) {
|
483 |
Â
$count = count( $chunks );
|
484 |
+
$prefixed = [];
|
485 |
Â
for ( $i = 0; $i < $count; $i ++ ) {
|
486 |
Â
$prefixed[] = "{$i}{$this->chunk_separator}{$chunks[$i]}";
|
487 |
Â
}
|
525 |
Â
$chunk_meta_key = $this->get_chunk_meta_key( $meta_key );
|
526 |
Â
$this->insert_meta( $object_id, $meta_key, $chunks[0] );
|
527 |
Â
foreach ( $chunks as $chunk ) {
|
528 |
+
$wpdb->insert( $wpdb->postmeta, [
|
529 |
Â
'post_id' => $object_id,
|
530 |
Â
'meta_key' => $chunk_meta_key,
|
531 |
Â
'meta_value' => $chunk,
|
532 |
+
] );
|
533 |
Â
}
|
534 |
Â
|
535 |
Â
$glued = $this->glue_chunks( $this->get_chunks_for( $object_id, $meta_key ) );
|
536 |
Â
$checksum_key = $this->get_checksum_key( $meta_key );
|
537 |
+
$wpdb->delete( $wpdb->postmeta, [ 'post_id' => $object_id, 'meta_key' => $checksum_key ] );
|
538 |
+
$wpdb->insert( $wpdb->postmeta, [
|
539 |
Â
'post_id' => $object_id,
|
540 |
Â
'meta_key' => $checksum_key,
|
541 |
Â
'meta_value' => md5( $glued ),
|
542 |
+
] );
|
543 |
Â
}
|
544 |
Â
|
545 |
Â
/**
|
554 |
Â
protected function insert_meta( $object_id, $meta_key, $meta_value ) {
|
555 |
Â
/** @var wpdb $wpdb */
|
556 |
Â
global $wpdb;
|
557 |
+
$data = [
|
558 |
Â
'post_id' => $object_id,
|
559 |
Â
'meta_key' => $meta_key,
|
560 |
Â
'meta_value' => maybe_serialize( $meta_value ),
|
561 |
+
];
|
562 |
Â
$wpdb->insert( $wpdb->postmeta, $data );
|
563 |
Â
}
|
564 |
Â
|
574 |
Â
* @see Tribe__Meta__Chunker::get_chunks_for()
|
575 |
Â
*/
|
576 |
Â
public function glue_chunks( array $chunks ) {
|
577 |
+
$ordered_chunks = [];
|
578 |
Â
foreach ( $chunks as $chunk ) {
|
579 |
Â
preg_match( '/(\\d+)' . preg_quote( $this->chunk_separator ) . '(.*)/', $chunk, $matches );
|
580 |
Â
$ordered_chunks[ $matches[1] ] = $matches[2];
|
614 |
Â
$object_id, $chunk_meta_key
|
615 |
Â
) );
|
616 |
Â
|
617 |
+
$meta_values = [];
|
618 |
Â
foreach ( $meta_ids as $meta_id ) {
|
619 |
Â
$query = $wpdb->prepare( "SELECT meta_value FROM {$wpdb->postmeta} WHERE meta_id = %d", $meta_id );
|
620 |
Â
$meta_values[] = $wpdb->get_var( $query );
|
736 |
Â
* Unhooks the Chunker from the metadata operations.
|
737 |
Â
*/
|
738 |
Â
public function unhook() {
|
739 |
+
remove_filter( 'update_post_metadata', [ $this, 'filter_update_metadata' ], $this->filter_priority );
|
740 |
+
remove_filter( 'delete_post_metadata', [ $this, 'filter_delete_metadata' ], $this->filter_priority );
|
741 |
+
remove_filter( 'add_post_metadata', [ $this, 'filter_add_metadata' ], $this->filter_priority );
|
742 |
+
remove_filter( 'get_post_metadata', [ $this, 'filter_get_metadata' ], $this->filter_priority );
|
743 |
+
remove_action( 'deleted_post', [ $this, 'remove_post_entry' ] );
|
744 |
Â
}
|
745 |
Â
|
746 |
Â
/**
|
813 |
Â
$all_meta = $this->get_all_meta( $object_id );
|
814 |
Â
|
815 |
Â
if ( empty( $all_meta ) ) {
|
816 |
+
return [];
|
817 |
Â
}
|
818 |
Â
|
819 |
+
$grouped = [];
|
820 |
Â
foreach ( $all_meta as $entry ) {
|
821 |
Â
if ( ! isset( $grouped[ $entry['meta_key'] ] ) ) {
|
822 |
+
$grouped[ $entry['meta_key'] ] = [ $entry['meta_value'] ];
|
823 |
Â
} else {
|
824 |
Â
$grouped[ $entry['meta_key'] ][] = $entry['meta_value'];
|
825 |
Â
}
|
826 |
Â
}
|
827 |
Â
|
828 |
+
$chunker_meta_keys = array_filter( array_keys( $grouped ), [ $this, 'is_chunker_logic_meta_key' ] );
|
829 |
Â
|
830 |
Â
if ( empty( $chunker_meta_keys ) ) {
|
831 |
Â
return $grouped;
|
832 |
Â
}
|
833 |
Â
|
834 |
+
$checksum_keys = array_filter( $chunker_meta_keys, [ $this, 'is_chunker_checksum_key' ] );
|
835 |
Â
|
836 |
Â
if ( empty( $checksum_keys ) ) {
|
837 |
Â
return $grouped;
|
840 |
Â
$chunker_meta = array_intersect_key( $grouped, array_combine( $chunker_meta_keys, $chunker_meta_keys ) );
|
841 |
Â
$normal_meta = array_diff_key( $grouped, array_combine( $chunker_meta_keys, $chunker_meta_keys ) );
|
842 |
Â
foreach ( $checksum_keys as $checksum_key ) {
|
843 |
+
$normal_meta_key = str_replace( [ $this->meta_key_prefix, '_checksum' ], '', $checksum_key );
|
844 |
Â
$chunk_meta_key = $this->get_chunk_meta_key( $normal_meta_key );
|
845 |
Â
|
846 |
Â
if ( empty( $chunker_meta[ $chunk_meta_key ] ) ) {
|
847 |
Â
continue;
|
848 |
Â
}
|
849 |
Â
|
850 |
+
$normal_meta[ $normal_meta_key ] = [ $this->glue_chunks( $chunker_meta[ $chunk_meta_key ] ) ];
|
851 |
Â
}
|
852 |
Â
|
853 |
Â
return $normal_meta;
|
881 |
Â
$query = $wpdb->prepare( "SELECT meta_key, meta_value FROM {$wpdb->postmeta} WHERE post_id = %d", $object_id );
|
882 |
Â
$results = $wpdb->get_results( $query, ARRAY_A );
|
883 |
Â
|
884 |
+
return ! empty( $results ) && is_array( $results ) ? $results : [];
|
885 |
Â
}
|
886 |
Â
|
887 |
Â
/**
|
common/src/Tribe/Notices.php
CHANGED
@@ -5,7 +5,7 @@ class Tribe__Notices {
|
|
5 |
Â
* Notices to be displayed in the admin
|
6 |
Â
* @var array
|
7 |
Â
*/
|
8 |
-
protected $notices =
|
9 |
Â
|
10 |
Â
/**
|
11 |
Â
* Define an admin notice
|
5 |
Â
* Notices to be displayed in the admin
|
6 |
Â
* @var array
|
7 |
Â
*/
|
8 |
+
protected $notices = [];
|
9 |
Â
|
10 |
Â
/**
|
11 |
Â
* Define an admin notice
|
common/src/Tribe/PUE/Notices.php
CHANGED
@@ -10,9 +10,9 @@ class Tribe__PUE__Notices {
|
|
10 |
Â
const EXPIRED_KEY = 'expired_key';
|
11 |
Â
const STORE_KEY = 'tribe_pue_key_notices';
|
12 |
Â
|
13 |
-
protected $registered =
|
14 |
-
protected $saved_notices =
|
15 |
-
protected $notices =
|
16 |
Â
|
17 |
Â
protected $plugin_names = [
|
18 |
Â
'pue_install_key_event_tickets_plus' => 'Event Tickets Plus',
|
@@ -30,8 +30,8 @@ class Tribe__PUE__Notices {
|
|
30 |
Â
*/
|
31 |
Â
public function __construct() {
|
32 |
Â
$this->populate();
|
33 |
-
add_action( 'current_screen',
|
34 |
-
add_action( 'tribe_pue_notices_save_notices',
|
35 |
Â
}
|
36 |
Â
|
37 |
Â
/**
|
@@ -53,7 +53,7 @@ class Tribe__PUE__Notices {
|
|
53 |
Â
* groups.
|
54 |
Â
*/
|
55 |
Â
protected function populate() {
|
56 |
-
$this->saved_notices = (array) get_option( self::STORE_KEY,
|
57 |
Â
|
58 |
Â
if ( empty( $this->saved_notices ) ) {
|
59 |
Â
return;
|
@@ -193,7 +193,7 @@ class Tribe__PUE__Notices {
|
|
193 |
Â
*/
|
194 |
Â
public function setup_notices() {
|
195 |
Â
// Don't allow this to run multiple times
|
196 |
-
remove_action( 'current_screen',
|
197 |
Â
|
198 |
Â
// No need to display license key notices to users without appropriate capabilities
|
199 |
Â
if ( ! current_user_can( 'install_plugins' ) ) {
|
@@ -205,7 +205,7 @@ class Tribe__PUE__Notices {
|
|
205 |
Â
continue;
|
206 |
Â
}
|
207 |
Â
|
208 |
-
$callback =
|
209 |
Â
|
210 |
Â
if ( is_callable( $callback ) ) {
|
211 |
Â
tribe_notice( 'pue_key-' . $notice_type, $callback, 'dismiss=1&type=warning' );
|
@@ -237,9 +237,9 @@ class Tribe__PUE__Notices {
|
|
237 |
Â
|
238 |
Â
$empty_keys = $wpdb->get_results( $sql, ARRAY_N );
|
239 |
Â
|
240 |
-
$formatted_empty_keys =
|
241 |
Â
foreach ( $empty_keys as $empty_key ) {
|
242 |
-
$empty_key = Tribe__Utils__Array::get( $empty_key,
|
243 |
Â
$formatted_empty_keys[] = Tribe__Utils__Array::get( $this->plugin_names, $empty_key );
|
244 |
Â
}
|
245 |
Â
|
@@ -380,7 +380,7 @@ class Tribe__PUE__Notices {
|
|
380 |
Â
protected function render_notice( $slug, $inner_html ) {
|
381 |
Â
|
382 |
Â
// Enqueue the notice CSS.
|
383 |
-
tribe( 'assets' )->enqueue(
|
384 |
Â
|
385 |
Â
$mascot = esc_url( Tribe__Main::instance()->plugin_url . 'src/resources/images/mascot.png' );
|
386 |
Â
|
10 |
Â
const EXPIRED_KEY = 'expired_key';
|
11 |
Â
const STORE_KEY = 'tribe_pue_key_notices';
|
12 |
Â
|
13 |
+
protected $registered = [];
|
14 |
+
protected $saved_notices = [];
|
15 |
+
protected $notices = [];
|
16 |
Â
|
17 |
Â
protected $plugin_names = [
|
18 |
Â
'pue_install_key_event_tickets_plus' => 'Event Tickets Plus',
|
30 |
Â
*/
|
31 |
Â
public function __construct() {
|
32 |
Â
$this->populate();
|
33 |
+
add_action( 'current_screen', [ $this, 'setup_notices' ] );
|
34 |
+
add_action( 'tribe_pue_notices_save_notices', [ $this, 'maybe_undismiss_notices' ] );
|
35 |
Â
}
|
36 |
Â
|
37 |
Â
/**
|
53 |
Â
* groups.
|
54 |
Â
*/
|
55 |
Â
protected function populate() {
|
56 |
+
$this->saved_notices = (array) get_option( self::STORE_KEY, [] );
|
57 |
Â
|
58 |
Â
if ( empty( $this->saved_notices ) ) {
|
59 |
Â
return;
|
193 |
Â
*/
|
194 |
Â
public function setup_notices() {
|
195 |
Â
// Don't allow this to run multiple times
|
196 |
+
remove_action( 'current_screen', [ $this, 'setup_notices' ] );
|
197 |
Â
|
198 |
Â
// No need to display license key notices to users without appropriate capabilities
|
199 |
Â
if ( ! current_user_can( 'install_plugins' ) ) {
|
205 |
Â
continue;
|
206 |
Â
}
|
207 |
Â
|
208 |
+
$callback = [ $this, 'render_' . $notice_type ];
|
209 |
Â
|
210 |
Â
if ( is_callable( $callback ) ) {
|
211 |
Â
tribe_notice( 'pue_key-' . $notice_type, $callback, 'dismiss=1&type=warning' );
|
237 |
Â
|
238 |
Â
$empty_keys = $wpdb->get_results( $sql, ARRAY_N );
|
239 |
Â
|
240 |
+
$formatted_empty_keys = [];
|
241 |
Â
foreach ( $empty_keys as $empty_key ) {
|
242 |
+
$empty_key = Tribe__Utils__Array::get( $empty_key, [ 0 ] );
|
243 |
Â
$formatted_empty_keys[] = Tribe__Utils__Array::get( $this->plugin_names, $empty_key );
|
244 |
Â
}
|
245 |
Â
|
380 |
Â
protected function render_notice( $slug, $inner_html ) {
|
381 |
Â
|
382 |
Â
// Enqueue the notice CSS.
|
383 |
+
tribe( 'assets' )->enqueue( [ 'tribe-common-admin' ] );
|
384 |
Â
|
385 |
Â
$mascot = esc_url( Tribe__Main::instance()->plugin_url . 'src/resources/images/mascot.png' );
|
386 |
Â
|
common/src/Tribe/PUE/Package_Handler.php
CHANGED
@@ -102,7 +102,7 @@ class Tribe__PUE__Package_Handler {
|
|
102 |
Â
protected function download( $package ) {
|
103 |
Â
if ( empty( $this->filesystem ) ) {
|
104 |
Â
// try to connect
|
105 |
-
$this->upgrader->fs_connect(
|
106 |
Â
|
107 |
Â
global $wp_filesystem;
|
108 |
Â
|
102 |
Â
protected function download( $package ) {
|
103 |
Â
if ( empty( $this->filesystem ) ) {
|
104 |
Â
// try to connect
|
105 |
+
$this->upgrader->fs_connect( [ WP_CONTENT_DIR, WP_PLUGIN_DIR ] );
|
106 |
Â
|
107 |
Â
global $wp_filesystem;
|
108 |
Â
|
common/src/Tribe/PUE/Plugin_Info.php
CHANGED
@@ -93,8 +93,7 @@ if ( ! class_exists( 'Tribe__PUE__Plugin_Info' ) ) {
|
|
93 |
Â
|
94 |
Â
// The custom update API is built so that many fields have the same name and format
|
95 |
Â
// as those returned by the native WordPress.org API. These can be assigned directly.
|
96 |
-
|
97 |
-
$sameFormat = array(
|
98 |
Â
'name',
|
99 |
Â
'slug',
|
100 |
Â
'version',
|
@@ -109,7 +108,8 @@ if ( ! class_exists( 'Tribe__PUE__Plugin_Info' ) ) {
|
|
109 |
Â
'api_expired',
|
110 |
Â
'api_upgrade',
|
111 |
Â
'api_invalid',
|
112 |
-
|
Â
|
|
113 |
Â
foreach ( $sameFormat as $field ) {
|
114 |
Â
if ( isset( $this->$field ) ) {
|
115 |
Â
$info->$field = $this->$field;
|
@@ -132,7 +132,7 @@ if ( ! class_exists( 'Tribe__PUE__Plugin_Info' ) ) {
|
|
132 |
Â
} elseif ( is_array( $this->sections ) ) {
|
133 |
Â
$info->sections = $this->sections;
|
134 |
Â
} else {
|
135 |
-
$info->sections =
|
136 |
Â
}
|
137 |
Â
|
138 |
Â
return $info;
|
93 |
Â
|
94 |
Â
// The custom update API is built so that many fields have the same name and format
|
95 |
Â
// as those returned by the native WordPress.org API. These can be assigned directly.
|
96 |
+
$sameFormat = [
|
Â
|
|
97 |
Â
'name',
|
98 |
Â
'slug',
|
99 |
Â
'version',
|
108 |
Â
'api_expired',
|
109 |
Â
'api_upgrade',
|
110 |
Â
'api_invalid',
|
111 |
+
];
|
112 |
+
|
113 |
Â
foreach ( $sameFormat as $field ) {
|
114 |
Â
if ( isset( $this->$field ) ) {
|
115 |
Â
$info->$field = $this->$field;
|
132 |
Â
} elseif ( is_array( $this->sections ) ) {
|
133 |
Â
$info->sections = $this->sections;
|
134 |
Â
} else {
|
135 |
+
$info->sections = [ 'description' => '' ];
|
136 |
Â
}
|
137 |
Â
|
138 |
Â
return $info;
|
common/src/Tribe/PUE/Utility.php
CHANGED
@@ -28,7 +28,7 @@ if ( ! class_exists( 'Tribe__PUE__Utility' ) ) {
|
|
28 |
Â
public $version;
|
29 |
Â
public $homepage;
|
30 |
Â
public $download_url;
|
31 |
-
public $sections =
|
32 |
Â
public $upgrade_notice;
|
33 |
Â
public $custom_update;
|
34 |
Â
|
@@ -61,7 +61,7 @@ if ( ! class_exists( 'Tribe__PUE__Utility' ) ) {
|
|
61 |
Â
*/
|
62 |
Â
public static function from_plugin_info( $info ) {
|
63 |
Â
$update = new Tribe__PUE__Utility();
|
64 |
-
$copyFields =
|
65 |
Â
'id',
|
66 |
Â
'slug',
|
67 |
Â
'version',
|
@@ -76,7 +76,7 @@ if ( ! class_exists( 'Tribe__PUE__Utility' ) ) {
|
|
76 |
Â
'api_invalid_message',
|
77 |
Â
'api_inline_invalid_message',
|
78 |
Â
'custom_update',
|
79 |
-
|
80 |
Â
|
81 |
Â
foreach ( $copyFields as $field ) {
|
82 |
Â
if ( ! isset( $info->$field ) ) {
|
28 |
Â
public $version;
|
29 |
Â
public $homepage;
|
30 |
Â
public $download_url;
|
31 |
+
public $sections = [];
|
32 |
Â
public $upgrade_notice;
|
33 |
Â
public $custom_update;
|
34 |
Â
|
61 |
Â
*/
|
62 |
Â
public static function from_plugin_info( $info ) {
|
63 |
Â
$update = new Tribe__PUE__Utility();
|
64 |
+
$copyFields = [
|
65 |
Â
'id',
|
66 |
Â
'slug',
|
67 |
Â
'version',
|
76 |
Â
'api_invalid_message',
|
77 |
Â
'api_inline_invalid_message',
|
78 |
Â
'custom_update',
|
79 |
+
];
|
80 |
Â
|
81 |
Â
foreach ( $copyFields as $field ) {
|
82 |
Â
if ( ! isset( $info->$field ) ) {
|
common/src/Tribe/Plugin_Meta_Links.php
CHANGED
@@ -30,7 +30,7 @@ class Tribe__Plugin_Meta_Links {
|
|
30 |
Â
* }
|
31 |
Â
* }
|
32 |
Â
*/
|
33 |
-
private $meta_links =
|
34 |
Â
|
35 |
Â
/**
|
36 |
Â
* Returns the singleton instance of this class.
|
@@ -42,7 +42,7 @@ class Tribe__Plugin_Meta_Links {
|
|
42 |
Â
}
|
43 |
Â
|
44 |
Â
private function __construct() {
|
45 |
-
add_action( 'plugin_row_meta',
|
46 |
Â
}
|
47 |
Â
|
48 |
Â
/**
|
@@ -53,7 +53,7 @@ class Tribe__Plugin_Meta_Links {
|
|
53 |
Â
* @param string $href URL for the link.
|
54 |
Â
* @param array $attributes Key => value attributes for element.
|
55 |
Â
*/
|
56 |
-
public function add_link( $plugin, $title, $href, $attributes =
|
57 |
Â
$attributes['href'] = $href;
|
58 |
Â
|
59 |
Â
// Build the <a> element.
|
@@ -79,12 +79,12 @@ class Tribe__Plugin_Meta_Links {
|
|
79 |
Â
$basename = plugin_basename( $plugin );
|
80 |
Â
|
81 |
Â
// Get any current links for this plugin.
|
82 |
-
$cur_links = Tribe__Utils__Array::get( $this->meta_links, $basename,
|
83 |
Â
|
84 |
-
$cur_links[] =
|
85 |
-
'html'
|
86 |
Â
'remove' => $remove,
|
87 |
-
|
88 |
Â
|
89 |
Â
$this->meta_links = Tribe__Utils__Array::set( $this->meta_links, $basename, $cur_links );
|
90 |
Â
}
|
@@ -99,7 +99,7 @@ class Tribe__Plugin_Meta_Links {
|
|
99 |
Â
*/
|
100 |
Â
public function filter_meta_links( $links, $basename ) {
|
101 |
Â
// Gets any links that are set for this plugin, defaults to an empty array.
|
102 |
-
$set_links = Tribe__Utils__Array::get( $this->meta_links, $basename,
|
103 |
Â
|
104 |
Â
foreach ( $set_links as $link ) {
|
105 |
Â
|
30 |
Â
* }
|
31 |
Â
* }
|
32 |
Â
*/
|
33 |
+
private $meta_links = [];
|
34 |
Â
|
35 |
Â
/**
|
36 |
Â
* Returns the singleton instance of this class.
|
42 |
Â
}
|
43 |
Â
|
44 |
Â
private function __construct() {
|
45 |
+
add_action( 'plugin_row_meta', [ $this, 'filter_meta_links' ], 10, 2 );
|
46 |
Â
}
|
47 |
Â
|
48 |
Â
/**
|
53 |
Â
* @param string $href URL for the link.
|
54 |
Â
* @param array $attributes Key => value attributes for element.
|
55 |
Â
*/
|
56 |
+
public function add_link( $plugin, $title, $href, $attributes = [] ) {
|
57 |
Â
$attributes['href'] = $href;
|
58 |
Â
|
59 |
Â
// Build the <a> element.
|
79 |
Â
$basename = plugin_basename( $plugin );
|
80 |
Â
|
81 |
Â
// Get any current links for this plugin.
|
82 |
+
$cur_links = Tribe__Utils__Array::get( $this->meta_links, $basename, [] );
|
83 |
Â
|
84 |
+
$cur_links[] = [
|
85 |
+
'html' => $html,
|
86 |
Â
'remove' => $remove,
|
87 |
+
];
|
88 |
Â
|
89 |
Â
$this->meta_links = Tribe__Utils__Array::set( $this->meta_links, $basename, $cur_links );
|
90 |
Â
}
|
99 |
Â
*/
|
100 |
Â
public function filter_meta_links( $links, $basename ) {
|
101 |
Â
// Gets any links that are set for this plugin, defaults to an empty array.
|
102 |
+
$set_links = Tribe__Utils__Array::get( $this->meta_links, $basename, [] );
|
103 |
Â
|
104 |
Â
foreach ( $set_links as $link ) {
|
105 |
Â
|
common/src/Tribe/Plugins_API.php
CHANGED
@@ -20,213 +20,213 @@ class Tribe__Plugins_API {
|
|
20 |
Â
* @return array
|
21 |
Â
*/
|
22 |
Â
public function get_products() {
|
23 |
-
$products =
|
24 |
-
'the-events-calendar'
|
25 |
-
'title'
|
26 |
-
'slug'
|
27 |
-
'link'
|
28 |
-
'description'
|
29 |
-
'features'
|
30 |
Â
__( 'Customizable', 'tribe-common' ),
|
31 |
Â
__( 'Import & export events', 'tribe-common' ),
|
32 |
Â
__( 'Timezone support', 'tribe-common' ),
|
33 |
Â
__( 'Multiple views', 'tribe-common' ),
|
34 |
Â
],
|
35 |
-
'image'
|
36 |
-
'logo'
|
37 |
-
'is_installed'
|
38 |
-
'free'
|
39 |
Â
'active_installs' => 800000,
|
40 |
-
|
41 |
-
'event-aggregator'
|
42 |
-
'title'
|
43 |
-
'slug'
|
44 |
-
'link'
|
45 |
-
'description'
|
46 |
-
'features'
|
47 |
Â
__( 'Schedule automated imports', 'tribe-common' ),
|
48 |
Â
__( 'Customizable', 'tribe-common' ),
|
49 |
Â
__( 'Works with Google Calendar, Meetup, and more', 'tribe-common' ),
|
50 |
Â
__( 'Refine by date, location, or keyword', 'tribe-common' ),
|
51 |
Â
],
|
52 |
-
'image'
|
53 |
-
'logo'
|
54 |
-
'is_installed'
|
55 |
-
'free'
|
56 |
Â
'active_installs' => 20000,
|
57 |
-
|
58 |
-
'events-calendar-pro'
|
59 |
-
'title'
|
60 |
-
'slug'
|
61 |
-
'link'
|
62 |
-
'description'
|
63 |
-
'features'
|
64 |
Â
__( 'Premium support', 'tribe-common' ),
|
65 |
Â
__( 'Recurring events', 'tribe-common' ),
|
66 |
Â
__( 'Additional views', 'tribe-common' ),
|
67 |
Â
__( 'Shortcodes', 'tribe-common' ),
|
68 |
Â
],
|
69 |
-
'image'
|
70 |
-
'logo'
|
71 |
-
'is_installed'
|
72 |
-
'free'
|
73 |
Â
'active_installs' => 100000,
|
74 |
-
|
75 |
-
'event-tickets'
|
76 |
-
'title'
|
77 |
-
'slug'
|
78 |
-
'link'
|
79 |
-
'description'
|
80 |
-
'features'
|
81 |
Â
__( 'Add tickets and RSVP to any post', 'tribe-common' ),
|
82 |
Â
__( 'Paypal integration', 'tribe-common' ),
|
83 |
Â
__( 'Attendee reports', 'tribe-common' ),
|
84 |
Â
__( 'Customizable ticket template', 'tribe-common' ),
|
85 |
Â
],
|
86 |
-
'image'
|
87 |
-
'logo'
|
88 |
-
'is_installed'
|
89 |
-
'free'
|
90 |
Â
'active_installs' => 20000,
|
91 |
-
|
92 |
-
'event-tickets-plus'
|
93 |
-
'title'
|
94 |
-
'slug'
|
95 |
-
'link'
|
96 |
-
'description'
|
97 |
-
'features'
|
98 |
Â
__( 'Custom registration fields', 'tribe-common' ),
|
99 |
Â
__( 'WooCommerce compatibility', 'tribe-common' ),
|
100 |
Â
__( 'Ticket scanning with mobile app', 'tribe-common' ),
|
101 |
Â
__( 'Custom attendee registration fields', 'tribe-common' ),
|
102 |
Â
],
|
103 |
-
'image'
|
104 |
-
'logo'
|
105 |
-
'is_installed'
|
106 |
-
'free'
|
107 |
Â
'active_installs' => 10000,
|
108 |
-
|
109 |
-
'promoter'
|
110 |
-
'title'
|
111 |
-
'slug'
|
112 |
-
'link'
|
113 |
-
'description'
|
114 |
-
'features'
|
115 |
Â
__( 'Automate email touchpoints', 'tribe-common' ),
|
116 |
Â
__( 'Customize email templates', 'tribe-common' ),
|
117 |
Â
__( 'Streamline your email process', 'tribe-common' ),
|
118 |
Â
__( 'Segment your attendee lists', 'tribe-common' ),
|
119 |
Â
],
|
120 |
-
'image'
|
121 |
-
'logo'
|
122 |
-
'is_installed'
|
123 |
-
'free'
|
124 |
Â
'active_installs' => 1000,
|
125 |
-
|
126 |
-
'tribe-filterbar'
|
127 |
-
'title'
|
128 |
-
'slug'
|
129 |
-
'link'
|
130 |
-
'description'
|
131 |
-
'features'
|
132 |
Â
__( 'Configurable set of filters', 'tribe-common' ),
|
133 |
Â
__( 'Horizontal or vertical', 'tribe-common' ),
|
134 |
Â
__( 'Filter category, price, and more', 'tribe-common' ),
|
135 |
Â
__( 'Filter distance (for Events Calendar Pro)', 'tribe-common' ),
|
136 |
Â
],
|
137 |
-
'image'
|
138 |
-
'logo'
|
139 |
-
'is_installed'
|
140 |
-
'free'
|
141 |
Â
'active_installs' => 20000,
|
142 |
-
|
143 |
-
'events-community'
|
144 |
-
'title'
|
145 |
-
'slug'
|
146 |
-
'link'
|
147 |
-
'description'
|
148 |
-
'features'
|
149 |
Â
__( 'Publishing Control', 'tribe-common' ),
|
150 |
Â
__( 'Event Submission Form', 'tribe-common' ),
|
151 |
Â
__( 'Registered User Settings', 'tribe-common' ),
|
152 |
Â
__( 'Email notifications', 'tribe-common' ),
|
153 |
Â
],
|
154 |
-
'image'
|
155 |
-
'logo'
|
156 |
-
'is_installed'
|
157 |
-
'free'
|
158 |
Â
'active_installs' => 20000,
|
159 |
-
|
160 |
-
'events-community-tickets' =>
|
161 |
-
'title'
|
162 |
-
'slug'
|
163 |
-
'link'
|
164 |
-
'description'
|
165 |
-
'features'
|
166 |
Â
__( 'Users submit events and sell tickets', 'tribe-common' ),
|
167 |
Â
__( 'Split commission with users', 'tribe-common' ),
|
168 |
Â
__( 'No admin access required', 'tribe-common' ), /* code review: fail this */
|
169 |
Â
__( 'Sales reporting', 'tribe-common' ),
|
170 |
Â
],
|
171 |
-
'requires'
|
172 |
-
'image'
|
173 |
-
'logo'
|
174 |
-
'is_installed'
|
175 |
-
'free'
|
176 |
Â
'active_installs' => 10000,
|
177 |
-
|
178 |
-
'tribe-eventbrite'
|
179 |
-
'title'
|
180 |
-
'slug'
|
181 |
-
'link'
|
182 |
-
'description'
|
183 |
-
'features'
|
184 |
Â
__( 'Manage tickets from WordPress', 'tribe-common' ),
|
185 |
Â
__( 'Ticket availability automatically updates', 'tribe-common' ),
|
186 |
Â
__( 'Integrated with your events on Eventbrite', 'tribe-common' ),
|
187 |
Â
__( 'Automatically import your events', 'tribe-common' ),
|
188 |
Â
],
|
189 |
-
'image'
|
190 |
-
'logo'
|
191 |
-
'is_installed'
|
192 |
-
'free'
|
193 |
Â
'active_installs' => 20000,
|
194 |
-
|
195 |
-
'image-widget-plus'
|
196 |
-
'title'
|
197 |
-
'slug'
|
198 |
-
'link'
|
199 |
-
'description'
|
200 |
-
'features'
|
201 |
Â
__( 'Multi-Image Support', 'tribe-common' ),
|
202 |
Â
__( 'Lightbox', 'tribe-common' ),
|
203 |
Â
__( 'Slideshow', 'tribe-common' ),
|
204 |
Â
__( 'Random Images', 'tribe-common' ),
|
205 |
Â
],
|
206 |
-
'image'
|
207 |
-
'logo'
|
208 |
-
'is_installed'
|
209 |
-
'free'
|
210 |
Â
'active_installs' => 2500,
|
211 |
-
|
212 |
-
'events-virtual'
|
213 |
-
'title'
|
214 |
-
'slug'
|
215 |
-
'link'
|
216 |
-
'description'
|
217 |
-
'features'
|
218 |
Â
__( 'Zoom integration', 'tribe-common' ),
|
219 |
Â
__( 'Virtual event labels', 'tribe-common' ),
|
220 |
Â
__( 'Status control for canceled or postponed events', 'tribe-common' ),
|
221 |
Â
__( 'Embed livestreams and videos', 'tribe-common' ),
|
222 |
Â
],
|
223 |
-
'image'
|
224 |
-
'logo'
|
225 |
-
'is_installed'
|
226 |
-
'free'
|
227 |
Â
'active_installs' => 2500,
|
228 |
-
|
229 |
-
|
230 |
Â
|
231 |
Â
return $products;
|
232 |
Â
}
|
20 |
Â
* @return array
|
21 |
Â
*/
|
22 |
Â
public function get_products() {
|
23 |
+
$products = [
|
24 |
+
'the-events-calendar' => [
|
25 |
+
'title' => __( 'The Events Calendar', 'tribe-common' ),
|
26 |
+
'slug' => 'the-events-calendar',
|
27 |
+
'link' => 'https://m.tri.be/1ai-',
|
28 |
+
'description' => __( 'Our flagship free calendar', 'tribe-common' ),
|
29 |
+
'features' => [
|
30 |
Â
__( 'Customizable', 'tribe-common' ),
|
31 |
Â
__( 'Import & export events', 'tribe-common' ),
|
32 |
Â
__( 'Timezone support', 'tribe-common' ),
|
33 |
Â
__( 'Multiple views', 'tribe-common' ),
|
34 |
Â
],
|
35 |
+
'image' => 'images/shop/calendar.jpg',
|
36 |
+
'logo' => 'images/logo/the-events-calendar.svg',
|
37 |
+
'is_installed' => class_exists( 'Tribe__Events__Main' ),
|
38 |
+
'free' => true,
|
39 |
Â
'active_installs' => 800000,
|
40 |
+
],
|
41 |
+
'event-aggregator' => [
|
42 |
+
'title' => __( 'Event Aggregator', 'tribe-common' ),
|
43 |
+
'slug' => 'event-aggregator',
|
44 |
+
'link' => 'https://m.tri.be/1aj0',
|
45 |
+
'description' => __( 'Automated imports for your calendar', 'tribe-common' ),
|
46 |
+
'features' => [
|
47 |
Â
__( 'Schedule automated imports', 'tribe-common' ),
|
48 |
Â
__( 'Customizable', 'tribe-common' ),
|
49 |
Â
__( 'Works with Google Calendar, Meetup, and more', 'tribe-common' ),
|
50 |
Â
__( 'Refine by date, location, or keyword', 'tribe-common' ),
|
51 |
Â
],
|
52 |
+
'image' => 'images/shop/aggregator.jpg',
|
53 |
+
'logo' => 'images/logo/event-aggregator.svg',
|
54 |
+
'is_installed' => class_exists( 'Tribe__Events__Aggregator' ) && Tribe__Events__Aggregator::is_service_active(),
|
55 |
+
'free' => false,
|
56 |
Â
'active_installs' => 20000,
|
57 |
+
],
|
58 |
+
'events-calendar-pro' => [
|
59 |
+
'title' => __( 'Events Calendar Pro', 'tribe-common' ),
|
60 |
+
'slug' => 'events-calendar-pro',
|
61 |
+
'link' => 'https://m.tri.be/1ai-',
|
62 |
+
'description' => __( 'Power up your calendar with Pro', 'tribe-common' ),
|
63 |
+
'features' => [
|
64 |
Â
__( 'Premium support', 'tribe-common' ),
|
65 |
Â
__( 'Recurring events', 'tribe-common' ),
|
66 |
Â
__( 'Additional views', 'tribe-common' ),
|
67 |
Â
__( 'Shortcodes', 'tribe-common' ),
|
68 |
Â
],
|
69 |
+
'image' => 'images/shop/pro.jpg',
|
70 |
+
'logo' => 'images/logo/events-calendar-pro.svg',
|
71 |
+
'is_installed' => class_exists( 'Tribe__Events__Pro__Main' ),
|
72 |
+
'free' => false,
|
73 |
Â
'active_installs' => 100000,
|
74 |
+
],
|
75 |
+
'event-tickets' => [
|
76 |
+
'title' => __( 'Event Tickets', 'tribe-common' ),
|
77 |
+
'slug' => 'event-tickets',
|
78 |
+
'link' => 'https://m.tri.be/1aj1',
|
79 |
+
'description' => __( 'Manage ticketing and RSVPs', 'tribe-common' ),
|
80 |
+
'features' => [
|
81 |
Â
__( 'Add tickets and RSVP to any post', 'tribe-common' ),
|
82 |
Â
__( 'Paypal integration', 'tribe-common' ),
|
83 |
Â
__( 'Attendee reports', 'tribe-common' ),
|
84 |
Â
__( 'Customizable ticket template', 'tribe-common' ),
|
85 |
Â
],
|
86 |
+
'image' => 'images/shop/tickets.jpg',
|
87 |
+
'logo' => 'images/logo/event-tickets.svg',
|
88 |
+
'is_installed' => class_exists( 'Tribe__Tickets__Main' ),
|
89 |
+
'free' => true,
|
90 |
Â
'active_installs' => 20000,
|
91 |
+
],
|
92 |
+
'event-tickets-plus' => [
|
93 |
+
'title' => __( 'Event Tickets Plus', 'tribe-common' ),
|
94 |
+
'slug' => 'event-tickets-plus',
|
95 |
+
'link' => 'http://m.tri.be/1aj1',
|
96 |
+
'description' => __( 'Monetize your events', 'tribe-common' ),
|
97 |
+
'features' => [
|
98 |
Â
__( 'Custom registration fields', 'tribe-common' ),
|
99 |
Â
__( 'WooCommerce compatibility', 'tribe-common' ),
|
100 |
Â
__( 'Ticket scanning with mobile app', 'tribe-common' ),
|
101 |
Â
__( 'Custom attendee registration fields', 'tribe-common' ),
|
102 |
Â
],
|
103 |
+
'image' => 'images/shop/tickets-plus.jpg',
|
104 |
+
'logo' => 'images/logo/event-tickets-plus.svg',
|
105 |
+
'is_installed' => class_exists( 'Tribe__Tickets_Plus__Main' ),
|
106 |
+
'free' => false,
|
107 |
Â
'active_installs' => 10000,
|
108 |
+
],
|
109 |
+
'promoter' => [
|
110 |
+
'title' => __( 'Promoter', 'tribe-common' ),
|
111 |
+
'slug' => 'promoter',
|
112 |
+
'link' => 'https://m.tri.be/1acy',
|
113 |
+
'description' => __( 'An email marketing solution for events and the people running them', 'tribe-common' ),
|
114 |
+
'features' => [
|
115 |
Â
__( 'Automate email touchpoints', 'tribe-common' ),
|
116 |
Â
__( 'Customize email templates', 'tribe-common' ),
|
117 |
Â
__( 'Streamline your email process', 'tribe-common' ),
|
118 |
Â
__( 'Segment your attendee lists', 'tribe-common' ),
|
119 |
Â
],
|
120 |
+
'image' => 'images/shop/promoter.jpg',
|
121 |
+
'logo' => 'images/logo/promoter.svg',
|
122 |
+
'is_installed' => tribe( 'promoter.pue' )->has_license_key(),
|
123 |
+
'free' => false,
|
124 |
Â
'active_installs' => 1000,
|
125 |
+
],
|
126 |
+
'tribe-filterbar' => [
|
127 |
+
'title' => __( 'Filter Bar', 'tribe-common' ),
|
128 |
+
'slug' => 'tribe-filterbar',
|
129 |
+
'link' => 'https://m.tri.be/19o6',
|
130 |
+
'description' => __( 'Help users find exactly the right event', 'tribe-common' ),
|
131 |
+
'features' => [
|
132 |
Â
__( 'Configurable set of filters', 'tribe-common' ),
|
133 |
Â
__( 'Horizontal or vertical', 'tribe-common' ),
|
134 |
Â
__( 'Filter category, price, and more', 'tribe-common' ),
|
135 |
Â
__( 'Filter distance (for Events Calendar Pro)', 'tribe-common' ),
|
136 |
Â
],
|
137 |
+
'image' => 'images/shop/filter-bar.jpg',
|
138 |
+
'logo' => 'images/logo/filterbar.svg',
|
139 |
+
'is_installed' => class_exists( 'Tribe__Events__Filterbar__View' ),
|
140 |
+
'free' => false,
|
141 |
Â
'active_installs' => 20000,
|
142 |
+
],
|
143 |
+
'events-community' => [
|
144 |
+
'title' => __( 'Community Events', 'tribe-common' ),
|
145 |
+
'slug' => 'events-community',
|
146 |
+
'link' => 'https://m.tri.be/19o7',
|
147 |
+
'description' => __( 'Users submit events to your calendar', 'tribe-common' ),
|
148 |
+
'features' => [
|
149 |
Â
__( 'Publishing Control', 'tribe-common' ),
|
150 |
Â
__( 'Event Submission Form', 'tribe-common' ),
|
151 |
Â
__( 'Registered User Settings', 'tribe-common' ),
|
152 |
Â
__( 'Email notifications', 'tribe-common' ),
|
153 |
Â
],
|
154 |
+
'image' => 'images/shop/community.jpg',
|
155 |
+
'logo' => 'images/logo/community-events.svg',
|
156 |
+
'is_installed' => class_exists( 'Tribe__Events__Community__Main' ),
|
157 |
+
'free' => false,
|
158 |
Â
'active_installs' => 20000,
|
159 |
+
],
|
160 |
+
'events-community-tickets' => [
|
161 |
+
'title' => __( 'Community Tickets', 'tribe-common' ),
|
162 |
+
'slug' => 'events-community-tickets',
|
163 |
+
'link' => 'https://m.tri.be/19o8',
|
164 |
+
'description' => __( 'Run your own events marketplace', 'tribe-common' ),
|
165 |
+
'features' => [
|
166 |
Â
__( 'Users submit events and sell tickets', 'tribe-common' ),
|
167 |
Â
__( 'Split commission with users', 'tribe-common' ),
|
168 |
Â
__( 'No admin access required', 'tribe-common' ), /* code review: fail this */
|
169 |
Â
__( 'Sales reporting', 'tribe-common' ),
|
170 |
Â
],
|
171 |
+
'requires' => _x( 'Event Tickets Plus and Community Events', 'Names of required plugins for Community Tickets', 'tribe-common' ),
|
172 |
+
'image' => 'images/shop/community-tickets.jpg',
|
173 |
+
'logo' => 'images/logo/community-tickets.svg',
|
174 |
+
'is_installed' => class_exists( 'Tribe__Events__Community__Tickets__Main' ),
|
175 |
+
'free' => false,
|
176 |
Â
'active_installs' => 10000,
|
177 |
+
],
|
178 |
+
'tribe-eventbrite' => [
|
179 |
+
'title' => __( 'Eventbrite Tickets', 'tribe-common' ),
|
180 |
+
'slug' => 'tribe-eventbrite',
|
181 |
+
'link' => 'https://m.tri.be/19o9',
|
182 |
+
'description' => __( 'Unite the power of TEC with the ticketing of Eventbrite', 'tribe-common' ),
|
183 |
+
'features' => [
|
184 |
Â
__( 'Manage tickets from WordPress', 'tribe-common' ),
|
185 |
Â
__( 'Ticket availability automatically updates', 'tribe-common' ),
|
186 |
Â
__( 'Integrated with your events on Eventbrite', 'tribe-common' ),
|
187 |
Â
__( 'Automatically import your events', 'tribe-common' ),
|
188 |
Â
],
|
189 |
+
'image' => 'images/shop/eventbrite.jpg',
|
190 |
+
'logo' => 'images/logo/eventbrite-tickets.svg',
|
191 |
+
'is_installed' => class_exists( 'Tribe__Events__Tickets__Eventbrite__Main' ),
|
192 |
+
'free' => false,
|
193 |
Â
'active_installs' => 20000,
|
194 |
+
],
|
195 |
+
'image-widget-plus' => [
|
196 |
+
'title' => __( 'Image Widget Plus', 'tribe-common' ),
|
197 |
+
'slug' => 'image-widget-plus',
|
198 |
+
'link' => 'https://m.tri.be/19nv',
|
199 |
+
'description' => __( 'Beautiful display options for your favorite photos.', 'tribe-common' ),
|
200 |
+
'features' => [
|
201 |
Â
__( 'Multi-Image Support', 'tribe-common' ),
|
202 |
Â
__( 'Lightbox', 'tribe-common' ),
|
203 |
Â
__( 'Slideshow', 'tribe-common' ),
|
204 |
Â
__( 'Random Images', 'tribe-common' ),
|
205 |
Â
],
|
206 |
+
'image' => 'images/shop/image-widget-plus.jpg',
|
207 |
+
'logo' => 'images/logo/image-widget-plus.svg',
|
208 |
+
'is_installed' => class_exists( 'Tribe__Image__Plus__Main' ),
|
209 |
+
'free' => false,
|
210 |
Â
'active_installs' => 2500,
|
211 |
+
],
|
212 |
+
'events-virtual' => [
|
213 |
+
'title' => __( 'Virtual Events', 'tribe-common' ),
|
214 |
+
'slug' => 'events-virtual',
|
215 |
+
'link' => 'http://m.tri.be/virtual-events',
|
216 |
+
'description' => __( 'Features to optimize your calendar for virtual events.', 'tribe-common' ),
|
217 |
+
'features' => [
|
218 |
Â
__( 'Zoom integration', 'tribe-common' ),
|
219 |
Â
__( 'Virtual event labels', 'tribe-common' ),
|
220 |
Â
__( 'Status control for canceled or postponed events', 'tribe-common' ),
|
221 |
Â
__( 'Embed livestreams and videos', 'tribe-common' ),
|
222 |
Â
],
|
223 |
+
'image' => 'images/shop/virtual-events.jpg',
|
224 |
+
'logo' => 'images/logo/virtual-events.svg',
|
225 |
+
'is_installed' => defined( 'EVENTS_VIRTUAL_FILE' ),
|
226 |
+
'free' => false,
|
227 |
Â
'active_installs' => 2500,
|
228 |
+
],
|
229 |
+
];
|
230 |
Â
|
231 |
Â
return $products;
|
232 |
Â
}
|
common/src/Tribe/Post_History.php
CHANGED
@@ -47,16 +47,16 @@ class Tribe__Post_History {
|
|
47 |
Â
* @param string $message
|
48 |
Â
* @param array $data
|
49 |
Â
*/
|
50 |
-
public function add_entry( $message, array $data =
|
51 |
Â
$datetime = current_time( 'mysql' );
|
52 |
Â
$checksum = uniqid( substr( hash( 'md5', $datetime . $message . serialize( $data ) ), 0, 8 ) . '_' );
|
53 |
Â
|
54 |
-
$log_entry = wp_slash( json_encode(
|
55 |
Â
'datetime' => $datetime,
|
56 |
Â
'message' => $message,
|
57 |
Â
'data' => $data,
|
58 |
Â
'checksum' => $checksum,
|
59 |
-
|
60 |
Â
|
61 |
Â
add_post_meta( $this->post_id, self::HISTORY_KEY, $log_entry );
|
62 |
Â
}
|
@@ -84,7 +84,7 @@ class Tribe__Post_History {
|
|
84 |
Â
* @return array
|
85 |
Â
*/
|
86 |
Â
public function get_entries() {
|
87 |
-
$entries =
|
88 |
Â
|
89 |
Â
foreach ( get_post_meta( $this->post_id, self::HISTORY_KEY ) as $log_entry ) {
|
90 |
Â
$log_entry = json_decode( $log_entry );
|
47 |
Â
* @param string $message
|
48 |
Â
* @param array $data
|
49 |
Â
*/
|
50 |
+
public function add_entry( $message, array $data = [] ) {
|
51 |
Â
$datetime = current_time( 'mysql' );
|
52 |
Â
$checksum = uniqid( substr( hash( 'md5', $datetime . $message . serialize( $data ) ), 0, 8 ) . '_' );
|
53 |
Â
|
54 |
+
$log_entry = wp_slash( json_encode( [
|
55 |
Â
'datetime' => $datetime,
|
56 |
Â
'message' => $message,
|
57 |
Â
'data' => $data,
|
58 |
Â
'checksum' => $checksum,
|
59 |
+
] ) );
|
60 |
Â
|
61 |
Â
add_post_meta( $this->post_id, self::HISTORY_KEY, $log_entry );
|
62 |
Â
}
|
84 |
Â
* @return array
|
85 |
Â
*/
|
86 |
Â
public function get_entries() {
|
87 |
+
$entries = [];
|
88 |
Â
|
89 |
Â
foreach ( get_post_meta( $this->post_id, self::HISTORY_KEY ) as $log_entry ) {
|
90 |
Â
$log_entry = json_decode( $log_entry );
|
common/src/Tribe/Promise.php
CHANGED
@@ -60,13 +60,13 @@ class Tribe__Promise extends Tribe__Process__Queue {
|
|
60 |
Â
* @param array $extra_args An array of extra arguments that will be passed to the
|
61 |
Â
* callback function.
|
62 |
Â
*/
|
63 |
-
public function __construct( $callback = null, array $items = null, array $extra_args =
|
64 |
Â
parent::__construct();
|
65 |
Â
|
66 |
Â
if ( ! empty( $callback ) && ! empty( $items ) ) {
|
67 |
Â
foreach ( $items as $target ) {
|
68 |
Â
$item['callback'] = $callback;
|
69 |
-
$item['args'] = array_merge(
|
70 |
Â
$this->push_to_queue( $item );
|
71 |
Â
}
|
72 |
Â
}
|
@@ -272,7 +272,7 @@ class Tribe__Promise extends Tribe__Process__Queue {
|
|
272 |
Â
*/
|
273 |
Â
protected function unpack_callback( $callback ) {
|
274 |
Â
if ( $callback instanceof Tribe__Utils__Callback ) {
|
275 |
-
$callback =
|
276 |
Â
}
|
277 |
Â
|
278 |
Â
return $callback;
|
60 |
Â
* @param array $extra_args An array of extra arguments that will be passed to the
|
61 |
Â
* callback function.
|
62 |
Â
*/
|
63 |
+
public function __construct( $callback = null, array $items = null, array $extra_args = [] ) {
|
64 |
Â
parent::__construct();
|
65 |
Â
|
66 |
Â
if ( ! empty( $callback ) && ! empty( $items ) ) {
|
67 |
Â
foreach ( $items as $target ) {
|
68 |
Â
$item['callback'] = $callback;
|
69 |
+
$item['args'] = array_merge( [ $target ], $extra_args );
|
70 |
Â
$this->push_to_queue( $item );
|
71 |
Â
}
|
72 |
Â
}
|
272 |
Â
*/
|
273 |
Â
protected function unpack_callback( $callback ) {
|
274 |
Â
if ( $callback instanceof Tribe__Utils__Callback ) {
|
275 |
+
$callback = [ tribe( $callback->get_slug() ), $callback->get_method() ];
|
276 |
Â
}
|
277 |
Â
|
278 |
Â
return $callback;
|
common/src/Tribe/Promoter/PUE.php
CHANGED
@@ -23,10 +23,10 @@ class Tribe__Promoter__PUE {
|
|
23 |
Â
* @since 4.9
|
24 |
Â
*/
|
25 |
Â
public function load() {
|
26 |
-
$this->pue_checker = new Tribe__PUE__Checker( 'http://tri.be/', $this->slug,
|
27 |
Â
'context' => 'service',
|
28 |
Â
'plugin_name' => __( 'Promoter', 'tribe-common' ),
|
29 |
-
|
30 |
Â
}
|
31 |
Â
|
32 |
Â
/**
|
@@ -57,10 +57,10 @@ class Tribe__Promoter__PUE {
|
|
57 |
Â
return false;
|
58 |
Â
}
|
59 |
Â
|
60 |
-
return
|
61 |
Â
'key' => $key,
|
62 |
Â
'is_network_key' => $is_network_key,
|
63 |
-
|
64 |
Â
}
|
65 |
Â
|
66 |
Â
/**
|
23 |
Â
* @since 4.9
|
24 |
Â
*/
|
25 |
Â
public function load() {
|
26 |
+
$this->pue_checker = new Tribe__PUE__Checker( 'http://tri.be/', $this->slug, [
|
27 |
Â
'context' => 'service',
|
28 |
Â
'plugin_name' => __( 'Promoter', 'tribe-common' ),
|
29 |
+
] );
|
30 |
Â
}
|
31 |
Â
|
32 |
Â
/**
|
57 |
Â
return false;
|
58 |
Â
}
|
59 |
Â
|
60 |
+
return [
|
61 |
Â
'key' => $key,
|
62 |
Â
'is_network_key' => $is_network_key,
|
63 |
+
];
|
64 |
Â
}
|
65 |
Â
|
66 |
Â
/**
|
common/src/Tribe/REST/Post_Repository.php
CHANGED
@@ -14,11 +14,11 @@ class Tribe__REST__Post_Repository {
|
|
14 |
Â
$full_url = get_attachment_link( $image_id );
|
15 |
Â
$file = get_attached_file( $image_id );
|
16 |
Â
|
17 |
-
$data =
|
18 |
Â
'url' => $full_url,
|
19 |
Â
'id' => $image_id,
|
20 |
Â
'extension' => pathinfo( $file, PATHINFO_EXTENSION ),
|
21 |
-
|
22 |
Â
|
23 |
Â
$metadata = wp_get_attachment_metadata( $image_id );
|
24 |
Â
|
@@ -49,26 +49,26 @@ class Tribe__REST__Post_Repository {
|
|
49 |
Â
*/
|
50 |
Â
protected function get_date_details( $date ) {
|
51 |
Â
if ( empty( $date ) ) {
|
52 |
-
return
|
53 |
Â
'year' => '',
|
54 |
Â
'month' => '',
|
55 |
Â
'day' => '',
|
56 |
Â
'hour' => '',
|
57 |
Â
'minutes' => '',
|
58 |
Â
'seconds' => '',
|
59 |
-
|
60 |
Â
}
|
61 |
Â
|
62 |
Â
$time = strtotime( $date );
|
63 |
Â
|
64 |
-
return
|
65 |
Â
'year' => date( 'Y', $time ),
|
66 |
Â
'month' => date( 'm', $time ),
|
67 |
Â
'day' => date( 'd', $time ),
|
68 |
Â
'hour' => date( 'H', $time ),
|
69 |
Â
'minutes' => date( 'i', $time ),
|
70 |
Â
'seconds' => date( 's', $time ),
|
71 |
-
|
72 |
Â
}
|
73 |
Â
|
74 |
Â
/**
|
@@ -80,15 +80,19 @@ class Tribe__REST__Post_Repository {
|
|
80 |
Â
*
|
81 |
Â
* @return array
|
82 |
Â
*/
|
83 |
-
protected function format_and_sort_cost_couples( array $cost_couples =
|
84 |
Â
global $wp_locale;
|
85 |
Â
|
86 |
-
$cost_values =
|
87 |
Â
foreach ( $cost_couples as $key => $value ) {
|
88 |
-
$value = str_replace(
|
89 |
-
|
90 |
-
|
91 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
92 |
Â
if ( is_numeric( $value ) ) {
|
93 |
Â
$cost_values[] = $value;
|
94 |
Â
} else {
|
14 |
Â
$full_url = get_attachment_link( $image_id );
|
15 |
Â
$file = get_attached_file( $image_id );
|
16 |
Â
|
17 |
+
$data = [
|
18 |
Â
'url' => $full_url,
|
19 |
Â
'id' => $image_id,
|
20 |
Â
'extension' => pathinfo( $file, PATHINFO_EXTENSION ),
|
21 |
+
];
|
22 |
Â
|
23 |
Â
$metadata = wp_get_attachment_metadata( $image_id );
|
24 |
Â
|
49 |
Â
*/
|
50 |
Â
protected function get_date_details( $date ) {
|
51 |
Â
if ( empty( $date ) ) {
|
52 |
+
return [
|
53 |
Â
'year' => '',
|
54 |
Â
'month' => '',
|
55 |
Â
'day' => '',
|
56 |
Â
'hour' => '',
|
57 |
Â
'minutes' => '',
|
58 |
Â
'seconds' => '',
|
59 |
+
];
|
60 |
Â
}
|
61 |
Â
|
62 |
Â
$time = strtotime( $date );
|
63 |
Â
|
64 |
+
return [
|
65 |
Â
'year' => date( 'Y', $time ),
|
66 |
Â
'month' => date( 'm', $time ),
|
67 |
Â
'day' => date( 'd', $time ),
|
68 |
Â
'hour' => date( 'H', $time ),
|
69 |
Â
'minutes' => date( 'i', $time ),
|
70 |
Â
'seconds' => date( 's', $time ),
|
71 |
+
];
|
72 |
Â
}
|
73 |
Â
|
74 |
Â
/**
|
80 |
Â
*
|
81 |
Â
* @return array
|
82 |
Â
*/
|
83 |
+
protected function format_and_sort_cost_couples( array $cost_couples = [] ) {
|
84 |
Â
global $wp_locale;
|
85 |
Â
|
86 |
+
$cost_values = [];
|
87 |
Â
foreach ( $cost_couples as $key => $value ) {
|
88 |
+
$value = str_replace(
|
89 |
+
[
|
90 |
+
$wp_locale->number_format['decimal_point'],
|
91 |
+
$wp_locale->number_format['thousands_sep'],
|
92 |
+
],
|
93 |
+
[ '.', '' ],
|
94 |
+
'' . $value
|
95 |
+
);
|
96 |
Â
if ( is_numeric( $value ) ) {
|
97 |
Â
$cost_values[] = $value;
|
98 |
Â
} else {
|
common/src/Tribe/Repository.php
CHANGED
@@ -14,19 +14,19 @@ abstract class Tribe__Repository
|
|
14 |
Â
/**
|
15 |
Â
* @var array An array of keys that cannot be updated on this repository.
|
16 |
Â
*/
|
17 |
-
protected static $blocked_keys =
|
18 |
Â
'ID',
|
19 |
Â
'post_type',
|
20 |
Â
'post_modified',
|
21 |
Â
'post_modified_gmt',
|
22 |
Â
'guid',
|
23 |
Â
'comment_count',
|
24 |
-
|
25 |
Â
|
26 |
Â
/**
|
27 |
Â
* @var array A list of the default filters supported and implemented by the repository.
|
28 |
Â
*/
|
29 |
-
protected static $default_modifiers =
|
30 |
Â
'p',
|
31 |
Â
'author',
|
32 |
Â
'author_name',
|
@@ -121,22 +121,22 @@ abstract class Tribe__Repository
|
|
121 |
Â
'term_in',
|
122 |
Â
'term_not_in',
|
123 |
Â
'term_and',
|
124 |
-
|
125 |
Â
|
126 |
Â
/**
|
127 |
Â
* @var array An array of default arguments that will be applied to all queries.
|
128 |
Â
*/
|
129 |
-
protected static $common_args =
|
130 |
Â
'post_type' => 'post',
|
131 |
Â
'suppress_filters' => false,
|
132 |
-
'posts_per_page' => -
|
133 |
-
|
134 |
Â
|
135 |
Â
/**
|
136 |
Â
* @var array A list of query modifiers that will trigger a overriding merge, thus
|
137 |
Â
* replacing previous values, when set multiple times.
|
138 |
Â
*/
|
139 |
-
protected static $replacing_modifiers =
|
140 |
Â
'p',
|
141 |
Â
'author',
|
142 |
Â
'author_name',
|
@@ -191,20 +191,22 @@ abstract class Tribe__Repository
|
|
191 |
Â
'guid',
|
192 |
Â
'perm',
|
193 |
Â
'order',
|
194 |
-
|
195 |
Â
|
196 |
Â
/**
|
197 |
Â
* @var int
|
198 |
Â
*/
|
199 |
Â
protected static $meta_alias = 0;
|
Â
|
|
200 |
Â
/**
|
201 |
Â
* @var array A list of keys that denote the value to check should be cast to array.
|
202 |
Â
*/
|
203 |
-
protected static $multi_value_keys =
|
Â
|
|
204 |
Â
/**
|
205 |
Â
* @var array A map of SQL comparison operators to their human-readable counterpart.
|
206 |
Â
*/
|
207 |
-
protected static $comparison_operators =
|
208 |
Â
'=' => 'equals',
|
209 |
Â
'!=' => 'not-equals',
|
210 |
Â
'>' => 'gt',
|
@@ -221,7 +223,7 @@ abstract class Tribe__Repository
|
|
221 |
Â
'NOT EXISTS' => 'not-exists',
|
222 |
Â
'REGEXP' => 'regexp',
|
223 |
Â
'NOT REGEXP' => 'not-regexp',
|
224 |
-
|
225 |
Â
|
226 |
Â
/**
|
227 |
Â
* A counter to keep track, on the class level, of the aliases generated for the terms table
|
@@ -238,7 +240,7 @@ abstract class Tribe__Repository
|
|
238 |
Â
/**
|
239 |
Â
* @var array The post IDs that will be updated.
|
240 |
Â
*/
|
241 |
-
protected $ids =
|
242 |
Â
/**
|
243 |
Â
* @var bool Whether the post IDs to update have already been fetched or not.
|
244 |
Â
*/
|
@@ -246,101 +248,114 @@ abstract class Tribe__Repository
|
|
246 |
Â
/**
|
247 |
Â
* @var array The updates that will be saved to the database.
|
248 |
Â
*/
|
249 |
-
protected $updates =
|
250 |
Â
|
251 |
Â
/**
|
252 |
Â
* @var array A list of taxonomies this repository will recognize.
|
253 |
Â
*/
|
254 |
-
protected $taxonomies =
|
255 |
Â
|
256 |
Â
/**
|
257 |
Â
* @var array A map detailing which fields should be converted from a
|
258 |
Â
* GMT time and date to a local one.
|
259 |
Â
*/
|
260 |
-
protected $to_local_time_map =
|
261 |
Â
'post_date_gmt' => 'post_date',
|
262 |
-
|
Â
|
|
263 |
Â
/**
|
264 |
Â
* @var array A map detailing which fields should be converted from a
|
265 |
Â
* localized time and date to a GMT one.
|
266 |
Â
*/
|
267 |
-
protected $to_gmt_map =
|
268 |
Â
'post_date' => 'post_date_gmt',
|
269 |
-
|
270 |
Â
|
271 |
Â
/**
|
272 |
Â
* @var array
|
273 |
Â
*/
|
274 |
-
protected $default_args =
|
Â
|
|
275 |
Â
/**
|
276 |
Â
* @var array An array of query modifying callbacks populated while applying
|
277 |
Â
* the filters.
|
278 |
Â
*/
|
279 |
-
protected $query_modifiers =
|
Â
|
|
280 |
Â
/**
|
281 |
Â
* @var bool Whether the current query is void or not.
|
282 |
Â
*/
|
283 |
Â
protected $void_query = false;
|
Â
|
|
284 |
Â
/**
|
285 |
Â
* @var array An array of query arguments that will be populated while applying
|
286 |
Â
* filters.
|
287 |
Â
*/
|
288 |
-
protected $query_args =
|
289 |
-
'meta_query' =>
|
290 |
-
'tax_query' =>
|
291 |
-
'date_query' =>
|
292 |
-
|
Â
|
|
293 |
Â
/**
|
294 |
Â
* @var array An array of query arguments that support 'relation'.
|
295 |
Â
*/
|
296 |
-
protected $relation_query_args =
|
297 |
Â
'meta_query',
|
298 |
Â
'tax_query',
|
299 |
Â
'date_query',
|
300 |
-
|
Â
|
|
301 |
Â
/**
|
302 |
Â
* @var WP_Query The current query object built and modified by the instance.
|
303 |
Â
*/
|
304 |
Â
protected $current_query;
|
Â
|
|
305 |
Â
/**
|
306 |
Â
* @var array An associative array of the filters that will be applied and the used values.
|
307 |
Â
*/
|
308 |
-
protected $current_filters =
|
Â
|
|
309 |
Â
/**
|
310 |
Â
* @var string|null The current filter being applied.
|
311 |
Â
*/
|
312 |
Â
protected $current_filter;
|
Â
|
|
313 |
Â
/**
|
314 |
Â
* @var Tribe__Repository__Query_Filters
|
315 |
Â
*/
|
316 |
Â
public $filter_query;
|
Â
|
|
317 |
Â
/**
|
318 |
Â
* @var string The filter that should be used to get a post by its primary key.
|
319 |
Â
*/
|
320 |
Â
protected $primary_key = 'p';
|
Â
|
|
321 |
Â
/**
|
322 |
Â
* @var array A map of callbacks in the shape [ <slug> => <callback|primitive> ]
|
323 |
Â
*/
|
324 |
-
protected $schema =
|
325 |
Â
|
326 |
Â
/**
|
327 |
Â
* @var array A map of schema slugs and their meta keys to be queried.
|
328 |
Â
*/
|
329 |
-
protected $simple_meta_schema =
|
330 |
Â
|
331 |
Â
/**
|
332 |
Â
* @var array A map of schema slugs and their taxonomies to be queried.
|
333 |
Â
*/
|
334 |
-
protected $simple_tax_schema =
|
335 |
Â
|
336 |
Â
/**
|
337 |
Â
* @var Tribe__Repository__Interface
|
338 |
Â
*/
|
339 |
Â
protected $main_repository;
|
Â
|
|
340 |
Â
/**
|
341 |
Â
* @var Tribe__Repository__Formatter_Interface
|
342 |
Â
*/
|
343 |
Â
protected $formatter;
|
Â
|
|
344 |
Â
/**
|
345 |
Â
* @var bool
|
346 |
Â
*/
|
@@ -360,7 +375,7 @@ abstract class Tribe__Repository
|
|
360 |
Â
*
|
361 |
Â
* @var array
|
362 |
Â
*/
|
363 |
-
protected $update_fields_aliases =
|
364 |
Â
'title' => 'post_title',
|
365 |
Â
'content' => 'post_content',
|
366 |
Â
'description' => 'post_content',
|
@@ -374,7 +389,7 @@ abstract class Tribe__Repository
|
|
374 |
Â
'date_utc' => 'post_date_gmt',
|
375 |
Â
'tag' => 'post_tag',
|
376 |
Â
'image' => '_thumbnail_id',
|
377 |
-
|
378 |
Â
|
379 |
Â
/**
|
380 |
Â
* The default create args that will be used by the repository
|
@@ -423,9 +438,9 @@ abstract class Tribe__Repository
|
|
423 |
Â
*/
|
424 |
Â
public function __construct() {
|
425 |
Â
$this->filter_query = new Tribe__Repository__Query_Filters();
|
426 |
-
$this->default_args = array_merge(
|
427 |
-
$post_types = (array) Tribe__Utils__Array::get( $this->default_args, 'post_type',
|
428 |
-
$this->taxonomies = get_taxonomies(
|
429 |
Â
|
430 |
Â
/**
|
431 |
Â
* Allow plugins to init their classes and setup hooks at the initial setup of a repository.
|
@@ -502,7 +517,8 @@ abstract class Tribe__Repository
|
|
502 |
Â
*/
|
503 |
Â
public function where( $key, $value = null ) {
|
504 |
Â
$call_args = func_get_args();
|
505 |
-
|
Â
|
|
506 |
Â
}
|
507 |
Â
|
508 |
Â
/**
|
@@ -650,7 +666,7 @@ abstract class Tribe__Repository
|
|
650 |
Â
*/
|
651 |
Â
public function all() {
|
652 |
Â
if ( $this->void_query ) {
|
653 |
-
return
|
654 |
Â
}
|
655 |
Â
|
656 |
Â
$query = $this->build_query();
|
@@ -691,7 +707,7 @@ abstract class Tribe__Repository
|
|
691 |
Â
*/
|
692 |
Â
$formatted = $return_ids
|
693 |
Â
? $results
|
694 |
-
: array_filter( array_map(
|
695 |
Â
|
696 |
Â
// Reset the fields if required.
|
697 |
Â
$query->set( 'fields', $original_fields_value );
|
@@ -722,7 +738,7 @@ abstract class Tribe__Repository
|
|
722 |
Â
public function order( $order = 'ASC' ) {
|
723 |
Â
$order = strtoupper( $order );
|
724 |
Â
|
725 |
-
if ( ! in_array( $order,
|
726 |
Â
return $this;
|
727 |
Â
}
|
728 |
Â
|
@@ -754,7 +770,7 @@ abstract class Tribe__Repository
|
|
754 |
Â
* {@inheritdoc}
|
755 |
Â
*/
|
756 |
Â
public function permission( $permission ) {
|
757 |
-
if ( ! in_array( $permission,
|
758 |
Â
return $this;
|
759 |
Â
}
|
760 |
Â
|
@@ -930,10 +946,10 @@ abstract class Tribe__Repository
|
|
930 |
Â
* {@inheritdoc}
|
931 |
Â
*/
|
932 |
Â
public function nth( $n ) {
|
933 |
-
$per_page = (int) Tribe__Utils__Array::get_in_any(
|
934 |
Â
$this->query_args,
|
935 |
Â
$this->default_args,
|
936 |
-
|
937 |
Â
|
938 |
Â
if ( - 1 !== $per_page && $n > $per_page ) {
|
939 |
Â
return null;
|
@@ -1010,12 +1026,12 @@ abstract class Tribe__Repository
|
|
1010 |
Â
$matching_ids = $this->get_ids();
|
1011 |
Â
|
1012 |
Â
if ( empty( $matching_ids ) ) {
|
1013 |
-
return
|
1014 |
Â
}
|
1015 |
Â
|
1016 |
Â
$spliced = array_splice( $matching_ids, 0, $n );
|
1017 |
Â
|
1018 |
-
return $return_ids ? $spliced : array_map(
|
1019 |
Â
}
|
1020 |
Â
|
1021 |
Â
/**
|
@@ -1125,20 +1141,11 @@ abstract class Tribe__Repository
|
|
1125 |
Â
*/
|
1126 |
Â
$this->query_args = array_merge( $this->query_args, $query_modifier );
|
1127 |
Â
} else {
|
1128 |
-
$query_args = $this->query_args;
|
1129 |
-
|
1130 |
-
// Handle relation separately because we do not want that to merge recursively
|
1131 |
-
foreach ( $this->relation_query_args as $query_arg ) {
|
1132 |
-
if ( isset( $query_args[ $query_arg ]['relation'], $query_modifier[ $query_arg ]['relation'] ) ) {
|
1133 |
-
unset( $query_args[ $query_arg ]['relation'] );
|
1134 |
-
}
|
1135 |
-
}
|
1136 |
-
|
1137 |
Â
/**
|
1138 |
Â
* We do a recursive merge to allow "stacking" of same kind of queries;
|
1139 |
-
* e.g. two or more `tax_query
|
1140 |
Â
*/
|
1141 |
-
$this->query_args =
|
1142 |
Â
}
|
1143 |
Â
} else {
|
1144 |
Â
/**
|
@@ -1186,18 +1193,18 @@ abstract class Tribe__Repository
|
|
1186 |
Â
if ( $this->has_default_modifier( $key ) ) {
|
1187 |
Â
// let's use the default filters normalizing the key first
|
1188 |
Â
$call_args[0] = $this->normalize_key( $key );
|
1189 |
-
$query_modifier = call_user_func_array(
|
1190 |
Â
} elseif ( 2 === count( $call_args ) ) {
|
1191 |
Â
// Pass query argument $key with the single value argument.
|
1192 |
-
$query_modifier =
|
1193 |
Â
$key => $call_args[1],
|
1194 |
-
|
1195 |
Â
} else {
|
1196 |
Â
// More than two $call_args were sent (key, value), assume it was meant for a filter that was not defined yet.
|
1197 |
Â
throw Tribe__Repository__Usage_Error::because_the_read_filter_is_not_defined( $key, $this );
|
1198 |
Â
}
|
1199 |
Â
} else {
|
1200 |
-
$query_modifier = call_user_func_array(
|
1201 |
Â
}
|
1202 |
Â
|
1203 |
Â
return $query_modifier;
|
@@ -1247,7 +1254,7 @@ abstract class Tribe__Repository
|
|
1247 |
Â
// `ID` to `id`
|
1248 |
Â
$normalized = strtolower( $key );
|
1249 |
Â
|
1250 |
-
$post_prefixed =
|
1251 |
Â
'password',
|
1252 |
Â
'name__in',
|
1253 |
Â
'_in',
|
@@ -1262,7 +1269,7 @@ abstract class Tribe__Repository
|
|
1262 |
Â
'modified',
|
1263 |
Â
'modified_gmt',
|
1264 |
Â
'content_filtered',
|
1265 |
-
|
1266 |
Â
|
1267 |
Â
if ( in_array( $key, $post_prefixed, true ) ) {
|
1268 |
Â
$normalized = 'post_' . $key;
|
@@ -1320,11 +1327,11 @@ abstract class Tribe__Repository
|
|
1320 |
Â
$to_update = $this->get_ids();
|
1321 |
Â
|
1322 |
Â
if ( empty( $to_update ) ) {
|
1323 |
-
return $return_promise ? new Tribe__Promise() :
|
1324 |
Â
}
|
1325 |
Â
|
1326 |
-
$exit =
|
1327 |
-
$postarrs =
|
1328 |
Â
|
1329 |
Â
foreach ( $to_update as $id ) {
|
1330 |
Â
$postarrs[ $id ] = $this->filter_postarr_for_update( $this->build_postarr( $id ), $id );
|
@@ -1355,7 +1362,7 @@ abstract class Tribe__Repository
|
|
1355 |
Â
*/
|
1356 |
Â
public function get_ids() {
|
1357 |
Â
if ( $this->void_query ) {
|
1358 |
-
return
|
1359 |
Â
}
|
1360 |
Â
|
1361 |
Â
|
@@ -1387,7 +1394,7 @@ abstract class Tribe__Repository
|
|
1387 |
Â
* Extending classes might use this method to run sub-queries
|
1388 |
Â
* and signal a void query; let's return an empty array.
|
1389 |
Â
*/
|
1390 |
-
return
|
1391 |
Â
}
|
1392 |
Â
}
|
1393 |
Â
|
@@ -1533,7 +1540,7 @@ abstract class Tribe__Repository
|
|
1533 |
Â
public function where_meta_related_by( $meta_keys, $compare, $field = null, $values = null ) {
|
1534 |
Â
$meta_keys = Tribe__Utils__Array::list_to_array( $meta_keys );
|
1535 |
Â
|
1536 |
-
if ( ! in_array( $compare,
|
1537 |
Â
if ( empty( $field ) || empty( $values ) ) {
|
1538 |
Â
throw Tribe__Repository__Usage_Error::because_this_comparison_operator_requires_fields_and_values( $meta_keys, $compare, $this );
|
1539 |
Â
}
|
@@ -1591,7 +1598,7 @@ abstract class Tribe__Repository
|
|
1591 |
Â
public function where_meta_related_by_meta( $meta_keys, $compare, $meta_field = null, $meta_values = null, $or_not_exists = false ) {
|
1592 |
Â
$meta_keys = Tribe__Utils__Array::list_to_array( $meta_keys );
|
1593 |
Â
|
1594 |
-
if ( ! in_array( $compare,
|
1595 |
Â
if ( empty( $meta_field ) || empty( $meta_values ) ) {
|
1596 |
Â
throw Tribe__Repository__Usage_Error::because_this_comparison_operator_requires_fields_and_values( $meta_keys, $compare, $this );
|
1597 |
Â
}
|
@@ -1678,7 +1685,7 @@ abstract class Tribe__Repository
|
|
1678 |
Â
$buffered_count = count( $buffered );
|
1679 |
Â
|
1680 |
Â
foreach ( $all_callbacks as $c ) {
|
1681 |
-
call_user_func_array(
|
1682 |
Â
|
1683 |
Â
if ( $buffered_count === count( $this->filter_query->get_buffered_where_clauses() ) ) {
|
1684 |
Â
throw Tribe__Repository__Usage_Error::because_where_or_should_only_be_used_with_methods_that_add_where_clauses( $c, $this );
|
@@ -1719,12 +1726,12 @@ abstract class Tribe__Repository
|
|
1719 |
Â
* @param string|null $by The ->by() lookup to use (defaults to meta_regexp_or_like).
|
1720 |
Â
*/
|
1721 |
Â
public function add_simple_meta_schema_entry( $key, $meta_key, $by = null ) {
|
1722 |
-
$this->schema[ $key ] =
|
1723 |
Â
|
1724 |
-
$this->simple_meta_schema[ $key ] =
|
1725 |
Â
'meta_key' => $meta_key,
|
1726 |
Â
'by' => $by,
|
1727 |
-
|
1728 |
Â
}
|
1729 |
Â
|
1730 |
Â
/**
|
@@ -1737,12 +1744,12 @@ abstract class Tribe__Repository
|
|
1737 |
Â
* @param string|null $by The ->by() lookup to use (defaults to term_in).
|
1738 |
Â
*/
|
1739 |
Â
public function add_simple_tax_schema_entry( $key, $taxonomy, $by = null ) {
|
1740 |
-
$this->schema[ $key ] =
|
1741 |
Â
|
1742 |
-
$this->simple_tax_schema[ $key ] =
|
1743 |
Â
'taxonomy' => $taxonomy,
|
1744 |
Â
'by' => $by,
|
1745 |
-
|
1746 |
Â
}
|
1747 |
Â
|
1748 |
Â
/**
|
@@ -1764,7 +1771,7 @@ abstract class Tribe__Repository
|
|
1764 |
Â
* @throws Tribe__Repository__Usage_Error If a filter is called with wrong arguments.
|
1765 |
Â
*/
|
1766 |
Â
protected function apply_default_modifier( $key, $value ) {
|
1767 |
-
$args =
|
1768 |
Â
|
1769 |
Â
$call_args = func_get_args();
|
1770 |
Â
$arg_1 = isset( $call_args[2] ) ? $call_args[2] : null;
|
@@ -1776,14 +1783,14 @@ abstract class Tribe__Repository
|
|
1776 |
Â
switch ( $key ) {
|
1777 |
Â
default:
|
1778 |
Â
// leverage built-in WP_Query filters
|
1779 |
-
$args =
|
1780 |
Â
break;
|
1781 |
Â
case 'ID':
|
1782 |
Â
case 'id':
|
1783 |
-
$args =
|
1784 |
Â
break;
|
1785 |
Â
case 'search':
|
1786 |
-
$args =
|
1787 |
Â
break;
|
1788 |
Â
case 'post_status':
|
1789 |
Â
$this->query_args['post_status'] = (array) $value;
|
@@ -1813,7 +1820,7 @@ abstract class Tribe__Repository
|
|
1813 |
Â
break;
|
1814 |
Â
case 'to_ping':
|
1815 |
Â
$this->filter_query->to_get_posts_to_ping( $value );
|
1816 |
-
$args =
|
1817 |
Â
break;
|
1818 |
Â
case 'post_modified':
|
1819 |
Â
$args = $this->get_posts_after( $value, 'post_modified' );
|
@@ -1828,7 +1835,7 @@ abstract class Tribe__Repository
|
|
1828 |
Â
$this->filter_query->to_get_posts_with_guid_like( $value );
|
1829 |
Â
break;
|
1830 |
Â
case 'menu_order':
|
1831 |
-
$args =
|
1832 |
Â
break;
|
1833 |
Â
case 'meta':
|
1834 |
Â
case 'meta_equals':
|
@@ -1990,7 +1997,7 @@ abstract class Tribe__Repository
|
|
1990 |
Â
* @return array
|
1991 |
Â
*/
|
1992 |
Â
protected function get_posts_after( $value, $column = 'post_date' ) {
|
1993 |
-
$timezone = in_array( $column,
|
1994 |
Â
? 'UTC'
|
1995 |
Â
: Tribe__Timezones::generate_timezone_string_from_utc_offset( Tribe__Timezones::wp_timezone_string() );
|
1996 |
Â
|
@@ -2002,16 +2009,16 @@ abstract class Tribe__Repository
|
|
2002 |
Â
|
2003 |
Â
$array_key = sprintf( '%s-after', $column );
|
2004 |
Â
|
2005 |
-
return
|
2006 |
-
'date_query' =>
|
2007 |
Â
'relation' => 'AND',
|
2008 |
-
$array_key =>
|
2009 |
Â
'inclusive' => true,
|
2010 |
Â
'column' => $column,
|
2011 |
Â
'after' => $date->format( 'Y-m-d H:i:s' ),
|
2012 |
-
|
2013 |
-
|
2014 |
-
|
2015 |
Â
}
|
2016 |
Â
|
2017 |
Â
/**
|
@@ -2025,7 +2032,7 @@ abstract class Tribe__Repository
|
|
2025 |
Â
* @return array
|
2026 |
Â
*/
|
2027 |
Â
protected function get_posts_before( $value, $column = 'post_date' ) {
|
2028 |
-
$timezone = in_array( $column,
|
2029 |
Â
? 'UTC'
|
2030 |
Â
: Tribe__Timezones::generate_timezone_string_from_utc_offset( Tribe__Timezones::wp_timezone_string() );
|
2031 |
Â
|
@@ -2037,16 +2044,16 @@ abstract class Tribe__Repository
|
|
2037 |
Â
|
2038 |
Â
$array_key = sprintf( '%s-before', $column );
|
2039 |
Â
|
2040 |
-
return
|
2041 |
-
'date_query' =>
|
2042 |
Â
'relation' => 'AND',
|
2043 |
-
$array_key =>
|
2044 |
Â
'inclusive' => true,
|
2045 |
Â
'column' => $column,
|
2046 |
Â
'before' => $date->format( 'Y-m-d H:i:s' ),
|
2047 |
-
|
2048 |
-
|
2049 |
-
|
2050 |
Â
}
|
2051 |
Â
|
2052 |
Â
/**
|
@@ -2071,16 +2078,16 @@ abstract class Tribe__Repository
|
|
2071 |
Â
if ( count( $meta_keys ) === 1 ) {
|
2072 |
Â
$array_key = $this->sql_slug( $meta_keys[0], $postfix );
|
2073 |
Â
|
2074 |
-
$args =
|
2075 |
-
'meta_query' =>
|
2076 |
-
$array_key =>
|
2077 |
Â
'key' => $meta_keys[0],
|
2078 |
Â
'compare' => strtoupper( $compare ),
|
2079 |
-
|
2080 |
-
|
2081 |
-
|
2082 |
Â
|
2083 |
-
if ( ! in_array( $compare,
|
2084 |
Â
$args['meta_query'][ $array_key ]['value'] = $meta_value;
|
2085 |
Â
}
|
2086 |
Â
|
@@ -2167,22 +2174,22 @@ abstract class Tribe__Repository
|
|
2167 |
Â
* @return array
|
2168 |
Â
*/
|
2169 |
Â
protected function build_tax_query( $taxonomy, $terms, $field, $operator ) {
|
2170 |
-
if ( in_array( $operator,
|
2171 |
Â
$array_key = $this->sql_slug( $taxonomy, $operator );
|
2172 |
Â
} else {
|
2173 |
Â
$array_key = $this->sql_slug( $taxonomy, $field, $operator );
|
2174 |
Â
}
|
2175 |
Â
|
2176 |
-
return
|
2177 |
-
'tax_query' =>
|
2178 |
-
$array_key =>
|
2179 |
Â
'taxonomy' => $taxonomy,
|
2180 |
Â
'field' => $field,
|
2181 |
Â
'terms' => $terms,
|
2182 |
Â
'operator' => strtoupper( $operator ),
|
2183 |
-
|
2184 |
-
|
2185 |
-
|
2186 |
Â
}
|
2187 |
Â
|
2188 |
Â
/**
|
@@ -2226,12 +2233,12 @@ abstract class Tribe__Repository
|
|
2226 |
Â
public function prepare_interval( $values, $format = '%s', $operator = 'IN' ) {
|
2227 |
Â
$values = Tribe__Utils__Array::list_to_array( $values );
|
2228 |
Â
|
2229 |
-
$prepared =
|
2230 |
Â
foreach ( $values as $value ) {
|
2231 |
Â
$prepared[] = $this->prepare_value( $value, $format );
|
2232 |
Â
}
|
2233 |
Â
|
2234 |
-
return in_array( $operator,
|
2235 |
Â
? sprintf( '%s AND %s', $prepared[0], $prepared[1] )
|
2236 |
Â
: sprintf( '(%s)', implode( ',', $prepared ) );
|
2237 |
Â
}
|
@@ -2432,7 +2439,7 @@ abstract class Tribe__Repository
|
|
2432 |
Â
$to_delete = $this->get_ids();
|
2433 |
Â
|
2434 |
Â
if ( empty( $to_delete ) ) {
|
2435 |
-
return $return_promise ? new Tribe__Promise() :
|
2436 |
Â
}
|
2437 |
Â
|
2438 |
Â
|
@@ -2862,10 +2869,10 @@ abstract class Tribe__Repository
|
|
2862 |
Â
* {@inheritdoc}
|
2863 |
Â
*/
|
2864 |
Â
public function build_postarr( $id = null ) {
|
2865 |
-
$postarr =
|
2866 |
-
'tax_input' =>
|
2867 |
-
'meta_input' =>
|
2868 |
-
|
2869 |
Â
|
2870 |
Â
/*
|
2871 |
Â
* The check is lax here by design: we leave space for the client code
|
@@ -3042,7 +3049,7 @@ abstract class Tribe__Repository
|
|
3042 |
Â
/**
|
3043 |
Â
* {@inheritdoc}
|
3044 |
Â
*/
|
3045 |
-
public function filter( $args =
|
3046 |
Â
$list = new WP_List_Util( $this->all() );
|
3047 |
Â
|
3048 |
Â
return $list->filter( $args, $operator );
|
@@ -3051,7 +3058,7 @@ abstract class Tribe__Repository
|
|
3051 |
Â
/**
|
3052 |
Â
* {@inheritdoc}
|
3053 |
Â
*/
|
3054 |
-
public function sort( $orderby =
|
3055 |
Â
$list = new WP_List_Util( $this->all() );
|
3056 |
Â
|
3057 |
Â
return $list->sort( $orderby, $order, $preserve_keys );
|
14 |
Â
/**
|
15 |
Â
* @var array An array of keys that cannot be updated on this repository.
|
16 |
Â
*/
|
17 |
+
protected static $blocked_keys = [
|
18 |
Â
'ID',
|
19 |
Â
'post_type',
|
20 |
Â
'post_modified',
|
21 |
Â
'post_modified_gmt',
|
22 |
Â
'guid',
|
23 |
Â
'comment_count',
|
24 |
+
];
|
25 |
Â
|
26 |
Â
/**
|
27 |
Â
* @var array A list of the default filters supported and implemented by the repository.
|
28 |
Â
*/
|
29 |
+
protected static $default_modifiers = [
|
30 |
Â
'p',
|
31 |
Â
'author',
|
32 |
Â
'author_name',
|
121 |
Â
'term_in',
|
122 |
Â
'term_not_in',
|
123 |
Â
'term_and',
|
124 |
+
];
|
125 |
Â
|
126 |
Â
/**
|
127 |
Â
* @var array An array of default arguments that will be applied to all queries.
|
128 |
Â
*/
|
129 |
+
protected static $common_args = [
|
130 |
Â
'post_type' => 'post',
|
131 |
Â
'suppress_filters' => false,
|
132 |
+
'posts_per_page' => -1,
|
133 |
+
];
|
134 |
Â
|
135 |
Â
/**
|
136 |
Â
* @var array A list of query modifiers that will trigger a overriding merge, thus
|
137 |
Â
* replacing previous values, when set multiple times.
|
138 |
Â
*/
|
139 |
+
protected static $replacing_modifiers = [
|
140 |
Â
'p',
|
141 |
Â
'author',
|
142 |
Â
'author_name',
|
191 |
Â
'guid',
|
192 |
Â
'perm',
|
193 |
Â
'order',
|
194 |
+
];
|
195 |
Â
|
196 |
Â
/**
|
197 |
Â
* @var int
|
198 |
Â
*/
|
199 |
Â
protected static $meta_alias = 0;
|
200 |
+
|
201 |
Â
/**
|
202 |
Â
* @var array A list of keys that denote the value to check should be cast to array.
|
203 |
Â
*/
|
204 |
+
protected static $multi_value_keys = [ 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN' ];
|
205 |
+
|
206 |
Â
/**
|
207 |
Â
* @var array A map of SQL comparison operators to their human-readable counterpart.
|
208 |
Â
*/
|
209 |
+
protected static $comparison_operators = [
|
210 |
Â
'=' => 'equals',
|
211 |
Â
'!=' => 'not-equals',
|
212 |
Â
'>' => 'gt',
|
223 |
Â
'NOT EXISTS' => 'not-exists',
|
224 |
Â
'REGEXP' => 'regexp',
|
225 |
Â
'NOT REGEXP' => 'not-regexp',
|
226 |
+
];
|
227 |
Â
|
228 |
Â
/**
|
229 |
Â
* A counter to keep track, on the class level, of the aliases generated for the terms table
|
240 |
Â
/**
|
241 |
Â
* @var array The post IDs that will be updated.
|
242 |
Â
*/
|
243 |
+
protected $ids = [];
|
244 |
Â
/**
|
245 |
Â
* @var bool Whether the post IDs to update have already been fetched or not.
|
246 |
Â
*/
|
248 |
Â
/**
|
249 |
Â
* @var array The updates that will be saved to the database.
|
250 |
Â
*/
|
251 |
+
protected $updates = [];
|
252 |
Â
|
253 |
Â
/**
|
254 |
Â
* @var array A list of taxonomies this repository will recognize.
|
255 |
Â
*/
|
256 |
+
protected $taxonomies = [];
|
257 |
Â
|
258 |
Â
/**
|
259 |
Â
* @var array A map detailing which fields should be converted from a
|
260 |
Â
* GMT time and date to a local one.
|
261 |
Â
*/
|
262 |
+
protected $to_local_time_map = [
|
263 |
Â
'post_date_gmt' => 'post_date',
|
264 |
+
];
|
265 |
+
|
266 |
Â
/**
|
267 |
Â
* @var array A map detailing which fields should be converted from a
|
268 |
Â
* localized time and date to a GMT one.
|
269 |
Â
*/
|
270 |
+
protected $to_gmt_map = [
|
271 |
Â
'post_date' => 'post_date_gmt',
|
272 |
+
];
|
273 |
Â
|
274 |
Â
/**
|
275 |
Â
* @var array
|
276 |
Â
*/
|
277 |
+
protected $default_args = [ 'post_type' => 'post' ];
|
278 |
+
|
279 |
Â
/**
|
280 |
Â
* @var array An array of query modifying callbacks populated while applying
|
281 |
Â
* the filters.
|
282 |
Â
*/
|
283 |
+
protected $query_modifiers = [];
|
284 |
+
|
285 |
Â
/**
|
286 |
Â
* @var bool Whether the current query is void or not.
|
287 |
Â
*/
|
288 |
Â
protected $void_query = false;
|
289 |
+
|
290 |
Â
/**
|
291 |
Â
* @var array An array of query arguments that will be populated while applying
|
292 |
Â
* filters.
|
293 |
Â
*/
|
294 |
+
protected $query_args = [
|
295 |
+
'meta_query' => [ 'relation' => 'AND' ],
|
296 |
+
'tax_query' => [ 'relation' => 'AND' ],
|
297 |
+
'date_query' => [ 'relation' => 'AND' ],
|
298 |
+
];
|
299 |
+
|
300 |
Â
/**
|
301 |
Â
* @var array An array of query arguments that support 'relation'.
|
302 |
Â
*/
|
303 |
+
protected $relation_query_args = [
|
304 |
Â
'meta_query',
|
305 |
Â
'tax_query',
|
306 |
Â
'date_query',
|
307 |
+
];
|
308 |
+
|
309 |
Â
/**
|
310 |
Â
* @var WP_Query The current query object built and modified by the instance.
|
311 |
Â
*/
|
312 |
Â
protected $current_query;
|
313 |
+
|
314 |
Â
/**
|
315 |
Â
* @var array An associative array of the filters that will be applied and the used values.
|
316 |
Â
*/
|
317 |
+
protected $current_filters = [];
|
318 |
+
|
319 |
Â
/**
|
320 |
Â
* @var string|null The current filter being applied.
|
321 |
Â
*/
|
322 |
Â
protected $current_filter;
|
323 |
+
|
324 |
Â
/**
|
325 |
Â
* @var Tribe__Repository__Query_Filters
|
326 |
Â
*/
|
327 |
Â
public $filter_query;
|
328 |
+
|
329 |
Â
/**
|
330 |
Â
* @var string The filter that should be used to get a post by its primary key.
|
331 |
Â
*/
|
332 |
Â
protected $primary_key = 'p';
|
333 |
+
|
334 |
Â
/**
|
335 |
Â
* @var array A map of callbacks in the shape [ <slug> => <callback|primitive> ]
|
336 |
Â
*/
|
337 |
+
protected $schema = [];
|
338 |
Â
|
339 |
Â
/**
|
340 |
Â
* @var array A map of schema slugs and their meta keys to be queried.
|
341 |
Â
*/
|
342 |
+
protected $simple_meta_schema = [];
|
343 |
Â
|
344 |
Â
/**
|
345 |
Â
* @var array A map of schema slugs and their taxonomies to be queried.
|
346 |
Â
*/
|
347 |
+
protected $simple_tax_schema = [];
|
348 |
Â
|
349 |
Â
/**
|
350 |
Â
* @var Tribe__Repository__Interface
|
351 |
Â
*/
|
352 |
Â
protected $main_repository;
|
353 |
+
|
354 |
Â
/**
|
355 |
Â
* @var Tribe__Repository__Formatter_Interface
|
356 |
Â
*/
|
357 |
Â
protected $formatter;
|
358 |
+
|
359 |
Â
/**
|
360 |
Â
* @var bool
|
361 |
Â
*/
|
375 |
Â
*
|
376 |
Â
* @var array
|
377 |
Â
*/
|
378 |
+
protected $update_fields_aliases = [
|
379 |
Â
'title' => 'post_title',
|
380 |
Â
'content' => 'post_content',
|
381 |
Â
'description' => 'post_content',
|
389 |
Â
'date_utc' => 'post_date_gmt',
|
390 |
Â
'tag' => 'post_tag',
|
391 |
Â
'image' => '_thumbnail_id',
|
392 |
+
];
|
393 |
Â
|
394 |
Â
/**
|
395 |
Â
* The default create args that will be used by the repository
|
438 |
Â
*/
|
439 |
Â
public function __construct() {
|
440 |
Â
$this->filter_query = new Tribe__Repository__Query_Filters();
|
441 |
+
$this->default_args = array_merge( [ 'posts_per_page' => -1 ], $this->default_args );
|
442 |
+
$post_types = (array) Tribe__Utils__Array::get( $this->default_args, 'post_type', [] );
|
443 |
+
$this->taxonomies = get_taxonomies( [ 'object_type' => $post_types ], 'names' );
|
444 |
Â
|
445 |
Â
/**
|
446 |
Â
* Allow plugins to init their classes and setup hooks at the initial setup of a repository.
|
517 |
Â
*/
|
518 |
Â
public function where( $key, $value = null ) {
|
519 |
Â
$call_args = func_get_args();
|
520 |
+
|
521 |
+
return call_user_func_array( [ $this, 'by' ], $call_args );
|
522 |
Â
}
|
523 |
Â
|
524 |
Â
/**
|
666 |
Â
*/
|
667 |
Â
public function all() {
|
668 |
Â
if ( $this->void_query ) {
|
669 |
+
return [];
|
670 |
Â
}
|
671 |
Â
|
672 |
Â
$query = $this->build_query();
|
707 |
Â
*/
|
708 |
Â
$formatted = $return_ids
|
709 |
Â
? $results
|
710 |
+
: array_filter( array_map( [ $this, 'format_item' ], $results ) );
|
711 |
Â
|
712 |
Â
// Reset the fields if required.
|
713 |
Â
$query->set( 'fields', $original_fields_value );
|
738 |
Â
public function order( $order = 'ASC' ) {
|
739 |
Â
$order = strtoupper( $order );
|
740 |
Â
|
741 |
+
if ( ! in_array( $order, [ 'ASC', 'DESC' ], true ) ) {
|
742 |
Â
return $this;
|
743 |
Â
}
|
744 |
Â
|
770 |
Â
* {@inheritdoc}
|
771 |
Â
*/
|
772 |
Â
public function permission( $permission ) {
|
773 |
+
if ( ! in_array( $permission, [ self::PERMISSION_READABLE, self::PERMISSION_EDITABLE ], true ) ) {
|
774 |
Â
return $this;
|
775 |
Â
}
|
776 |
Â
|
946 |
Â
* {@inheritdoc}
|
947 |
Â
*/
|
948 |
Â
public function nth( $n ) {
|
949 |
+
$per_page = (int) Tribe__Utils__Array::get_in_any( [
|
950 |
Â
$this->query_args,
|
951 |
Â
$this->default_args,
|
952 |
+
], 'posts_per_page', get_option( 'posts_per_page' ) );
|
953 |
Â
|
954 |
Â
if ( - 1 !== $per_page && $n > $per_page ) {
|
955 |
Â
return null;
|
1026 |
Â
$matching_ids = $this->get_ids();
|
1027 |
Â
|
1028 |
Â
if ( empty( $matching_ids ) ) {
|
1029 |
+
return [];
|
1030 |
Â
}
|
1031 |
Â
|
1032 |
Â
$spliced = array_splice( $matching_ids, 0, $n );
|
1033 |
Â
|
1034 |
+
return $return_ids ? $spliced : array_map( [ $this, 'format_item' ], $spliced );
|
1035 |
Â
}
|
1036 |
Â
|
1037 |
Â
/**
|
1141 |
Â
*/
|
1142 |
Â
$this->query_args = array_merge( $this->query_args, $query_modifier );
|
1143 |
Â
} else {
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
1144 |
Â
/**
|
1145 |
Â
* We do a recursive merge to allow "stacking" of same kind of queries;
|
1146 |
+
* e.g. two or more `tax_query` or `meta_query` entries should merge into one.
|
1147 |
Â
*/
|
1148 |
+
$this->query_args = Arr::merge_recursive_query_vars( $this->query_args, $query_modifier );
|
1149 |
Â
}
|
1150 |
Â
} else {
|
1151 |
Â
/**
|
1193 |
Â
if ( $this->has_default_modifier( $key ) ) {
|
1194 |
Â
// let's use the default filters normalizing the key first
|
1195 |
Â
$call_args[0] = $this->normalize_key( $key );
|
1196 |
+
$query_modifier = call_user_func_array( [ $this, 'apply_default_modifier' ], $call_args );
|
1197 |
Â
} elseif ( 2 === count( $call_args ) ) {
|
1198 |
Â
// Pass query argument $key with the single value argument.
|
1199 |
+
$query_modifier = [
|
1200 |
Â
$key => $call_args[1],
|
1201 |
+
];
|
1202 |
Â
} else {
|
1203 |
Â
// More than two $call_args were sent (key, value), assume it was meant for a filter that was not defined yet.
|
1204 |
Â
throw Tribe__Repository__Usage_Error::because_the_read_filter_is_not_defined( $key, $this );
|
1205 |
Â
}
|
1206 |
Â
} else {
|
1207 |
+
$query_modifier = call_user_func_array( [ $this, 'apply_modifier' ], $call_args );
|
1208 |
Â
}
|
1209 |
Â
|
1210 |
Â
return $query_modifier;
|
1254 |
Â
// `ID` to `id`
|
1255 |
Â
$normalized = strtolower( $key );
|
1256 |
Â
|
1257 |
+
$post_prefixed = [
|
1258 |
Â
'password',
|
1259 |
Â
'name__in',
|
1260 |
Â
'_in',
|
1269 |
Â
'modified',
|
1270 |
Â
'modified_gmt',
|
1271 |
Â
'content_filtered',
|
1272 |
+
];
|
1273 |
Â
|
1274 |
Â
if ( in_array( $key, $post_prefixed, true ) ) {
|
1275 |
Â
$normalized = 'post_' . $key;
|
1327 |
Â
$to_update = $this->get_ids();
|
1328 |
Â
|
1329 |
Â
if ( empty( $to_update ) ) {
|
1330 |
+
return $return_promise ? new Tribe__Promise() : [];
|
1331 |
Â
}
|
1332 |
Â
|
1333 |
+
$exit = [];
|
1334 |
+
$postarrs = [];
|
1335 |
Â
|
1336 |
Â
foreach ( $to_update as $id ) {
|
1337 |
Â
$postarrs[ $id ] = $this->filter_postarr_for_update( $this->build_postarr( $id ), $id );
|
1362 |
Â
*/
|
1363 |
Â
public function get_ids() {
|
1364 |
Â
if ( $this->void_query ) {
|
1365 |
+
return [];
|
1366 |
Â
}
|
1367 |
Â
|
1368 |
Â
|
1394 |
Â
* Extending classes might use this method to run sub-queries
|
1395 |
Â
* and signal a void query; let's return an empty array.
|
1396 |
Â
*/
|
1397 |
+
return [];
|
1398 |
Â
}
|
1399 |
Â
}
|
1400 |
Â
|
1540 |
Â
public function where_meta_related_by( $meta_keys, $compare, $field = null, $values = null ) {
|
1541 |
Â
$meta_keys = Tribe__Utils__Array::list_to_array( $meta_keys );
|
1542 |
Â
|
1543 |
+
if ( ! in_array( $compare, [ 'EXISTS', 'NOT EXISTS' ], true ) ) {
|
1544 |
Â
if ( empty( $field ) || empty( $values ) ) {
|
1545 |
Â
throw Tribe__Repository__Usage_Error::because_this_comparison_operator_requires_fields_and_values( $meta_keys, $compare, $this );
|
1546 |
Â
}
|
1598 |
Â
public function where_meta_related_by_meta( $meta_keys, $compare, $meta_field = null, $meta_values = null, $or_not_exists = false ) {
|
1599 |
Â
$meta_keys = Tribe__Utils__Array::list_to_array( $meta_keys );
|
1600 |
Â
|
1601 |
+
if ( ! in_array( $compare, [ 'EXISTS', 'NOT EXISTS' ], true ) ) {
|
1602 |
Â
if ( empty( $meta_field ) || empty( $meta_values ) ) {
|
1603 |
Â
throw Tribe__Repository__Usage_Error::because_this_comparison_operator_requires_fields_and_values( $meta_keys, $compare, $this );
|
1604 |
Â
}
|
1685 |
Â
$buffered_count = count( $buffered );
|
1686 |
Â
|
1687 |
Â
foreach ( $all_callbacks as $c ) {
|
1688 |
+
call_user_func_array( [ $this, $c[0] ], array_slice( $c, 1 ) );
|
1689 |
Â
|
1690 |
Â
if ( $buffered_count === count( $this->filter_query->get_buffered_where_clauses() ) ) {
|
1691 |
Â
throw Tribe__Repository__Usage_Error::because_where_or_should_only_be_used_with_methods_that_add_where_clauses( $c, $this );
|
1726 |
Â
* @param string|null $by The ->by() lookup to use (defaults to meta_regexp_or_like).
|
1727 |
Â
*/
|
1728 |
Â
public function add_simple_meta_schema_entry( $key, $meta_key, $by = null ) {
|
1729 |
+
$this->schema[ $key ] = [ $this, 'filter_by_simple_meta_schema' ];
|
1730 |
Â
|
1731 |
+
$this->simple_meta_schema[ $key ] = [
|
1732 |
Â
'meta_key' => $meta_key,
|
1733 |
Â
'by' => $by,
|
1734 |
+
];
|
1735 |
Â
}
|
1736 |
Â
|
1737 |
Â
/**
|
1744 |
Â
* @param string|null $by The ->by() lookup to use (defaults to term_in).
|
1745 |
Â
*/
|
1746 |
Â
public function add_simple_tax_schema_entry( $key, $taxonomy, $by = null ) {
|
1747 |
+
$this->schema[ $key ] = [ $this, 'filter_by_simple_tax_schema' ];
|
1748 |
Â
|
1749 |
+
$this->simple_tax_schema[ $key ] = [
|
1750 |
Â
'taxonomy' => $taxonomy,
|
1751 |
Â
'by' => $by,
|
1752 |
+
];
|
1753 |
Â
}
|
1754 |
Â
|
1755 |
Â
/**
|
1771 |
Â
* @throws Tribe__Repository__Usage_Error If a filter is called with wrong arguments.
|
1772 |
Â
*/
|
1773 |
Â
protected function apply_default_modifier( $key, $value ) {
|
1774 |
+
$args = [];
|
1775 |
Â
|
1776 |
Â
$call_args = func_get_args();
|
1777 |
Â
$arg_1 = isset( $call_args[2] ) ? $call_args[2] : null;
|
1783 |
Â
switch ( $key ) {
|
1784 |
Â
default:
|
1785 |
Â
// leverage built-in WP_Query filters
|
1786 |
+
$args = [ $key => $value ];
|
1787 |
Â
break;
|
1788 |
Â
case 'ID':
|
1789 |
Â
case 'id':
|
1790 |
+
$args = [ 'p' => $value ];
|
1791 |
Â
break;
|
1792 |
Â
case 'search':
|
1793 |
+
$args = [ 's' => $value ];
|
1794 |
Â
break;
|
1795 |
Â
case 'post_status':
|
1796 |
Â
$this->query_args['post_status'] = (array) $value;
|
1820 |
Â
break;
|
1821 |
Â
case 'to_ping':
|
1822 |
Â
$this->filter_query->to_get_posts_to_ping( $value );
|
1823 |
+
$args = [ 'to_ping' => $value ];
|
1824 |
Â
break;
|
1825 |
Â
case 'post_modified':
|
1826 |
Â
$args = $this->get_posts_after( $value, 'post_modified' );
|
1835 |
Â
$this->filter_query->to_get_posts_with_guid_like( $value );
|
1836 |
Â
break;
|
1837 |
Â
case 'menu_order':
|
1838 |
+
$args = [ 'menu_order' => $value ];
|
1839 |
Â
break;
|
1840 |
Â
case 'meta':
|
1841 |
Â
case 'meta_equals':
|
1997 |
Â
* @return array
|
1998 |
Â
*/
|
1999 |
Â
protected function get_posts_after( $value, $column = 'post_date' ) {
|
2000 |
+
$timezone = in_array( $column, [ 'post_date_gmt', 'post_modified_gmt' ], true )
|
2001 |
Â
? 'UTC'
|
2002 |
Â
: Tribe__Timezones::generate_timezone_string_from_utc_offset( Tribe__Timezones::wp_timezone_string() );
|
2003 |
Â
|
2009 |
Â
|
2010 |
Â
$array_key = sprintf( '%s-after', $column );
|
2011 |
Â
|
2012 |
+
return [
|
2013 |
+
'date_query' => [
|
2014 |
Â
'relation' => 'AND',
|
2015 |
+
$array_key => [
|
2016 |
Â
'inclusive' => true,
|
2017 |
Â
'column' => $column,
|
2018 |
Â
'after' => $date->format( 'Y-m-d H:i:s' ),
|
2019 |
+
],
|
2020 |
+
],
|
2021 |
+
];
|
2022 |
Â
}
|
2023 |
Â
|
2024 |
Â
/**
|
2032 |
Â
* @return array
|
2033 |
Â
*/
|
2034 |
Â
protected function get_posts_before( $value, $column = 'post_date' ) {
|
2035 |
+
$timezone = in_array( $column, [ 'post_date_gmt', 'post_modified_gmt' ], true )
|
2036 |
Â
? 'UTC'
|
2037 |
Â
: Tribe__Timezones::generate_timezone_string_from_utc_offset( Tribe__Timezones::wp_timezone_string() );
|
2038 |
Â
|
2044 |
Â
|
2045 |
Â
$array_key = sprintf( '%s-before', $column );
|
2046 |
Â
|
2047 |
+
return [
|
2048 |
+
'date_query' => [
|
2049 |
Â
'relation' => 'AND',
|
2050 |
+
$array_key => [
|
2051 |
Â
'inclusive' => true,
|
2052 |
Â
'column' => $column,
|
2053 |
Â
'before' => $date->format( 'Y-m-d H:i:s' ),
|
2054 |
+
],
|
2055 |
+
],
|
2056 |
+
];
|
2057 |
Â
}
|
2058 |
Â
|
2059 |
Â
/**
|
2078 |
Â
if ( count( $meta_keys ) === 1 ) {
|
2079 |
Â
$array_key = $this->sql_slug( $meta_keys[0], $postfix );
|
2080 |
Â
|
2081 |
+
$args = [
|
2082 |
+
'meta_query' => [
|
2083 |
+
$array_key => [
|
2084 |
Â
'key' => $meta_keys[0],
|
2085 |
Â
'compare' => strtoupper( $compare ),
|
2086 |
+
],
|
2087 |
+
],
|
2088 |
+
];
|
2089 |
Â
|
2090 |
+
if ( ! in_array( $compare, [ 'EXISTS', 'NOT EXISTS' ], true ) ) {
|
2091 |
Â
$args['meta_query'][ $array_key ]['value'] = $meta_value;
|
2092 |
Â
}
|
2093 |
Â
|
2174 |
Â
* @return array
|
2175 |
Â
*/
|
2176 |
Â
protected function build_tax_query( $taxonomy, $terms, $field, $operator ) {
|
2177 |
+
if ( in_array( $operator, [ 'EXISTS', 'NOT EXISTS' ], true ) ) {
|
2178 |
Â
$array_key = $this->sql_slug( $taxonomy, $operator );
|
2179 |
Â
} else {
|
2180 |
Â
$array_key = $this->sql_slug( $taxonomy, $field, $operator );
|
2181 |
Â
}
|
2182 |
Â
|
2183 |
+
return [
|
2184 |
+
'tax_query' => [
|
2185 |
+
$array_key => [
|
2186 |
Â
'taxonomy' => $taxonomy,
|
2187 |
Â
'field' => $field,
|
2188 |
Â
'terms' => $terms,
|
2189 |
Â
'operator' => strtoupper( $operator ),
|
2190 |
+
],
|
2191 |
+
],
|
2192 |
+
];
|
2193 |
Â
}
|
2194 |
Â
|
2195 |
Â
/**
|
2233 |
Â
public function prepare_interval( $values, $format = '%s', $operator = 'IN' ) {
|
2234 |
Â
$values = Tribe__Utils__Array::list_to_array( $values );
|
2235 |
Â
|
2236 |
+
$prepared = [];
|
2237 |
Â
foreach ( $values as $value ) {
|
2238 |
Â
$prepared[] = $this->prepare_value( $value, $format );
|
2239 |
Â
}
|
2240 |
Â
|
2241 |
+
return in_array( $operator, [ 'BETWEEN', 'NOT BETWEEN' ] )
|
2242 |
Â
? sprintf( '%s AND %s', $prepared[0], $prepared[1] )
|
2243 |
Â
: sprintf( '(%s)', implode( ',', $prepared ) );
|
2244 |
Â
}
|
2439 |
Â
$to_delete = $this->get_ids();
|
2440 |
Â
|
2441 |
Â
if ( empty( $to_delete ) ) {
|
2442 |
+
return $return_promise ? new Tribe__Promise() : [];
|
2443 |
Â
}
|
2444 |
Â
|
2445 |
Â
|
2869 |
Â
* {@inheritdoc}
|
2870 |
Â
*/
|
2871 |
Â
public function build_postarr( $id = null ) {
|
2872 |
+
$postarr = [
|
2873 |
+
'tax_input' => [],
|
2874 |
+
'meta_input' => [],
|
2875 |
+
];
|
2876 |
Â
|
2877 |
Â
/*
|
2878 |
Â
* The check is lax here by design: we leave space for the client code
|
3049 |
Â
/**
|
3050 |
Â
* {@inheritdoc}
|
3051 |
Â
*/
|
3052 |
+
public function filter( $args = [], $operator = 'AND' ) {
|
3053 |
Â
$list = new WP_List_Util( $this->all() );
|
3054 |
Â
|
3055 |
Â
return $list->filter( $args, $operator );
|
3058 |
Â
/**
|
3059 |
Â
* {@inheritdoc}
|
3060 |
Â
*/
|
3061 |
+
public function sort( $orderby = [], $order = 'ASC', $preserve_keys = false ) {
|
3062 |
Â
$list = new WP_List_Util( $this->all() );
|
3063 |
Â
|
3064 |
Â
return $list->sort( $orderby, $order, $preserve_keys );
|
common/src/Tribe/Repository/Core_Read_Interface.php
CHANGED
@@ -362,7 +362,7 @@ interface Core_Read_Interface {
|
|
362 |
Â
*
|
363 |
Â
* @see \wp_list_filter()
|
364 |
Â
*/
|
365 |
-
public function filter( $args =
|
366 |
Â
|
367 |
Â
/**
|
368 |
Â
* Sorts the results according to the specified criteria.
|
@@ -382,7 +382,7 @@ interface Core_Read_Interface {
|
|
382 |
Â
*
|
383 |
Â
* @see \wp_list_sort()
|
384 |
Â
*/
|
385 |
-
public function sort( $orderby =
|
386 |
Â
|
387 |
Â
/**
|
388 |
Â
* Builds a collection on the result of the `all()` method call.
|
362 |
Â
*
|
363 |
Â
* @see \wp_list_filter()
|
364 |
Â
*/
|
365 |
+
public function filter( $args = [], $operator = 'AND' );
|
366 |
Â
|
367 |
Â
/**
|
368 |
Â
* Sorts the results according to the specified criteria.
|
382 |
Â
*
|
383 |
Â
* @see \wp_list_sort()
|
384 |
Â
*/
|
385 |
+
public function sort( $orderby = [], $order = 'ASC', $preserve_keys = false );
|
386 |
Â
|
387 |
Â
/**
|
388 |
Â
* Builds a collection on the result of the `all()` method call.
|
common/src/Tribe/Repository/Decorator.php
CHANGED
@@ -51,7 +51,7 @@ abstract class Tribe__Repository__Decorator implements Tribe__Repository__Interf
|
|
51 |
Â
*/
|
52 |
Â
public function by( $key, $value = null ) {
|
53 |
Â
$call_args = func_get_args();
|
54 |
-
call_user_func_array(
|
55 |
Â
|
56 |
Â
return $this;
|
57 |
Â
}
|
@@ -61,7 +61,7 @@ abstract class Tribe__Repository__Decorator implements Tribe__Repository__Interf
|
|
61 |
Â
*/
|
62 |
Â
public function where( $key, $value = null ) {
|
63 |
Â
$call_args = func_get_args();
|
64 |
-
call_user_func_array(
|
65 |
Â
|
66 |
Â
return $this;
|
67 |
Â
}
|
@@ -322,7 +322,7 @@ abstract class Tribe__Repository__Decorator implements Tribe__Repository__Interf
|
|
322 |
Â
*/
|
323 |
Â
public function where_or( $callbacks ) {
|
324 |
Â
$call_args = func_get_args();
|
325 |
-
call_user_func_array(
|
326 |
Â
|
327 |
Â
return $this;
|
328 |
Â
}
|
@@ -545,14 +545,14 @@ abstract class Tribe__Repository__Decorator implements Tribe__Repository__Interf
|
|
545 |
Â
/**
|
546 |
Â
* {@inheritdoc}
|
547 |
Â
*/
|
548 |
-
public function filter( $orderby =
|
549 |
Â
return $this->decorated->filter( $orderby, $order, $preserve_keys );
|
550 |
Â
}
|
551 |
Â
|
552 |
Â
/**
|
553 |
Â
* {@inheritdoc}
|
554 |
Â
*/
|
555 |
-
public function sort( $orderby =
|
556 |
Â
return $this->decorated->sort( $orderby, $order, $preserve_keys );
|
557 |
Â
}
|
558 |
Â
|
51 |
Â
*/
|
52 |
Â
public function by( $key, $value = null ) {
|
53 |
Â
$call_args = func_get_args();
|
54 |
+
call_user_func_array( [ $this->decorated, 'by' ], $call_args );
|
55 |
Â
|
56 |
Â
return $this;
|
57 |
Â
}
|
61 |
Â
*/
|
62 |
Â
public function where( $key, $value = null ) {
|
63 |
Â
$call_args = func_get_args();
|
64 |
+
call_user_func_array( [ $this->decorated, 'where' ], $call_args );
|
65 |
Â
|
66 |
Â
return $this;
|
67 |
Â
}
|
322 |
Â
*/
|
323 |
Â
public function where_or( $callbacks ) {
|
324 |
Â
$call_args = func_get_args();
|
325 |
+
call_user_func_array( [ $this->decorated, 'where_or' ], $call_args );
|
326 |
Â
|
327 |
Â
return $this;
|
328 |
Â
}
|
545 |
Â
/**
|
546 |
Â
* {@inheritdoc}
|
547 |
Â
*/
|
548 |
+
public function filter( $orderby = [], $order = 'ASC', $preserve_keys = false ) {
|
549 |
Â
return $this->decorated->filter( $orderby, $order, $preserve_keys );
|
550 |
Â
}
|
551 |
Â
|
552 |
Â
/**
|
553 |
Â
* {@inheritdoc}
|
554 |
Â
*/
|
555 |
+
public function sort( $orderby = [], $order = 'ASC', $preserve_keys = false ) {
|
556 |
Â
return $this->decorated->sort( $orderby, $order, $preserve_keys );
|
557 |
Â
}
|
558 |
Â
|
common/src/Tribe/Repository/Query_Filters.php
CHANGED
@@ -17,16 +17,16 @@ class Tribe__Repository__Query_Filters {
|
|
17 |
Â
/**
|
18 |
Â
* @var array
|
19 |
Â
*/
|
20 |
-
protected static $initial_query_vars =
|
21 |
-
'like' =>
|
22 |
-
'post_title' =>
|
23 |
-
'post_content' =>
|
24 |
-
'post_excerpt' =>
|
25 |
-
|
26 |
-
'status' =>
|
27 |
-
'join' =>
|
28 |
-
'where' =>
|
29 |
-
|
30 |
Â
|
31 |
Â
/**
|
32 |
Â
* An array of the filters that can be set and unset by id.
|
@@ -55,7 +55,7 @@ class Tribe__Repository__Query_Filters {
|
|
55 |
Â
/**
|
56 |
Â
* @var array A list of the filters this class has added.
|
57 |
Â
*/
|
58 |
-
protected $active_filters =
|
59 |
Â
|
60 |
Â
/**
|
61 |
Â
* @var bool
|
@@ -65,7 +65,7 @@ class Tribe__Repository__Query_Filters {
|
|
65 |
Â
/**
|
66 |
Â
* @var array
|
67 |
Â
*/
|
68 |
-
protected $buffered_where_clauses =
|
69 |
Â
|
70 |
Â
/**
|
71 |
Â
* Stores the last request run by the current query.
|
@@ -99,38 +99,38 @@ class Tribe__Repository__Query_Filters {
|
|
99 |
Â
$values = Tribe__Utils__Array::list_to_array( $values );
|
100 |
Â
|
101 |
Â
if ( empty( $meta_keys ) || count( $values ) === 0 ) {
|
102 |
-
return
|
103 |
Â
}
|
104 |
Â
|
105 |
-
$args =
|
106 |
-
'meta_query' =>
|
107 |
-
$query_slug =>
|
108 |
Â
'relation' => 'AND',
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
Â
|
113 |
Â
foreach ( $meta_keys as $key ) {
|
114 |
-
$args['meta_query'][ $query_slug ][ $key ] =
|
115 |
-
'not-exists' =>
|
116 |
Â
'key' => $key,
|
117 |
Â
'compare' => 'NOT EXISTS',
|
118 |
-
|
119 |
Â
'relation' => 'OR',
|
120 |
-
|
121 |
Â
|
122 |
Â
if ( count( $values ) > 1 ) {
|
123 |
-
$args['meta_query'][ $query_slug ][ $key ]['not-in'] =
|
124 |
Â
'key' => $key,
|
125 |
Â
'compare' => 'NOT IN',
|
126 |
Â
'value' => $values,
|
127 |
-
|
128 |
Â
} else {
|
129 |
-
$args['meta_query'][ $query_slug ][ $key ]['not-equals'] =
|
130 |
Â
'key' => $key,
|
131 |
Â
'value' => $values[0],
|
132 |
Â
'compare' => '!=',
|
133 |
-
|
134 |
Â
}
|
135 |
Â
}
|
136 |
Â
|
@@ -153,30 +153,30 @@ class Tribe__Repository__Query_Filters {
|
|
153 |
Â
$values = Tribe__Utils__Array::list_to_array( $values );
|
154 |
Â
|
155 |
Â
if ( empty( $meta_keys ) || count( $values ) === 0 ) {
|
156 |
-
return
|
157 |
Â
}
|
158 |
Â
|
159 |
-
$args =
|
160 |
-
'meta_query' =>
|
161 |
-
$query_slug =>
|
162 |
Â
'relation' => 'OR',
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
Â
|
167 |
Â
foreach ( $meta_keys as $meta_key ) {
|
168 |
Â
if ( count( $values ) > 1 ) {
|
169 |
-
$args['meta_query'][ $query_slug ][ $meta_key ] =
|
170 |
Â
'key' => $meta_key,
|
171 |
Â
'compare' => 'IN',
|
172 |
Â
'value' => $values,
|
173 |
-
|
174 |
Â
} else {
|
175 |
-
$args['meta_query'][ $query_slug ][ $meta_key ] =
|
176 |
Â
'key' => $meta_key,
|
177 |
Â
'compare' => '=',
|
178 |
Â
'value' => $values[0],
|
179 |
-
|
180 |
Â
}
|
181 |
Â
}
|
182 |
Â
|
@@ -197,22 +197,22 @@ class Tribe__Repository__Query_Filters {
|
|
197 |
Â
$meta_keys = Tribe__Utils__Array::list_to_array( $meta_keys );
|
198 |
Â
|
199 |
Â
if ( empty( $meta_keys ) ) {
|
200 |
-
return
|
201 |
Â
}
|
202 |
Â
|
203 |
-
$args =
|
204 |
-
'meta_query' =>
|
205 |
-
$query_slug =>
|
206 |
Â
'relation' => 'OR',
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
Â
|
211 |
Â
foreach ( $meta_keys as $meta_key ) {
|
212 |
-
$args['meta_query'][ $query_slug ][ $meta_key ] =
|
213 |
Â
'key' => $meta_key,
|
214 |
Â
'compare' => 'EXISTS',
|
215 |
-
|
216 |
Â
}
|
217 |
Â
|
218 |
Â
return $args;
|
@@ -235,35 +235,35 @@ class Tribe__Repository__Query_Filters {
|
|
235 |
Â
$values = Tribe__Utils__Array::list_to_array( $values );
|
236 |
Â
|
237 |
Â
if ( empty( $meta_keys ) || count( $values ) === 0 ) {
|
238 |
-
return
|
239 |
Â
}
|
240 |
Â
|
241 |
-
$args =
|
242 |
-
'meta_query' =>
|
243 |
-
$query_slug =>
|
244 |
Â
'relation' => 'AND',
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
Â
|
249 |
Â
foreach ( $meta_keys as $meta_key ) {
|
250 |
-
$args['meta_query'][ $query_slug ][ $meta_key ]['does-not-exist'] =
|
251 |
Â
'key' => $meta_key,
|
252 |
Â
'compare' => 'NOT EXISTS',
|
253 |
-
|
254 |
Â
$args['meta_query'][ $query_slug ][ $meta_key ]['relation'] = 'OR';
|
255 |
Â
if ( count( $values ) > 1 ) {
|
256 |
-
$args['meta_query'][ $query_slug ][ $meta_key ]['in'] =
|
257 |
Â
'key' => $meta_key,
|
258 |
Â
'compare' => 'IN',
|
259 |
Â
'value' => $values,
|
260 |
-
|
261 |
Â
} else {
|
262 |
-
$args['meta_query'][ $query_slug ][ $meta_key ]['equals'] =
|
263 |
Â
'key' => $meta_key,
|
264 |
Â
'compare' => '=',
|
265 |
Â
'value' => $values[0],
|
266 |
-
|
267 |
Â
}
|
268 |
Â
}
|
269 |
Â
|
@@ -287,36 +287,36 @@ class Tribe__Repository__Query_Filters {
|
|
287 |
Â
$values = Tribe__Utils__Array::list_to_array( $values );
|
288 |
Â
|
289 |
Â
if ( empty( $meta_keys ) || count( $values ) === 0 ) {
|
290 |
-
return
|
291 |
Â
}
|
292 |
Â
|
293 |
-
$args =
|
294 |
-
'meta_query' =>
|
295 |
-
$query_slug =>
|
296 |
Â
'relation' => 'AND',
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
Â
|
301 |
Â
foreach ( $meta_keys as $meta_key ) {
|
302 |
-
$args['meta_query'][ $query_slug ][ $meta_key ]['does-not-exist'] =
|
303 |
Â
'key' => $meta_key,
|
304 |
Â
'compare' => 'NOT EXISTS',
|
305 |
-
|
306 |
Â
$args['meta_query'][ $query_slug ][ $meta_key ]['relation'] = 'OR';
|
307 |
Â
|
308 |
Â
if ( count( $values ) > 1 ) {
|
309 |
-
$args['meta_query'][ $query_slug ][ $meta_key ]['not-in'] =
|
310 |
Â
'key' => $meta_key,
|
311 |
Â
'compare' => 'NOT IN',
|
312 |
Â
'value' => $values,
|
313 |
-
|
314 |
Â
} else {
|
315 |
-
$args['meta_query'][ $query_slug ][ $meta_key ]['not-equals'] =
|
316 |
Â
'key' => $meta_key,
|
317 |
Â
'compare' => '!=',
|
318 |
Â
'value' => $values[0],
|
319 |
-
|
320 |
Â
}
|
321 |
Â
}
|
322 |
Â
|
@@ -366,11 +366,11 @@ class Tribe__Repository__Query_Filters {
|
|
366 |
Â
global $wpdb;
|
367 |
Â
|
368 |
Â
$like = $wpdb->esc_like( $entry );
|
369 |
-
$variations =
|
370 |
Â
$wpdb->prepare( "{$wpdb->posts}.{$field} LIKE %s ", "{$like}%" ),
|
371 |
Â
$wpdb->prepare( "{$wpdb->posts}.{$field} LIKE %s ", "%{$like}%" ),
|
372 |
Â
$wpdb->prepare( "{$wpdb->posts}.{$field} LIKE %s ", "%{$like}" ),
|
373 |
-
|
374 |
Â
|
375 |
Â
return ' AND (' . implode( ' OR ', $variations ) . ')';
|
376 |
Â
}
|
@@ -430,7 +430,7 @@ class Tribe__Repository__Query_Filters {
|
|
430 |
Â
$matching_ids = $wpdb->get_col( $relation_query );
|
431 |
Â
|
432 |
Â
if ( empty( $matching_ids ) ) {
|
433 |
-
$query->posts =
|
434 |
Â
$filtered_found_posts = 0;
|
435 |
Â
break;
|
436 |
Â
}
|
@@ -438,7 +438,7 @@ class Tribe__Repository__Query_Filters {
|
|
438 |
Â
if ( $ids_only ) {
|
439 |
Â
$query->posts = array_intersect( $query->posts, $matching_ids );
|
440 |
Â
} else {
|
441 |
-
$updated_query_posts =
|
442 |
Â
foreach ( $query->posts as $this_post ) {
|
443 |
Â
if ( in_array( $this_post->ID, $matching_ids ) ) {
|
444 |
Â
$updated_query_posts[] = $this_post;
|
@@ -475,8 +475,8 @@ class Tribe__Repository__Query_Filters {
|
|
475 |
Â
public function to_get_posts_with_title_like( $value ) {
|
476 |
Â
$this->query_vars['like']['post_title'][] = $value;
|
477 |
Â
|
478 |
-
if ( ! has_filter( 'posts_where',
|
479 |
-
$this->add_filter( 'posts_where',
|
480 |
Â
}
|
481 |
Â
}
|
482 |
Â
|
@@ -492,7 +492,7 @@ class Tribe__Repository__Query_Filters {
|
|
492 |
Â
* @param int $accepted_args
|
493 |
Â
*/
|
494 |
Â
protected function add_filter( $tag, $function_to_add, $priority = 10, $accepted_args = 1 ) {
|
495 |
-
$this->active_filters[] =
|
496 |
Â
add_filter( $tag, $function_to_add, $priority, $accepted_args );
|
497 |
Â
}
|
498 |
Â
|
@@ -506,8 +506,8 @@ class Tribe__Repository__Query_Filters {
|
|
506 |
Â
public function to_get_posts_with_content_like( $value ) {
|
507 |
Â
$this->query_vars['like']['post_content'][] = $value;
|
508 |
Â
|
509 |
-
if ( ! has_filter( 'posts_where',
|
510 |
-
$this->add_filter( 'posts_where',
|
511 |
Â
}
|
512 |
Â
}
|
513 |
Â
|
@@ -521,8 +521,8 @@ class Tribe__Repository__Query_Filters {
|
|
521 |
Â
public function to_get_posts_with_excerpt_like( $value ) {
|
522 |
Â
$this->query_vars['like']['post_excerpt'] = $value;
|
523 |
Â
|
524 |
-
if ( ! has_filter( 'posts_where',
|
525 |
-
add_filter( 'posts_where',
|
526 |
Â
}
|
527 |
Â
}
|
528 |
Â
|
@@ -536,8 +536,8 @@ class Tribe__Repository__Query_Filters {
|
|
536 |
Â
public function to_get_posts_with_filtered_content_like( $value ) {
|
537 |
Â
$this->query_vars['like']['post_content_filtered'][] = $value;
|
538 |
Â
|
539 |
-
if ( ! has_filter( 'posts_where',
|
540 |
-
add_filter( 'posts_where',
|
541 |
Â
}
|
542 |
Â
}
|
543 |
Â
|
@@ -551,8 +551,8 @@ class Tribe__Repository__Query_Filters {
|
|
551 |
Â
public function to_get_posts_with_guid_like( $value ) {
|
552 |
Â
$this->query_vars['like']['guid'][] = $value;
|
553 |
Â
|
554 |
-
if ( ! has_filter( 'posts_where',
|
555 |
-
add_filter( 'posts_where',
|
556 |
Â
}
|
557 |
Â
}
|
558 |
Â
|
@@ -566,8 +566,8 @@ class Tribe__Repository__Query_Filters {
|
|
566 |
Â
public function to_get_posts_to_ping( $value ) {
|
567 |
Â
$this->query_vars['to_ping'] = $value;
|
568 |
Â
|
569 |
-
if ( ! has_filter( 'posts_where',
|
570 |
-
add_filter( 'posts_where',
|
571 |
Â
}
|
572 |
Â
}
|
573 |
Â
|
@@ -666,8 +666,8 @@ class Tribe__Repository__Query_Filters {
|
|
666 |
Â
$this->query_vars['where'][] = '(' . $where_clause . ')';
|
667 |
Â
}
|
668 |
Â
|
669 |
-
if ( ! has_filter( 'posts_where',
|
670 |
-
add_filter( 'posts_where',
|
671 |
Â
}
|
672 |
Â
}
|
673 |
Â
}
|
@@ -690,8 +690,8 @@ class Tribe__Repository__Query_Filters {
|
|
690 |
Â
$this->query_vars['join'][] = $join_clause;
|
691 |
Â
}
|
692 |
Â
|
693 |
-
if ( ! has_filter( 'posts_join',
|
694 |
-
add_filter( 'posts_join',
|
695 |
Â
}
|
696 |
Â
}
|
697 |
Â
|
@@ -738,8 +738,8 @@ class Tribe__Repository__Query_Filters {
|
|
738 |
Â
$this->query_vars[ $orderby_key ][ $id ] = array_merge( $this->query_vars[ $orderby_key ][ $id ], $entries );
|
739 |
Â
}
|
740 |
Â
|
741 |
-
if ( ! has_filter( 'posts_orderby',
|
742 |
-
add_filter( 'posts_orderby',
|
743 |
Â
}
|
744 |
Â
}
|
745 |
Â
|
@@ -762,8 +762,8 @@ class Tribe__Repository__Query_Filters {
|
|
762 |
Â
$this->query_vars['fields'][] = $field;
|
763 |
Â
}
|
764 |
Â
|
765 |
-
if ( ! has_filter( 'posts_fields',
|
766 |
-
add_filter( 'posts_fields',
|
767 |
Â
}
|
768 |
Â
}
|
769 |
Â
|
@@ -795,7 +795,7 @@ class Tribe__Repository__Query_Filters {
|
|
795 |
Â
|
796 |
Â
if ( $get_clean ) {
|
797 |
Â
$this->buffer_where_clauses = false;
|
798 |
-
$this->buffered_where_clauses =
|
799 |
Â
}
|
800 |
Â
|
801 |
Â
return $clauses;
|
@@ -846,7 +846,7 @@ class Tribe__Repository__Query_Filters {
|
|
846 |
Â
global $wpdb;
|
847 |
Â
|
848 |
Â
foreach ( $input as $string ) {
|
849 |
-
$buffer[] = is_array( $string ) ? $string :
|
850 |
Â
}
|
851 |
Â
|
852 |
Â
$buffer = array_unique( call_user_func_array( 'array_merge', $buffer ) );
|
17 |
Â
/**
|
18 |
Â
* @var array
|
19 |
Â
*/
|
20 |
+
protected static $initial_query_vars = [
|
21 |
+
'like' => [
|
22 |
+
'post_title' => [],
|
23 |
+
'post_content' => [],
|
24 |
+
'post_excerpt' => [],
|
25 |
+
],
|
26 |
+
'status' => [],
|
27 |
+
'join' => [],
|
28 |
+
'where' => [],
|
29 |
+
];
|
30 |
Â
|
31 |
Â
/**
|
32 |
Â
* An array of the filters that can be set and unset by id.
|
55 |
Â
/**
|
56 |
Â
* @var array A list of the filters this class has added.
|
57 |
Â
*/
|
58 |
+
protected $active_filters = [];
|
59 |
Â
|
60 |
Â
/**
|
61 |
Â
* @var bool
|
65 |
Â
/**
|
66 |
Â
* @var array
|
67 |
Â
*/
|
68 |
+
protected $buffered_where_clauses = [];
|
69 |
Â
|
70 |
Â
/**
|
71 |
Â
* Stores the last request run by the current query.
|
99 |
Â
$values = Tribe__Utils__Array::list_to_array( $values );
|
100 |
Â
|
101 |
Â
if ( empty( $meta_keys ) || count( $values ) === 0 ) {
|
102 |
+
return [];
|
103 |
Â
}
|
104 |
Â
|
105 |
+
$args = [
|
106 |
+
'meta_query' => [
|
107 |
+
$query_slug => [
|
108 |
Â
'relation' => 'AND',
|
109 |
+
],
|
110 |
+
],
|
111 |
+
];
|
112 |
Â
|
113 |
Â
foreach ( $meta_keys as $key ) {
|
114 |
+
$args['meta_query'][ $query_slug ][ $key ] = [
|
115 |
+
'not-exists' => [
|
116 |
Â
'key' => $key,
|
117 |
Â
'compare' => 'NOT EXISTS',
|
118 |
+
],
|
119 |
Â
'relation' => 'OR',
|
120 |
+
];
|
121 |
Â
|
122 |
Â
if ( count( $values ) > 1 ) {
|
123 |
+
$args['meta_query'][ $query_slug ][ $key ]['not-in'] = [
|
124 |
Â
'key' => $key,
|
125 |
Â
'compare' => 'NOT IN',
|
126 |
Â
'value' => $values,
|
127 |
+
];
|
128 |
Â
} else {
|
129 |
+
$args['meta_query'][ $query_slug ][ $key ]['not-equals'] = [
|
130 |
Â
'key' => $key,
|
131 |
Â
'value' => $values[0],
|
132 |
Â
'compare' => '!=',
|
133 |
+
];
|
134 |
Â
}
|
135 |
Â
}
|
136 |
Â
|
153 |
Â
$values = Tribe__Utils__Array::list_to_array( $values );
|
154 |
Â
|
155 |
Â
if ( empty( $meta_keys ) || count( $values ) === 0 ) {
|
156 |
+
return [];
|
157 |
Â
}
|
158 |
Â
|
159 |
+
$args = [
|
160 |
+
'meta_query' => [
|
161 |
+
$query_slug => [
|
162 |
Â
'relation' => 'OR',
|
163 |
+
],
|
164 |
+
],
|
165 |
+
];
|
166 |
Â
|
167 |
Â
foreach ( $meta_keys as $meta_key ) {
|
168 |
Â
if ( count( $values ) > 1 ) {
|
169 |
+
$args['meta_query'][ $query_slug ][ $meta_key ] = [
|
170 |
Â
'key' => $meta_key,
|
171 |
Â
'compare' => 'IN',
|
172 |
Â
'value' => $values,
|
173 |
+
];
|
174 |
Â
} else {
|
175 |
+
$args['meta_query'][ $query_slug ][ $meta_key ] = [
|
176 |
Â
'key' => $meta_key,
|
177 |
Â
'compare' => '=',
|
178 |
Â
'value' => $values[0],
|
179 |
+
];
|
180 |
Â
}
|
181 |
Â
}
|
182 |
Â
|
197 |
Â
$meta_keys = Tribe__Utils__Array::list_to_array( $meta_keys );
|
198 |
Â
|
199 |
Â
if ( empty( $meta_keys ) ) {
|
200 |
+
return [];
|
201 |
Â
}
|
202 |
Â
|
203 |
+
$args = [
|
204 |
+
'meta_query' => [
|
205 |
+
$query_slug => [
|
206 |
Â
'relation' => 'OR',
|
207 |
+
],
|
208 |
+
],
|
209 |
+
];
|
210 |
Â
|
211 |
Â
foreach ( $meta_keys as $meta_key ) {
|
212 |
+
$args['meta_query'][ $query_slug ][ $meta_key ] = [
|
213 |
Â
'key' => $meta_key,
|
214 |
Â
'compare' => 'EXISTS',
|
215 |
+
];
|
216 |
Â
}
|
217 |
Â
|
218 |
Â
return $args;
|
235 |
Â
$values = Tribe__Utils__Array::list_to_array( $values );
|
236 |
Â
|
237 |
Â
if ( empty( $meta_keys ) || count( $values ) === 0 ) {
|
238 |
+
return [];
|
239 |
Â
}
|
240 |
Â
|
241 |
+
$args = [
|
242 |
+
'meta_query' => [
|
243 |
+
$query_slug => [
|
244 |
Â
'relation' => 'AND',
|
245 |
+
],
|
246 |
+
],
|
247 |
+
];
|
248 |
Â
|
249 |
Â
foreach ( $meta_keys as $meta_key ) {
|
250 |
+
$args['meta_query'][ $query_slug ][ $meta_key ]['does-not-exist'] = [
|
251 |
Â
'key' => $meta_key,
|
252 |
Â
'compare' => 'NOT EXISTS',
|
253 |
+
];
|
254 |
Â
$args['meta_query'][ $query_slug ][ $meta_key ]['relation'] = 'OR';
|
255 |
Â
if ( count( $values ) > 1 ) {
|
256 |
+
$args['meta_query'][ $query_slug ][ $meta_key ]['in'] = [
|
257 |
Â
'key' => $meta_key,
|
258 |
Â
'compare' => 'IN',
|
259 |
Â
'value' => $values,
|
260 |
+
];
|
261 |
Â
} else {
|
262 |
+
$args['meta_query'][ $query_slug ][ $meta_key ]['equals'] = [
|
263 |
Â
'key' => $meta_key,
|
264 |
Â
'compare' => '=',
|
265 |
Â
'value' => $values[0],
|
266 |
+
];
|
267 |
Â
}
|
268 |
Â
}
|
269 |
Â
|
287 |
Â
$values = Tribe__Utils__Array::list_to_array( $values );
|
288 |
Â
|
289 |
Â
if ( empty( $meta_keys ) || count( $values ) === 0 ) {
|
290 |
+
return [];
|
291 |
Â
}
|
292 |
Â
|
293 |
+
$args = [
|
294 |
+
'meta_query' => [
|
295 |
+
$query_slug => [
|
296 |
Â
'relation' => 'AND',
|
297 |
+
],
|
298 |
+
],
|
299 |
+
];
|
300 |
Â
|
301 |
Â
foreach ( $meta_keys as $meta_key ) {
|
302 |
+
$args['meta_query'][ $query_slug ][ $meta_key ]['does-not-exist'] = [
|
303 |
Â
'key' => $meta_key,
|
304 |
Â
'compare' => 'NOT EXISTS',
|
305 |
+
];
|
306 |
Â
$args['meta_query'][ $query_slug ][ $meta_key ]['relation'] = 'OR';
|
307 |
Â
|
308 |
Â
if ( count( $values ) > 1 ) {
|
309 |
+
$args['meta_query'][ $query_slug ][ $meta_key ]['not-in'] = [
|
310 |
Â
'key' => $meta_key,
|
311 |
Â
'compare' => 'NOT IN',
|
312 |
Â
'value' => $values,
|
313 |
+
];
|
314 |
Â
} else {
|
315 |
+
$args['meta_query'][ $query_slug ][ $meta_key ]['not-equals'] = [
|
316 |
Â
'key' => $meta_key,
|
317 |
Â
'compare' => '!=',
|
318 |
Â
'value' => $values[0],
|
319 |
+
];
|
320 |
Â
}
|
321 |
Â
}
|
322 |
Â
|
366 |
Â
global $wpdb;
|
367 |
Â
|
368 |
Â
$like = $wpdb->esc_like( $entry );
|
369 |
+
$variations = [
|
370 |
Â
$wpdb->prepare( "{$wpdb->posts}.{$field} LIKE %s ", "{$like}%" ),
|
371 |
Â
$wpdb->prepare( "{$wpdb->posts}.{$field} LIKE %s ", "%{$like}%" ),
|
372 |
Â
$wpdb->prepare( "{$wpdb->posts}.{$field} LIKE %s ", "%{$like}" ),
|
373 |
+
];
|
374 |
Â
|
375 |
Â
return ' AND (' . implode( ' OR ', $variations ) . ')';
|
376 |
Â
}
|
430 |
Â
$matching_ids = $wpdb->get_col( $relation_query );
|
431 |
Â
|
432 |
Â
if ( empty( $matching_ids ) ) {
|
433 |
+
$query->posts = [];
|
434 |
Â
$filtered_found_posts = 0;
|
435 |
Â
break;
|
436 |
Â
}
|
438 |
Â
if ( $ids_only ) {
|
439 |
Â
$query->posts = array_intersect( $query->posts, $matching_ids );
|
440 |
Â
} else {
|
441 |
+
$updated_query_posts = [];
|
442 |
Â
foreach ( $query->posts as $this_post ) {
|
443 |
Â
if ( in_array( $this_post->ID, $matching_ids ) ) {
|
444 |
Â
$updated_query_posts[] = $this_post;
|
475 |
Â
public function to_get_posts_with_title_like( $value ) {
|
476 |
Â
$this->query_vars['like']['post_title'][] = $value;
|
477 |
Â
|
478 |
+
if ( ! has_filter( 'posts_where', [ $this, 'filter_by_like' ] ) ) {
|
479 |
+
$this->add_filter( 'posts_where', [ $this, 'filter_by_like' ], 10, 2 );
|
480 |
Â
}
|
481 |
Â
}
|
482 |
Â
|
492 |
Â
* @param int $accepted_args
|
493 |
Â
*/
|
494 |
Â
protected function add_filter( $tag, $function_to_add, $priority = 10, $accepted_args = 1 ) {
|
495 |
+
$this->active_filters[] = [ $tag, $function_to_add, $priority ];
|
496 |
Â
add_filter( $tag, $function_to_add, $priority, $accepted_args );
|
497 |
Â
}
|
498 |
Â
|
506 |
Â
public function to_get_posts_with_content_like( $value ) {
|
507 |
Â
$this->query_vars['like']['post_content'][] = $value;
|
508 |
Â
|
509 |
+
if ( ! has_filter( 'posts_where', [ $this, 'filter_by_like' ] ) ) {
|
510 |
+
$this->add_filter( 'posts_where', [ $this, 'filter_by_like' ], 10, 2 );
|
511 |
Â
}
|
512 |
Â
}
|
513 |
Â
|
521 |
Â
public function to_get_posts_with_excerpt_like( $value ) {
|
522 |
Â
$this->query_vars['like']['post_excerpt'] = $value;
|
523 |
Â
|
524 |
+
if ( ! has_filter( 'posts_where', [ $this, 'filter_by_like' ] ) ) {
|
525 |
+
add_filter( 'posts_where', [ $this, 'filter_by_like' ], 10, 2 );
|
526 |
Â
}
|
527 |
Â
}
|
528 |
Â
|
536 |
Â
public function to_get_posts_with_filtered_content_like( $value ) {
|
537 |
Â
$this->query_vars['like']['post_content_filtered'][] = $value;
|
538 |
Â
|
539 |
+
if ( ! has_filter( 'posts_where', [ $this, 'filter_by_like' ] ) ) {
|
540 |
+
add_filter( 'posts_where', [ $this, 'filter_by_like' ], 10, 2 );
|
541 |
Â
}
|
542 |
Â
}
|
543 |
Â
|
551 |
Â
public function to_get_posts_with_guid_like( $value ) {
|
552 |
Â
$this->query_vars['like']['guid'][] = $value;
|
553 |
Â
|
554 |
+
if ( ! has_filter( 'posts_where', [ $this, 'filter_by_like' ] ) ) {
|
555 |
+
add_filter( 'posts_where', [ $this, 'filter_by_like' ], 10, 2 );
|
556 |
Â
}
|
557 |
Â
}
|
558 |
Â
|
566 |
Â
public function to_get_posts_to_ping( $value ) {
|
567 |
Â
$this->query_vars['to_ping'] = $value;
|
568 |
Â
|
569 |
+
if ( ! has_filter( 'posts_where', [ $this, 'filter_by_to_ping' ] ) ) {
|
570 |
+
add_filter( 'posts_where', [ $this, 'filter_by_to_ping' ], 10, 2 );
|
571 |
Â
}
|
572 |
Â
}
|
573 |
Â
|
666 |
Â
$this->query_vars['where'][] = '(' . $where_clause . ')';
|
667 |
Â
}
|
668 |
Â
|
669 |
+
if ( ! has_filter( 'posts_where', [ $this, 'filter_posts_where' ] ) ) {
|
670 |
+
add_filter( 'posts_where', [ $this, 'filter_posts_where' ], 10, 2 );
|
671 |
Â
}
|
672 |
Â
}
|
673 |
Â
}
|
690 |
Â
$this->query_vars['join'][] = $join_clause;
|
691 |
Â
}
|
692 |
Â
|
693 |
+
if ( ! has_filter( 'posts_join', [ $this, 'filter_posts_join' ] ) ) {
|
694 |
+
add_filter( 'posts_join', [ $this, 'filter_posts_join' ], 10, 2 );
|
695 |
Â
}
|
696 |
Â
}
|
697 |
Â
|
738 |
Â
$this->query_vars[ $orderby_key ][ $id ] = array_merge( $this->query_vars[ $orderby_key ][ $id ], $entries );
|
739 |
Â
}
|
740 |
Â
|
741 |
+
if ( ! has_filter( 'posts_orderby', [ $this, 'filter_posts_orderby' ] ) ) {
|
742 |
+
add_filter( 'posts_orderby', [ $this, 'filter_posts_orderby' ], 10, 2 );
|
743 |
Â
}
|
744 |
Â
}
|
745 |
Â
|
762 |
Â
$this->query_vars['fields'][] = $field;
|
763 |
Â
}
|
764 |
Â
|
765 |
+
if ( ! has_filter( 'posts_fields', [ $this, 'filter_posts_fields' ] ) ) {
|
766 |
+
add_filter( 'posts_fields', [ $this, 'filter_posts_fields' ], 10, 2 );
|
767 |
Â
}
|
768 |
Â
}
|
769 |
Â
|
795 |
Â
|
796 |
Â
if ( $get_clean ) {
|
797 |
Â
$this->buffer_where_clauses = false;
|
798 |
+
$this->buffered_where_clauses = [];
|
799 |
Â
}
|
800 |
Â
|
801 |
Â
return $clauses;
|
846 |
Â
global $wpdb;
|
847 |
Â
|
848 |
Â
foreach ( $input as $string ) {
|
849 |
+
$buffer[] = is_array( $string ) ? $string : [ $string ];
|
850 |
Â
}
|
851 |
Â
|
852 |
Â
$buffer = array_unique( call_user_func_array( 'array_merge', $buffer ) );
|
common/src/Tribe/Rewrite.php
CHANGED
@@ -47,14 +47,15 @@ class Tribe__Rewrite {
|
|
47 |
Â
*
|
48 |
Â
* @var array
|
49 |
Â
*/
|
50 |
-
public $rules =
|
51 |
Â
|
52 |
Â
/**
|
53 |
Â
* Base slugs for rewrite urls
|
54 |
Â
*
|
55 |
Â
* @var array
|
56 |
Â
*/
|
57 |
-
public $bases =
|
Â
|
|
58 |
Â
/**
|
59 |
Â
* After creating the Hooks on WordPress we lock the usage of the function.
|
60 |
Â
*
|
@@ -182,17 +183,17 @@ class Tribe__Rewrite {
|
|
182 |
Â
}
|
183 |
Â
|
184 |
Â
protected function add_hooks() {
|
185 |
-
add_filter( 'generate_rewrite_rules',
|
186 |
Â
|
187 |
Â
// Remove percent Placeholders on all items
|
188 |
-
add_filter( 'rewrite_rules_array',
|
189 |
Â
|
190 |
Â
add_action( 'shutdown', [ $this, 'dump_cache' ] );
|
191 |
Â
}
|
192 |
Â
|
193 |
Â
protected function remove_hooks() {
|
194 |
-
remove_filter( 'generate_rewrite_rules',
|
195 |
-
remove_filter( 'rewrite_rules_array',
|
196 |
Â
|
197 |
Â
remove_action( 'shutdown', [ $this, 'dump_cache' ] );
|
198 |
Â
}
|
@@ -229,10 +230,10 @@ class Tribe__Rewrite {
|
|
229 |
Â
*
|
230 |
Â
* @return Tribe__Events__Rewrite
|
231 |
Â
*/
|
232 |
-
public function add( $regex, $args =
|
233 |
Â
$regex = (array) $regex;
|
234 |
Â
|
235 |
-
$default =
|
236 |
Â
$args = array_filter( wp_parse_args( $args, $default ) );
|
237 |
Â
|
238 |
Â
$url = add_query_arg( $args, 'index.php' );
|
@@ -245,7 +246,7 @@ class Tribe__Rewrite {
|
|
245 |
Â
|
246 |
Â
// Add the Bases to the regex
|
247 |
Â
foreach ( $this->bases as $key => $value ) {
|
248 |
-
$regex = str_replace(
|
249 |
Â
}
|
250 |
Â
|
251 |
Â
// Apply the Preg Indexes to the URL
|
@@ -553,7 +554,8 @@ class Tribe__Rewrite {
|
|
553 |
Â
$replace
|
554 |
Â
);
|
555 |
Â
|
556 |
-
|
Â
|
|
557 |
Â
|
558 |
Â
// Remove trailing chars.
|
559 |
Â
$path = rtrim( $replaced, '?$' );
|
@@ -884,7 +886,7 @@ class Tribe__Rewrite {
|
|
884 |
Â
$url_components = parse_url($url);
|
885 |
Â
$url_path = Arr::get( $url_components, 'path', '/' );
|
886 |
Â
$site_path = parse_url( home_url(), PHP_URL_PATH );
|
887 |
-
if ( !
|
888 |
Â
// The current site is in a sub-directory: the site path should be dropped from the request path.
|
889 |
Â
$url_path = str_replace( $site_path, '', $url_path );
|
890 |
Â
}
|
47 |
Â
*
|
48 |
Â
* @var array
|
49 |
Â
*/
|
50 |
+
public $rules = [];
|
51 |
Â
|
52 |
Â
/**
|
53 |
Â
* Base slugs for rewrite urls
|
54 |
Â
*
|
55 |
Â
* @var array
|
56 |
Â
*/
|
57 |
+
public $bases = [];
|
58 |
+
|
59 |
Â
/**
|
60 |
Â
* After creating the Hooks on WordPress we lock the usage of the function.
|
61 |
Â
*
|
183 |
Â
}
|
184 |
Â
|
185 |
Â
protected function add_hooks() {
|
186 |
+
add_filter( 'generate_rewrite_rules', [ $this, 'filter_generate' ] );
|
187 |
Â
|
188 |
Â
// Remove percent Placeholders on all items
|
189 |
+
add_filter( 'rewrite_rules_array', [ $this, 'remove_percent_placeholders' ], 25 );
|
190 |
Â
|
191 |
Â
add_action( 'shutdown', [ $this, 'dump_cache' ] );
|
192 |
Â
}
|
193 |
Â
|
194 |
Â
protected function remove_hooks() {
|
195 |
+
remove_filter( 'generate_rewrite_rules', [ $this, 'filter_generate' ] );
|
196 |
+
remove_filter( 'rewrite_rules_array', [ $this, 'remove_percent_placeholders' ], 25 );
|
197 |
Â
|
198 |
Â
remove_action( 'shutdown', [ $this, 'dump_cache' ] );
|
199 |
Â
}
|
230 |
Â
*
|
231 |
Â
* @return Tribe__Events__Rewrite
|
232 |
Â
*/
|
233 |
+
public function add( $regex, $args = [] ) {
|
234 |
Â
$regex = (array) $regex;
|
235 |
Â
|
236 |
+
$default = [];
|
237 |
Â
$args = array_filter( wp_parse_args( $args, $default ) );
|
238 |
Â
|
239 |
Â
$url = add_query_arg( $args, 'index.php' );
|
246 |
Â
|
247 |
Â
// Add the Bases to the regex
|
248 |
Â
foreach ( $this->bases as $key => $value ) {
|
249 |
+
$regex = str_replace( [ '{{ ' . $key . ' }}', '{{' . $key . '}}' ], $value, $regex );
|
250 |
Â
}
|
251 |
Â
|
252 |
Â
// Apply the Preg Indexes to the URL
|
554 |
Â
$replace
|
555 |
Â
);
|
556 |
Â
|
557 |
+
// Use case-insensitive replace to make sure to work with some decoding using uppercase escaped chars.
|
558 |
+
$replaced = str_ireplace( array_keys( $replace ), $replace, $link_template );
|
559 |
Â
|
560 |
Â
// Remove trailing chars.
|
561 |
Â
$path = rtrim( $replaced, '?$' );
|
886 |
Â
$url_components = parse_url($url);
|
887 |
Â
$url_path = Arr::get( $url_components, 'path', '/' );
|
888 |
Â
$site_path = parse_url( home_url(), PHP_URL_PATH );
|
889 |
+
if ( ! empty( $site_path ) && '/' !== $site_path ) {
|
890 |
Â
// The current site is in a sub-directory: the site path should be dropped from the request path.
|
891 |
Â
$url_path = str_replace( $site_path, '', $url_path );
|
892 |
Â
}
|
common/src/Tribe/Service_Providers/Debug_Bar.php
CHANGED
@@ -12,7 +12,7 @@ class Tribe__Service_Providers__Debug_Bar extends tad_DI52_ServiceProvider {
|
|
12 |
Â
* Binds and sets up implementations.
|
13 |
Â
*/
|
14 |
Â
public function register() {
|
15 |
-
add_filter( 'debug_bar_panels',
|
16 |
Â
}
|
17 |
Â
|
18 |
Â
/**
|
@@ -33,10 +33,10 @@ class Tribe__Service_Providers__Debug_Bar extends tad_DI52_ServiceProvider {
|
|
33 |
Â
*
|
34 |
Â
* @param Debug_Bar_Panel[] The default list of Modern Tribe panels added to the Debug Bar.
|
35 |
Â
*/
|
36 |
-
$tribe_panels = apply_filters( 'tribe_debug_bar_panels',
|
37 |
Â
new Tribe__Debug_Bar__Panels__Context(),
|
38 |
Â
new Tribe__Debug_Bar__Panels__Json_Ld(),
|
39 |
-
|
40 |
Â
|
41 |
Â
if ( count( $tribe_panels ) > 0 ) {
|
42 |
Â
$panels = array_merge( $panels, $tribe_panels );
|
12 |
Â
* Binds and sets up implementations.
|
13 |
Â
*/
|
14 |
Â
public function register() {
|
15 |
+
add_filter( 'debug_bar_panels', [ $this, 'add_panels' ] );
|
16 |
Â
}
|
17 |
Â
|
18 |
Â
/**
|
33 |
Â
*
|
34 |
Â
* @param Debug_Bar_Panel[] The default list of Modern Tribe panels added to the Debug Bar.
|
35 |
Â
*/
|
36 |
+
$tribe_panels = apply_filters( 'tribe_debug_bar_panels', [
|
37 |
Â
new Tribe__Debug_Bar__Panels__Context(),
|
38 |
Â
new Tribe__Debug_Bar__Panels__Json_Ld(),
|
39 |
+
] );
|
40 |
Â
|
41 |
Â
if ( count( $tribe_panels ) > 0 ) {
|
42 |
Â
$panels = array_merge( $panels, $tribe_panels );
|
common/src/Tribe/Service_Providers/Processes.php
CHANGED
@@ -69,10 +69,10 @@ class Tribe__Service_Providers__Processes extends tad_DI52_ServiceProvider {
|
|
69 |
Â
*/
|
70 |
Â
protected function hook_handler_for( $action ) {
|
71 |
Â
if ( null === $this->handler_actions ) {
|
72 |
-
$handlers =
|
73 |
Â
'Tribe__Process__Tester',
|
74 |
Â
'Tribe__Process__Post_Thumbnail_Setter',
|
75 |
-
|
76 |
Â
|
77 |
Â
/**
|
78 |
Â
* Filters the process handler classes the Service Provider should handle.
|
@@ -87,7 +87,7 @@ class Tribe__Service_Providers__Processes extends tad_DI52_ServiceProvider {
|
|
87 |
Â
|
88 |
Â
$this->handler_actions = array_combine(
|
89 |
Â
$handlers,
|
90 |
-
array_map(
|
91 |
Â
);
|
92 |
Â
}
|
93 |
Â
|
@@ -110,9 +110,9 @@ class Tribe__Service_Providers__Processes extends tad_DI52_ServiceProvider {
|
|
110 |
Â
*/
|
111 |
Â
protected function hook_queue_for( $action ) {
|
112 |
Â
if ( null === $this->queue_actions ) {
|
113 |
-
$queues =
|
114 |
Â
'Tribe__Promise',
|
115 |
-
|
116 |
Â
|
117 |
Â
/**
|
118 |
Â
* Filters the queue processing classes the Service Provider should handle.
|
@@ -127,7 +127,7 @@ class Tribe__Service_Providers__Processes extends tad_DI52_ServiceProvider {
|
|
127 |
Â
|
128 |
Â
$all_queues_actions = array_combine(
|
129 |
Â
$queues,
|
130 |
-
array_map(
|
131 |
Â
);
|
132 |
Â
}
|
133 |
Â
|
@@ -152,7 +152,7 @@ class Tribe__Service_Providers__Processes extends tad_DI52_ServiceProvider {
|
|
152 |
Â
*/
|
153 |
Â
protected function get_handler_action( $handler_class ) {
|
154 |
Â
/** @var Tribe__Process__Handler handler_class */
|
155 |
-
return 'tribe_process_' . call_user_func(
|
156 |
Â
}
|
157 |
Â
|
158 |
Â
/**
|
@@ -166,7 +166,7 @@ class Tribe__Service_Providers__Processes extends tad_DI52_ServiceProvider {
|
|
166 |
Â
*/
|
167 |
Â
protected function get_queue_action( $queue_class ) {
|
168 |
Â
/** @var Tribe__Process__Queue queue_class */
|
169 |
-
return 'tribe_queue_' . call_user_func(
|
170 |
Â
}
|
171 |
Â
|
172 |
Â
/**
|
@@ -201,7 +201,7 @@ class Tribe__Service_Providers__Processes extends tad_DI52_ServiceProvider {
|
|
201 |
Â
* Here we parse the scheduled cron events to get those scheduled by a queue
|
202 |
Â
* or process handler.
|
203 |
Â
*/
|
204 |
-
$hooks = $this->get_scheduled_like(
|
205 |
Â
|
206 |
Â
if ( empty( $hooks ) ) {
|
207 |
Â
return;
|
@@ -254,11 +254,11 @@ class Tribe__Service_Providers__Processes extends tad_DI52_ServiceProvider {
|
|
254 |
Â
$cron = get_option( 'cron', false );
|
255 |
Â
|
256 |
Â
if ( empty( $cron ) ) {
|
257 |
-
return
|
258 |
Â
}
|
259 |
Â
|
260 |
Â
$needles = (array) $needles;
|
261 |
-
$matching =
|
262 |
Â
|
263 |
Â
foreach ( $cron as $time ) {
|
264 |
Â
if ( ! is_array( $time ) ) {
|
69 |
Â
*/
|
70 |
Â
protected function hook_handler_for( $action ) {
|
71 |
Â
if ( null === $this->handler_actions ) {
|
72 |
+
$handlers = [
|
73 |
Â
'Tribe__Process__Tester',
|
74 |
Â
'Tribe__Process__Post_Thumbnail_Setter',
|
75 |
+
];
|
76 |
Â
|
77 |
Â
/**
|
78 |
Â
* Filters the process handler classes the Service Provider should handle.
|
87 |
Â
|
88 |
Â
$this->handler_actions = array_combine(
|
89 |
Â
$handlers,
|
90 |
+
array_map( [ $this, 'get_handler_action' ], $handlers )
|
91 |
Â
);
|
92 |
Â
}
|
93 |
Â
|
110 |
Â
*/
|
111 |
Â
protected function hook_queue_for( $action ) {
|
112 |
Â
if ( null === $this->queue_actions ) {
|
113 |
+
$queues = [
|
114 |
Â
'Tribe__Promise',
|
115 |
+
];
|
116 |
Â
|
117 |
Â
/**
|
118 |
Â
* Filters the queue processing classes the Service Provider should handle.
|
127 |
Â
|
128 |
Â
$all_queues_actions = array_combine(
|
129 |
Â
$queues,
|
130 |
+
array_map( [ $this, 'get_queue_action' ], $queues )
|
131 |
Â
);
|
132 |
Â
}
|
133 |
Â
|
152 |
Â
*/
|
153 |
Â
protected function get_handler_action( $handler_class ) {
|
154 |
Â
/** @var Tribe__Process__Handler handler_class */
|
155 |
+
return 'tribe_process_' . call_user_func( [ $handler_class, 'action' ] );
|
156 |
Â
}
|
157 |
Â
|
158 |
Â
/**
|
166 |
Â
*/
|
167 |
Â
protected function get_queue_action( $queue_class ) {
|
168 |
Â
/** @var Tribe__Process__Queue queue_class */
|
169 |
+
return 'tribe_queue_' . call_user_func( [ $queue_class, 'action' ] );
|
170 |
Â
}
|
171 |
Â
|
172 |
Â
/**
|
201 |
Â
* Here we parse the scheduled cron events to get those scheduled by a queue
|
202 |
Â
* or process handler.
|
203 |
Â
*/
|
204 |
+
$hooks = $this->get_scheduled_like( [ 'tribe_process_', 'tribe_queue_' ] );
|
205 |
Â
|
206 |
Â
if ( empty( $hooks ) ) {
|
207 |
Â
return;
|
254 |
Â
$cron = get_option( 'cron', false );
|
255 |
Â
|
256 |
Â
if ( empty( $cron ) ) {
|
257 |
+
return [];
|
258 |
Â
}
|
259 |
Â
|
260 |
Â
$needles = (array) $needles;
|
261 |
+
$matching = [];
|
262 |
Â
|
263 |
Â
foreach ( $cron as $time ) {
|
264 |
Â
if ( ! is_array( $time ) ) {
|
common/src/Tribe/Service_Providers/Promoter.php
CHANGED
@@ -14,7 +14,7 @@ class Tribe__Service_Providers__Promoter extends tad_DI52_ServiceProvider {
|
|
14 |
Â
*/
|
15 |
Â
public function register() {
|
16 |
Â
tribe_singleton( 'promoter.auth', 'Tribe__Promoter__Auth' );
|
17 |
-
tribe_singleton( 'promoter.pue', 'Tribe__Promoter__PUE',
|
18 |
Â
tribe_singleton( 'promoter.view', 'Tribe__Promoter__View' );
|
19 |
Â
|
20 |
Â
$this->hook();
|
@@ -39,8 +39,8 @@ class Tribe__Service_Providers__Promoter extends tad_DI52_ServiceProvider {
|
|
39 |
Â
}
|
40 |
Â
|
41 |
Â
// The usage of a high priority so we can push the icon to the end
|
42 |
-
add_action( 'admin_bar_menu',
|
43 |
-
add_action( 'tribe_common_loaded',
|
44 |
Â
}
|
45 |
Â
|
46 |
Â
/**
|
@@ -60,7 +60,7 @@ class Tribe__Service_Providers__Promoter extends tad_DI52_ServiceProvider {
|
|
60 |
Â
* It uses and inline SVG as will provider more flexibility for styling so we can change
|
61 |
Â
* the fill of the path property of the SVG so we can match the WP installations.
|
62 |
Â
*/
|
63 |
-
$args =
|
64 |
Â
'id' => 'promoter-admin-bar',
|
65 |
Â
'title' => sprintf(
|
66 |
Â
"<span class='promoter-admin-bar__icon'>%s</span><span class='promoter-admin-bar__text'>%s</span>",
|
@@ -68,11 +68,11 @@ class Tribe__Service_Providers__Promoter extends tad_DI52_ServiceProvider {
|
|
68 |
Â
'Promoter'
|
69 |
Â
),
|
70 |
Â
'href' => 'https://promoter.theeventscalendar.com/',
|
71 |
-
'meta' =>
|
72 |
Â
'target' => '_blank',
|
73 |
Â
'class' => 'promoter-admin-bar-link',
|
74 |
-
|
75 |
-
|
76 |
Â
$wp_admin_bar->add_node( $args );
|
77 |
Â
}
|
78 |
Â
|
@@ -86,11 +86,11 @@ class Tribe__Service_Providers__Promoter extends tad_DI52_ServiceProvider {
|
|
86 |
Â
Tribe__Main::instance(),
|
87 |
Â
'promoter',
|
88 |
Â
'promoter.css',
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
'conditionals' =>
|
93 |
-
|
94 |
Â
);
|
95 |
Â
}
|
96 |
Â
|
14 |
Â
*/
|
15 |
Â
public function register() {
|
16 |
Â
tribe_singleton( 'promoter.auth', 'Tribe__Promoter__Auth' );
|
17 |
+
tribe_singleton( 'promoter.pue', 'Tribe__Promoter__PUE', [ 'load' ] );
|
18 |
Â
tribe_singleton( 'promoter.view', 'Tribe__Promoter__View' );
|
19 |
Â
|
20 |
Â
$this->hook();
|
39 |
Â
}
|
40 |
Â
|
41 |
Â
// The usage of a high priority so we can push the icon to the end
|
42 |
+
add_action( 'admin_bar_menu', [ $this, 'add_promoter_logo_on_admin_bar' ], 1000 );
|
43 |
+
add_action( 'tribe_common_loaded', [ $this, 'add_promoter_assets' ] );
|
44 |
Â
}
|
45 |
Â
|
46 |
Â
/**
|
60 |
Â
* It uses and inline SVG as will provider more flexibility for styling so we can change
|
61 |
Â
* the fill of the path property of the SVG so we can match the WP installations.
|
62 |
Â
*/
|
63 |
+
$args = [
|
64 |
Â
'id' => 'promoter-admin-bar',
|
65 |
Â
'title' => sprintf(
|
66 |
Â
"<span class='promoter-admin-bar__icon'>%s</span><span class='promoter-admin-bar__text'>%s</span>",
|
68 |
Â
'Promoter'
|
69 |
Â
),
|
70 |
Â
'href' => 'https://promoter.theeventscalendar.com/',
|
71 |
+
'meta' => [
|
72 |
Â
'target' => '_blank',
|
73 |
Â
'class' => 'promoter-admin-bar-link',
|
74 |
+
],
|
75 |
+
];
|
76 |
Â
$wp_admin_bar->add_node( $args );
|
77 |
Â
}
|
78 |
Â
|
86 |
Â
Tribe__Main::instance(),
|
87 |
Â
'promoter',
|
88 |
Â
'promoter.css',
|
89 |
+
[],
|
90 |
+
[ 'wp_enqueue_scripts', 'admin_enqueue_scripts' ],
|
91 |
+
[
|
92 |
+
'conditionals' => [ $this, 'should_load_promoter_styles' ],
|
93 |
+
]
|
94 |
Â
);
|
95 |
Â
}
|
96 |
Â
|
common/src/Tribe/Settings.php
CHANGED
@@ -140,22 +140,22 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
140 |
Â
* An array defining the suite root plugins.
|
141 |
Â
* @var array
|
142 |
Â
*/
|
143 |
-
protected $root_plugins =
|
144 |
Â
'the-events-calendar/the-events-calendar.php',
|
145 |
Â
'event-tickets/event-ticket.php',
|
146 |
-
|
147 |
Â
|
148 |
Â
/**
|
149 |
Â
* An associative array in the form [ <tab-slug> => array(...<fields>) ]
|
150 |
Â
* @var array
|
151 |
Â
*/
|
152 |
-
protected $fields_for_save =
|
153 |
Â
|
154 |
Â
/**
|
155 |
Â
* An array that contains the fields that are currently being validated.
|
156 |
Â
* @var array
|
157 |
Â
*/
|
158 |
-
protected $current_fields =
|
159 |
Â
|
160 |
Â
/**
|
161 |
Â
* Static Singleton Factory Method
|
@@ -178,10 +178,10 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
178 |
Â
$this->requiredCap = apply_filters( 'tribe_settings_req_cap', 'manage_options' );
|
179 |
Â
$this->adminSlug = apply_filters( 'tribe_settings_admin_slug', 'tribe-common' );
|
180 |
Â
$this->help_slug = apply_filters( 'tribe_settings_help_slug', 'tribe-common-help' );
|
181 |
-
$this->errors = get_option( 'tribe_settings_errors',
|
182 |
Â
$this->major_error = get_option( 'tribe_settings_major_error', false );
|
183 |
-
$this->sent_data = get_option( 'tribe_settings_sent_data',
|
184 |
-
$this->validated =
|
185 |
Â
$this->defaultTab = null;
|
186 |
Â
$this->currentTab = null;
|
187 |
Â
|
@@ -193,11 +193,11 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
193 |
Â
*/
|
194 |
Â
public function hook() {
|
195 |
Â
// run actions & filters
|
196 |
-
add_action( 'admin_menu',
|
197 |
-
add_action( 'network_admin_menu',
|
198 |
-
add_action( 'admin_init',
|
199 |
-
add_action( 'tribe_settings_below_tabs',
|
200 |
-
add_action( 'tribe_settings_below_tabs',
|
201 |
Â
}
|
202 |
Â
|
203 |
Â
/**
|
@@ -254,7 +254,7 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
254 |
Â
esc_html__( 'Settings', 'tribe-common' ),
|
255 |
Â
$this->requiredCap,
|
256 |
Â
self::$parent_slug,
|
257 |
-
|
258 |
Â
);
|
259 |
Â
}
|
260 |
Â
}
|
@@ -270,10 +270,10 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
270 |
Â
}
|
271 |
Â
|
272 |
Â
$this->admin_page = add_submenu_page(
|
273 |
-
'settings.php', esc_html__( 'Events Settings', 'tribe-common' ), esc_html__( 'Events Settings', 'tribe-common' ), $this->requiredCap, $this->adminSlug,
|
274 |
Â
$this,
|
275 |
Â
'generatePage',
|
276 |
-
|
277 |
Â
);
|
278 |
Â
|
279 |
Â
$this->admin_page = add_submenu_page(
|
@@ -282,10 +282,10 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
282 |
Â
esc_html__( 'Events Help', 'tribe-common' ),
|
283 |
Â
$this->requiredCap,
|
284 |
Â
$this->help_slug,
|
285 |
-
|
286 |
Â
tribe( 'settings.manager' ),
|
287 |
Â
'do_help_tab',
|
288 |
-
|
289 |
Â
);
|
290 |
Â
}
|
291 |
Â
|
@@ -440,7 +440,7 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
440 |
Â
|
441 |
Â
// bail if we have errors
|
442 |
Â
if ( count( $this->errors ) ) {
|
443 |
-
remove_action( 'shutdown',
|
444 |
Â
add_option( 'tribe_settings_errors', $this->errors );
|
445 |
Â
add_option( 'tribe_settings_major_error', $this->major_error );
|
446 |
Â
wp_redirect( $this->url );
|
@@ -488,8 +488,8 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
488 |
Â
|
489 |
Â
// do not generate errors for dependent fields that should not show
|
490 |
Â
if ( ! empty( $this->errors ) ) {
|
491 |
-
$keep
|
492 |
-
$compare = empty( $keep ) ?
|
493 |
Â
$this->errors = array_intersect_key( $this->errors, $compare );
|
494 |
Â
}
|
495 |
Â
|
@@ -512,7 +512,7 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
512 |
Â
do_action( 'tribe_settings_save_tab_' . $this->currentTab );
|
513 |
Â
|
514 |
Â
// we'll need this later
|
515 |
-
$parent_options =
|
516 |
Â
|
517 |
Â
/**
|
518 |
Â
* loop through each validated option and either
|
@@ -588,11 +588,11 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
588 |
Â
|
589 |
Â
do_action( 'tribe_settings_after_save' );
|
590 |
Â
do_action( 'tribe_settings_after_save_' . $this->currentTab );
|
591 |
-
remove_action( 'shutdown',
|
592 |
Â
add_option( 'tribe_settings_sent_data', $_POST );
|
593 |
Â
add_option( 'tribe_settings_errors', $this->errors );
|
594 |
Â
add_option( 'tribe_settings_major_error', $this->major_error );
|
595 |
-
wp_redirect( esc_url_raw( add_query_arg(
|
596 |
Â
exit;
|
597 |
Â
}
|
598 |
Â
|
@@ -669,11 +669,11 @@ if ( ! class_exists( 'Tribe__Settings' ) ) {
|
|
669 |
Â
*
|
670 |
Â
* @return string
|
671 |
Â
*/
|
672 |
-
public function get_url( array $args =
|
673 |
-
$defaults =
|
674 |
-
'page'
|
675 |
Â
'parent' => self::$parent_page,
|
676 |
-
|
677 |
Â
|
678 |
Â
// Allow the link to be "changed" on the fly
|
679 |
Â
$args = wp_parse_args( $args, $defaults );
|
140 |
Â
* An array defining the suite root plugins.
|
141 |
Â
* @var array
|
142 |
Â
*/
|
143 |
+
protected $root_plugins = [
|
144 |
Â
'the-events-calendar/the-events-calendar.php',
|
145 |
Â
'event-tickets/event-ticket.php',
|
146 |
+
];
|
147 |
Â
|
148 |
Â
/**
|
149 |
Â
* An associative array in the form [ <tab-slug> => array(...<fields>) ]
|
150 |
Â
* @var array
|
151 |
Â
*/
|
152 |
+
protected $fields_for_save = [];
|
153 |
Â
|
154 |
Â
/**
|
155 |
Â
* An array that contains the fields that are currently being validated.
|
156 |
Â
* @var array
|
157 |
Â
*/
|
158 |
+
protected $current_fields = [];
|
159 |
Â
|
160 |
Â
/**
|
161 |
Â
* Static Singleton Factory Method
|
178 |
Â
$this->requiredCap = apply_filters( 'tribe_settings_req_cap', 'manage_options' );
|
179 |
Â
$this->adminSlug = apply_filters( 'tribe_settings_admin_slug', 'tribe-common' );
|
180 |
Â
$this->help_slug = apply_filters( 'tribe_settings_help_slug', 'tribe-common-help' );
|
181 |
+
$this->errors = get_option( 'tribe_settings_errors', [] );
|
182 |
Â
$this->major_error = get_option( 'tribe_settings_major_error', false );
|
183 |
+
$this->sent_data = get_option( 'tribe_settings_sent_data', [] );
|
184 |
+
$this->validated = [];
|
185 |
Â
$this->defaultTab = null;
|
186 |
Â
$this->currentTab = null;
|
187 |
Â
|
193 |
Â
*/
|
194 |
Â
public function hook() {
|
195 |
Â
// run actions & filters
|
196 |
+
add_action( 'admin_menu', [ $this, 'addPage' ] );
|
197 |
+
add_action( 'network_admin_menu', [ $this, 'addNetworkPage' ] );
|
198 |
+
add_action( 'admin_init', [ $this, 'initTabs' ] );
|
199 |
+
add_action( 'tribe_settings_below_tabs', [ $this, 'displayErrors' ] );
|
200 |
+
add_action( 'tribe_settings_below_tabs', [ $this, 'displaySuccess' ] );
|
201 |
Â
}
|
202 |
Â
|
203 |
Â
/**
|
254 |
Â
esc_html__( 'Settings', 'tribe-common' ),
|
255 |
Â
$this->requiredCap,
|
256 |
Â
self::$parent_slug,
|
257 |
+
[ $this, 'generatePage' ]
|
258 |
Â
);
|
259 |
Â
}
|
260 |
Â
}
|
270 |
Â
}
|
271 |
Â
|
272 |
Â
$this->admin_page = add_submenu_page(
|
273 |
+
'settings.php', esc_html__( 'Events Settings', 'tribe-common' ), esc_html__( 'Events Settings', 'tribe-common' ), $this->requiredCap, $this->adminSlug, [
|
274 |
Â
$this,
|
275 |
Â
'generatePage',
|
276 |
+
]
|
277 |
Â
);
|
278 |
Â
|
279 |
Â
$this->admin_page = add_submenu_page(
|
282 |
Â
esc_html__( 'Events Help', 'tribe-common' ),
|
283 |
Â
$this->requiredCap,
|
284 |
Â
$this->help_slug,
|
285 |
+
[
|
286 |
Â
tribe( 'settings.manager' ),
|
287 |
Â
'do_help_tab',
|
288 |
+
]
|
289 |
Â
);
|
290 |
Â
}
|
291 |
Â
|
440 |
Â
|
441 |
Â
// bail if we have errors
|
442 |
Â
if ( count( $this->errors ) ) {
|
443 |
+
remove_action( 'shutdown', [ $this, 'deleteOptions' ] );
|
444 |
Â
add_option( 'tribe_settings_errors', $this->errors );
|
445 |
Â
add_option( 'tribe_settings_major_error', $this->major_error );
|
446 |
Â
wp_redirect( $this->url );
|
488 |
Â
|
489 |
Â
// do not generate errors for dependent fields that should not show
|
490 |
Â
if ( ! empty( $this->errors ) ) {
|
491 |
+
$keep = array_filter( array_keys( $this->errors ), [ $this, 'dependency_checks' ] );
|
492 |
+
$compare = empty( $keep ) ? [] : array_combine( $keep, $keep );
|
493 |
Â
$this->errors = array_intersect_key( $this->errors, $compare );
|
494 |
Â
}
|
495 |
Â
|
512 |
Â
do_action( 'tribe_settings_save_tab_' . $this->currentTab );
|
513 |
Â
|
514 |
Â
// we'll need this later
|
515 |
+
$parent_options = [];
|
516 |
Â
|
517 |
Â
/**
|
518 |
Â
* loop through each validated option and either
|
588 |
Â
|
589 |
Â
do_action( 'tribe_settings_after_save' );
|
590 |
Â
do_action( 'tribe_settings_after_save_' . $this->currentTab );
|
591 |
+
remove_action( 'shutdown', [ $this, 'deleteOptions' ] );
|
592 |
Â
add_option( 'tribe_settings_sent_data', $_POST );
|
593 |
Â
add_option( 'tribe_settings_errors', $this->errors );
|
594 |
Â
add_option( 'tribe_settings_major_error', $this->major_error );
|
595 |
+
wp_redirect( esc_url_raw( add_query_arg( [ 'saved' => true ], $this->url ) ) );
|
596 |
Â
exit;
|
597 |
Â
}
|
598 |
Â
|
669 |
Â
*
|
670 |
Â
* @return string
|
671 |
Â
*/
|
672 |
+
public function get_url( array $args = [] ) {
|
673 |
+
$defaults = [
|
674 |
+
'page' => $this->adminSlug,
|
675 |
Â
'parent' => self::$parent_page,
|
676 |
+
];
|
677 |
Â
|
678 |
Â
// Allow the link to be "changed" on the fly
|
679 |
Â
$args = wp_parse_args( $args, $defaults );
|
common/src/Tribe/Settings_Manager.php
CHANGED
@@ -13,7 +13,7 @@ class Tribe__Settings_Manager {
|
|
13 |
Â
|
14 |
Â
// Load multisite defaults
|
15 |
Â
if ( is_multisite() ) {
|
16 |
-
$tribe_events_mu_defaults =
|
17 |
Â
if ( file_exists( WP_CONTENT_DIR . '/tribe-events-mu-defaults.php' ) ) {
|
18 |
Â
require_once WP_CONTENT_DIR . '/tribe-events-mu-defaults.php';
|
19 |
Â
}
|
@@ -23,13 +23,13 @@ class Tribe__Settings_Manager {
|
|
23 |
Â
|
24 |
Â
public function add_hooks() {
|
25 |
Â
// option pages
|
26 |
-
add_action( '_network_admin_menu',
|
27 |
-
add_action( '_admin_menu',
|
28 |
Â
|
29 |
-
add_action( 'admin_menu',
|
30 |
-
add_action( 'tribe_settings_do_tabs',
|
31 |
-
add_action( 'tribe_settings_do_tabs',
|
32 |
-
add_action( 'tribe_settings_validate_tab_network',
|
33 |
Â
add_action( 'updated_option', [ $this, 'update_options_cache' ], 10, 3 );
|
34 |
Â
}
|
35 |
Â
|
@@ -171,7 +171,7 @@ class Tribe__Settings_Manager {
|
|
171 |
Â
*/
|
172 |
Â
public static function get_network_options() {
|
173 |
Â
if ( ! isset( self::$network_options ) ) {
|
174 |
-
$options = get_site_option( Tribe__Main::OPTIONNAMENETWORK,
|
175 |
Â
self::$network_options = apply_filters( 'tribe_get_network_options', $options );
|
176 |
Â
}
|
177 |
Â
|
@@ -216,11 +216,11 @@ class Tribe__Settings_Manager {
|
|
216 |
Â
if ( ! is_array( $options ) ) {
|
217 |
Â
return;
|
218 |
Â
}
|
Â
|
|
219 |
Â
if ( $apply_filters == true ) {
|
220 |
Â
$options = apply_filters( 'tribe-events-save-network-options', $options );
|
221 |
Â
}
|
222 |
Â
|
223 |
-
// @TODO use getNetworkOptions + force
|
224 |
Â
if ( update_site_option( Tribe__Main::OPTIONNAMENETWORK, $options ) ) {
|
225 |
Â
self::$network_options = apply_filters( 'tribe_get_network_options', $options );
|
226 |
Â
} else {
|
@@ -236,10 +236,15 @@ class Tribe__Settings_Manager {
|
|
236 |
Â
public static function add_network_options_page() {
|
237 |
Â
$tribe_settings = Tribe__Settings::instance();
|
238 |
Â
add_submenu_page(
|
239 |
-
'settings.php',
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
240 |
Â
$tribe_settings,
|
241 |
Â
'generatePage',
|
242 |
-
|
243 |
Â
);
|
244 |
Â
}
|
245 |
Â
|
@@ -285,11 +290,11 @@ class Tribe__Settings_Manager {
|
|
285 |
Â
*/
|
286 |
Â
$license_fields = apply_filters( 'tribe_license_fields', $licenses_tab );
|
287 |
Â
|
288 |
-
new Tribe__Settings_Tab( 'licenses', esc_html__( 'Licenses', 'tribe-common' ),
|
289 |
Â
'priority' => '40',
|
290 |
Â
'fields' => $license_fields,
|
291 |
Â
'network_admin' => is_network_admin() ? true : false,
|
292 |
-
|
293 |
Â
}
|
294 |
Â
|
295 |
Â
/**
|
@@ -309,7 +314,7 @@ class Tribe__Settings_Manager {
|
|
309 |
Â
* @todo move to an admin class
|
310 |
Â
*/
|
311 |
Â
public function add_help_admin_menu_item() {
|
312 |
-
$hidden_settings_tabs = self::get_network_option( 'hideSettingsTabs',
|
313 |
Â
if ( in_array( 'help', $hidden_settings_tabs ) ) {
|
314 |
Â
return;
|
315 |
Â
}
|
@@ -318,7 +323,7 @@ class Tribe__Settings_Manager {
|
|
318 |
Â
$title = esc_html__( 'Help', 'tribe-common' );
|
319 |
Â
$slug = 'tribe-help';
|
320 |
Â
|
321 |
-
add_submenu_page( $parent, $title, $title, 'manage_options', $slug,
|
322 |
Â
}
|
323 |
Â
|
324 |
Â
/**
|
@@ -327,7 +332,8 @@ class Tribe__Settings_Manager {
|
|
327 |
Â
* @return bool
|
328 |
Â
*/
|
329 |
Â
protected function have_addons() {
|
330 |
-
$addons = apply_filters( 'tribe_licensable_addons',
|
Â
|
|
331 |
Â
return ! empty( $addons );
|
332 |
Â
}
|
333 |
Â
|
@@ -337,7 +343,7 @@ class Tribe__Settings_Manager {
|
|
337 |
Â
* @return void
|
338 |
Â
*/
|
339 |
Â
public function save_all_tabs_hidden() {
|
340 |
-
$all_tabs_keys = array_keys( apply_filters( 'tribe_settings_all_tabs',
|
341 |
Â
|
342 |
Â
$network_options = (array) get_site_option( Tribe__Main::OPTIONNAMENETWORK );
|
343 |
Â
|
13 |
Â
|
14 |
Â
// Load multisite defaults
|
15 |
Â
if ( is_multisite() ) {
|
16 |
+
$tribe_events_mu_defaults = [];
|
17 |
Â
if ( file_exists( WP_CONTENT_DIR . '/tribe-events-mu-defaults.php' ) ) {
|
18 |
Â
require_once WP_CONTENT_DIR . '/tribe-events-mu-defaults.php';
|
19 |
Â
}
|
23 |
Â
|
24 |
Â
public function add_hooks() {
|
25 |
Â
// option pages
|
26 |
+
add_action( '_network_admin_menu', [ $this, 'init_options' ] );
|
27 |
+
add_action( '_admin_menu', [ $this, 'init_options' ] );
|
28 |
Â
|
29 |
+
add_action( 'admin_menu', [ $this, 'add_help_admin_menu_item' ], 50 );
|
30 |
+
add_action( 'tribe_settings_do_tabs', [ $this, 'do_setting_tabs' ] );
|
31 |
+
add_action( 'tribe_settings_do_tabs', [ $this, 'do_network_settings_tab' ], 400 );
|
32 |
+
add_action( 'tribe_settings_validate_tab_network', [ $this, 'save_all_tabs_hidden' ] );
|
33 |
Â
add_action( 'updated_option', [ $this, 'update_options_cache' ], 10, 3 );
|
34 |
Â
}
|
35 |
Â
|
171 |
Â
*/
|
172 |
Â
public static function get_network_options() {
|
173 |
Â
if ( ! isset( self::$network_options ) ) {
|
174 |
+
$options = get_site_option( Tribe__Main::OPTIONNAMENETWORK, [] );
|
175 |
Â
self::$network_options = apply_filters( 'tribe_get_network_options', $options );
|
176 |
Â
}
|
177 |
Â
|
216 |
Â
if ( ! is_array( $options ) ) {
|
217 |
Â
return;
|
218 |
Â
}
|
219 |
+
|
220 |
Â
if ( $apply_filters == true ) {
|
221 |
Â
$options = apply_filters( 'tribe-events-save-network-options', $options );
|
222 |
Â
}
|
223 |
Â
|
Â
|
|
224 |
Â
if ( update_site_option( Tribe__Main::OPTIONNAMENETWORK, $options ) ) {
|
225 |
Â
self::$network_options = apply_filters( 'tribe_get_network_options', $options );
|
226 |
Â
} else {
|
236 |
Â
public static function add_network_options_page() {
|
237 |
Â
$tribe_settings = Tribe__Settings::instance();
|
238 |
Â
add_submenu_page(
|
239 |
+
'settings.php',
|
240 |
+
$tribe_settings->menuName,
|
241 |
+
$tribe_settings->menuName,
|
242 |
+
'manage_network_options',
|
243 |
+
'tribe-common',
|
244 |
+
[
|
245 |
Â
$tribe_settings,
|
246 |
Â
'generatePage',
|
247 |
+
]
|
248 |
Â
);
|
249 |
Â
}
|
250 |
Â
|
290 |
Â
*/
|
291 |
Â
$license_fields = apply_filters( 'tribe_license_fields', $licenses_tab );
|
292 |
Â
|
293 |
+
new Tribe__Settings_Tab( 'licenses', esc_html__( 'Licenses', 'tribe-common' ), [
|
294 |
Â
'priority' => '40',
|
295 |
Â
'fields' => $license_fields,
|
296 |
Â
'network_admin' => is_network_admin() ? true : false,
|
297 |
+
] );
|
298 |
Â
}
|
299 |
Â
|
300 |
Â
/**
|
314 |
Â
* @todo move to an admin class
|
315 |
Â
*/
|
316 |
Â
public function add_help_admin_menu_item() {
|
317 |
+
$hidden_settings_tabs = self::get_network_option( 'hideSettingsTabs', [] );
|
318 |
Â
if ( in_array( 'help', $hidden_settings_tabs ) ) {
|
319 |
Â
return;
|
320 |
Â
}
|
323 |
Â
$title = esc_html__( 'Help', 'tribe-common' );
|
324 |
Â
$slug = 'tribe-help';
|
325 |
Â
|
326 |
+
add_submenu_page( $parent, $title, $title, 'manage_options', $slug, [ $this, 'do_help_tab' ] );
|
327 |
Â
}
|
328 |
Â
|
329 |
Â
/**
|
332 |
Â
* @return bool
|
333 |
Â
*/
|
334 |
Â
protected function have_addons() {
|
335 |
+
$addons = apply_filters( 'tribe_licensable_addons', [] );
|
336 |
+
|
337 |
Â
return ! empty( $addons );
|
338 |
Â
}
|
339 |
Â
|
343 |
Â
* @return void
|
344 |
Â
*/
|
345 |
Â
public function save_all_tabs_hidden() {
|
346 |
+
$all_tabs_keys = array_keys( apply_filters( 'tribe_settings_all_tabs', [] ) );
|
347 |
Â
|
348 |
Â
$network_options = (array) get_site_option( Tribe__Main::OPTIONNAMENETWORK );
|
349 |
Â
|
common/src/Tribe/Settings_Tab.php
CHANGED
@@ -45,16 +45,16 @@ if ( ! class_exists( 'Tribe__Settings_Tab' ) ) {
|
|
45 |
Â
* @param string $name the tab's visible name
|
46 |
Â
* @param array $args additional arguments for the tab
|
47 |
Â
*/
|
48 |
-
public function __construct( $id, $name, $args =
|
49 |
Â
|
50 |
Â
// setup the defaults
|
51 |
-
$this->defaults =
|
52 |
-
'fields' =>
|
53 |
Â
'priority' => 50,
|
54 |
Â
'show_save' => true,
|
55 |
Â
'display_callback' => false,
|
56 |
Â
'network_admin' => false,
|
57 |
-
|
58 |
Â
|
59 |
Â
// parse args with defaults
|
60 |
Â
$this->args = wp_parse_args( $args, $this->defaults );
|
@@ -68,9 +68,9 @@ if ( ! class_exists( 'Tribe__Settings_Tab' ) ) {
|
|
68 |
Â
|
69 |
Â
// run actions & filters
|
70 |
Â
if ( ! $this->network_admin ) {
|
71 |
-
add_filter( 'tribe_settings_all_tabs',
|
72 |
Â
}
|
73 |
-
add_filter( 'tribe_settings_tabs',
|
74 |
Â
}
|
75 |
Â
|
76 |
Â
/**
|
@@ -83,13 +83,13 @@ if ( ! class_exists( 'Tribe__Settings_Tab' ) ) {
|
|
83 |
Â
* @return array $tabs the filtered tabs
|
84 |
Â
*/
|
85 |
Â
public function addTab( $tabs ) {
|
86 |
-
$hideSettingsTabs = Tribe__Settings_Manager::get_network_option( 'hideSettingsTabs',
|
87 |
Â
if ( ( isset( $this->fields ) || has_action( 'tribe_settings_content_tab_' . $this->id ) ) && ( empty( $hideSettingsTabs ) || ! in_array( $this->id, $hideSettingsTabs ) ) ) {
|
88 |
Â
if ( ( is_network_admin() && $this->args['network_admin'] ) || ( ! is_network_admin() && ! $this->args['network_admin'] ) ) {
|
89 |
Â
$tabs[ $this->id ] = $this->name;
|
90 |
-
add_filter( 'tribe_settings_fields',
|
91 |
-
add_filter( 'tribe_settings_no_save_tabs',
|
92 |
-
add_filter( 'tribe_settings_content_tab_' . $this->id,
|
93 |
Â
}
|
94 |
Â
}
|
95 |
Â
|
@@ -122,7 +122,7 @@ if ( ! class_exists( 'Tribe__Settings_Tab' ) ) {
|
|
122 |
Â
if ( ! empty ( $this->fields ) ) {
|
123 |
Â
$fields[ $this->id ] = $this->fields;
|
124 |
Â
} elseif ( has_action( 'tribe_settings_content_tab_' . $this->id ) ) {
|
125 |
-
$fields[ $this->id ] = $this->fields =
|
126 |
Â
}
|
127 |
Â
|
128 |
Â
return $fields;
|
@@ -156,7 +156,7 @@ if ( ! class_exists( 'Tribe__Settings_Tab' ) ) {
|
|
156 |
Â
return;
|
157 |
Â
}
|
158 |
Â
|
159 |
-
$sent_data = get_option( 'tribe_settings_sent_data',
|
160 |
Â
|
161 |
Â
if ( is_array( $this->fields ) && ! empty( $this->fields ) ) {
|
162 |
Â
foreach ( $this->fields as $key => $field ) {
|
45 |
Â
* @param string $name the tab's visible name
|
46 |
Â
* @param array $args additional arguments for the tab
|
47 |
Â
*/
|
48 |
+
public function __construct( $id, $name, $args = [] ) {
|
49 |
Â
|
50 |
Â
// setup the defaults
|
51 |
+
$this->defaults = [
|
52 |
+
'fields' => [],
|
53 |
Â
'priority' => 50,
|
54 |
Â
'show_save' => true,
|
55 |
Â
'display_callback' => false,
|
56 |
Â
'network_admin' => false,
|
57 |
+
];
|
58 |
Â
|
59 |
Â
// parse args with defaults
|
60 |
Â
$this->args = wp_parse_args( $args, $this->defaults );
|
68 |
Â
|
69 |
Â
// run actions & filters
|
70 |
Â
if ( ! $this->network_admin ) {
|
71 |
+
add_filter( 'tribe_settings_all_tabs', [ $this, 'addAllTabs' ] );
|
72 |
Â
}
|
73 |
+
add_filter( 'tribe_settings_tabs', [ $this, 'addTab' ], $this->priority );
|
74 |
Â
}
|
75 |
Â
|
76 |
Â
/**
|
83 |
Â
* @return array $tabs the filtered tabs
|
84 |
Â
*/
|
85 |
Â
public function addTab( $tabs ) {
|
86 |
+
$hideSettingsTabs = Tribe__Settings_Manager::get_network_option( 'hideSettingsTabs', [] );
|
87 |
Â
if ( ( isset( $this->fields ) || has_action( 'tribe_settings_content_tab_' . $this->id ) ) && ( empty( $hideSettingsTabs ) || ! in_array( $this->id, $hideSettingsTabs ) ) ) {
|
88 |
Â
if ( ( is_network_admin() && $this->args['network_admin'] ) || ( ! is_network_admin() && ! $this->args['network_admin'] ) ) {
|
89 |
Â
$tabs[ $this->id ] = $this->name;
|
90 |
+
add_filter( 'tribe_settings_fields', [ $this, 'addFields' ] );
|
91 |
+
add_filter( 'tribe_settings_no_save_tabs', [ $this, 'showSaveTab' ] );
|
92 |
+
add_filter( 'tribe_settings_content_tab_' . $this->id, [ $this, 'doContent' ] );
|
93 |
Â
}
|
94 |
Â
}
|
95 |
Â
|
122 |
Â
if ( ! empty ( $this->fields ) ) {
|
123 |
Â
$fields[ $this->id ] = $this->fields;
|
124 |
Â
} elseif ( has_action( 'tribe_settings_content_tab_' . $this->id ) ) {
|
125 |
+
$fields[ $this->id ] = $this->fields = [ 0 => null ]; // just to trick it
|
126 |
Â
}
|
127 |
Â
|
128 |
Â
return $fields;
|
156 |
Â
return;
|
157 |
Â
}
|
158 |
Â
|
159 |
+
$sent_data = get_option( 'tribe_settings_sent_data', [] );
|
160 |
Â
|
161 |
Â
if ( is_array( $this->fields ) && ! empty( $this->fields ) ) {
|
162 |
Â
foreach ( $this->fields as $key => $field ) {
|
common/src/Tribe/Simple_Table.php
CHANGED
@@ -8,7 +8,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
8 |
Â
/**
|
9 |
Â
* A class for outputting a multidimensional array as a straightforward HTML table
|
10 |
Â
*
|
11 |
-
* @
|
12 |
Â
*/
|
13 |
Â
class Tribe__Simple_Table {
|
14 |
Â
|
@@ -38,7 +38,7 @@ class Tribe__Simple_Table {
|
|
38 |
Â
* @param array $tbody Multidimension array containing table rows/columns
|
39 |
Â
* @param array $thead Single dimension array containing table headings
|
40 |
Â
*/
|
41 |
-
public function __construct( $tbody, $thead =
|
42 |
Â
$this->thead = $thead;
|
43 |
Â
$this->tbody = $tbody;
|
44 |
Â
}
|
@@ -143,7 +143,7 @@ class Tribe__Simple_Table {
|
|
143 |
Â
*
|
144 |
Â
* @return string HTML element
|
145 |
Â
*/
|
146 |
-
private function output_element( $html_tag, $data = null, $attributes =
|
147 |
Â
$output = '<' . tag_escape( $html_tag );
|
148 |
Â
|
149 |
Â
if ( ! empty( $attributes ) ) {
|
8 |
Â
/**
|
9 |
Â
* A class for outputting a multidimensional array as a straightforward HTML table
|
10 |
Â
*
|
11 |
+
* @todo Remove this in version 5 if it does not see much usage
|
12 |
Â
*/
|
13 |
Â
class Tribe__Simple_Table {
|
14 |
Â
|
38 |
Â
* @param array $tbody Multidimension array containing table rows/columns
|
39 |
Â
* @param array $thead Single dimension array containing table headings
|
40 |
Â
*/
|
41 |
+
public function __construct( $tbody, $thead = [] ) {
|
42 |
Â
$this->thead = $thead;
|
43 |
Â
$this->tbody = $tbody;
|
44 |
Â
}
|
143 |
Â
*
|
144 |
Â
* @return string HTML element
|
145 |
Â
*/
|
146 |
+
private function output_element( $html_tag, $data = null, $attributes = [] ) {
|
147 |
Â
$output = '<' . tag_escape( $html_tag );
|
148 |
Â
|
149 |
Â
if ( ! empty( $attributes ) ) {
|
common/src/Tribe/Support.php
CHANGED
@@ -26,20 +26,20 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
26 |
Â
*
|
27 |
Â
* @var array
|
28 |
Â
*/
|
29 |
-
protected $must_escape =
|
30 |
Â
'tribeEventsAfterHTML',
|
31 |
Â
'tribeEventsBeforeHTML',
|
32 |
-
|
33 |
Â
|
34 |
Â
/**
|
35 |
Â
* Field prefixes here should be partially obfuscated before being printed.
|
36 |
Â
*
|
37 |
Â
* @var array
|
38 |
Â
*/
|
39 |
-
protected $must_obfuscate_prefixes =
|
40 |
Â
'pue_install_key_',
|
41 |
Â
'google_maps_js_api_key',
|
42 |
-
|
43 |
Â
|
44 |
Â
private function __construct() {
|
45 |
Â
/**
|
@@ -49,11 +49,11 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
49 |
Â
*/
|
50 |
Â
$this->must_escape = (array) apply_filters( 'tribe_help_must_escape_fields', $this->must_escape );
|
51 |
Â
|
52 |
-
add_action( 'tribe_help_pre_get_sections',
|
53 |
-
add_action( 'delete_option_rewrite_rules',
|
54 |
Â
|
55 |
-
add_action( 'rest_api_init',
|
56 |
-
add_action( 'wp_ajax_tribe_toggle_sysinfo_optin',
|
57 |
Â
}
|
58 |
Â
|
59 |
Â
/**
|
@@ -74,7 +74,7 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
74 |
Â
global $wpdb;
|
75 |
Â
$user = wp_get_current_user();
|
76 |
Â
|
77 |
-
$plugins =
|
78 |
Â
if ( function_exists( 'get_plugin_data' ) ) {
|
79 |
Â
$plugins_raw = wp_get_active_and_valid_plugins();
|
80 |
Â
foreach ( $plugins_raw as $k => $v ) {
|
@@ -93,7 +93,7 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
93 |
Â
}
|
94 |
Â
}
|
95 |
Â
|
96 |
-
$network_plugins =
|
97 |
Â
if ( is_multisite() && function_exists( 'get_plugin_data' ) ) {
|
98 |
Â
$plugins_raw = wp_get_active_network_plugins();
|
99 |
Â
foreach ( $plugins_raw as $k => $v ) {
|
@@ -112,7 +112,7 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
112 |
Â
}
|
113 |
Â
}
|
114 |
Â
|
115 |
-
$mu_plugins =
|
116 |
Â
if ( function_exists( 'get_mu_plugins' ) ) {
|
117 |
Â
$mu_plugins_raw = get_mu_plugins();
|
118 |
Â
foreach ( $mu_plugins_raw as $k => $v ) {
|
@@ -130,10 +130,10 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
130 |
Â
}
|
131 |
Â
}
|
132 |
Â
|
133 |
-
$keys = apply_filters( 'tribe-pue-install-keys',
|
134 |
Â
//Obfuscate the License Keys for Security
|
135 |
Â
if ( is_array( $keys ) && ! empty( $keys ) ) {
|
136 |
-
$secure_keys =
|
137 |
Â
foreach ( $keys as $plugin => $license ) {
|
138 |
Â
$secure_keys[ $plugin ] = preg_replace( '/^(.{4}).*(.{4})$/', '$1' . str_repeat( '#', 32 ) . '$2', $license );
|
139 |
Â
}
|
@@ -145,15 +145,15 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
145 |
Â
$server = explode( '/', reset( $server ) );
|
146 |
Â
|
147 |
Â
//PHP Information
|
148 |
-
$php_info =
|
149 |
-
$php_vars =
|
150 |
Â
'max_execution_time',
|
151 |
Â
'memory_limit',
|
152 |
Â
'upload_max_filesize',
|
153 |
Â
'post_max_size',
|
154 |
Â
'display_errors',
|
155 |
Â
'log_errors',
|
156 |
-
|
157 |
Â
|
158 |
Â
foreach ( $php_vars as $php_var ) {
|
159 |
Â
if ( isset( $wpdb->qm_php_vars ) && isset( $wpdb->qm_php_vars[ $php_var ] ) ) {
|
@@ -176,7 +176,7 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
176 |
Â
}
|
177 |
Â
|
178 |
Â
$site_url = get_site_url();
|
179 |
-
$systeminfo =
|
180 |
Â
'Home URL' => get_home_url(),
|
181 |
Â
'Site URL' => $site_url,
|
182 |
Â
'Site Language' => get_option( 'WPLANG' ) ? get_option( 'WPLANG' ) : esc_html__( 'English', 'tribe-common' ),
|
@@ -206,7 +206,7 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
206 |
Â
'Week Starts On' => get_option( 'start_of_week' ),
|
207 |
Â
'Common Library Dir' => $GLOBALS['tribe-common-info']['dir'],
|
208 |
Â
'Common Library Version' => $GLOBALS['tribe-common-info']['version'],
|
209 |
-
|
210 |
Â
|
211 |
Â
if ( $this->rewrite_rules_purged ) {
|
212 |
Â
$systeminfo['rewrite rules purged'] = esc_html__( 'Rewrite rules were purged on load of this help page. Chances are there is a rewrite rule flush occurring in a plugin or theme!', 'tribe-common' );
|
@@ -262,7 +262,7 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
262 |
Â
} elseif ( is_array( $v ) && $is_numeric_array ) {
|
263 |
Â
$output .= sprintf( '<dd class="support-stats-array"><ul><li>%s</li></ul></dd>', join( '</li><li>', $v ) );
|
264 |
Â
} else {
|
265 |
-
$formatted_v =
|
266 |
Â
foreach ( $v as $obj_key => $obj_val ) {
|
267 |
Â
if ( in_array( $obj_key, $this->must_escape ) ) {
|
268 |
Â
$obj_val = esc_html( $obj_val );
|
@@ -383,7 +383,7 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
383 |
Â
update_option( 'tribe_systeminfo_optin', $optin_key );
|
384 |
Â
|
385 |
Â
//Only Connect If a License Exists
|
386 |
-
$keys = apply_filters( 'tribe-pue-install-keys',
|
387 |
Â
if ( is_array( $keys ) && ! empty( $keys ) ) {
|
388 |
Â
Tribe__Support::send_sysinfo_key( $optin_key );
|
389 |
Â
} else {
|
@@ -412,7 +412,7 @@ if ( ! class_exists( 'Tribe__Support' ) ) {
|
|
412 |
Â
*/
|
413 |
Â
public static function send_sysinfo_key( $optin_key = null, $url = null, $remove = null, $pueadd = false ) {
|
414 |
Â
|
415 |
-
$url
|
416 |
Â
|
417 |
Â
$teccom_url = 'https://theeventscalendar.com/';
|
418 |
Â
|
26 |
Â
*
|
27 |
Â
* @var array
|
28 |
Â
*/
|
29 |
+
protected $must_escape = [
|
30 |
Â
'tribeEventsAfterHTML',
|
31 |
Â
'tribeEventsBeforeHTML',
|
32 |
+
];
|
33 |
Â
|
34 |
Â
/**
|
35 |
Â
* Field prefixes here should be partially obfuscated before being printed.
|
36 |
Â
*
|
37 |
Â
* @var array
|
38 |
Â
*/
|
39 |
+
protected $must_obfuscate_prefixes = [
|
40 |
Â
'pue_install_key_',
|
41 |
Â
'google_maps_js_api_key',
|
42 |
+
];
|
43 |
Â
|
44 |
Â
private function __construct() {
|
45 |
Â
/**
|
49 |
Â
*/
|
50 |
Â
$this->must_escape = (array) apply_filters( 'tribe_help_must_escape_fields', $this->must_escape );
|
51 |
Â
|
52 |
+
add_action( 'tribe_help_pre_get_sections', [ $this, 'append_system_info' ], 10 );
|
53 |
+
add_action( 'delete_option_rewrite_rules', [ $this, 'log_rewrite_rule_purge' ] );
|
54 |
Â
|
55 |
+
add_action( 'rest_api_init', [ __CLASS__, 'create_sysinfo_endpoint' ] );
|
56 |
+
add_action( 'wp_ajax_tribe_toggle_sysinfo_optin', [ __CLASS__, 'ajax_sysinfo_optin' ] );
|
57 |
Â
}
|
58 |
Â
|
59 |
Â
/**
|
74 |
Â
global $wpdb;
|
75 |
Â
$user = wp_get_current_user();
|
76 |
Â
|
77 |
+
$plugins = [];
|
78 |
Â
if ( function_exists( 'get_plugin_data' ) ) {
|
79 |
Â
$plugins_raw = wp_get_active_and_valid_plugins();
|
80 |
Â
foreach ( $plugins_raw as $k => $v ) {
|
93 |
Â
}
|
94 |
Â
}
|
95 |
Â
|
96 |
+
$network_plugins = [];
|
97 |
Â
if ( is_multisite() && function_exists( 'get_plugin_data' ) ) {
|
98 |
Â
$plugins_raw = wp_get_active_network_plugins();
|
99 |
Â
foreach ( $plugins_raw as $k => $v ) {
|
112 |
Â
}
|
113 |
Â
}
|
114 |
Â
|
115 |
+
$mu_plugins = [];
|
116 |
Â
if ( function_exists( 'get_mu_plugins' ) ) {
|
117 |
Â
$mu_plugins_raw = get_mu_plugins();
|
118 |
Â
foreach ( $mu_plugins_raw as $k => $v ) {
|
130 |
Â
}
|
131 |
Â
}
|
132 |
Â
|
133 |
+
$keys = apply_filters( 'tribe-pue-install-keys', [] );
|
134 |
Â
//Obfuscate the License Keys for Security
|
135 |
Â
if ( is_array( $keys ) && ! empty( $keys ) ) {
|
136 |
+
$secure_keys = [];
|
137 |
Â
foreach ( $keys as $plugin => $license ) {
|
138 |
Â
$secure_keys[ $plugin ] = preg_replace( '/^(.{4}).*(.{4})$/', '$1' . str_repeat( '#', 32 ) . '$2', $license );
|
139 |
Â
}
|
145 |
Â
$server = explode( '/', reset( $server ) );
|
146 |
Â
|
147 |
Â
//PHP Information
|
148 |
+
$php_info = [];
|
149 |
+
$php_vars = [
|
150 |
Â
'max_execution_time',
|
151 |
Â
'memory_limit',
|
152 |
Â
'upload_max_filesize',
|
153 |
Â
'post_max_size',
|
154 |
Â
'display_errors',
|
155 |
Â
'log_errors',
|
156 |
+
];
|
157 |
Â
|
158 |
Â
foreach ( $php_vars as $php_var ) {
|
159 |
Â
if ( isset( $wpdb->qm_php_vars ) && isset( $wpdb->qm_php_vars[ $php_var ] ) ) {
|
176 |
Â
}
|
177 |
Â
|
178 |
Â
$site_url = get_site_url();
|
179 |
+
$systeminfo = [
|
180 |
Â
'Home URL' => get_home_url(),
|
181 |
Â
'Site URL' => $site_url,
|
182 |
Â
'Site Language' => get_option( 'WPLANG' ) ? get_option( 'WPLANG' ) : esc_html__( 'English', 'tribe-common' ),
|
206 |
Â
'Week Starts On' => get_option( 'start_of_week' ),
|
207 |
Â
'Common Library Dir' => $GLOBALS['tribe-common-info']['dir'],
|
208 |
Â
'Common Library Version' => $GLOBALS['tribe-common-info']['version'],
|
209 |
+
];
|
210 |
Â
|
211 |
Â
if ( $this->rewrite_rules_purged ) {
|
212 |
Â
$systeminfo['rewrite rules purged'] = esc_html__( 'Rewrite rules were purged on load of this help page. Chances are there is a rewrite rule flush occurring in a plugin or theme!', 'tribe-common' );
|
262 |
Â
} elseif ( is_array( $v ) && $is_numeric_array ) {
|
263 |
Â
$output .= sprintf( '<dd class="support-stats-array"><ul><li>%s</li></ul></dd>', join( '</li><li>', $v ) );
|
264 |
Â
} else {
|
265 |
+
$formatted_v = [];
|
266 |
Â
foreach ( $v as $obj_key => $obj_val ) {
|
267 |
Â
if ( in_array( $obj_key, $this->must_escape ) ) {
|
268 |
Â
$obj_val = esc_html( $obj_val );
|
383 |
Â
update_option( 'tribe_systeminfo_optin', $optin_key );
|
384 |
Â
|
385 |
Â
//Only Connect If a License Exists
|
386 |
+
$keys = apply_filters( 'tribe-pue-install-keys', [] );
|
387 |
Â
if ( is_array( $keys ) && ! empty( $keys ) ) {
|
388 |
Â
Tribe__Support::send_sysinfo_key( $optin_key );
|
389 |
Â
} else {
|
412 |
Â
*/
|
413 |
Â
public static function send_sysinfo_key( $optin_key = null, $url = null, $remove = null, $pueadd = false ) {
|
414 |
Â
|
415 |
+
$url = $url ? $url : urlencode( str_replace( [ 'http://', 'https://' ], '', get_site_url() ) );
|
416 |
Â
|
417 |
Â
$teccom_url = 'https://theeventscalendar.com/';
|
418 |
Â
|
common/src/Tribe/Support/Obfuscator.php
CHANGED
@@ -6,14 +6,14 @@ class Tribe__Support__Obfuscator {
|
|
6 |
Â
/**
|
7 |
Â
* @var array
|
8 |
Â
*/
|
9 |
-
protected $prefixes =
|
10 |
Â
|
11 |
Â
/**
|
12 |
Â
* Tribe__Support__Obfuscator constructor.
|
13 |
Â
*
|
14 |
Â
* @param array $prefixes
|
15 |
Â
*/
|
16 |
-
public function __construct( array $prefixes =
|
17 |
Â
$this->prefixes = $prefixes;
|
18 |
Â
}
|
19 |
Â
|
6 |
Â
/**
|
7 |
Â
* @var array
|
8 |
Â
*/
|
9 |
+
protected $prefixes = [];
|
10 |
Â
|
11 |
Â
/**
|
12 |
Â
* Tribe__Support__Obfuscator constructor.
|
13 |
Â
*
|
14 |
Â
* @param array $prefixes
|
15 |
Â
*/
|
16 |
+
public function __construct( array $prefixes = [] ) {
|
17 |
Â
$this->prefixes = $prefixes;
|
18 |
Â
}
|
19 |
Â
|
common/src/Tribe/Support/Template_Checker.php
CHANGED
@@ -9,9 +9,8 @@ class Tribe__Support__Template_Checker {
|
|
9 |
Â
protected $plugin_views_dir = '';
|
10 |
Â
protected $theme_views_dir = '';
|
11 |
Â
|
12 |
-
protected $originals =
|
13 |
-
protected $overrides =
|
14 |
-
|
15 |
Â
|
16 |
Â
/**
|
17 |
Â
* Examine the plugin views (and optionally any theme overrides) and analyse
|
@@ -176,7 +175,7 @@ class Tribe__Support__Template_Checker {
|
|
176 |
Â
* @return array
|
177 |
Â
*/
|
178 |
Â
public function get_versioned_views() {
|
179 |
-
$versioned_views =
|
180 |
Â
|
181 |
Â
foreach ( $this->originals as $key => $version ) {
|
182 |
Â
if ( ! empty( $version ) ) {
|
@@ -196,7 +195,7 @@ class Tribe__Support__Template_Checker {
|
|
196 |
Â
* @return array
|
197 |
Â
*/
|
198 |
Â
public function get_views_tagged_this_release() {
|
199 |
-
$currently_tagged_views =
|
200 |
Â
|
201 |
Â
foreach ( $this->get_versioned_views() as $key => $version ) {
|
202 |
Â
if ( $version === $this->plugin_version ) {
|
@@ -226,7 +225,7 @@ class Tribe__Support__Template_Checker {
|
|
226 |
Â
* @return array
|
227 |
Â
*/
|
228 |
Â
public function get_versioned_overrides() {
|
229 |
-
$versioned_views =
|
230 |
Â
|
231 |
Â
foreach ( $this->overrides as $key => $version ) {
|
232 |
Â
if ( ! empty( $version ) ) {
|
@@ -252,7 +251,7 @@ class Tribe__Support__Template_Checker {
|
|
252 |
Â
* @return array
|
253 |
Â
*/
|
254 |
Â
public function get_outdated_overrides( $include_unknown = false ) {
|
255 |
-
$outdated =
|
256 |
Â
$originals = $this->get_versioned_views();
|
257 |
Â
|
258 |
Â
$overrides = $include_unknown
|
9 |
Â
protected $plugin_views_dir = '';
|
10 |
Â
protected $theme_views_dir = '';
|
11 |
Â
|
12 |
+
protected $originals = [];
|
13 |
+
protected $overrides = [];
|
Â
|
|
14 |
Â
|
15 |
Â
/**
|
16 |
Â
* Examine the plugin views (and optionally any theme overrides) and analyse
|
175 |
Â
* @return array
|
176 |
Â
*/
|
177 |
Â
public function get_versioned_views() {
|
178 |
+
$versioned_views = [];
|
179 |
Â
|
180 |
Â
foreach ( $this->originals as $key => $version ) {
|
181 |
Â
if ( ! empty( $version ) ) {
|
195 |
Â
* @return array
|
196 |
Â
*/
|
197 |
Â
public function get_views_tagged_this_release() {
|
198 |
+
$currently_tagged_views = [];
|
199 |
Â
|
200 |
Â
foreach ( $this->get_versioned_views() as $key => $version ) {
|
201 |
Â
if ( $version === $this->plugin_version ) {
|
225 |
Â
* @return array
|
226 |
Â
*/
|
227 |
Â
public function get_versioned_overrides() {
|
228 |
+
$versioned_views = [];
|
229 |
Â
|
230 |
Â
foreach ( $this->overrides as $key => $version ) {
|
231 |
Â
if ( ! empty( $version ) ) {
|
251 |
Â
* @return array
|
252 |
Â
*/
|
253 |
Â
public function get_outdated_overrides( $include_unknown = false ) {
|
254 |
+
$outdated = [];
|
255 |
Â
$originals = $this->get_versioned_views();
|
256 |
Â
|
257 |
Â
$overrides = $include_unknown
|
common/src/Tribe/Support/Template_Checker_Report.php
CHANGED
@@ -14,7 +14,7 @@ class Tribe__Support__Template_Checker_Report {
|
|
14 |
Â
*
|
15 |
Â
* @var array
|
16 |
Â
*/
|
17 |
-
protected static $plugin_reports =
|
18 |
Â
|
19 |
Â
/**
|
20 |
Â
* Container for finished report.
|
@@ -53,7 +53,7 @@ class Tribe__Support__Template_Checker_Report {
|
|
53 |
Â
*
|
54 |
Â
* @var array $registered_template_systems
|
55 |
Â
*/
|
56 |
-
return apply_filters( 'tribe_support_registered_template_systems',
|
57 |
Â
}
|
58 |
Â
|
59 |
Â
/**
|
14 |
Â
*
|
15 |
Â
* @var array
|
16 |
Â
*/
|
17 |
+
protected static $plugin_reports = [];
|
18 |
Â
|
19 |
Â
/**
|
20 |
Â
* Container for finished report.
|
53 |
Â
*
|
54 |
Â
* @var array $registered_template_systems
|
55 |
Â
*/
|
56 |
+
return apply_filters( 'tribe_support_registered_template_systems', [] );
|
57 |
Â
}
|
58 |
Â
|
59 |
Â
/**
|
common/src/Tribe/Tabbed_View.php
CHANGED
@@ -13,7 +13,7 @@ class Tribe__Tabbed_View {
|
|
13 |
Â
*
|
14 |
Â
* @var array An associative array in the [<slug> => <instance>] format.
|
15 |
Â
*/
|
16 |
-
protected $items =
|
17 |
Â
|
18 |
Â
/**
|
19 |
Â
* The slug of the default tab
|
@@ -32,7 +32,7 @@ class Tribe__Tabbed_View {
|
|
32 |
Â
*
|
33 |
Â
* @var array|object
|
34 |
Â
*/
|
35 |
-
protected $data =
|
36 |
Â
|
37 |
Â
/**
|
38 |
Â
* @var string
|
@@ -99,7 +99,7 @@ class Tribe__Tabbed_View {
|
|
99 |
Â
* @return Tribe__Tabbed_View__Tab[] An array of all the active and visible tabs.
|
100 |
Â
*/
|
101 |
Â
public function get_visibles() {
|
102 |
-
return array_filter( $this->get(),
|
103 |
Â
}
|
104 |
Â
|
105 |
Â
/**
|
@@ -175,7 +175,7 @@ class Tribe__Tabbed_View {
|
|
175 |
Â
* @return null|array|object If we couldn't find the tab it will be null, if the slug is null will return all tabs
|
176 |
Â
*/
|
177 |
Â
public function get( $slug = null ) {
|
178 |
-
uasort( $this->items,
|
179 |
Â
|
180 |
Â
if ( is_null( $slug ) ) {
|
181 |
Â
return $this->items;
|
@@ -295,7 +295,7 @@ class Tribe__Tabbed_View {
|
|
295 |
Â
* @return Tribe__Tabbed_View__Tab[]
|
296 |
Â
*/
|
297 |
Â
public function get_tabs() {
|
298 |
-
uasort( $this->items,
|
299 |
Â
|
300 |
Â
return array_values( $this->items );
|
301 |
Â
}
|
@@ -332,9 +332,9 @@ class Tribe__Tabbed_View {
|
|
332 |
Â
return '';
|
333 |
Â
}
|
334 |
Â
|
335 |
-
$default_data =
|
336 |
Â
'view' => $this,
|
337 |
-
|
338 |
Â
|
339 |
Â
$data = array_merge( $default_data, (array) $this->data );
|
340 |
Â
|
13 |
Â
*
|
14 |
Â
* @var array An associative array in the [<slug> => <instance>] format.
|
15 |
Â
*/
|
16 |
+
protected $items = [];
|
17 |
Â
|
18 |
Â
/**
|
19 |
Â
* The slug of the default tab
|
32 |
Â
*
|
33 |
Â
* @var array|object
|
34 |
Â
*/
|
35 |
+
protected $data = [];
|
36 |
Â
|
37 |
Â
/**
|
38 |
Â
* @var string
|
99 |
Â
* @return Tribe__Tabbed_View__Tab[] An array of all the active and visible tabs.
|
100 |
Â
*/
|
101 |
Â
public function get_visibles() {
|
102 |
+
return array_filter( $this->get(), [ $this, 'is_tab_visible' ] );
|
103 |
Â
}
|
104 |
Â
|
105 |
Â
/**
|
175 |
Â
* @return null|array|object If we couldn't find the tab it will be null, if the slug is null will return all tabs
|
176 |
Â
*/
|
177 |
Â
public function get( $slug = null ) {
|
178 |
+
uasort( $this->items, [ $this, 'sort_by_priority' ] );
|
179 |
Â
|
180 |
Â
if ( is_null( $slug ) ) {
|
181 |
Â
return $this->items;
|
295 |
Â
* @return Tribe__Tabbed_View__Tab[]
|
296 |
Â
*/
|
297 |
Â
public function get_tabs() {
|
298 |
+
uasort( $this->items, [ $this, 'sort_by_priority' ] );
|
299 |
Â
|
300 |
Â
return array_values( $this->items );
|
301 |
Â
}
|
332 |
Â
return '';
|
333 |
Â
}
|
334 |
Â
|
335 |
+
$default_data = [
|
336 |
Â
'view' => $this,
|
337 |
+
];
|
338 |
Â
|
339 |
Â
$data = array_merge( $default_data, (array) $this->data );
|
340 |
Â
|
common/src/Tribe/Tabbed_View/Tab.php
CHANGED
@@ -20,7 +20,7 @@ class Tribe__Tabbed_View__Tab {
|
|
20 |
Â
*
|
21 |
Â
* @var array|object
|
22 |
Â
*/
|
23 |
-
protected $data =
|
24 |
Â
|
25 |
Â
/**
|
26 |
Â
* The template file that should be used to render the tab.
|
@@ -164,9 +164,9 @@ class Tribe__Tabbed_View__Tab {
|
|
164 |
Â
return '';
|
165 |
Â
}
|
166 |
Â
|
167 |
-
$default_data =
|
168 |
Â
'tab' => $this,
|
169 |
-
|
170 |
Â
|
171 |
Â
$data = array_merge( $default_data, (array) $this->data );
|
172 |
Â
|
@@ -189,14 +189,14 @@ class Tribe__Tabbed_View__Tab {
|
|
189 |
Â
*
|
190 |
Â
* @return string
|
191 |
Â
*/
|
192 |
-
public function get_url( $args =
|
193 |
Â
if ( ! empty( $this->url ) ) {
|
194 |
Â
return $this->url;
|
195 |
Â
}
|
196 |
Â
|
197 |
-
$defaults =
|
198 |
Â
'tab' => $this->get_slug(),
|
199 |
-
|
200 |
Â
|
201 |
Â
// Allow the link to be "changed" on the fly
|
202 |
Â
$args = wp_parse_args( $args, $defaults );
|
20 |
Â
*
|
21 |
Â
* @var array|object
|
22 |
Â
*/
|
23 |
+
protected $data = [];
|
24 |
Â
|
25 |
Â
/**
|
26 |
Â
* The template file that should be used to render the tab.
|
164 |
Â
return '';
|
165 |
Â
}
|
166 |
Â
|
167 |
+
$default_data = [
|
168 |
Â
'tab' => $this,
|
169 |
+
];
|
170 |
Â
|
171 |
Â
$data = array_merge( $default_data, (array) $this->data );
|
172 |
Â
|
189 |
Â
*
|
190 |
Â
* @return string
|
191 |
Â
*/
|
192 |
+
public function get_url( $args = [], $relative = false ) {
|
193 |
Â
if ( ! empty( $this->url ) ) {
|
194 |
Â
return $this->url;
|
195 |
Â
}
|
196 |
Â
|
197 |
+
$defaults = [
|
198 |
Â
'tab' => $this->get_slug(),
|
199 |
+
];
|
200 |
Â
|
201 |
Â
// Allow the link to be "changed" on the fly
|
202 |
Â
$args = wp_parse_args( $args, $defaults );
|
common/src/Tribe/Template.php
CHANGED
@@ -1,5 +1,6 @@
|
|
1 |
Â
<?php
|
2 |
Â
|
Â
|
|
3 |
Â
use Tribe\Utils\Strings;
|
4 |
Â
|
5 |
Â
class Tribe__Template {
|
@@ -10,7 +11,7 @@ class Tribe__Template {
|
|
10 |
Â
*
|
11 |
Â
* @var array
|
12 |
Â
*/
|
13 |
-
protected $folder =
|
14 |
Â
|
15 |
Â
/**
|
16 |
Â
* The origin class for the plugin where the template lives
|
@@ -37,7 +38,7 @@ class Tribe__Template {
|
|
37 |
Â
*
|
38 |
Â
* @var array
|
39 |
Â
*/
|
40 |
-
protected $global =
|
41 |
Â
|
42 |
Â
/**
|
43 |
Â
* Used for finding templates for public templates on themes inside of a folder.
|
@@ -233,7 +234,7 @@ class Tribe__Template {
|
|
233 |
Â
*
|
234 |
Â
* @return self
|
235 |
Â
*/
|
236 |
-
public function add_template_globals( $context =
|
237 |
Â
// Cast as Array merge and save
|
238 |
Â
$this->global = wp_parse_args( (array) $context, $this->global );
|
239 |
Â
|
@@ -283,17 +284,17 @@ class Tribe__Template {
|
|
283 |
Â
}
|
284 |
Â
|
285 |
Â
/**
|
286 |
-
* Sets
|
287 |
-
* Final to prevent extending the class when the `get` already exists on the child class
|
288 |
Â
*
|
289 |
-
* @
|
290 |
Â
*
|
291 |
-
* @
|
292 |
Â
*
|
293 |
-
* @param
|
294 |
-
*
|
295 |
-
* @param
|
296 |
-
* @param
|
297 |
Â
*
|
298 |
Â
* @return mixed The value of the specified index or the default if not found.
|
299 |
Â
*/
|
@@ -310,14 +311,15 @@ class Tribe__Template {
|
|
310 |
Â
*
|
311 |
Â
* @since 4.6.2
|
312 |
Â
*
|
313 |
-
* @param
|
314 |
-
* @param
|
315 |
-
*
|
316 |
-
* @param
|
317 |
-
* @param
|
318 |
-
* @param
|
319 |
Â
*/
|
320 |
Â
$value = apply_filters( 'tribe_template_context_get', null, $index, $default, $is_local, $this );
|
Â
|
|
321 |
Â
if ( null !== $value ) {
|
322 |
Â
return $value;
|
323 |
Â
}
|
@@ -611,7 +613,7 @@ class Tribe__Template {
|
|
611 |
Â
}
|
612 |
Â
|
613 |
Â
// Build the File Path
|
614 |
-
$file =
|
615 |
Â
|
616 |
Â
// Append the Extension to the file path
|
617 |
Â
$file .= '.php';
|
1 |
Â
<?php
|
2 |
Â
|
3 |
+
use Tribe\Utils\Paths;
|
4 |
Â
use Tribe\Utils\Strings;
|
5 |
Â
|
6 |
Â
class Tribe__Template {
|
11 |
Â
*
|
12 |
Â
* @var array
|
13 |
Â
*/
|
14 |
+
protected $folder = [];
|
15 |
Â
|
16 |
Â
/**
|
17 |
Â
* The origin class for the plugin where the template lives
|
38 |
Â
*
|
39 |
Â
* @var array
|
40 |
Â
*/
|
41 |
+
protected $global = [];
|
42 |
Â
|
43 |
Â
/**
|
44 |
Â
* Used for finding templates for public templates on themes inside of a folder.
|
234 |
Â
*
|
235 |
Â
* @return self
|
236 |
Â
*/
|
237 |
+
public function add_template_globals( $context = [] ) {
|
238 |
Â
// Cast as Array merge and save
|
239 |
Â
$this->global = wp_parse_args( (array) $context, $this->global );
|
240 |
Â
|
284 |
Â
}
|
285 |
Â
|
286 |
Â
/**
|
287 |
+
* Sets an Index inside of the global or local context.
|
288 |
+
* Final to prevent extending the class when the `get` already exists on the child class.
|
289 |
Â
*
|
290 |
+
* @see Tribe__Utils__Array::set()
|
291 |
Â
*
|
292 |
+
* @since 4.6.2
|
293 |
Â
*
|
294 |
+
* @param array|string $index Specify each nested index in order.
|
295 |
+
* Example: array( 'lvl1', 'lvl2' );
|
296 |
+
* @param mixed $default Default value if the search finds nothing.
|
297 |
+
* @param boolean $is_local Use the Local or Global context.
|
298 |
Â
*
|
299 |
Â
* @return mixed The value of the specified index or the default if not found.
|
300 |
Â
*/
|
311 |
Â
*
|
312 |
Â
* @since 4.6.2
|
313 |
Â
*
|
314 |
+
* @param mixed $value The value that will be filtered.
|
315 |
+
* @param array|string $index Specify each nested index in order.
|
316 |
+
* Example: array( 'lvl1', 'lvl2' );
|
317 |
+
* @param mixed $default Default value if the search finds nothing.
|
318 |
+
* @param boolean $is_local Use the Local or Global context.
|
319 |
+
* @param self $template Current instance of the Tribe__Template.
|
320 |
Â
*/
|
321 |
Â
$value = apply_filters( 'tribe_template_context_get', null, $index, $default, $is_local, $this );
|
322 |
+
|
323 |
Â
if ( null !== $value ) {
|
324 |
Â
return $value;
|
325 |
Â
}
|
613 |
Â
}
|
614 |
Â
|
615 |
Â
// Build the File Path
|
616 |
+
$file = Paths::merge( $folder['path'], $name );
|
617 |
Â
|
618 |
Â
// Append the Extension to the file path
|
619 |
Â
$file .= '.php';
|
common/src/Tribe/Template_Factory.php
CHANGED
@@ -23,7 +23,7 @@ class Tribe__Template_Factory {
|
|
23 |
Â
*
|
24 |
Â
* @var array
|
25 |
Â
**/
|
26 |
-
protected $asset_packages =
|
27 |
Â
|
28 |
Â
/**
|
29 |
Â
* Static variable that holds array of vendor script handles, for adding to later deps.
|
@@ -33,7 +33,7 @@ class Tribe__Template_Factory {
|
|
33 |
Â
* @static
|
34 |
Â
* @var array
|
35 |
Â
*/
|
36 |
-
protected static $vendor_scripts =
|
37 |
Â
|
38 |
Â
/**
|
39 |
Â
* Constant that holds the ajax hook suffix for the view
|
@@ -154,7 +154,7 @@ class Tribe__Template_Factory {
|
|
154 |
Â
* @param string $name
|
155 |
Â
* @param array $deps Dependents
|
156 |
Â
*/
|
157 |
-
public static function asset_package( $name, $deps =
|
158 |
Â
|
159 |
Â
$common = Tribe__Main::instance();
|
160 |
Â
$prefix = 'tribe-events';
|
23 |
Â
*
|
24 |
Â
* @var array
|
25 |
Â
**/
|
26 |
+
protected $asset_packages = [];
|
27 |
Â
|
28 |
Â
/**
|
29 |
Â
* Static variable that holds array of vendor script handles, for adding to later deps.
|
33 |
Â
* @static
|
34 |
Â
* @var array
|
35 |
Â
*/
|
36 |
+
protected static $vendor_scripts = [];
|
37 |
Â
|
38 |
Â
/**
|
39 |
Â
* Constant that holds the ajax hook suffix for the view
|
154 |
Â
* @param string $name
|
155 |
Â
* @param array $deps Dependents
|
156 |
Â
*/
|
157 |
+
public static function asset_package( $name, $deps = [] ) {
|
158 |
Â
|
159 |
Â
$common = Tribe__Main::instance();
|
160 |
Â
$prefix = 'tribe-events';
|
common/src/Tribe/Template_Part_Cache.php
CHANGED
@@ -56,13 +56,13 @@ class Tribe__Template_Part_Cache {
|
|
56 |
Â
public function add_hooks() {
|
57 |
Â
|
58 |
Â
// set the cached html in transients after the template part is included
|
59 |
-
add_filter( 'tribe_get_template_part_content',
|
60 |
Â
|
61 |
Â
// get the cached html right before the setup_view runs so it's available for bypassing any view logic
|
62 |
-
add_action( 'tribe_events_before_view',
|
63 |
Â
|
64 |
Â
// when the specified template part is included, show the cached html instead
|
65 |
-
add_filter( 'tribe_get_template_part_path_' . $this->template,
|
66 |
Â
}
|
67 |
Â
|
68 |
Â
/**
|
56 |
Â
public function add_hooks() {
|
57 |
Â
|
58 |
Â
// set the cached html in transients after the template part is included
|
59 |
+
add_filter( 'tribe_get_template_part_content', [ $this, 'set' ], 10, 2 );
|
60 |
Â
|
61 |
Â
// get the cached html right before the setup_view runs so it's available for bypassing any view logic
|
62 |
+
add_action( 'tribe_events_before_view', [ $this, 'get' ], 9, 1 );
|
63 |
Â
|
64 |
Â
// when the specified template part is included, show the cached html instead
|
65 |
+
add_filter( 'tribe_get_template_part_path_' . $this->template, [ $this, 'display' ] );
|
66 |
Â
}
|
67 |
Â
|
68 |
Â
/**
|
common/src/Tribe/Templates.php
CHANGED
@@ -37,7 +37,7 @@ class Tribe__Templates {
|
|
37 |
Â
*/
|
38 |
Â
public static function locate_stylesheet( $stylesheets, $fallback = false ) {
|
39 |
Â
if ( ! is_array( $stylesheets ) ) {
|
40 |
-
$stylesheets =
|
41 |
Â
}
|
42 |
Â
if ( empty( $stylesheets ) ) {
|
43 |
Â
return $fallback;
|
37 |
Â
*/
|
38 |
Â
public static function locate_stylesheet( $stylesheets, $fallback = false ) {
|
39 |
Â
if ( ! is_array( $stylesheets ) ) {
|
40 |
+
$stylesheets = [ $stylesheets ];
|
41 |
Â
}
|
42 |
Â
if ( empty( $stylesheets ) ) {
|
43 |
Â
return $fallback;
|
common/src/Tribe/Terms.php
CHANGED
@@ -16,7 +16,7 @@ class Tribe__Terms {
|
|
16 |
Â
public static function translate_terms_to_ids( $terms, $taxonomy, $create_missing = true ) {
|
17 |
Â
$terms = is_string( $terms ) ? preg_split( '/\\s*,\\s*/', $terms ) : (array) $terms;
|
18 |
Â
|
19 |
-
$term_ids =
|
20 |
Â
foreach ( $terms as $term ) {
|
21 |
Â
if ( ! $term instanceof WP_Term && ! strlen( trim( $term ) ) ) {
|
22 |
Â
continue;
|
16 |
Â
public static function translate_terms_to_ids( $terms, $taxonomy, $create_missing = true ) {
|
17 |
Â
$terms = is_string( $terms ) ? preg_split( '/\\s*,\\s*/', $terms ) : (array) $terms;
|
18 |
Â
|
19 |
+
$term_ids = [];
|
20 |
Â
foreach ( $terms as $term ) {
|
21 |
Â
if ( ! $term instanceof WP_Term && ! strlen( trim( $term ) ) ) {
|
22 |
Â
continue;
|
common/src/Tribe/Timezones.php
CHANGED
@@ -15,7 +15,7 @@ class Tribe__Timezones {
|
|
15 |
Â
*
|
16 |
Â
* @var array
|
17 |
Â
*/
|
18 |
-
protected static $timezones =
|
19 |
Â
|
20 |
Â
public static function init() {
|
21 |
Â
self::invalidate_caches();
|
@@ -27,8 +27,8 @@ class Tribe__Timezones {
|
|
27 |
Â
* Currently we are concerned only with the site timezone abbreviation.
|
28 |
Â
*/
|
29 |
Â
protected static function invalidate_caches() {
|
30 |
-
add_filter( 'pre_update_option_gmt_offset',
|
31 |
-
add_filter( 'pre_update_option_timezone_string',
|
32 |
Â
}
|
33 |
Â
|
34 |
Â
/**
|
@@ -462,11 +462,11 @@ class Tribe__Timezones {
|
|
462 |
Â
}
|
463 |
Â
|
464 |
Â
// if the offset contains fractions like :15, :30 or :45 convert them
|
465 |
-
$supported_offsets =
|
466 |
Â
'/:15$/' => '.25',
|
467 |
Â
'/:30$/' => '.5',
|
468 |
Â
'/:45$/' => '.75',
|
469 |
-
|
470 |
Â
$offset = preg_replace( array_keys( $supported_offsets ), array_values( $supported_offsets ), $offset );
|
471 |
Â
|
472 |
Â
// Convert the offset to minutes for easier handling of fractional offsets
|
15 |
Â
*
|
16 |
Â
* @var array
|
17 |
Â
*/
|
18 |
+
protected static $timezones = [];
|
19 |
Â
|
20 |
Â
public static function init() {
|
21 |
Â
self::invalidate_caches();
|
27 |
Â
* Currently we are concerned only with the site timezone abbreviation.
|
28 |
Â
*/
|
29 |
Â
protected static function invalidate_caches() {
|
30 |
+
add_filter( 'pre_update_option_gmt_offset', [ __CLASS__, 'clear_site_timezone_abbr' ] );
|
31 |
+
add_filter( 'pre_update_option_timezone_string', [ __CLASS__, 'clear_site_timezone_abbr' ] );
|
32 |
Â
}
|
33 |
Â
|
34 |
Â
/**
|
462 |
Â
}
|
463 |
Â
|
464 |
Â
// if the offset contains fractions like :15, :30 or :45 convert them
|
465 |
+
$supported_offsets = [
|
466 |
Â
'/:15$/' => '.25',
|
467 |
Â
'/:30$/' => '.5',
|
468 |
Â
'/:45$/' => '.75',
|
469 |
+
];
|
470 |
Â
$offset = preg_replace( array_keys( $supported_offsets ), array_values( $supported_offsets ), $offset );
|
471 |
Â
|
472 |
Â
// Convert the offset to minutes for easier handling of fractional offsets
|
common/src/Tribe/Tracker.php
CHANGED
@@ -19,34 +19,34 @@ class Tribe__Tracker {
|
|
19 |
Â
/**
|
20 |
Â
* @var array An array of the tracked post types.
|
21 |
Â
*/
|
22 |
-
protected $tracked_post_types =
|
23 |
Â
|
24 |
Â
/**
|
25 |
Â
* @var array An array of the tracked taxonomies.
|
26 |
Â
*/
|
27 |
-
protected $tracked_taxonomies =
|
28 |
Â
|
29 |
Â
/**
|
30 |
Â
* Hooks up the methods that will actually track the fields we are looking for.
|
31 |
Â
*/
|
32 |
Â
public function hook() {
|
33 |
Â
// Track the Meta Updates for Meta That came from the correct Post Types
|
34 |
-
add_filter( 'update_post_metadata',
|
35 |
Â
|
36 |
Â
// After a meta is added we mark that is has been modified
|
37 |
-
add_action( 'added_post_meta',
|
38 |
Â
|
39 |
Â
// Before a meta is removed we mark that is has been modified
|
40 |
-
add_action( 'delete_post_meta',
|
41 |
Â
|
42 |
Â
// Track the Post Fields Updates for Meta in the correct Post Types
|
43 |
-
add_action( 'post_updated',
|
44 |
Â
|
45 |
Â
// Track the Post term updates
|
46 |
-
add_action( 'set_object_terms',
|
47 |
Â
|
48 |
Â
// Clean up modified fields if the post is removed.
|
49 |
-
add_action( 'delete_post',
|
50 |
Â
}
|
51 |
Â
|
52 |
Â
/**
|
@@ -106,7 +106,7 @@ class Tribe__Tracker {
|
|
106 |
Â
*/
|
107 |
Â
public function get_post_types() {
|
108 |
Â
// By default we are not tracking anything
|
109 |
-
$tracked_post_types =
|
110 |
Â
|
111 |
Â
/**
|
112 |
Â
* Adds a way for Developers to add and remove which post types will be tracked
|
@@ -128,10 +128,10 @@ class Tribe__Tracker {
|
|
128 |
Â
*/
|
129 |
Â
public function get_excluded_meta_keys() {
|
130 |
Â
// By default we are not tracking anything
|
131 |
-
$excluded_keys =
|
132 |
Â
'_edit_lock',
|
133 |
Â
self::$field_key,
|
134 |
-
|
135 |
Â
|
136 |
Â
/**
|
137 |
Â
* Adds a way for Developers remove Meta Keys that shouldn't be tracked
|
@@ -197,7 +197,7 @@ class Tribe__Tracker {
|
|
197 |
Â
// Fetch the current data from the modified fields
|
198 |
Â
$modified = get_post_meta( $post->ID, self::$field_key, true );
|
199 |
Â
if ( ! is_array( $modified ) ) {
|
200 |
-
$modified =
|
201 |
Â
}
|
202 |
Â
|
203 |
Â
// If we got here we will update the Modified Meta
|
@@ -276,7 +276,7 @@ class Tribe__Tracker {
|
|
276 |
Â
// Fetch the current data from the modified fields
|
277 |
Â
$modified = get_post_meta( $post->ID, self::$field_key, true );
|
278 |
Â
if ( ! is_array( $modified ) ) {
|
279 |
-
$modified =
|
280 |
Â
}
|
281 |
Â
|
282 |
Â
// If we got here we will update the Modified Meta
|
@@ -320,17 +320,17 @@ class Tribe__Tracker {
|
|
320 |
Â
$now = current_time( 'timestamp' );
|
321 |
Â
|
322 |
Â
if ( ! $modified = get_post_meta( $post_id, self::$field_key, true ) ) {
|
323 |
-
$modified =
|
324 |
Â
}
|
325 |
Â
|
326 |
-
$fields_to_check_for_changes =
|
327 |
Â
'post_title',
|
328 |
Â
'post_content',
|
329 |
Â
'post_excerpt',
|
330 |
Â
'post_status',
|
331 |
Â
'post_type',
|
332 |
Â
'post_parent',
|
333 |
-
|
334 |
Â
|
335 |
Â
foreach ( $fields_to_check_for_changes as $field ) {
|
336 |
Â
if ( ! $this->has_field_changed( $field, $post_after, $post_before ) ) {
|
@@ -392,7 +392,7 @@ class Tribe__Tracker {
|
|
392 |
Â
}
|
393 |
Â
|
394 |
Â
if ( ! $modified = get_post_meta( $post->ID, self::$field_key, true ) ) {
|
395 |
-
$modified =
|
396 |
Â
}
|
397 |
Â
|
398 |
Â
if ( $tt_ids == $old_tt_ids ) {
|
19 |
Â
/**
|
20 |
Â
* @var array An array of the tracked post types.
|
21 |
Â
*/
|
22 |
+
protected $tracked_post_types = [];
|
23 |
Â
|
24 |
Â
/**
|
25 |
Â
* @var array An array of the tracked taxonomies.
|
26 |
Â
*/
|
27 |
+
protected $tracked_taxonomies = [];
|
28 |
Â
|
29 |
Â
/**
|
30 |
Â
* Hooks up the methods that will actually track the fields we are looking for.
|
31 |
Â
*/
|
32 |
Â
public function hook() {
|
33 |
Â
// Track the Meta Updates for Meta That came from the correct Post Types
|
34 |
+
add_filter( 'update_post_metadata', [ $this, 'filter_watch_updated_meta' ], PHP_INT_MAX - 1, 5 );
|
35 |
Â
|
36 |
Â
// After a meta is added we mark that is has been modified
|
37 |
+
add_action( 'added_post_meta', [ $this, 'register_added_deleted_meta' ], PHP_INT_MAX - 1, 3 );
|
38 |
Â
|
39 |
Â
// Before a meta is removed we mark that is has been modified
|
40 |
+
add_action( 'delete_post_meta', [ $this, 'register_added_deleted_meta' ], PHP_INT_MAX - 1, 3 );
|
41 |
Â
|
42 |
Â
// Track the Post Fields Updates for Meta in the correct Post Types
|
43 |
+
add_action( 'post_updated', [ $this, 'filter_watch_post_fields' ], 10, 3 );
|
44 |
Â
|
45 |
Â
// Track the Post term updates
|
46 |
+
add_action( 'set_object_terms', [ $this, 'track_taxonomy_term_changes' ], 10, 6 );
|
47 |
Â
|
48 |
Â
// Clean up modified fields if the post is removed.
|
49 |
+
add_action( 'delete_post', [ $this, 'cleanup_meta_fields' ] );
|
50 |
Â
}
|
51 |
Â
|
52 |
Â
/**
|
106 |
Â
*/
|
107 |
Â
public function get_post_types() {
|
108 |
Â
// By default we are not tracking anything
|
109 |
+
$tracked_post_types = [];
|
110 |
Â
|
111 |
Â
/**
|
112 |
Â
* Adds a way for Developers to add and remove which post types will be tracked
|
128 |
Â
*/
|
129 |
Â
public function get_excluded_meta_keys() {
|
130 |
Â
// By default we are not tracking anything
|
131 |
+
$excluded_keys = [
|
132 |
Â
'_edit_lock',
|
133 |
Â
self::$field_key,
|
134 |
+
];
|
135 |
Â
|
136 |
Â
/**
|
137 |
Â
* Adds a way for Developers remove Meta Keys that shouldn't be tracked
|
197 |
Â
// Fetch the current data from the modified fields
|
198 |
Â
$modified = get_post_meta( $post->ID, self::$field_key, true );
|
199 |
Â
if ( ! is_array( $modified ) ) {
|
200 |
+
$modified = [];
|
201 |
Â
}
|
202 |
Â
|
203 |
Â
// If we got here we will update the Modified Meta
|
276 |
Â
// Fetch the current data from the modified fields
|
277 |
Â
$modified = get_post_meta( $post->ID, self::$field_key, true );
|
278 |
Â
if ( ! is_array( $modified ) ) {
|
279 |
+
$modified = [];
|
280 |
Â
}
|
281 |
Â
|
282 |
Â
// If we got here we will update the Modified Meta
|
320 |
Â
$now = current_time( 'timestamp' );
|
321 |
Â
|
322 |
Â
if ( ! $modified = get_post_meta( $post_id, self::$field_key, true ) ) {
|
323 |
+
$modified = [];
|
324 |
Â
}
|
325 |
Â
|
326 |
+
$fields_to_check_for_changes = [
|
327 |
Â
'post_title',
|
328 |
Â
'post_content',
|
329 |
Â
'post_excerpt',
|
330 |
Â
'post_status',
|
331 |
Â
'post_type',
|
332 |
Â
'post_parent',
|
333 |
+
];
|
334 |
Â
|
335 |
Â
foreach ( $fields_to_check_for_changes as $field ) {
|
336 |
Â
if ( ! $this->has_field_changed( $field, $post_after, $post_before ) ) {
|
392 |
Â
}
|
393 |
Â
|
394 |
Â
if ( ! $modified = get_post_meta( $post->ID, self::$field_key, true ) ) {
|
395 |
+
$modified = [];
|
396 |
Â
}
|
397 |
Â
|
398 |
Â
if ( $tt_ids == $old_tt_ids ) {
|
common/src/Tribe/Updater.php
CHANGED
@@ -90,7 +90,7 @@ class Tribe__Updater {
|
|
90 |
Â
* @return array
|
91 |
Â
*/
|
92 |
Â
public function get_update_callbacks() {
|
93 |
-
return
|
94 |
Â
}
|
95 |
Â
|
96 |
Â
/**
|
@@ -102,9 +102,9 @@ class Tribe__Updater {
|
|
102 |
Â
* @return array
|
103 |
Â
*/
|
104 |
Â
public function get_constant_update_callbacks() {
|
105 |
-
return
|
106 |
-
|
107 |
-
|
108 |
Â
}
|
109 |
Â
|
110 |
Â
/**
|
90 |
Â
* @return array
|
91 |
Â
*/
|
92 |
Â
public function get_update_callbacks() {
|
93 |
+
return [];
|
94 |
Â
}
|
95 |
Â
|
96 |
Â
/**
|
102 |
Â
* @return array
|
103 |
Â
*/
|
104 |
Â
public function get_constant_update_callbacks() {
|
105 |
+
return [
|
106 |
+
[ $this, 'flush_rewrites' ],
|
107 |
+
];
|
108 |
Â
}
|
109 |
Â
|
110 |
Â
/**
|
common/src/Tribe/Utils/Array.php
CHANGED
@@ -521,5 +521,151 @@ if ( ! class_exists( 'Tribe__Utils__Array' ) ) {
|
|
521 |
Â
|
522 |
Â
return $result;
|
523 |
Â
}
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
524 |
Â
}
|
525 |
Â
}
|
521 |
Â
|
522 |
Â
return $result;
|
523 |
Â
}
|
524 |
+
|
525 |
+
/**
|
526 |
+
* Stringifies the numeric keys of an array.
|
527 |
+
*
|
528 |
+
* @since TBD
|
529 |
+
*
|
530 |
+
* @param array<int|string,mixed> $input The input array whose keys should be stringified.
|
531 |
+
* @param string|null $prefix The prefix that should be use to stringify the keys, if not provided
|
532 |
+
* then it will be generated.
|
533 |
+
*
|
534 |
+
* @return array<string,mixed> The input array with each numeric key stringified.
|
535 |
+
*/
|
536 |
+
public static function stringify_keys( array $input, $prefix = null ) {
|
537 |
+
$prefix = null === $prefix ? uniqid( 'sk_', true ) : $prefix;
|
538 |
+
$visitor = static function ( $key, $value ) use ( $prefix ) {
|
539 |
+
$string_key = is_numeric( $key ) ? $prefix . $key : $key;
|
540 |
+
|
541 |
+
return [ $string_key, $value ];
|
542 |
+
};
|
543 |
+
|
544 |
+
return static::array_visit_recursive( $input, $visitor );
|
545 |
+
}
|
546 |
+
|
547 |
+
/**
|
548 |
+
* The inverse of the `stringify_keys` method, it will restore numeric keys for previously
|
549 |
+
* stringified keys.
|
550 |
+
*
|
551 |
+
* @since TBD
|
552 |
+
*
|
553 |
+
* @param array<int|string,mixed> $input The input array whose stringified keys should be
|
554 |
+
* destringified.
|
555 |
+
* @param string $prefix The prefix that should be used to target only specific string keys.
|
556 |
+
*
|
557 |
+
* @return array<int|string,mixed> The input array, its stringified keys destringified.
|
558 |
+
*/
|
559 |
+
public static function destringify_keys( array $input, $prefix = 'sk_' ) {
|
560 |
+
$visitor = static function ( $key, $value ) use ( $prefix ) {
|
561 |
+
$destringified_key = 0 === self::strpos( $key, $prefix ) ? null : $key;
|
562 |
+
|
563 |
+
return [ $destringified_key, $value ];
|
564 |
+
};
|
565 |
+
|
566 |
+
return static::array_visit_recursive( $input, $visitor );
|
567 |
+
}
|
568 |
+
|
569 |
+
/**
|
570 |
+
* Recursively visits all elements of an array applying the specified callback to each element
|
571 |
+
* key and value.
|
572 |
+
*
|
573 |
+
* @since TBD
|
574 |
+
*
|
575 |
+
* @param array $input The input array whose nodes should be visited.
|
576 |
+
* @param callable $visitor A callback function that will be called on each array item; the callback will
|
577 |
+
* receive the item key and value as input and should return an array that contains
|
578 |
+
* the update key and value in the shape `[ <key>, <value> ]`. Returning a `null`
|
579 |
+
* key will cause the element to be removed from the array.
|
580 |
+
*/
|
581 |
+
public static function array_visit_recursive( $input, callable $visitor ) {
|
582 |
+
if ( ! is_array( $input ) ) {
|
583 |
+
return $input;
|
584 |
+
}
|
585 |
+
|
586 |
+
$return = [];
|
587 |
+
|
588 |
+
foreach ( $input as $key => &$value ) {
|
589 |
+
if ( is_array( $value ) ) {
|
590 |
+
$value = static::array_visit_recursive( $value, $visitor );
|
591 |
+
}
|
592 |
+
// Ensure visitors can quickly return `null` to remove an element.
|
593 |
+
list( $updated_key, $update_value ) = array_replace( [ $key, $value ], (array) $visitor( $key, $value ) );
|
594 |
+
if ( false === $updated_key ) {
|
595 |
+
// Visitor will be able to remove an element by returning a `false` key for it.
|
596 |
+
continue;
|
597 |
+
}
|
598 |
+
if ( null === $updated_key ) {
|
599 |
+
// Automatically assign the first available numeric index to the element.
|
600 |
+
$return[] = $update_value;
|
601 |
+
} else {
|
602 |
+
$return[ $updated_key ] = $update_value;
|
603 |
+
}
|
604 |
+
}
|
605 |
+
|
606 |
+
return $return;
|
607 |
+
}
|
608 |
+
|
609 |
+
/**
|
610 |
+
* Recursively remove associative, non numeric, keys from an array.
|
611 |
+
*
|
612 |
+
* @since TBD
|
613 |
+
*
|
614 |
+
* @param array<string|int,mixed> $input The input array.
|
615 |
+
*
|
616 |
+
* @return array<int|mixed> An array that only contains integer keys at any of its levels.
|
617 |
+
*/
|
618 |
+
public static function remove_numeric_keys_recursive( array $input ) {
|
619 |
+
return self::array_visit_recursive(
|
620 |
+
$input,
|
621 |
+
static function ( $key ) {
|
622 |
+
return is_numeric( $key ) ? false : $key;
|
623 |
+
}
|
624 |
+
);
|
625 |
+
}
|
626 |
+
|
627 |
+
/**
|
628 |
+
* Recursively remove numeric keys from an array.
|
629 |
+
*
|
630 |
+
* @since TBD
|
631 |
+
*
|
632 |
+
* @param array<string|int,mixed> $input The input array.
|
633 |
+
*
|
634 |
+
* @return array<string,mixed> An array that only contains non numeric keys at any of its levels.
|
635 |
+
*/
|
636 |
+
public static function remove_string_keys_recursive( array $input ) {
|
637 |
+
return self::array_visit_recursive(
|
638 |
+
$input,
|
639 |
+
static function ( $key ) {
|
640 |
+
return !is_numeric( $key ) ? false : $key;
|
641 |
+
}
|
642 |
+
);
|
643 |
+
}
|
644 |
+
|
645 |
+
/**
|
646 |
+
* Merges two or more arrays in the nested format used by WP_Query arguments preserving and merging them correctly.
|
647 |
+
*
|
648 |
+
* The method will recursively replace named keys and merge numeric keys. The method takes its name from its intended
|
649 |
+
* primary use, but it's not limited to query arguments only.
|
650 |
+
*
|
651 |
+
* @since TBD
|
652 |
+
*
|
653 |
+
* @param array<string|int,mixed> ...$arrays A set of arrays to merge.
|
654 |
+
*
|
655 |
+
* @return array<string|int,mixed> The recursively merged array.
|
656 |
+
*/
|
657 |
+
public static function merge_recursive_query_vars( array ...$arrays ) {
|
658 |
+
if ( ! count( $arrays ) ) {
|
659 |
+
return [];
|
660 |
+
}
|
661 |
+
|
662 |
+
// Temporarily transform numeric keys to string keys generated with time-related randomness.
|
663 |
+
$stringified = array_map( [ static::class, 'stringify_keys' ], $arrays );
|
664 |
+
// Replace recursive will recursively replace any entry that has the same string key, stringified keys will never match due to randomness.
|
665 |
+
$merged = array_replace_recursive( ...$stringified );
|
666 |
+
|
667 |
+
// Finally destringify the keys to return something that will resemble, in shape, the original arrays.
|
668 |
+
return static::destringify_keys( $merged );
|
669 |
+
}
|
670 |
Â
}
|
671 |
Â
}
|
common/src/Tribe/Utils/Callback.php
CHANGED
@@ -9,7 +9,7 @@ class Tribe__Utils__Callback {
|
|
9 |
Â
*
|
10 |
Â
* @var array
|
11 |
Â
*/
|
12 |
-
public $items =
|
13 |
Â
|
14 |
Â
/**
|
15 |
Â
* The Prefix we use for the Overloading replacement
|
@@ -58,12 +58,12 @@ class Tribe__Utils__Callback {
|
|
58 |
Â
array_shift( $arguments );
|
59 |
Â
array_shift( $arguments );
|
60 |
Â
|
61 |
-
$item = (object)
|
62 |
-
'slug'
|
63 |
-
'method'
|
64 |
Â
'arguments' => $arguments,
|
65 |
-
'is_empty'
|
66 |
-
|
67 |
Â
|
68 |
Â
$key = md5( json_encode( $item ) );
|
69 |
Â
|
@@ -76,7 +76,7 @@ class Tribe__Utils__Callback {
|
|
76 |
Â
|
77 |
Â
$this->items[ $key ] = $item;
|
78 |
Â
|
79 |
-
return
|
80 |
Â
}
|
81 |
Â
|
82 |
Â
/**
|
@@ -145,7 +145,7 @@ class Tribe__Utils__Callback {
|
|
145 |
Â
* @return array An array of properties that should be serialized.
|
146 |
Â
*/
|
147 |
Â
public function __sleep() {
|
148 |
-
return
|
149 |
Â
}
|
150 |
Â
|
151 |
Â
/**
|
9 |
Â
*
|
10 |
Â
* @var array
|
11 |
Â
*/
|
12 |
+
public $items = [];
|
13 |
Â
|
14 |
Â
/**
|
15 |
Â
* The Prefix we use for the Overloading replacement
|
58 |
Â
array_shift( $arguments );
|
59 |
Â
array_shift( $arguments );
|
60 |
Â
|
61 |
+
$item = (object) [
|
62 |
+
'slug' => $slug,
|
63 |
+
'method' => $method,
|
64 |
Â
'arguments' => $arguments,
|
65 |
+
'is_empty' => $is_empty,
|
66 |
+
];
|
67 |
Â
|
68 |
Â
$key = md5( json_encode( $item ) );
|
69 |
Â
|
76 |
Â
|
77 |
Â
$this->items[ $key ] = $item;
|
78 |
Â
|
79 |
+
return [ $this, $this->prefix . $key ];
|
80 |
Â
}
|
81 |
Â
|
82 |
Â
/**
|
145 |
Â
* @return array An array of properties that should be serialized.
|
146 |
Â
*/
|
147 |
Â
public function __sleep() {
|
148 |
+
return [ 'slug', 'method' ];
|
149 |
Â
}
|
150 |
Â
|
151 |
Â
/**
|
common/src/Tribe/Utils/Collection.php
CHANGED
@@ -17,7 +17,7 @@ class Tribe__Utils__Collection extends SplDoublyLinkedList {
|
|
17 |
Â
*
|
18 |
Â
* @var array
|
19 |
Â
*/
|
20 |
-
protected $items =
|
21 |
Â
|
22 |
Â
/**
|
23 |
Â
* The doubly-linked list that will hold the items handled by the collection.
|
17 |
Â
*
|
18 |
Â
* @var array
|
19 |
Â
*/
|
20 |
+
protected $items = [];
|
21 |
Â
|
22 |
Â
/**
|
23 |
Â
* The doubly-linked list that will hold the items handled by the collection.
|
common/src/Tribe/Utils/Color.php
CHANGED
@@ -72,7 +72,7 @@ class Tribe__Utils__Color {
|
|
72 |
Â
$G = hexdec( $color[2] . $color[3] );
|
73 |
Â
$B = hexdec( $color[4] . $color[5] );
|
74 |
Â
|
75 |
-
$HSL =
|
76 |
Â
|
77 |
Â
$var_R = ( $R / 255 );
|
78 |
Â
$var_G = ( $G / 255 );
|
@@ -127,13 +127,13 @@ class Tribe__Utils__Color {
|
|
127 |
Â
* @return string HEX string
|
128 |
Â
* @throws Exception "Bad HSL Array"
|
129 |
Â
*/
|
130 |
-
public static function hslToHex( $hsl =
|
131 |
-
|
132 |
Â
if ( empty( $hsl ) || ! isset( $hsl['H'] ) || ! isset( $hsl['S'] ) || ! isset( $hsl['L'] ) ) {
|
133 |
Â
throw new Exception( 'Param was not an HSL array' );
|
134 |
Â
}
|
135 |
Â
|
136 |
-
list( $H, $S, $L ) =
|
137 |
Â
|
138 |
Â
if ( 0 == $S ) {
|
139 |
Â
$r = $L * 255;
|
@@ -197,8 +197,8 @@ class Tribe__Utils__Color {
|
|
197 |
Â
* @return string RGB string
|
198 |
Â
* @throws Exception "Bad RGB Array"
|
199 |
Â
*/
|
200 |
-
public static function rgbToHex( $rgb =
|
201 |
-
|
202 |
Â
if ( empty( $rgb ) || ! isset( $rgb['R'] ) || ! isset( $rgb['G'] ) || ! isset( $rgb['B'] ) ) {
|
203 |
Â
throw new Exception( 'Param was not an RGB array' );
|
204 |
Â
}
|
@@ -269,7 +269,7 @@ class Tribe__Utils__Color {
|
|
269 |
Â
}
|
270 |
Â
|
271 |
Â
// Return our gradient array
|
272 |
-
return
|
273 |
Â
}
|
274 |
Â
|
275 |
Â
|
@@ -449,8 +449,8 @@ class Tribe__Utils__Color {
|
|
449 |
Â
$gmix = ( ( $rgb1['G'] * $r1 ) + ( $rgb2['G'] * $r2 ) ) / 2;
|
450 |
Â
$bmix = ( ( $rgb1['B'] * $r1 ) + ( $rgb2['B'] * $r2 ) ) / 2;
|
451 |
Â
|
452 |
-
|
453 |
-
|
454 |
Â
|
455 |
Â
/**
|
456 |
Â
* Given a Hue, returns corresponding RGB value
|
72 |
Â
$G = hexdec( $color[2] . $color[3] );
|
73 |
Â
$B = hexdec( $color[4] . $color[5] );
|
74 |
Â
|
75 |
+
$HSL = [];
|
76 |
Â
|
77 |
Â
$var_R = ( $R / 255 );
|
78 |
Â
$var_G = ( $G / 255 );
|
127 |
Â
* @return string HEX string
|
128 |
Â
* @throws Exception "Bad HSL Array"
|
129 |
Â
*/
|
130 |
+
public static function hslToHex( $hsl = [] ) {
|
131 |
+
// Make sure it's HSL
|
132 |
Â
if ( empty( $hsl ) || ! isset( $hsl['H'] ) || ! isset( $hsl['S'] ) || ! isset( $hsl['L'] ) ) {
|
133 |
Â
throw new Exception( 'Param was not an HSL array' );
|
134 |
Â
}
|
135 |
Â
|
136 |
+
list( $H, $S, $L ) = [ $hsl['H'] / 360, $hsl['S'], $hsl['L'] ];
|
137 |
Â
|
138 |
Â
if ( 0 == $S ) {
|
139 |
Â
$r = $L * 255;
|
197 |
Â
* @return string RGB string
|
198 |
Â
* @throws Exception "Bad RGB Array"
|
199 |
Â
*/
|
200 |
+
public static function rgbToHex( $rgb = [] ) {
|
201 |
+
// Make sure it's RGB
|
202 |
Â
if ( empty( $rgb ) || ! isset( $rgb['R'] ) || ! isset( $rgb['G'] ) || ! isset( $rgb['B'] ) ) {
|
203 |
Â
throw new Exception( 'Param was not an RGB array' );
|
204 |
Â
}
|
269 |
Â
}
|
270 |
Â
|
271 |
Â
// Return our gradient array
|
272 |
+
return [ 'light' => $lightColor, 'dark' => $darkColor ];
|
273 |
Â
}
|
274 |
Â
|
275 |
Â
|
449 |
Â
$gmix = ( ( $rgb1['G'] * $r1 ) + ( $rgb2['G'] * $r2 ) ) / 2;
|
450 |
Â
$bmix = ( ( $rgb1['B'] * $r1 ) + ( $rgb2['B'] * $r2 ) ) / 2;
|
451 |
Â
|
452 |
+
return [ 'R' => $rmix, 'G' => $gmix, 'B' => $bmix ];
|
453 |
+
}
|
454 |
Â
|
455 |
Â
/**
|
456 |
Â
* Given a Hue, returns corresponding RGB value
|
common/src/Tribe/Utils/Coordinates_Provider.php
CHANGED
@@ -76,7 +76,7 @@ class Tribe__Utils__Coordinates_Provider {
|
|
76 |
Â
}
|
77 |
Â
|
78 |
Â
$base_request_url = trailingslashit( $this->get_google_api_base() ) . $this->get_google_api_json_format();
|
79 |
-
$url = esc_url( add_query_arg(
|
80 |
Â
$response = $this->http->get( $url );
|
81 |
Â
|
82 |
Â
if ( is_wp_error( $response ) ) {
|
@@ -95,7 +95,7 @@ class Tribe__Utils__Coordinates_Provider {
|
|
95 |
Â
|
96 |
Â
$location = $decoded['results'][0]['geometry']['location'];
|
97 |
Â
|
98 |
-
$updated_transient = array_merge( $this->get_transient(),
|
99 |
Â
set_transient( self::$transient_name, $updated_transient );
|
100 |
Â
$this->transient = $updated_transient;
|
101 |
Â
|
@@ -120,7 +120,7 @@ class Tribe__Utils__Coordinates_Provider {
|
|
120 |
Â
protected function get_transient() {
|
121 |
Â
if ( ! is_array( $this->transient ) ) {
|
122 |
Â
$transient = get_transient( self::$transient_name );
|
123 |
-
$this->transient = is_array( $transient ) ? $transient :
|
124 |
Â
}
|
125 |
Â
|
126 |
Â
return $this->transient;
|
76 |
Â
}
|
77 |
Â
|
78 |
Â
$base_request_url = trailingslashit( $this->get_google_api_base() ) . $this->get_google_api_json_format();
|
79 |
+
$url = esc_url( add_query_arg( [ 'address' => $address ], $base_request_url ) );
|
80 |
Â
$response = $this->http->get( $url );
|
81 |
Â
|
82 |
Â
if ( is_wp_error( $response ) ) {
|
95 |
Â
|
96 |
Â
$location = $decoded['results'][0]['geometry']['location'];
|
97 |
Â
|
98 |
+
$updated_transient = array_merge( $this->get_transient(), [ $address => $location ] );
|
99 |
Â
set_transient( self::$transient_name, $updated_transient );
|
100 |
Â
$this->transient = $updated_transient;
|
101 |
Â
|
120 |
Â
protected function get_transient() {
|
121 |
Â
if ( ! is_array( $this->transient ) ) {
|
122 |
Â
$transient = get_transient( self::$transient_name );
|
123 |
+
$this->transient = is_array( $transient ) ? $transient : [];
|
124 |
Â
}
|
125 |
Â
|
126 |
Â
return $this->transient;
|
common/src/Tribe/Utils/Element_Attributes.php
CHANGED
@@ -188,7 +188,7 @@ class Element_Attributes {
|
|
188 |
Â
protected function parse_string( $arguments ) {
|
189 |
Â
$values = preg_split( '/\s+/', $arguments, -1, PREG_SPLIT_NO_EMPTY );
|
190 |
Â
|
191 |
-
// When it
|
192 |
Â
if ( ! $values ) {
|
193 |
Â
return;
|
194 |
Â
}
|
188 |
Â
protected function parse_string( $arguments ) {
|
189 |
Â
$values = preg_split( '/\s+/', $arguments, -1, PREG_SPLIT_NO_EMPTY );
|
190 |
Â
|
191 |
+
// When it doesn't match, bail early.
|
192 |
Â
if ( ! $values ) {
|
193 |
Â
return;
|
194 |
Â
}
|
common/src/Tribe/Utils/Global_ID.php
CHANGED
@@ -18,22 +18,22 @@ class Tribe__Utils__Global_ID {
|
|
18 |
Â
* Dont allow creation of Global IDs for other types of source
|
19 |
Â
* @var array
|
20 |
Â
*/
|
21 |
-
protected $valid_types =
|
22 |
Â
'url',
|
23 |
Â
'meetup',
|
24 |
Â
'facebook',
|
25 |
Â
'eventbrite',
|
26 |
-
|
27 |
Â
|
28 |
Â
/**
|
29 |
Â
* For some types of ID we have a predefined Origin
|
30 |
Â
* @var array
|
31 |
Â
*/
|
32 |
-
protected $type_origins =
|
33 |
-
'meetup'
|
34 |
-
'facebook'
|
35 |
Â
'eventbrite' => 'eventbrite.com',
|
36 |
-
|
37 |
Â
|
38 |
Â
/**
|
39 |
Â
* Tribe__Utils__Global_ID constructor.
|
@@ -123,7 +123,7 @@ class Tribe__Utils__Global_ID {
|
|
123 |
Â
*
|
124 |
Â
* @return string
|
125 |
Â
*/
|
126 |
-
public function generate( array $args =
|
127 |
Â
// We can't do this without type or origin
|
128 |
Â
if ( ! $this->type() || ! $this->origin() ) {
|
129 |
Â
return false;
|
@@ -150,7 +150,7 @@ class Tribe__Utils__Global_ID {
|
|
150 |
Â
$parsed = wp_parse_url( 'http://' . $global_id );
|
151 |
Â
|
152 |
Â
if ( ! empty( $parsed['query'] ) ) {
|
153 |
-
$parsed_query =
|
154 |
Â
|
155 |
Â
wp_parse_str( $parsed['query'], $parsed_query );
|
156 |
Â
|
18 |
Â
* Dont allow creation of Global IDs for other types of source
|
19 |
Â
* @var array
|
20 |
Â
*/
|
21 |
+
protected $valid_types = [
|
22 |
Â
'url',
|
23 |
Â
'meetup',
|
24 |
Â
'facebook',
|
25 |
Â
'eventbrite',
|
26 |
+
];
|
27 |
Â
|
28 |
Â
/**
|
29 |
Â
* For some types of ID we have a predefined Origin
|
30 |
Â
* @var array
|
31 |
Â
*/
|
32 |
+
protected $type_origins = [
|
33 |
+
'meetup' => 'meetup.com',
|
34 |
+
'facebook' => 'facebook.com',
|
35 |
Â
'eventbrite' => 'eventbrite.com',
|
36 |
+
];
|
37 |
Â
|
38 |
Â
/**
|
39 |
Â
* Tribe__Utils__Global_ID constructor.
|
123 |
Â
*
|
124 |
Â
* @return string
|
125 |
Â
*/
|
126 |
+
public function generate( array $args = [] ) {
|
127 |
Â
// We can't do this without type or origin
|
128 |
Â
if ( ! $this->type() || ! $this->origin() ) {
|
129 |
Â
return false;
|
150 |
Â
$parsed = wp_parse_url( 'http://' . $global_id );
|
151 |
Â
|
152 |
Â
if ( ! empty( $parsed['query'] ) ) {
|
153 |
+
$parsed_query = [];
|
154 |
Â
|
155 |
Â
wp_parse_str( $parsed['query'], $parsed_query );
|
156 |
Â
|
common/src/Tribe/Utils/JSON.php
CHANGED
@@ -22,7 +22,7 @@ class Tribe__Utils__JSON {
|
|
22 |
Â
return $value;
|
23 |
Â
}
|
24 |
Â
if ( is_array( $value ) ) {
|
25 |
-
$escaped =
|
26 |
Â
foreach ( $value as $key => $subvalue ) {
|
27 |
Â
$escaped[ $key ] = self::escape_string( $subvalue );
|
28 |
Â
}
|
@@ -30,8 +30,8 @@ class Tribe__Utils__JSON {
|
|
30 |
Â
return $escaped;
|
31 |
Â
}
|
32 |
Â
|
33 |
-
$escapers =
|
34 |
-
$replacements =
|
35 |
Â
|
36 |
Â
return str_replace( $escapers, $replacements, $value );
|
37 |
Â
}
|
22 |
Â
return $value;
|
23 |
Â
}
|
24 |
Â
if ( is_array( $value ) ) {
|
25 |
+
$escaped = [];
|
26 |
Â
foreach ( $value as $key => $subvalue ) {
|
27 |
Â
$escaped[ $key ] = self::escape_string( $subvalue );
|
28 |
Â
}
|
30 |
Â
return $escaped;
|
31 |
Â
}
|
32 |
Â
|
33 |
+
$escapers = [ "\\", "/", "\"", "\n", "\r", "\t", "\x08", "\x0c" ];
|
34 |
+
$replacements = [ "\\\\", "\\/", "\\\"", "\\n", "\\r", "\\t", "\\f", "\\b" ];
|
35 |
Â
|
36 |
Â
return str_replace( $escapers, $replacements, $value );
|
37 |
Â
}
|
common/src/Tribe/Utils/Paths.php
ADDED
@@ -0,0 +1,63 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Utilities to manipulate file-system paths.
|
4 |
+
*
|
5 |
+
* @since TBD
|
6 |
+
*
|
7 |
+
* @package Tribe\Utils
|
8 |
+
*/
|
9 |
+
|
10 |
+
namespace Tribe\Utils;
|
11 |
+
|
12 |
+
/**
|
13 |
+
* Class Paths
|
14 |
+
*
|
15 |
+
* @since TBD
|
16 |
+
*
|
17 |
+
* @package Tribe\Utils
|
18 |
+
*/
|
19 |
+
class Paths {
|
20 |
+
|
21 |
+
/**
|
22 |
+
* Merge a set of paths into a single path.
|
23 |
+
*
|
24 |
+
* The function will take care of merging the paths intersecting their common fragments.
|
25 |
+
* E.g. `foo/bar/baz` and `bar/baz/test.php` will be merged int `foo/bar/baz/test.php`.
|
26 |
+
*
|
27 |
+
* @since TBD
|
28 |
+
*
|
29 |
+
* @param array<string<array<string>> ...$paths A set of paths to merge, each one either a string or an array
|
30 |
+
* of path fragments.
|
31 |
+
*
|
32 |
+
* @return string The merged path, the path intersecting fragments removed.
|
33 |
+
*/
|
34 |
+
public static function merge( ...$paths ) {
|
35 |
+
$merged_paths = '';
|
36 |
+
|
37 |
+
if ( count( $paths ) > 2 ) {
|
38 |
+
$slice = array_splice( $paths, 0, 1 );
|
39 |
+
$paths = array_merge( $slice, [ static::merge( ...$paths ) ] );
|
40 |
+
}
|
41 |
+
|
42 |
+
$path_1 = isset( $paths[0] ) ? $paths[0] : '';
|
43 |
+
$lead_slash = is_string( $path_1 ) && $path_1 !== ltrim( $path_1, '\\/' ) ? DIRECTORY_SEPARATOR : '';
|
44 |
+
$path_2 = isset( $paths[1] ) ? $paths[1] : '';
|
45 |
+
$trail_slash = is_string( $path_2 ) && $path_2 !== rtrim( $path_2, '\\/' ) ? DIRECTORY_SEPARATOR : '';
|
46 |
+
$path_1_frags = is_array( $path_1 ) ? $path_1 : array_filter( (array) preg_split( '/[\\\\\\/]/', $path_1 ) );
|
47 |
+
$path_2_frags = is_array( $path_2 ) ? $path_2 : array_filter( (array) preg_split( '/[\\\\\\/]/', $path_2 ) );
|
48 |
+
$non_consecutive_common = array_intersect( $path_1_frags, $path_2_frags );
|
49 |
+
$trimmed_path_2 = trim(
|
50 |
+
preg_replace(
|
51 |
+
'#^' . preg_quote( implode( DIRECTORY_SEPARATOR, $non_consecutive_common ), '#' ) . '#', '',
|
52 |
+
implode( DIRECTORY_SEPARATOR, $path_2_frags )
|
53 |
+
),
|
54 |
+
'\\/'
|
55 |
+
);
|
56 |
+
$merged_paths .= $lead_slash . implode( DIRECTORY_SEPARATOR, $path_1_frags );
|
57 |
+
if ( $trimmed_path_2 ) {
|
58 |
+
$merged_paths .= DIRECTORY_SEPARATOR . $trimmed_path_2 . $trail_slash;
|
59 |
+
}
|
60 |
+
|
61 |
+
return $merged_paths;
|
62 |
+
}
|
63 |
+
}
|
common/src/Tribe/Utils/Plugins.php
CHANGED
@@ -16,7 +16,7 @@ class Tribe__Utils__Plugins {
|
|
16 |
Â
* @return array Plugin data; keys match capitalized file header declarations.
|
17 |
Â
*/
|
18 |
Â
public static function get_plugin_data( $plugin_file ) {
|
19 |
-
$headers =
|
20 |
Â
'Name' => 'Plugin Name',
|
21 |
Â
'PluginURI' => 'Plugin URI',
|
22 |
Â
'Version' => 'Version',
|
@@ -28,7 +28,7 @@ class Tribe__Utils__Plugins {
|
|
28 |
Â
'TextDomain' => 'Text Domain',
|
29 |
Â
'DomainPath' => 'Domain Path',
|
30 |
Â
'Network' => 'Network',
|
31 |
-
|
32 |
Â
|
33 |
Â
/**
|
34 |
Â
* Filter which header keys passed to get_file_data().
|
@@ -65,7 +65,7 @@ class Tribe__Utils__Plugins {
|
|
65 |
Â
$full_list = array_merge( $full_list, wp_get_active_network_plugins() );
|
66 |
Â
}
|
67 |
Â
|
68 |
-
$filtered_list =
|
69 |
Â
|
70 |
Â
foreach ( $full_list as $plugin ) {
|
71 |
Â
$base = plugin_basename( $plugin );
|
16 |
Â
* @return array Plugin data; keys match capitalized file header declarations.
|
17 |
Â
*/
|
18 |
Â
public static function get_plugin_data( $plugin_file ) {
|
19 |
+
$headers = [
|
20 |
Â
'Name' => 'Plugin Name',
|
21 |
Â
'PluginURI' => 'Plugin URI',
|
22 |
Â
'Version' => 'Version',
|
28 |
Â
'TextDomain' => 'Text Domain',
|
29 |
Â
'DomainPath' => 'Domain Path',
|
30 |
Â
'Network' => 'Network',
|
31 |
+
];
|
32 |
Â
|
33 |
Â
/**
|
34 |
Â
* Filter which header keys passed to get_file_data().
|
65 |
Â
$full_list = array_merge( $full_list, wp_get_active_network_plugins() );
|
66 |
Â
}
|
67 |
Â
|
68 |
+
$filtered_list = [];
|
69 |
Â
|
70 |
Â
foreach ( $full_list as $plugin ) {
|
71 |
Â
$base = plugin_basename( $plugin );
|
common/src/Tribe/Utils/Post_Root_Pool.php
CHANGED
@@ -132,8 +132,8 @@ class Tribe__Utils__Post_Root_Pool {
|
|
132 |
Â
protected function maybe_init_pool() {
|
133 |
Â
self::$prefix_pool = get_transient( $this->pool_transient_name );
|
134 |
Â
if ( self::$prefix_pool === false ) {
|
135 |
-
self::$prefix_pool =
|
136 |
-
set_transient( $this->pool_transient_name,
|
137 |
Â
}
|
138 |
Â
}
|
139 |
Â
|
132 |
Â
protected function maybe_init_pool() {
|
133 |
Â
self::$prefix_pool = get_transient( $this->pool_transient_name );
|
134 |
Â
if ( self::$prefix_pool === false ) {
|
135 |
+
self::$prefix_pool = [];
|
136 |
+
set_transient( $this->pool_transient_name, [] );
|
137 |
Â
}
|
138 |
Â
}
|
139 |
Â
|
common/src/Tribe/Validate.php
CHANGED
@@ -57,7 +57,7 @@ if ( ! class_exists( 'Tribe__Validate' ) ) {
|
|
57 |
Â
* @param array $field The field object to validate
|
58 |
Â
* @param mixed $value The value to validate
|
59 |
Â
*/
|
60 |
-
public function __construct( $field_id, $field, $value, $additional_args =
|
61 |
Â
|
62 |
Â
// prepare object properties
|
63 |
Â
$this->result = new stdClass;
|
@@ -96,7 +96,7 @@ if ( ! class_exists( 'Tribe__Validate' ) ) {
|
|
96 |
Â
if ( ( ! isset( $_POST[ $field_id ] ) || ! $_POST[ $field_id ] || $_POST[ $field_id ] == '' ) && isset( $this->field['can_be_empty'] ) && $this->field['can_be_empty'] ) {
|
97 |
Â
$this->result->valid = true;
|
98 |
Â
} else {
|
99 |
-
call_user_func(
|
100 |
Â
}
|
101 |
Â
} else {
|
102 |
Â
// invalid validation type set, validation fails
|
@@ -291,7 +291,7 @@ if ( ! class_exists( 'Tribe__Validate' ) ) {
|
|
291 |
Â
return;
|
292 |
Â
}
|
293 |
Â
|
294 |
-
$this->value = is_array( $this->value ) ? $this->value :
|
295 |
Â
|
296 |
Â
foreach ( $this->value as $val ) {
|
297 |
Â
if ( array_key_exists( $val, $this->field['options'] ) ) {
|
@@ -312,10 +312,10 @@ if ( ! class_exists( 'Tribe__Validate' ) ) {
|
|
312 |
Â
*/
|
313 |
Â
public function options_with_label() {
|
314 |
Â
if ( array_key_exists( $this->value, $this->field['options'] ) ) {
|
315 |
-
$this->value = ( $this->value === 0 ) ? false :
|
316 |
Â
$this->value,
|
317 |
Â
$this->field['options'][ $this->value ],
|
318 |
-
|
319 |
Â
$this->result->valid = true;
|
320 |
Â
} else {
|
321 |
Â
$this->result->valid = false;
|
@@ -465,7 +465,7 @@ if ( ! class_exists( 'Tribe__Validate' ) ) {
|
|
465 |
Â
if ( ! isset( $country[0] ) || ! isset( $country[1] ) ) {
|
466 |
Â
$this->result->valid = false;
|
467 |
Â
$this->result->error = sprintf( esc_html__( 'Country List must be formatted as one country per line in the following format: <br>US, United States <br> UK, United Kingdom.', 'tribe-common' ), $this->label );
|
468 |
-
$this->value = wp_kses( $this->value,
|
469 |
Â
|
470 |
Â
return;
|
471 |
Â
}
|
57 |
Â
* @param array $field The field object to validate
|
58 |
Â
* @param mixed $value The value to validate
|
59 |
Â
*/
|
60 |
+
public function __construct( $field_id, $field, $value, $additional_args = [] ) {
|
61 |
Â
|
62 |
Â
// prepare object properties
|
63 |
Â
$this->result = new stdClass;
|
96 |
Â
if ( ( ! isset( $_POST[ $field_id ] ) || ! $_POST[ $field_id ] || $_POST[ $field_id ] == '' ) && isset( $this->field['can_be_empty'] ) && $this->field['can_be_empty'] ) {
|
97 |
Â
$this->result->valid = true;
|
98 |
Â
} else {
|
99 |
+
call_user_func( [ $this, $this->type ] ); // run the validation
|
100 |
Â
}
|
101 |
Â
} else {
|
102 |
Â
// invalid validation type set, validation fails
|
291 |
Â
return;
|
292 |
Â
}
|
293 |
Â
|
294 |
+
$this->value = is_array( $this->value ) ? $this->value : [ $this->value ];
|
295 |
Â
|
296 |
Â
foreach ( $this->value as $val ) {
|
297 |
Â
if ( array_key_exists( $val, $this->field['options'] ) ) {
|
312 |
Â
*/
|
313 |
Â
public function options_with_label() {
|
314 |
Â
if ( array_key_exists( $this->value, $this->field['options'] ) ) {
|
315 |
+
$this->value = ( $this->value === 0 ) ? false : [
|
316 |
Â
$this->value,
|
317 |
Â
$this->field['options'][ $this->value ],
|
318 |
+
];
|
319 |
Â
$this->result->valid = true;
|
320 |
Â
} else {
|
321 |
Â
$this->result->valid = false;
|
465 |
Â
if ( ! isset( $country[0] ) || ! isset( $country[1] ) ) {
|
466 |
Â
$this->result->valid = false;
|
467 |
Â
$this->result->error = sprintf( esc_html__( 'Country List must be formatted as one country per line in the following format: <br>US, United States <br> UK, United Kingdom.', 'tribe-common' ), $this->label );
|
468 |
+
$this->value = wp_kses( $this->value, [] );
|
469 |
Â
|
470 |
Â
return;
|
471 |
Â
}
|
common/src/Tribe/Validator/Base.php
CHANGED
@@ -94,7 +94,7 @@ class Tribe__Validator__Base implements Tribe__Validator__Interface {
|
|
94 |
Â
$sep = is_string( $sep ) ? $sep : ',';
|
95 |
Â
$list = Tribe__Utils__Array::list_to_array( $list, $sep );
|
96 |
Â
|
97 |
-
$valid = array_filter( $list,
|
98 |
Â
|
99 |
Â
return ! empty( $valid ) && count( $valid ) === count( $list );
|
100 |
Â
}
|
94 |
Â
$sep = is_string( $sep ) ? $sep : ',';
|
95 |
Â
$list = Tribe__Utils__Array::list_to_array( $list, $sep );
|
96 |
Â
|
97 |
+
$valid = array_filter( $list, [ $this, 'is_positive_int' ] );
|
98 |
Â
|
99 |
Â
return ! empty( $valid ) && count( $valid ) === count( $list );
|
100 |
Â
}
|
common/src/Tribe/View_Helpers.php
CHANGED
@@ -56,21 +56,21 @@ if ( ! class_exists( 'Tribe__View_Helpers' ) ) {
|
|
56 |
Â
natsort( $countries );
|
57 |
Â
|
58 |
Â
// Placeholder option ('Select a Country') first by default
|
59 |
-
$select_country =
|
60 |
Â
$countries = $select_country + $countries;
|
61 |
Â
|
62 |
Â
if ( ( $postId || $useDefault ) ) {
|
63 |
Â
$countryValue = get_post_meta( $postId, '_EventCountry', true );
|
64 |
Â
if ( $countryValue ) {
|
65 |
-
$defaultCountry =
|
66 |
Â
} else {
|
67 |
Â
$defaultCountry = tribe_get_default_value( 'country' );
|
68 |
Â
}
|
69 |
Â
if ( $defaultCountry && $defaultCountry[0] != '' ) {
|
70 |
Â
$selectCountry = array_shift( $countries );
|
71 |
Â
asort( $countries );
|
72 |
-
$countries =
|
73 |
-
$countries =
|
74 |
Â
array_unique( $countries );
|
75 |
Â
}
|
76 |
Â
}
|
@@ -182,7 +182,7 @@ if ( ! class_exists( 'Tribe__View_Helpers' ) ) {
|
|
182 |
Â
* @return array The hours array.
|
183 |
Â
*/
|
184 |
Â
private static function hours() {
|
185 |
-
$hours =
|
186 |
Â
$rangeMax = self::is_24hr_format() ? 23 : 12;
|
187 |
Â
$rangeStart = $rangeMax > 12 ? 0 : 1;
|
188 |
Â
foreach ( range( $rangeStart, $rangeMax ) as $hour ) {
|
@@ -237,7 +237,7 @@ if ( ! class_exists( 'Tribe__View_Helpers' ) ) {
|
|
237 |
Â
* @return array The minutes array.
|
238 |
Â
*/
|
239 |
Â
private static function minutes( $exact_minute = 0 ) {
|
240 |
-
$minutes =
|
241 |
Â
|
242 |
Â
// The exact minute should be an absint between 0 and 59
|
243 |
Â
$exact_minute = absint( $exact_minute );
|
@@ -282,10 +282,10 @@ if ( ! class_exists( 'Tribe__View_Helpers' ) ) {
|
|
282 |
Â
public static function getMeridianOptions( $date = '', $isStart = false ) {
|
283 |
Â
if ( strstr( get_option( 'time_format', Tribe__Date_Utils::TIMEFORMAT ), 'A' ) ) {
|
284 |
Â
$a = 'A';
|
285 |
-
$meridians =
|
286 |
Â
} else {
|
287 |
Â
$a = 'a';
|
288 |
-
$meridians =
|
289 |
Â
}
|
290 |
Â
if ( empty( $date ) ) {
|
291 |
Â
$meridian = ( $isStart ) ? $meridians[0] : $meridians[1];
|
@@ -317,7 +317,7 @@ if ( ! class_exists( 'Tribe__View_Helpers' ) ) {
|
|
317 |
Â
$current_year = (int) date_i18n( 'Y' );
|
318 |
Â
$years_back = (int) apply_filters( 'tribe_years_to_go_back', 5, $current_year );
|
319 |
Â
$years_forward = (int) apply_filters( 'tribe_years_to_go_forward', 5, $current_year );
|
320 |
-
$years =
|
321 |
Â
for ( $i = $years_back; $i > 0; $i -- ) {
|
322 |
Â
$year = $current_year - $i;
|
323 |
Â
$years[] = $year;
|
@@ -337,7 +337,7 @@ if ( ! class_exists( 'Tribe__View_Helpers' ) ) {
|
|
337 |
Â
* @return array The days array.
|
338 |
Â
*/
|
339 |
Â
public static function days( $totalDays ) {
|
340 |
-
$days =
|
341 |
Â
foreach ( range( 1, $totalDays ) as $day ) {
|
342 |
Â
$days[ $day ] = $day;
|
343 |
Â
}
|
56 |
Â
natsort( $countries );
|
57 |
Â
|
58 |
Â
// Placeholder option ('Select a Country') first by default
|
59 |
+
$select_country = [ '' => esc_html__( 'Select a Country:', 'tribe-common' ) ];
|
60 |
Â
$countries = $select_country + $countries;
|
61 |
Â
|
62 |
Â
if ( ( $postId || $useDefault ) ) {
|
63 |
Â
$countryValue = get_post_meta( $postId, '_EventCountry', true );
|
64 |
Â
if ( $countryValue ) {
|
65 |
+
$defaultCountry = [ array_search( $countryValue, $countries ), $countryValue ];
|
66 |
Â
} else {
|
67 |
Â
$defaultCountry = tribe_get_default_value( 'country' );
|
68 |
Â
}
|
69 |
Â
if ( $defaultCountry && $defaultCountry[0] != '' ) {
|
70 |
Â
$selectCountry = array_shift( $countries );
|
71 |
Â
asort( $countries );
|
72 |
+
$countries = [ $defaultCountry[0] => $defaultCountry[1] ] + $countries;
|
73 |
+
$countries = [ '' => $selectCountry ] + $countries;
|
74 |
Â
array_unique( $countries );
|
75 |
Â
}
|
76 |
Â
}
|
182 |
Â
* @return array The hours array.
|
183 |
Â
*/
|
184 |
Â
private static function hours() {
|
185 |
+
$hours = [];
|
186 |
Â
$rangeMax = self::is_24hr_format() ? 23 : 12;
|
187 |
Â
$rangeStart = $rangeMax > 12 ? 0 : 1;
|
188 |
Â
foreach ( range( $rangeStart, $rangeMax ) as $hour ) {
|
237 |
Â
* @return array The minutes array.
|
238 |
Â
*/
|
239 |
Â
private static function minutes( $exact_minute = 0 ) {
|
240 |
+
$minutes = [];
|
241 |
Â
|
242 |
Â
// The exact minute should be an absint between 0 and 59
|
243 |
Â
$exact_minute = absint( $exact_minute );
|
282 |
Â
public static function getMeridianOptions( $date = '', $isStart = false ) {
|
283 |
Â
if ( strstr( get_option( 'time_format', Tribe__Date_Utils::TIMEFORMAT ), 'A' ) ) {
|
284 |
Â
$a = 'A';
|
285 |
+
$meridians = [ 'AM', 'PM' ];
|
286 |
Â
} else {
|
287 |
Â
$a = 'a';
|
288 |
+
$meridians = [ 'am', 'pm' ];
|
289 |
Â
}
|
290 |
Â
if ( empty( $date ) ) {
|
291 |
Â
$meridian = ( $isStart ) ? $meridians[0] : $meridians[1];
|
317 |
Â
$current_year = (int) date_i18n( 'Y' );
|
318 |
Â
$years_back = (int) apply_filters( 'tribe_years_to_go_back', 5, $current_year );
|
319 |
Â
$years_forward = (int) apply_filters( 'tribe_years_to_go_forward', 5, $current_year );
|
320 |
+
$years = [];
|
321 |
Â
for ( $i = $years_back; $i > 0; $i -- ) {
|
322 |
Â
$year = $current_year - $i;
|
323 |
Â
$years[] = $year;
|
337 |
Â
* @return array The days array.
|
338 |
Â
*/
|
339 |
Â
public static function days( $totalDays ) {
|
340 |
+
$days = [];
|
341 |
Â
foreach ( range( 1, $totalDays ) as $day ) {
|
342 |
Â
$days[ $day ] = $day;
|
343 |
Â
}
|
common/src/Tribe/Widget/Widget_Abstract.php
CHANGED
@@ -22,6 +22,24 @@ abstract class Widget_Abstract extends \WP_Widget implements Widget_Interface {
|
|
22 |
Â
*/
|
23 |
Â
protected $slug;
|
24 |
Â
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
25 |
Â
/**
|
26 |
Â
* Default arguments to be merged into final arguments of the widget.
|
27 |
Â
*
|
@@ -75,7 +93,7 @@ abstract class Widget_Abstract extends \WP_Widget implements Widget_Interface {
|
|
75 |
Â
* {@inheritDoc}
|
76 |
Â
*/
|
77 |
Â
public function __construct( $id_base = '', $name = '', $widget_options = [], $control_options = [] ) {
|
78 |
-
$arguments = $this->
|
79 |
Â
|
80 |
Â
parent::__construct(
|
81 |
Â
Arr::get( $arguments, 'id_base', '' ),
|
@@ -84,26 +102,38 @@ abstract class Widget_Abstract extends \WP_Widget implements Widget_Interface {
|
|
84 |
Â
Arr::get( $arguments, 'control_options', [] )
|
85 |
Â
);
|
86 |
Â
|
87 |
-
// @todo add what this does in in TEC-3612 & TEC-3613.
|
88 |
Â
$this->setup();
|
89 |
Â
}
|
90 |
Â
|
91 |
Â
/**
|
92 |
Â
* Setup the widget.
|
93 |
Â
*
|
94 |
-
* @
|
95 |
-
*
|
96 |
-
* @since 5.12.12
|
97 |
Â
*
|
98 |
Â
* @return mixed
|
99 |
Â
*/
|
100 |
Â
public abstract function setup();
|
101 |
Â
|
102 |
Â
/**
|
103 |
-
*
|
104 |
Â
*
|
105 |
-
* @
|
106 |
-
*
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
107 |
Â
*
|
108 |
Â
* @since 5.12.12
|
109 |
Â
*
|
@@ -112,6 +142,11 @@ abstract class Widget_Abstract extends \WP_Widget implements Widget_Interface {
|
|
112 |
Â
* @param array<string,mixed> $instance The settings for the particular instance of the widget.
|
113 |
Â
*/
|
114 |
Â
public function widget( $args, $instance ) {
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
115 |
Â
echo $this->get_html();
|
116 |
Â
}
|
117 |
Â
|
@@ -195,12 +230,112 @@ abstract class Widget_Abstract extends \WP_Widget implements Widget_Interface {
|
|
195 |
Â
return $validate_arguments_map;
|
196 |
Â
}
|
197 |
Â
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
198 |
Â
/**
|
199 |
Â
* {@inheritDoc}
|
200 |
Â
*/
|
201 |
-
public function
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
202 |
Â
|
203 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
204 |
Â
}
|
205 |
Â
|
206 |
Â
/**
|
@@ -237,7 +372,7 @@ abstract class Widget_Abstract extends \WP_Widget implements Widget_Interface {
|
|
237 |
Â
* {@inheritDoc}
|
238 |
Â
*/
|
239 |
Â
public function get_argument( $index, $default = null ) {
|
240 |
-
$arguments = $this->
|
241 |
Â
$argument = Arr::get( $arguments, $index, $default );
|
242 |
Â
|
243 |
Â
return $this->filter_argument( $argument, $index, $default );
|
@@ -276,11 +411,30 @@ abstract class Widget_Abstract extends \WP_Widget implements Widget_Interface {
|
|
276 |
Â
return $argument;
|
277 |
Â
}
|
278 |
Â
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
279 |
Â
/**
|
280 |
Â
* {@inheritDoc}
|
281 |
Â
*/
|
282 |
Â
public function get_default_arguments() {
|
283 |
-
return $this->filter_default_arguments( $this->
|
284 |
Â
}
|
285 |
Â
|
286 |
Â
/**
|
@@ -307,8 +461,39 @@ abstract class Widget_Abstract extends \WP_Widget implements Widget_Interface {
|
|
307 |
Â
* @param array<string,mixed> $default_arguments Current set of default arguments.
|
308 |
Â
* @param static $instance The widget instance we are dealing with.
|
309 |
Â
*/
|
310 |
-
|
Â
|
|
311 |
Â
|
312 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
313 |
Â
}
|
314 |
Â
}
|
22 |
Â
*/
|
23 |
Â
protected $slug;
|
24 |
Â
|
25 |
+
/**
|
26 |
+
* An instance of template.
|
27 |
+
*
|
28 |
+
* @since TBD
|
29 |
+
*
|
30 |
+
* @var \Tribe__Template
|
31 |
+
*/
|
32 |
+
protected $admin_template;
|
33 |
+
|
34 |
+
/**
|
35 |
+
* The slug of the admin widget view.
|
36 |
+
*
|
37 |
+
* @since TBD
|
38 |
+
*
|
39 |
+
* @var string
|
40 |
+
*/
|
41 |
+
protected $view_admin_slug;
|
42 |
+
|
43 |
Â
/**
|
44 |
Â
* Default arguments to be merged into final arguments of the widget.
|
45 |
Â
*
|
93 |
Â
* {@inheritDoc}
|
94 |
Â
*/
|
95 |
Â
public function __construct( $id_base = '', $name = '', $widget_options = [], $control_options = [] ) {
|
96 |
+
$arguments = $this->setup_arguments();
|
97 |
Â
|
98 |
Â
parent::__construct(
|
99 |
Â
Arr::get( $arguments, 'id_base', '' ),
|
102 |
Â
Arr::get( $arguments, 'control_options', [] )
|
103 |
Â
);
|
104 |
Â
|
Â
|
|
105 |
Â
$this->setup();
|
106 |
Â
}
|
107 |
Â
|
108 |
Â
/**
|
109 |
Â
* Setup the widget.
|
110 |
Â
*
|
111 |
+
* @since 5.2.1
|
Â
|
|
Â
|
|
112 |
Â
*
|
113 |
Â
* @return mixed
|
114 |
Â
*/
|
115 |
Â
public abstract function setup();
|
116 |
Â
|
117 |
Â
/**
|
118 |
+
* Setup the widget.
|
119 |
Â
*
|
120 |
+
* @since TBD
|
121 |
+
*
|
122 |
+
* @param array<string,mixed> $arguments The widget arguments, as set by the user in the widget string.
|
123 |
+
*/
|
124 |
+
public abstract function setup_view( $arguments );
|
125 |
+
|
126 |
+
/**
|
127 |
+
* {@inheritDoc}
|
128 |
+
*/
|
129 |
+
public function form( $instance ) {
|
130 |
+
$arguments = $this->setup_arguments( $instance );
|
131 |
+
|
132 |
+
$this->get_admin_html( $arguments );
|
133 |
+
}
|
134 |
+
|
135 |
+
/**
|
136 |
+
* Echoes the widget content.
|
137 |
Â
*
|
138 |
Â
* @since 5.12.12
|
139 |
Â
*
|
142 |
Â
* @param array<string,mixed> $instance The settings for the particular instance of the widget.
|
143 |
Â
*/
|
144 |
Â
public function widget( $args, $instance ) {
|
145 |
+
$arguments = $this->get_arguments( $instance );
|
146 |
+
|
147 |
+
// Setup the View for the frontend.
|
148 |
+
$this->setup_view( $arguments );
|
149 |
+
|
150 |
Â
echo $this->get_html();
|
151 |
Â
}
|
152 |
Â
|
230 |
Â
return $validate_arguments_map;
|
231 |
Â
}
|
232 |
Â
|
233 |
+
/**
|
234 |
+
* Sets up the widgets default admin fields.
|
235 |
+
*
|
236 |
+
* @since TBD
|
237 |
+
*
|
238 |
+
* @return array<string,mixed> The array of widget admin fields.
|
239 |
+
*/
|
240 |
+
protected abstract function setup_admin_fields();
|
241 |
+
|
242 |
+
/**
|
243 |
+
* {@inheritDoc}
|
244 |
+
*/
|
245 |
+
public function get_admin_fields() {
|
246 |
+
return $this->filter_admin_fields( $this->setup_admin_fields() );
|
247 |
+
}
|
248 |
+
|
249 |
+
/**
|
250 |
+
* {@inheritDoc}
|
251 |
+
*/
|
252 |
+
public function filter_admin_fields( $admin_fields ) {
|
253 |
+
/**
|
254 |
+
* Applies a filter to a widget's admin fields.
|
255 |
+
*
|
256 |
+
* @since TBD
|
257 |
+
*
|
258 |
+
* @param array<string,mixed> $admin_fields The array of widget admin fields.
|
259 |
+
* @param static $instance The widget instance we are dealing with.
|
260 |
+
*/
|
261 |
+
$admin_fields = apply_filters( 'tribe_widget_admin_fields', $admin_fields, $this );
|
262 |
+
|
263 |
+
$registration_slug = $this->get_registration_slug();
|
264 |
+
|
265 |
+
/**
|
266 |
+
* Applies a filter to a widget's admin fields based on the registration slug of the widget.
|
267 |
+
*
|
268 |
+
* @since TBE
|
269 |
+
*
|
270 |
+
* @param array<string,mixed> $admin_fields The array of widget admin fields.
|
271 |
+
* @param static $instance The widget instance we are dealing with.
|
272 |
+
*/
|
273 |
+
$admin_fields = apply_filters( "tribe_widget_{$registration_slug}_admin_fields", $admin_fields, $this );
|
274 |
+
|
275 |
+
return $admin_fields;
|
276 |
+
}
|
277 |
+
|
278 |
Â
/**
|
279 |
Â
* {@inheritDoc}
|
280 |
Â
*/
|
281 |
+
public function filter_updated_instance( $updated_instance, $new_instance ) {
|
282 |
+
/**
|
283 |
+
* Applies a filter to updated instance of a widget.
|
284 |
+
*
|
285 |
+
* @since TBD
|
286 |
+
*
|
287 |
+
* @param array<string,mixed> $updated_instance The updated instance of the widget.
|
288 |
+
* @param array<string,mixed> $new_instance The new values for the widget instance.
|
289 |
+
* @param static $instance The widget instance we are dealing with.
|
290 |
+
*/
|
291 |
+
$updated_instance = apply_filters( 'tribe_widget_updated_instance', $updated_instance, $new_instance, $this );
|
292 |
+
|
293 |
+
$registration_slug = $this->get_registration_slug();
|
294 |
+
|
295 |
+
/**
|
296 |
+
* Applies a filter to updated instance of a widget arguments based on the registration slug of the widget.
|
297 |
+
*
|
298 |
+
* @since TBD
|
299 |
+
*
|
300 |
+
* @param array<string,mixed> $updated_instance The updated instance of the widget.
|
301 |
+
* @param array<string,mixed> $new_instance The new values for the widget instance.
|
302 |
+
* @param static $instance The widget instance we are dealing with.
|
303 |
+
*/
|
304 |
+
$updated_instance = apply_filters( "tribe_widget_{$registration_slug}_updated_instance", $updated_instance, $new_instance, $this );
|
305 |
+
|
306 |
+
return $updated_instance;
|
307 |
+
}
|
308 |
+
|
309 |
+
/**
|
310 |
+
* Sets up the widgets arguments, using saved values.
|
311 |
+
*
|
312 |
+
* @since TBD
|
313 |
+
*
|
314 |
+
* @param array<string,mixed> $instance Saved values for the widget instance.
|
315 |
+
*
|
316 |
+
* @return array<string,mixed> The widget arguments, as set by the user in the widget string.
|
317 |
+
*/
|
318 |
+
protected function setup_arguments( array $instance = [] ) {
|
319 |
+
$arguments = $this->arguments;
|
320 |
+
|
321 |
+
$arguments = wp_parse_args(
|
322 |
+
$arguments,
|
323 |
+
$this->get_default_arguments()
|
324 |
+
);
|
325 |
+
|
326 |
+
$arguments = wp_parse_args(
|
327 |
+
$instance,
|
328 |
+
$arguments
|
329 |
+
);
|
330 |
+
|
331 |
+
return $arguments;
|
332 |
+
}
|
333 |
Â
|
334 |
+
/**
|
335 |
+
* {@inheritDoc}
|
336 |
+
*/
|
337 |
+
public function get_arguments( array $instance = [] ) {
|
338 |
+
return $this->filter_arguments( $this->setup_arguments( $instance ) );
|
339 |
Â
}
|
340 |
Â
|
341 |
Â
/**
|
372 |
Â
* {@inheritDoc}
|
373 |
Â
*/
|
374 |
Â
public function get_argument( $index, $default = null ) {
|
375 |
+
$arguments = $this->setup_arguments();
|
376 |
Â
$argument = Arr::get( $arguments, $index, $default );
|
377 |
Â
|
378 |
Â
return $this->filter_argument( $argument, $index, $default );
|
411 |
Â
return $argument;
|
412 |
Â
}
|
413 |
Â
|
414 |
+
/**
|
415 |
+
* Sets up the widgets default arguments.
|
416 |
+
*
|
417 |
+
* @since TBD
|
418 |
+
*
|
419 |
+
* @return array<string,mixed> The default widget arguments.
|
420 |
+
*/
|
421 |
+
protected function setup_default_arguments() {
|
422 |
+
$default_arguments = $this->default_arguments;
|
423 |
+
|
424 |
+
// Setup admin fields.
|
425 |
+
$default_arguments['admin_fields'] = $this->get_admin_fields();
|
426 |
+
|
427 |
+
// Add the Widget to the arguments to pass to the admin template.
|
428 |
+
$default_arguments['widget_obj'] = $this;
|
429 |
+
|
430 |
+
return $default_arguments;
|
431 |
+
}
|
432 |
+
|
433 |
Â
/**
|
434 |
Â
* {@inheritDoc}
|
435 |
Â
*/
|
436 |
Â
public function get_default_arguments() {
|
437 |
+
return $this->filter_default_arguments( $this->setup_default_arguments() );
|
438 |
Â
}
|
439 |
Â
|
440 |
Â
/**
|
461 |
Â
* @param array<string,mixed> $default_arguments Current set of default arguments.
|
462 |
Â
* @param static $instance The widget instance we are dealing with.
|
463 |
Â
*/
|
464 |
+
return apply_filters( "tribe_widget_{$registration_slug}_default_arguments", $default_arguments, $this );
|
465 |
+
}
|
466 |
Â
|
467 |
+
/**
|
468 |
+
* Sets the admin template.
|
469 |
+
*
|
470 |
+
* @since TBD
|
471 |
+
*
|
472 |
+
* @param \Tribe__Template $template The admin template to use.
|
473 |
+
*/
|
474 |
+
public function set_admin_template( \Tribe__Template $template ) {
|
475 |
+
$this->admin_template = $template;
|
476 |
+
}
|
477 |
+
|
478 |
+
/**
|
479 |
+
* Returns the current admin template.
|
480 |
+
*
|
481 |
+
* @since TBD
|
482 |
+
*
|
483 |
+
* @return \Tribe__Template The current admin template.
|
484 |
+
*/
|
485 |
+
public function get_admin_template() {
|
486 |
+
return $this->admin_template;
|
487 |
+
}
|
488 |
+
|
489 |
+
/**
|
490 |
+
* Get the admin html for the widget form.
|
491 |
+
*
|
492 |
+
* @since TBD
|
493 |
+
*
|
494 |
+
* @param array<string,mixed> $arguments Current set of arguments.
|
495 |
+
*/
|
496 |
+
public function get_admin_html( $arguments ) {
|
497 |
+
$this->get_admin_template()->template( $this->view_admin_slug, $arguments );
|
498 |
Â
}
|
499 |
Â
}
|
common/src/Tribe/Widget/Widget_Interface.php
CHANGED
@@ -127,17 +127,51 @@ interface Widget_Interface {
|
|
127 |
Â
*/
|
128 |
Â
public function get_validated_arguments_map();
|
129 |
Â
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
130 |
Â
/**
|
131 |
Â
* Returns a widget arguments after been parsed.
|
132 |
Â
*
|
133 |
Â
* @since 5.12.12
|
134 |
Â
*
|
Â
|
|
Â
|
|
135 |
Â
* @return array<string,mixed> The widget arguments, as set by the user in the widget string.
|
136 |
Â
*/
|
137 |
-
public function get_arguments();
|
138 |
Â
|
139 |
Â
/**
|
140 |
-
*
|
141 |
Â
*
|
142 |
Â
* @since 5.12.12
|
143 |
Â
*
|
@@ -186,7 +220,7 @@ interface Widget_Interface {
|
|
186 |
Â
public function get_default_arguments();
|
187 |
Â
|
188 |
Â
/**
|
189 |
-
*
|
190 |
Â
*
|
191 |
Â
* @since 5.12.12
|
192 |
Â
*
|
127 |
Â
*/
|
128 |
Â
public function get_validated_arguments_map();
|
129 |
Â
|
130 |
+
/**
|
131 |
+
* Returns an array of admin fields for the widget.
|
132 |
+
*
|
133 |
+
* @since TBD
|
134 |
+
*
|
135 |
+
* @return array<string,mixed> The array of widget admin fields.
|
136 |
+
*/
|
137 |
+
public function get_admin_fields();
|
138 |
+
|
139 |
+
/**
|
140 |
+
* Filter a widget's admin fields.
|
141 |
+
*
|
142 |
+
* @since TBD
|
143 |
+
*
|
144 |
+
* @param array<string,mixed> $admin_fields The array of widget admin fields.
|
145 |
+
*
|
146 |
+
* @return array<string,mixed> The array of widget admin fields.
|
147 |
+
*/
|
148 |
+
public function filter_admin_fields( $admin_fields );
|
149 |
+
|
150 |
+
/**
|
151 |
+
* Filters a widget's updated instance.
|
152 |
+
*
|
153 |
+
* @since TBD
|
154 |
+
*
|
155 |
+
* @param array<string,mixed> $updated_instance The updated instance of the widget.
|
156 |
+
* @param array<string,mixed> $new_instance The new values for the widget instance.
|
157 |
+
*
|
158 |
+
* @return array<string,mixed> The updated instance to be saved for the widget.
|
159 |
+
*/
|
160 |
+
public function filter_updated_instance( $updated_instance, $new_instance );
|
161 |
+
|
162 |
Â
/**
|
163 |
Â
* Returns a widget arguments after been parsed.
|
164 |
Â
*
|
165 |
Â
* @since 5.12.12
|
166 |
Â
*
|
167 |
+
* @param array<string,mixed> $instance Saved values for the widget instance.
|
168 |
+
*
|
169 |
Â
* @return array<string,mixed> The widget arguments, as set by the user in the widget string.
|
170 |
Â
*/
|
171 |
+
public function get_arguments( array $instance = [] );
|
172 |
Â
|
173 |
Â
/**
|
174 |
+
* Filter a widget's arguments after they have been been parsed.
|
175 |
Â
*
|
176 |
Â
* @since 5.12.12
|
177 |
Â
*
|
220 |
Â
public function get_default_arguments();
|
221 |
Â
|
222 |
Â
/**
|
223 |
+
* Filter a widget's default arguments.
|
224 |
Â
*
|
225 |
Â
* @since 5.12.12
|
226 |
Â
*
|
common/src/admin-views/tribe-options-display.php
CHANGED
@@ -2,60 +2,61 @@
|
|
2 |
Â
|
3 |
Â
$sample_date = strtotime( 'January 15 ' . date( 'Y' ) );
|
4 |
Â
|
5 |
-
$displayTab =
|
6 |
Â
'priority' => 20,
|
7 |
Â
'fields' =>
|
8 |
Â
/**
|
9 |
Â
* Filter the fields available on the display settings tab
|
10 |
Â
*
|
11 |
Â
* @param array $fields a nested associative array of fields & field info passed to Tribe__Field
|
Â
|
|
12 |
Â
* @see Tribe__Field
|
13 |
Â
*/
|
14 |
Â
apply_filters(
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
52 |
Â
],
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
'type' => 'html',
|
57 |
-
'html' => '</div>',
|
58 |
-
],
|
59 |
-
)
|
60 |
-
),
|
61 |
-
);
|
2 |
Â
|
3 |
Â
$sample_date = strtotime( 'January 15 ' . date( 'Y' ) );
|
4 |
Â
|
5 |
+
$displayTab = [
|
6 |
Â
'priority' => 20,
|
7 |
Â
'fields' =>
|
8 |
Â
/**
|
9 |
Â
* Filter the fields available on the display settings tab
|
10 |
Â
*
|
11 |
Â
* @param array $fields a nested associative array of fields & field info passed to Tribe__Field
|
12 |
+
*
|
13 |
Â
* @see Tribe__Field
|
14 |
Â
*/
|
15 |
Â
apply_filters(
|
16 |
+
'tribe_display_settings_tab_fields', [
|
17 |
+
'tribe-form-content-start' => [
|
18 |
+
'type' => 'html',
|
19 |
+
'html' => '<div class="tribe-settings-form-wrap">',
|
20 |
+
],
|
21 |
+
'tribeEventsDateFormatSettingsTitle' => [
|
22 |
+
'type' => 'html',
|
23 |
+
'html' => '<h3>' . esc_html__( 'Date Format Settings', 'tribe-common' ) . '</h3>',
|
24 |
+
],
|
25 |
+
'tribeEventsDateFormatExplanation' => [
|
26 |
+
'type' => 'html',
|
27 |
+
'html' => '<p>'
|
28 |
+
. sprintf(
|
29 |
+
__( 'The following three fields accept the date format options available to the PHP %1$s function. <a href="%2$s" target="_blank">Learn how to make your own date format here</a>.', 'tribe-common' ),
|
30 |
+
'<code>date()</code>',
|
31 |
+
'https://wordpress.org/support/article/formatting-date-and-time/'
|
32 |
+
)
|
33 |
+
. '</p>',
|
34 |
+
],
|
35 |
+
'datepickerFormat' => [
|
36 |
+
'type' => 'dropdown',
|
37 |
+
'label' => esc_html__( 'Compact Date Format', 'tribe-common' ),
|
38 |
+
'tooltip' => esc_html__( 'Select the date format used for elements with minimal space, such as in datepickers.', 'tribe-common' ),
|
39 |
+
'default' => 1,
|
40 |
+
'options' => [
|
41 |
+
'0' => date( 'Y-m-d', $sample_date ),
|
42 |
+
'1' => date( 'n/j/Y', $sample_date ),
|
43 |
+
'2' => date( 'm/d/Y', $sample_date ),
|
44 |
+
'3' => date( 'j/n/Y', $sample_date ),
|
45 |
+
'4' => date( 'd/m/Y', $sample_date ),
|
46 |
+
'5' => date( 'n-j-Y', $sample_date ),
|
47 |
+
'6' => date( 'm-d-Y', $sample_date ),
|
48 |
+
'7' => date( 'j-n-Y', $sample_date ),
|
49 |
+
'8' => date( 'd-m-Y', $sample_date ),
|
50 |
+
'9' => date( 'Y.m.d', $sample_date ),
|
51 |
+
'10' => date( 'm.d.Y', $sample_date ),
|
52 |
+
'11' => date( 'd.m.Y', $sample_date ),
|
53 |
+
],
|
54 |
+
'validation_type' => 'options',
|
55 |
+
],
|
56 |
+
'tribe-form-content-end' => [
|
57 |
+
'type' => 'html',
|
58 |
+
'html' => '</div>',
|
59 |
Â
],
|
60 |
+
]
|
61 |
+
),
|
62 |
+
];
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
common/src/admin-views/tribe-options-help.php
CHANGED
@@ -25,13 +25,43 @@ $help->add_section_content( 'support', sprintf(
|
|
25 |
Â
// Creates the Extra Help section
|
26 |
Â
$help->add_section( 'extra-help', __( 'Getting More Help', 'tribe-common' ), 20 );
|
27 |
Â
$help->add_section_content( 'extra-help', __( 'While the resources above help solve a majority of the issues we see, there are times you might be looking for extra support. If you need assistance using our plugins and would like us to take a look, please follow these steps:', 'tribe-common' ), 0 );
|
28 |
-
$help->add_section_content(
|
29 |
-
'
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
)
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
35 |
Â
|
36 |
Â
// By default these three will be gathered
|
37 |
Â
$help->add_section_content( 'extra-help', __( 'Please note that all hands-on support is provided via the help desk. You can email or tweet at us… ​but we will probably point you back to the help desk 😄', 'tribe-common' ), 40 );
|
25 |
Â
// Creates the Extra Help section
|
26 |
Â
$help->add_section( 'extra-help', __( 'Getting More Help', 'tribe-common' ), 20 );
|
27 |
Â
$help->add_section_content( 'extra-help', __( 'While the resources above help solve a majority of the issues we see, there are times you might be looking for extra support. If you need assistance using our plugins and would like us to take a look, please follow these steps:', 'tribe-common' ), 0 );
|
28 |
+
$help->add_section_content(
|
29 |
+
'extra-help',
|
30 |
+
[
|
31 |
+
'type' => 'ol',
|
32 |
+
sprintf(
|
33 |
+
__(
|
34 |
+
'%s. All of the common (and not-so-common) answers to questions we see are here. It’s often the fastest path to finding an answer!',
|
35 |
+
'tribe-common'
|
36 |
+
),
|
37 |
+
'<strong><a href="http://m.tri.be/18j9" target="_blank">' . __(
|
38 |
+
'Check our Knowledgebase',
|
39 |
+
'tribe-common'
|
40 |
+
) . '</a></strong>'
|
41 |
+
),
|
42 |
+
sprintf(
|
43 |
+
__(
|
44 |
+
'%s. Testing for an existing conflict is the best start for in-depth troubleshooting. We will often ask you to follow these steps when opening a new thread, so doing this ahead of time will be super helpful.',
|
45 |
+
'tribe-common'
|
46 |
+
),
|
47 |
+
'<strong><a href="http://m.tri.be/18jh" target="_blank">' . __(
|
48 |
+
'Test for a theme or plugin conflict',
|
49 |
+
'tribe-common'
|
50 |
+
) . '</a></strong>'
|
51 |
+
),
|
52 |
+
sprintf(
|
53 |
+
__(
|
54 |
+
'%s. There are very few issues we haven’t seen and it’s likely another user has already asked your question and gotten an answer from our support staff. While posting to the help desk is open only to paid customers, they are open for anyone to search and review.',
|
55 |
+
'tribe-common'
|
56 |
+
),
|
57 |
+
'<strong><a href="http://m.tri.be/4w/" target="_blank">' . __(
|
58 |
+
'Search our support help desk',
|
59 |
+
'tribe-common'
|
60 |
+
) . '</a></strong>'
|
61 |
+
),
|
62 |
+
],
|
63 |
+
10
|
64 |
+
);
|
65 |
Â
|
66 |
Â
// By default these three will be gathered
|
67 |
Â
$help->add_section_content( 'extra-help', __( 'Please note that all hands-on support is provided via the help desk. You can email or tweet at us… ​but we will probably point you back to the help desk 😄', 'tribe-common' ), 40 );
|
common/src/admin-views/tribe-options-licenses.php
CHANGED
@@ -47,21 +47,21 @@ if ( is_multisite() ) {
|
|
47 |
Â
$html .= '</ul>';
|
48 |
Â
|
49 |
Â
|
50 |
-
$licenses_tab =
|
51 |
-
'info-start'
|
52 |
Â
'type' => 'html',
|
53 |
Â
'html' => '<div id="modern-tribe-info">',
|
54 |
-
|
55 |
-
'info-box-title'
|
56 |
Â
'type' => 'html',
|
57 |
Â
'html' => '<h2>' . esc_html__( 'Licenses', 'tribe-common' ) . '</h2>',
|
58 |
-
|
59 |
-
'info-box-description' =>
|
60 |
Â
'type' => 'html',
|
61 |
Â
'html' => $html,
|
62 |
-
|
63 |
-
'info-end'
|
64 |
Â
'type' => 'html',
|
65 |
Â
'html' => '</div>',
|
66 |
-
|
67 |
-
|
47 |
Â
$html .= '</ul>';
|
48 |
Â
|
49 |
Â
|
50 |
+
$licenses_tab = [
|
51 |
+
'info-start' => [
|
52 |
Â
'type' => 'html',
|
53 |
Â
'html' => '<div id="modern-tribe-info">',
|
54 |
+
],
|
55 |
+
'info-box-title' => [
|
56 |
Â
'type' => 'html',
|
57 |
Â
'html' => '<h2>' . esc_html__( 'Licenses', 'tribe-common' ) . '</h2>',
|
58 |
+
],
|
59 |
+
'info-box-description' => [
|
60 |
Â
'type' => 'html',
|
61 |
Â
'html' => $html,
|
62 |
+
],
|
63 |
+
'info-end' => [
|
64 |
Â
'type' => 'html',
|
65 |
Â
'html' => '</div>',
|
66 |
+
],
|
67 |
+
];
|
common/src/admin-views/tribe-options-network.php
CHANGED
@@ -1,35 +1,35 @@
|
|
1 |
Â
<?php
|
2 |
-
$allTabs = apply_filters( 'tribe_settings_all_tabs',
|
3 |
Â
|
4 |
-
$networkTab =
|
5 |
Â
'priority' => 10,
|
6 |
Â
'network_admin' => true,
|
7 |
Â
'fields' => apply_filters(
|
8 |
-
'tribe_network_settings_tab_fields',
|
9 |
-
'info-start' =>
|
10 |
Â
'type' => 'html',
|
11 |
Â
'html' => '<div id="modern-tribe-info">',
|
12 |
-
|
13 |
-
'info-box-title' =>
|
14 |
Â
'type' => 'html',
|
15 |
Â
'html' => '<h1>' . esc_html__( 'Network Settings', 'tribe-common' ) . '</h1>',
|
16 |
-
|
17 |
-
'info-box-description' =>
|
18 |
Â
'type' => 'html',
|
19 |
Â
'html' => '<p>' . esc_html__( 'This is where all of the global network settings for Modern Tribe\'s The Events Calendar can be modified.', 'tribe-common' ) . '</p>',
|
20 |
-
|
21 |
-
'info-end' =>
|
22 |
Â
'type' => 'html',
|
23 |
Â
'html' => '</div>',
|
24 |
-
|
25 |
-
'hideSettingsTabs' =>
|
26 |
Â
'type' => 'checkbox_list',
|
27 |
Â
'label' => esc_html__( 'Hide the following settings tabs on every site:', 'tribe-common' ),
|
28 |
Â
'default' => false,
|
29 |
Â
'options' => $allTabs,
|
30 |
Â
'validation_type' => 'options_multi',
|
31 |
Â
'can_be_empty' => true,
|
32 |
-
|
33 |
-
|
34 |
Â
),
|
35 |
-
|
1 |
Â
<?php
|
2 |
+
$allTabs = apply_filters( 'tribe_settings_all_tabs', [] );
|
3 |
Â
|
4 |
+
$networkTab = [
|
5 |
Â
'priority' => 10,
|
6 |
Â
'network_admin' => true,
|
7 |
Â
'fields' => apply_filters(
|
8 |
+
'tribe_network_settings_tab_fields', [
|
9 |
+
'info-start' => [
|
10 |
Â
'type' => 'html',
|
11 |
Â
'html' => '<div id="modern-tribe-info">',
|
12 |
+
],
|
13 |
+
'info-box-title' => [
|
14 |
Â
'type' => 'html',
|
15 |
Â
'html' => '<h1>' . esc_html__( 'Network Settings', 'tribe-common' ) . '</h1>',
|
16 |
+
],
|
17 |
+
'info-box-description' => [
|
18 |
Â
'type' => 'html',
|
19 |
Â
'html' => '<p>' . esc_html__( 'This is where all of the global network settings for Modern Tribe\'s The Events Calendar can be modified.', 'tribe-common' ) . '</p>',
|
20 |
+
],
|
21 |
+
'info-end' => [
|
22 |
Â
'type' => 'html',
|
23 |
Â
'html' => '</div>',
|
24 |
+
],
|
25 |
+
'hideSettingsTabs' => [
|
26 |
Â
'type' => 'checkbox_list',
|
27 |
Â
'label' => esc_html__( 'Hide the following settings tabs on every site:', 'tribe-common' ),
|
28 |
Â
'default' => false,
|
29 |
Â
'options' => $allTabs,
|
30 |
Â
'validation_type' => 'options_multi',
|
31 |
Â
'can_be_empty' => true,
|
32 |
+
],
|
33 |
+
]
|
34 |
Â
),
|
35 |
+
];
|
common/src/functions/query.php
CHANGED
@@ -28,7 +28,7 @@ if ( ! function_exists( 'tribe_filter_meta_query' ) ) {
|
|
28 |
Â
* @return array The filtered meta query array.
|
29 |
Â
*/
|
30 |
Â
function tribe_filter_meta_query( array $meta_query, array $where ) {
|
31 |
-
$filtered =
|
32 |
Â
|
33 |
Â
foreach ( $meta_query as $key => $entry ) {
|
34 |
Â
if ( ! is_array( $entry ) ) {
|
28 |
Â
* @return array The filtered meta query array.
|
29 |
Â
*/
|
30 |
Â
function tribe_filter_meta_query( array $meta_query, array $where ) {
|
31 |
+
$filtered = [];
|
32 |
Â
|
33 |
Â
foreach ( $meta_query as $key => $entry ) {
|
34 |
Â
if ( ! is_array( $entry ) ) {
|
common/src/functions/template-tags/date.php
CHANGED
@@ -189,7 +189,7 @@ if ( ! function_exists( 'tribe_get_start_time' ) ) {
|
|
189 |
Â
return;
|
190 |
Â
}
|
191 |
Â
|
192 |
-
// @todo
|
193 |
Â
if ( class_exists( 'Tribe__Events__Timezones' ) ) {
|
194 |
Â
$start_date = Tribe__Events__Timezones::event_start_timestamp( $event->ID, $timezone );
|
195 |
Â
}
|
@@ -240,7 +240,7 @@ if ( ! function_exists( 'tribe_get_end_time' ) ) {
|
|
240 |
Â
return;
|
241 |
Â
}
|
242 |
Â
|
243 |
-
// @todo
|
244 |
Â
if ( class_exists( 'Tribe__Events__Timezones' ) ) {
|
245 |
Â
$end_date = Tribe__Events__Timezones::event_end_timestamp( $event->ID, $timezone );
|
246 |
Â
}
|
@@ -300,7 +300,7 @@ if ( ! function_exists( 'tribe_get_start_date' ) ) {
|
|
300 |
Â
$display_time = false;
|
301 |
Â
}
|
302 |
Â
|
303 |
-
// @todo
|
304 |
Â
if ( class_exists( 'Tribe__Events__Timezones' ) ) {
|
305 |
Â
$start_date = Tribe__Events__Timezones::event_start_timestamp( $event->ID, $timezone );
|
306 |
Â
} else {
|
@@ -362,7 +362,7 @@ if ( ! function_exists( 'tribe_get_end_date' ) ) {
|
|
362 |
Â
$display_time = false;
|
363 |
Â
}
|
364 |
Â
|
365 |
-
// @todo
|
366 |
Â
if ( class_exists( 'Tribe__Events__Timezones' ) ) {
|
367 |
Â
$end_date = Tribe__Events__Timezones::event_end_timestamp( $event->ID );
|
368 |
Â
} else {
|
@@ -393,7 +393,7 @@ if ( ! function_exists( 'tribe_normalize_manual_utc_offset' ) ) {
|
|
393 |
Â
* e.g. 'UTC+3', 'UTC-4.5', 'UTC+2.75'
|
394 |
Â
*/
|
395 |
Â
function tribe_normalize_manual_utc_offset( $utc_offset ) {
|
396 |
-
$matches =
|
397 |
Â
if ( preg_match( '/^UTC\\s*((\\+|-)(\\d{1,2}))((:|.|,)(\\d{1,2})+)*/ui', $utc_offset, $matches ) ) {
|
398 |
Â
if ( ! empty( $matches[6] ) ) {
|
399 |
Â
$minutes = $matches[6] > 10 && $matches[6] <= 60 ? $minutes = $matches[6] / 60 : $matches[6];
|
@@ -448,4 +448,4 @@ if ( ! function_exists( 'tribe_is_site_using_24_hour_time' ) ) {
|
|
448 |
Â
$time_format = get_option( 'time_format' );
|
449 |
Â
return strpos( $time_format, 'H' ) !== false;
|
450 |
Â
}
|
451 |
-
}
|
189 |
Â
return;
|
190 |
Â
}
|
191 |
Â
|
192 |
+
// @todo [BTRIA-584]: Move timezones to Common.
|
193 |
Â
if ( class_exists( 'Tribe__Events__Timezones' ) ) {
|
194 |
Â
$start_date = Tribe__Events__Timezones::event_start_timestamp( $event->ID, $timezone );
|
195 |
Â
}
|
240 |
Â
return;
|
241 |
Â
}
|
242 |
Â
|
243 |
+
// @todo [BTRIA-584]: Move timezones to Common.
|
244 |
Â
if ( class_exists( 'Tribe__Events__Timezones' ) ) {
|
245 |
Â
$end_date = Tribe__Events__Timezones::event_end_timestamp( $event->ID, $timezone );
|
246 |
Â
}
|
300 |
Â
$display_time = false;
|
301 |
Â
}
|
302 |
Â
|
303 |
+
// @todo [BTRIA-584]: Move timezones to Common.
|
304 |
Â
if ( class_exists( 'Tribe__Events__Timezones' ) ) {
|
305 |
Â
$start_date = Tribe__Events__Timezones::event_start_timestamp( $event->ID, $timezone );
|
306 |
Â
} else {
|
362 |
Â
$display_time = false;
|
363 |
Â
}
|
364 |
Â
|
365 |
+
// @todo [BTRIA-584]: Move timezones to Common.
|
366 |
Â
if ( class_exists( 'Tribe__Events__Timezones' ) ) {
|
367 |
Â
$end_date = Tribe__Events__Timezones::event_end_timestamp( $event->ID );
|
368 |
Â
} else {
|
393 |
Â
* e.g. 'UTC+3', 'UTC-4.5', 'UTC+2.75'
|
394 |
Â
*/
|
395 |
Â
function tribe_normalize_manual_utc_offset( $utc_offset ) {
|
396 |
+
$matches = [];
|
397 |
Â
if ( preg_match( '/^UTC\\s*((\\+|-)(\\d{1,2}))((:|.|,)(\\d{1,2})+)*/ui', $utc_offset, $matches ) ) {
|
398 |
Â
if ( ! empty( $matches[6] ) ) {
|
399 |
Â
$minutes = $matches[6] > 10 && $matches[6] <= 60 ? $minutes = $matches[6] / 60 : $matches[6];
|
448 |
Â
$time_format = get_option( 'time_format' );
|
449 |
Â
return strpos( $time_format, 'H' ) !== false;
|
450 |
Â
}
|
451 |
+
}
|
common/src/functions/template-tags/general.php
CHANGED
@@ -264,7 +264,7 @@ if ( ! function_exists( 'tribe_get_days_between' ) ) {
|
|
264 |
Â
if ( ! function_exists( 'tribe_prepare_for_json' ) ) {
|
265 |
Â
/**
|
266 |
Â
* Function to prepare content for use as a value in a json encoded string destined for storage on a html data attribute.
|
267 |
-
* Hence the double quote fun, especially in case they pass html encoded " along. Any of those getting through to the data att will break
|
268 |
Â
* Themers can use this function to prepare data they may want to send to tribe_events_template_data() in the templates, and we use it in that function ourselves.
|
269 |
Â
*
|
270 |
Â
* @category Events
|
@@ -277,7 +277,7 @@ if ( ! function_exists( 'tribe_prepare_for_json' ) ) {
|
|
277 |
Â
$value = trim( htmlspecialchars( $string, ENT_QUOTES, 'UTF-8' ) );
|
278 |
Â
$value = str_replace( '"', '"', $value );
|
279 |
Â
// &#013; is same as \r and JSON strings should be a single line not multiple lines.
|
280 |
-
$removable_values =
|
281 |
Â
$value = str_replace( $removable_values, '', $value );
|
282 |
Â
|
283 |
Â
return $value;
|
@@ -362,13 +362,13 @@ if ( ! function_exists( 'tribe_is_bot' ) ) {
|
|
362 |
Â
|
363 |
Â
// declare known bot user agents (lowercase)
|
364 |
Â
$user_agent_bots = (array) apply_filters(
|
365 |
-
'tribe_is_bot_list',
|
366 |
Â
'bot',
|
367 |
Â
'slurp',
|
368 |
Â
'spider',
|
369 |
Â
'crawler',
|
370 |
Â
'yandex',
|
371 |
-
|
372 |
Â
);
|
373 |
Â
|
374 |
Â
foreach ( $user_agent_bots as $bot ) {
|
@@ -525,14 +525,14 @@ if ( ! function_exists( 'tribe_get_date_option' ) ) {
|
|
525 |
Â
* Shortcut for Tribe__Admin__Notices::register(), create a Admin Notice easily
|
526 |
Â
*
|
527 |
Â
* @param string $slug Slug to save the notice
|
528 |
-
* @param callable|string $callback A callable Method/
|
529 |
Â
* @param array $arguments Arguments to Setup a notice
|
530 |
Â
* @param callable|null $active_callback An optional callback that should return bool values
|
531 |
Â
* to indicate whether the notice should display or not.
|
532 |
Â
*
|
533 |
Â
* @return stdClass Which notice was registered
|
534 |
Â
*/
|
535 |
-
function tribe_notice( $slug, $callback, $arguments =
|
536 |
Â
return Tribe__Admin__Notices::instance()->register( $slug, $callback, $arguments, $active_callback );
|
537 |
Â
}
|
538 |
Â
|
@@ -549,7 +549,7 @@ function tribe_notice( $slug, $callback, $arguments = array(), $active_callback
|
|
549 |
Â
*
|
550 |
Â
* @return stdClass Which notice was registered
|
551 |
Â
*/
|
552 |
-
function tribe_transient_notice( $slug, $html, $arguments =
|
553 |
Â
$expire = null !== $expire ? (int) $expire : WEEK_IN_SECONDS;
|
554 |
Â
|
555 |
Â
return Tribe__Admin__Notices::instance()->register_transient( $slug, $html, $arguments, $expire );
|
@@ -575,7 +575,7 @@ function tribe_transient_notice_remove( $slug ) {
|
|
575 |
Â
*
|
576 |
Â
* @return WP_Error
|
577 |
Â
*/
|
578 |
-
function tribe_error( $indexes, $context =
|
579 |
Â
return Tribe__Error::instance()->send( $indexes, $context, $sprintf );
|
580 |
Â
}
|
581 |
Â
|
@@ -650,7 +650,7 @@ function tribe_asset_enqueue_group( $group ) {
|
|
650 |
Â
* @param object $origin The main Object for the plugin you are enqueueing the script/style for
|
651 |
Â
* @param array $assets {
|
652 |
Â
* Indexed array, don't use any associative key.
|
653 |
-
* E.g.:
|
654 |
Â
*
|
655 |
Â
* @type string $slug Slug to save the asset
|
656 |
Â
* @type string $file Which file will be loaded, either CSS or JS
|
@@ -661,8 +661,8 @@ function tribe_asset_enqueue_group( $group ) {
|
|
661 |
Â
*
|
662 |
Â
* @return array Which Assets were registered
|
663 |
Â
*/
|
664 |
-
function tribe_assets( $origin, $assets, $action = null, $arguments =
|
665 |
-
$registered =
|
666 |
Â
|
667 |
Â
foreach ( $assets as $asset ) {
|
668 |
Â
if ( ! is_array( $asset ) ) {
|
@@ -675,7 +675,7 @@ function tribe_assets( $origin, $assets, $action = null, $arguments = array() )
|
|
675 |
Â
}
|
676 |
Â
|
677 |
Â
$file = $asset[1];
|
678 |
-
$deps = ! empty( $asset[2] ) ? $asset[2] :
|
679 |
Â
|
680 |
Â
// Support the asset having a custom action.
|
681 |
Â
$asset_action = ! empty( $asset[3] ) ? $asset[3] : $action;
|
264 |
Â
if ( ! function_exists( 'tribe_prepare_for_json' ) ) {
|
265 |
Â
/**
|
266 |
Â
* Function to prepare content for use as a value in a json encoded string destined for storage on a html data attribute.
|
267 |
+
* Hence the double quote fun, especially in case they pass html encoded " along. Any of those getting through to the data att will break jQuery's parseJSON method.
|
268 |
Â
* Themers can use this function to prepare data they may want to send to tribe_events_template_data() in the templates, and we use it in that function ourselves.
|
269 |
Â
*
|
270 |
Â
* @category Events
|
277 |
Â
$value = trim( htmlspecialchars( $string, ENT_QUOTES, 'UTF-8' ) );
|
278 |
Â
$value = str_replace( '"', '"', $value );
|
279 |
Â
// &#013; is same as \r and JSON strings should be a single line not multiple lines.
|
280 |
+
$removable_values = [ '\r', '\n', '\t', '&#013;' ];
|
281 |
Â
$value = str_replace( $removable_values, '', $value );
|
282 |
Â
|
283 |
Â
return $value;
|
362 |
Â
|
363 |
Â
// declare known bot user agents (lowercase)
|
364 |
Â
$user_agent_bots = (array) apply_filters(
|
365 |
+
'tribe_is_bot_list', [
|
366 |
Â
'bot',
|
367 |
Â
'slurp',
|
368 |
Â
'spider',
|
369 |
Â
'crawler',
|
370 |
Â
'yandex',
|
371 |
+
]
|
372 |
Â
);
|
373 |
Â
|
374 |
Â
foreach ( $user_agent_bots as $bot ) {
|
525 |
Â
* Shortcut for Tribe__Admin__Notices::register(), create a Admin Notice easily
|
526 |
Â
*
|
527 |
Â
* @param string $slug Slug to save the notice
|
528 |
+
* @param callable|string $callback A callable Method/Function to actually display the notice
|
529 |
Â
* @param array $arguments Arguments to Setup a notice
|
530 |
Â
* @param callable|null $active_callback An optional callback that should return bool values
|
531 |
Â
* to indicate whether the notice should display or not.
|
532 |
Â
*
|
533 |
Â
* @return stdClass Which notice was registered
|
534 |
Â
*/
|
535 |
+
function tribe_notice( $slug, $callback, $arguments = [], $active_callback = null ) {
|
536 |
Â
return Tribe__Admin__Notices::instance()->register( $slug, $callback, $arguments, $active_callback );
|
537 |
Â
}
|
538 |
Â
|
549 |
Â
*
|
550 |
Â
* @return stdClass Which notice was registered
|
551 |
Â
*/
|
552 |
+
function tribe_transient_notice( $slug, $html, $arguments = [], $expire = null ) {
|
553 |
Â
$expire = null !== $expire ? (int) $expire : WEEK_IN_SECONDS;
|
554 |
Â
|
555 |
Â
return Tribe__Admin__Notices::instance()->register_transient( $slug, $html, $arguments, $expire );
|
575 |
Â
*
|
576 |
Â
* @return WP_Error
|
577 |
Â
*/
|
578 |
+
function tribe_error( $indexes, $context = [], $sprintf = [] ) {
|
579 |
Â
return Tribe__Error::instance()->send( $indexes, $context, $sprintf );
|
580 |
Â
}
|
581 |
Â
|
650 |
Â
* @param object $origin The main Object for the plugin you are enqueueing the script/style for
|
651 |
Â
* @param array $assets {
|
652 |
Â
* Indexed array, don't use any associative key.
|
653 |
+
* E.g.: [ 'slug-my-script', 'my/own/path.js', [ 'jquery' ] ]
|
654 |
Â
*
|
655 |
Â
* @type string $slug Slug to save the asset
|
656 |
Â
* @type string $file Which file will be loaded, either CSS or JS
|
661 |
Â
*
|
662 |
Â
* @return array Which Assets were registered
|
663 |
Â
*/
|
664 |
+
function tribe_assets( $origin, $assets, $action = null, $arguments = [] ) {
|
665 |
+
$registered = [];
|
666 |
Â
|
667 |
Â
foreach ( $assets as $asset ) {
|
668 |
Â
if ( ! is_array( $asset ) ) {
|
675 |
Â
}
|
676 |
Â
|
677 |
Â
$file = $asset[1];
|
678 |
+
$deps = ! empty( $asset[2] ) ? $asset[2] : [];
|
679 |
Â
|
680 |
Â
// Support the asset having a custom action.
|
681 |
Â
$asset_action = ! empty( $asset[3] ) ? $asset[3] : $action;
|
common/src/functions/template-tags/html.php
CHANGED
@@ -132,3 +132,83 @@ function tribe_disabled( $disabled, $echo = true ) {
|
|
132 |
Â
}
|
133 |
Â
}
|
134 |
Â
}
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
132 |
Â
}
|
133 |
Â
}
|
134 |
Â
}
|
135 |
+
|
136 |
+
/**
|
137 |
+
* Generates a string for the tribe-dependency attributes.
|
138 |
+
*
|
139 |
+
* @since TBD
|
140 |
+
*
|
141 |
+
* @param array<string,mixed> $deps The passed array of dependencies.
|
142 |
+
*
|
143 |
+
* @return string $dependency The string of dependencies attributes to add to the input.
|
144 |
+
*/
|
145 |
+
function tribe_format_field_dependency( $deps ) {
|
146 |
+
// Sanity check.
|
147 |
+
if ( empty( $deps ) ) {
|
148 |
+
return '';
|
149 |
+
}
|
150 |
+
|
151 |
+
// Let's be case-insensitive!
|
152 |
+
$deps = array_combine( array_map( 'strtolower', array_keys( $deps ) ), $deps );
|
153 |
+
|
154 |
+
// No ID to hook to? Bail.
|
155 |
+
if ( empty( $deps['id'] ) ) {
|
156 |
+
return;
|
157 |
+
}
|
158 |
+
|
159 |
+
$dependency = '';
|
160 |
+
|
161 |
+
$accepted = [
|
162 |
+
'id',
|
163 |
+
'is',
|
164 |
+
'is-not',
|
165 |
+
'is-empty',
|
166 |
+
'is-not-empty',
|
167 |
+
'is-numeric',
|
168 |
+
'is-not-numeric',
|
169 |
+
'is-checked',
|
170 |
+
'is-not-checked',
|
171 |
+
];
|
172 |
+
|
173 |
+
$valid_deps = array_intersect_key( $deps, array_flip( $accepted ) );
|
174 |
+
|
175 |
+
foreach ( $valid_deps as $attr => $value ) {
|
176 |
+
// Attributes are always lower case.
|
177 |
+
$attr = strtolower( $attr );
|
178 |
+
|
179 |
+
// Handle the ID component.
|
180 |
+
if ( 'id' === $attr ) {
|
181 |
+
$dependency .= " data-depends=\"{$value}\"";
|
182 |
+
continue;
|
183 |
+
}
|
184 |
+
|
185 |
+
// Handle boolean values.
|
186 |
+
if ( is_bool( $value ) ) {
|
187 |
+
if ( $value ) {
|
188 |
+
$dependency .= " data-{$attr}";
|
189 |
+
} else {
|
190 |
+
if ( 0 === stripos( $attr, 'is-not-' ) ) {
|
191 |
+
$attr = str_replace( 'is-not-', 'is-', $attr );
|
192 |
+
} else {
|
193 |
+
$attr = str_replace( 'is-', 'is-not-', $attr );
|
194 |
+
}
|
195 |
+
|
196 |
+
$dependency .= " data-{$attr}";
|
197 |
+
continue;
|
198 |
+
}
|
199 |
+
|
200 |
+
continue;
|
201 |
+
}
|
202 |
+
|
203 |
+
// Handle string and "empty" values
|
204 |
+
if( 0 === strlen( $value ) ) {
|
205 |
+
$dependency .= " data-{$attr}";
|
206 |
+
} else if ( 'is' === $attr ) {
|
207 |
+
$dependency .= " data-condition=\"{$value}\"";
|
208 |
+
} else if ( 'is-not' === $attr ) {
|
209 |
+
$dependency .= " data-condition-not=\"{$value}\"";
|
210 |
+
}
|
211 |
+
}
|
212 |
+
|
213 |
+
return $dependency;
|
214 |
+
}
|
common/src/functions/utils.php
CHANGED
@@ -716,31 +716,35 @@ if ( ! function_exists( 'tribe_get_least_version_ever_installed' ) ) {
|
|
716 |
Â
* @return string|boolean The SemVer version string or false if no info found.
|
717 |
Â
*/
|
718 |
Â
function tribe_get_least_version_ever_installed( $class ) {
|
719 |
-
|
Â
|
|
720 |
Â
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
Â
|
726 |
-
|
727 |
-
$history = array_filter( $history );
|
728 |
-
$history = array_unique( $history );
|
729 |
Â
|
730 |
-
|
731 |
-
|
732 |
-
|
Â
|
|
Â
|
|
733 |
Â
|
734 |
-
|
735 |
-
|
736 |
-
|
737 |
Â
|
738 |
-
|
739 |
-
if ( defined( get_class( $instance ) . '::VERSION' ) ) {
|
740 |
-
return $instance::VERSION;
|
741 |
Â
}
|
742 |
Â
}
|
743 |
Â
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
744 |
Â
// No version set.
|
745 |
Â
return false;
|
746 |
Â
}
|
@@ -765,29 +769,33 @@ if ( ! function_exists( 'tribe_get_greatest_version_ever_installed' ) ) {
|
|
765 |
Â
* @return string|boolean The SemVer version string or false if no info found.
|
766 |
Â
*/
|
767 |
Â
function tribe_get_greatest_version_ever_installed( $class ) {
|
768 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
769 |
Â
|
770 |
-
|
771 |
-
// Try for the version history first.
|
772 |
-
if ( ! empty( $instance->version_history_slug ) ) {
|
773 |
-
$history = (array) Tribe__Settings_Manager::get_option( $instance->version_history_slug );
|
774 |
Â
|
775 |
-
|
776 |
-
|
777 |
-
|
Â
|
|
Â
|
|
778 |
Â
|
779 |
-
|
780 |
-
|
781 |
-
|
782 |
Â
|
783 |
-
|
784 |
-
}
|
785 |
Â
}
|
Â
|
|
786 |
Â
|
787 |
-
|
788 |
-
|
789 |
-
|
790 |
-
}
|
791 |
Â
}
|
792 |
Â
|
793 |
Â
// No version set.
|
@@ -795,6 +803,43 @@ if ( ! function_exists( 'tribe_get_greatest_version_ever_installed' ) ) {
|
|
795 |
Â
}
|
796 |
Â
}
|
797 |
Â
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
798 |
Â
if ( ! function_exists( 'tribe_get_first_ever_installed_version' ) ) {
|
799 |
Â
/**
|
800 |
Â
* Gets the initially-recorded version number installed for the specified class of a plugin having a
|
@@ -812,33 +857,37 @@ if ( ! function_exists( 'tribe_get_first_ever_installed_version' ) ) {
|
|
812 |
Â
* @return string|boolean The SemVer version string or false if no info found.
|
813 |
Â
*/
|
814 |
Â
function tribe_get_first_ever_installed_version( $class ) {
|
815 |
-
|
Â
|
|
816 |
Â
|
817 |
-
|
818 |
-
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
// '0' may be logged as a version number, which isn't useful, so we remove it
|
823 |
-
while (
|
824 |
-
! empty( $history )
|
825 |
-
&& empty( $history[0] )
|
826 |
-
) {
|
827 |
-
array_shift( $history );
|
828 |
-
}
|
829 |
Â
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
834 |
Â
}
|
835 |
Â
|
836 |
-
//
|
837 |
-
if (
|
838 |
-
return $
|
839 |
Â
}
|
840 |
Â
}
|
841 |
Â
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
842 |
Â
// No version set.
|
843 |
Â
return false;
|
844 |
Â
}
|
@@ -863,11 +912,9 @@ if ( ! function_exists( 'tribe_get_currently_installed_version' ) ) {
|
|
863 |
Â
function tribe_get_currently_installed_version( $class ) {
|
864 |
Â
$instance = tribe_get_class_instance( $class );
|
865 |
Â
|
866 |
-
|
867 |
-
|
868 |
-
|
869 |
-
return $instance::VERSION;
|
870 |
-
}
|
871 |
Â
}
|
872 |
Â
|
873 |
Â
// No version set.
|
716 |
Â
* @return string|boolean The SemVer version string or false if no info found.
|
717 |
Â
*/
|
718 |
Â
function tribe_get_least_version_ever_installed( $class ) {
|
719 |
+
if ( ! is_string( $class ) ) {
|
720 |
+
$class = get_class( $class );
|
721 |
Â
|
722 |
+
if ( false === $class ) {
|
723 |
+
return false;
|
724 |
+
}
|
725 |
+
}
|
726 |
Â
|
727 |
+
$history = tribe_plugin_version_history( $class );
|
Â
|
|
Â
|
|
728 |
Â
|
729 |
+
// Try for the version history first.
|
730 |
+
if ( false !== $history ) {
|
731 |
+
// '0' may be logged as a version number, which isn't useful, so we remove it
|
732 |
+
$history = array_filter( $history );
|
733 |
+
$history = array_unique( $history );
|
734 |
Â
|
735 |
+
if ( ! empty( $history ) ) {
|
736 |
+
// Sort the array so smallest version number is first (likely how the array is stored anyway)
|
737 |
+
usort( $history, 'version_compare' );
|
738 |
Â
|
739 |
+
return array_shift( $history );
|
Â
|
|
Â
|
|
740 |
Â
}
|
741 |
Â
}
|
742 |
Â
|
743 |
+
// Fall back to the current plugin version.
|
744 |
+
if ( defined( $class . '::VERSION' ) ) {
|
745 |
+
return $class::VERSION;
|
746 |
+
}
|
747 |
+
|
748 |
Â
// No version set.
|
749 |
Â
return false;
|
750 |
Â
}
|
769 |
Â
* @return string|boolean The SemVer version string or false if no info found.
|
770 |
Â
*/
|
771 |
Â
function tribe_get_greatest_version_ever_installed( $class ) {
|
772 |
+
if ( ! is_string( $class ) ) {
|
773 |
+
$class = get_class( $class );
|
774 |
+
|
775 |
+
if ( false === $class ) {
|
776 |
+
return false;
|
777 |
+
}
|
778 |
+
}
|
779 |
Â
|
780 |
+
$history = tribe_plugin_version_history( $class );
|
Â
|
|
Â
|
|
Â
|
|
781 |
Â
|
782 |
+
// Try for the version history first.
|
783 |
+
if ( false !== $history ) {
|
784 |
+
// '0' may be logged as a version number, which isn't useful, so we remove it
|
785 |
+
$history = array_filter( $history );
|
786 |
+
$history = array_unique( $history );
|
787 |
Â
|
788 |
+
if ( ! empty( $history ) ) {
|
789 |
+
// Sort the array so smallest version number is first (likely how the array is stored anyway)
|
790 |
+
usort( $history, 'version_compare' );
|
791 |
Â
|
792 |
+
return array_pop( $history );
|
Â
|
|
793 |
Â
}
|
794 |
+
}
|
795 |
Â
|
796 |
+
// Fall back to the current plugin version.
|
797 |
+
if ( defined( $class . '::VERSION' ) ) {
|
798 |
+
return $class::VERSION;
|
Â
|
|
799 |
Â
}
|
800 |
Â
|
801 |
Â
// No version set.
|
803 |
Â
}
|
804 |
Â
}
|
805 |
Â
|
806 |
+
/**
|
807 |
+
* Gets the plugin version history for a given main class.
|
808 |
+
*
|
809 |
+
* Important to note we cannot setup instances to get these values, we need to
|
810 |
+
* use static mapping here, since generating a full instance will effectively
|
811 |
+
* activate parts of the plugin behind the scenes.
|
812 |
+
*
|
813 |
+
* @since TBD
|
814 |
+
*
|
815 |
+
* @param string $class Which plugin main class we are looking for.
|
816 |
+
*
|
817 |
+
* @return array|false
|
818 |
+
*/
|
819 |
+
function tribe_plugin_version_history( $class ) {
|
820 |
+
if ( ! is_string( $class ) ) {
|
821 |
+
$class = get_class( $class );
|
822 |
+
|
823 |
+
if ( false === $class ) {
|
824 |
+
return false;
|
825 |
+
}
|
826 |
+
}
|
827 |
+
|
828 |
+
$map = [
|
829 |
+
'Tribe__Events__Main' => 'previous_ecp_versions',
|
830 |
+
'Tribe__Tickets__Main' => 'previous_event_tickets_versions',
|
831 |
+
'tickets.main' => 'previous_event_tickets_versions',
|
832 |
+
'Tribe__Tickets_Plus__Main' => 'previous_event_tickets_plus_versions',
|
833 |
+
'tickets-plus.main' => 'previous_event_tickets_plus_versions',
|
834 |
+
];
|
835 |
+
|
836 |
+
if ( ! isset( $map[ $class ] ) ) {
|
837 |
+
return false;
|
838 |
+
}
|
839 |
+
|
840 |
+
return (array) Tribe__Settings_Manager::get_option( $map[ $class ] );
|
841 |
+
}
|
842 |
+
|
843 |
Â
if ( ! function_exists( 'tribe_get_first_ever_installed_version' ) ) {
|
844 |
Â
/**
|
845 |
Â
* Gets the initially-recorded version number installed for the specified class of a plugin having a
|
857 |
Â
* @return string|boolean The SemVer version string or false if no info found.
|
858 |
Â
*/
|
859 |
Â
function tribe_get_first_ever_installed_version( $class ) {
|
860 |
+
if ( ! is_string( $class ) ) {
|
861 |
+
$class = get_class( $class );
|
862 |
Â
|
863 |
+
if ( false === $class ) {
|
864 |
+
return false;
|
865 |
+
}
|
866 |
+
}
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
867 |
Â
|
868 |
+
$history = tribe_plugin_version_history( $class );
|
869 |
+
|
870 |
+
// Try for the version history first.
|
871 |
+
if ( false !== $history ) {
|
872 |
+
// '0' may be logged as a version number, which isn't useful, so we remove it
|
873 |
+
while (
|
874 |
+
! empty( $history )
|
875 |
+
&& empty( $history[0] )
|
876 |
+
) {
|
877 |
+
array_shift( $history );
|
878 |
Â
}
|
879 |
Â
|
880 |
+
// Found it so return it
|
881 |
+
if ( ! empty( $history[0] ) ) {
|
882 |
+
return $history[0];
|
883 |
Â
}
|
884 |
Â
}
|
885 |
Â
|
886 |
+
// Fall back to the current plugin version.
|
887 |
+
if ( defined( $class . '::VERSION' ) ) {
|
888 |
+
return $class::VERSION;
|
889 |
+
}
|
890 |
+
|
891 |
Â
// No version set.
|
892 |
Â
return false;
|
893 |
Â
}
|
912 |
Â
function tribe_get_currently_installed_version( $class ) {
|
913 |
Â
$instance = tribe_get_class_instance( $class );
|
914 |
Â
|
915 |
+
// First try for class constant (different logic from the other similar functions).
|
916 |
+
if ( defined( $class . '::VERSION' ) ) {
|
917 |
+
return $class::VERSION;
|
Â
|
|
Â
|
|
918 |
Â
}
|
919 |
Â
|
920 |
Â
// No version set.
|
common/src/resources/css/common-full.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.tribe-common figure{line-height:0}.tribe-common figcaption{line-height:normal}.tribe-common a{background-color:transparent;-webkit-text-decoration-skip:objects}.tribe-common abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.tribe-common code,.tribe-common kbd,.tribe-common pre,.tribe-common samp{font-family:monospace;font-size:1em}.tribe-common b,.tribe-common strong{font-weight:inherit;font-weight:bolder}.tribe-common dfn{font-style:italic}.tribe-common mark{background-color:#ff0;color:#000}.tribe-common small{font-size:80%}.tribe-common sub,.tribe-common sup{font-size:75%;line-height:0}.tribe-common hr{border:0;height:0}.tribe-common button,.tribe-common input[type=button],.tribe-common input[type=email],.tribe-common input[type=password],.tribe-common input[type=reset],.tribe-common input[type=search],.tribe-common input[type=submit],.tribe-common input[type=text],.tribe-common input[type=url],.tribe-common textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none}.tribe-common button,.tribe-common input,.tribe-common optgroup,.tribe-common select,.tribe-common textarea{color:inherit;font:inherit;line-height:normal;-webkit-font-smoothing:antialiased}.tribe-common button,.tribe-common input,.tribe-common select,.tribe-common textarea{outline:0;border-radius:0}.tribe-common select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.tribe-common optgroup{font-weight:700}.tribe-common h1,.tribe-common h2,.tribe-common h3,.tribe-common h4,.tribe-common h5,.tribe-common h6,.tribe-common p{font-weight:400;text-rendering:optimizeLegibility}#top .main_color .tribe-common button[disabled],#top.tribe-theme-enfold .tribe-common button[disabled]{opacity:1}.tribe-theme-twentynineteen .tribe-common h1:before,.tribe-theme-twentynineteen .tribe-common h2:before{content:none}.tribe-theme-twentynineteen .tribe-common button,.tribe-theme-twentynineteen .tribe-common input[type=button],.tribe-theme-twentynineteen .tribe-common input[type=reset],.tribe-theme-twentynineteen .tribe-common input[type=submit]{outline:none}.tribe-theme-twentynineteen .tribe-common td,.tribe-theme-twentynineteen .tribe-common th{word-break:normal}.tribe-theme-twentyseventeen .tribe-common h5{letter-spacing:normal;text-transform:none}.tribe-theme-twentyseventeen .tribe-common input[type=text]{border-radius:0}.tribe-theme-twentytwenty .tribe-common{background-color:#fff;letter-spacing:normal}.tribe-theme-twentytwenty .tribe-common input,.tribe-theme-twentytwenty .tribe-common textarea{letter-spacing:normal}.tribe-theme-twentytwenty .tribe-common *{word-break:normal}.tribe-common .tribe-common-form-control-checkbox,.tribe-common .tribe-common-form-control-radio{line-height:0}.tribe-common .tribe-common-form-control-checkbox__label,.tribe-common .tribe-common-form-control-radio__label{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:14px;line-height:1.62;font-weight:400}.tribe-common .tribe-common-form-control-checkbox__label:hover,.tribe-common .tribe-common-form-control-radio__label:hover{opacity:.8}.tribe-common .tribe-common-form-control-checkbox__input,.tribe-common .tribe-common-form-control-radio__input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border:1px solid #141827;height:20px;position:relative;width:20px}.tribe-common .tribe-common-form-control-checkbox__input:active,.tribe-common .tribe-common-form-control-checkbox__input:focus,.tribe-common .tribe-common-form-control-checkbox__input:hover,.tribe-common .tribe-common-form-control-radio__input:active,.tribe-common .tribe-common-form-control-radio__input:focus,.tribe-common .tribe-common-form-control-radio__input:hover{border-color:#141827;opacity:.8}.tribe-common .tribe-common-form-control-checkbox__input:checked,.tribe-common .tribe-common-form-control-radio__input:checked{background-color:#141827}.tribe-common .tribe-common-form-control-checkbox__input{border-radius:4px}.tribe-common .tribe-common-form-control-checkbox__input:checked:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='9' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.6.1L3.9 6.8 1.4 4.3c-.1-.1-.3-.1-.4 0l-.8.8c-.1.1-.1.3 0 .4l3.4 3.4c.2.1.4.1.5 0l7.7-7.7c.1-.1.1-.3 0-.4L11 .1c-.1-.1-.3-.1-.4 0z' fill='%23fff'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;content:"";display:block;height:9px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:12px}.tribe-common .tribe-common-form-control-checkbox__input:focus+.tribe-common-form-control-checkbox__label,.tribe-common .tribe-common-form-control-checkbox__input:hover+.tribe-common-form-control-checkbox__label{opacity:.8}.tribe-common .tribe-common-form-control-radio__input{border-radius:50%}.tribe-common .tribe-common-form-control-radio__input:checked:before{background-color:#fff;border-radius:50%;content:"";display:block;height:8px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:8px}.tribe-common .tribe-common-form-control-radio__input:focus+.tribe-common-form-control-radio__label,.tribe-common .tribe-common-form-control-radio__input:hover+.tribe-common-form-control-radio__label{opacity:.8}.tribe-theme-twentytwenty .tribe-common .tribe-common-form-control-checkbox__input:checked:before{margin:0}#top .main_color .tribe-common .tribe-common-form-control-checkbox__label,#top .main_color .tribe-common .tribe-common-form-control-radio__label,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-checkbox__label,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-radio__label{font-weight:400;font-size:14px}.tribe-common .tribe-common-form-control-slider{line-height:0}.tribe-common .tribe-common-form-control-slider__input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:0}.tribe-common .tribe-common-form-control-slider__input::-webkit-slider-runnable-track{border:none;border-radius:5px;height:10px;margin:5px 0;padding:0;position:relative;transition:background-color .2s ease;background-color:#334aff}.tribe-common .tribe-common-form-control-slider__input::-moz-range-track{border:none;border-radius:5px;height:10px;margin:5px 0;padding:0;position:relative;transition:background-color .2s ease;background-color:#334aff}.tribe-common .tribe-common-form-control-slider__input::-ms-track{background-color:transparent;border-color:transparent;border-width:5px 0;color:transparent;height:10px}.tribe-common .tribe-common-form-control-slider__input::-ms-fill-lower,.tribe-common .tribe-common-form-control-slider__input::-ms-fill-upper{background-color:#334aff;border-radius:10px}.tribe-common .tribe-common-form-control-slider__input::-webkit-slider-thumb{background-color:#fff;border:1px solid #7d7d7d;border-radius:50%;box-shadow:0 2px 5px 0 rgba(0,0,0,.14);height:20px;width:20px;margin-top:-5px;-webkit-appearance:none;appearance:none}.tribe-common .tribe-common-form-control-slider__input::-moz-range-thumb{background-color:#fff;border:1px solid #7d7d7d;border-radius:50%;box-shadow:0 2px 5px 0 rgba(0,0,0,.14);height:20px;width:20px;margin-top:-5px}.tribe-common .tribe-common-form-control-slider__input::-ms-thumb{background-color:#fff;border:1px solid #7d7d7d;border-radius:50%;box-shadow:0 2px 5px 0 rgba(0,0,0,.14);height:20px;width:20px;margin-top:-5px;box-shadow:none;margin-top:-1px}.tribe-common .tribe-common-form-control-slider__label{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:12px;line-height:1.38;font-weight:400;color:#5d5d5d}#top .main_color .tribe-common .tribe-common-form-control-slider__label,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-slider__label{font-weight:400;font-size:12px}.tribe-common .tribe-common-form-control-text__input{font-size:16px;border:0;border-bottom:1px solid #d5d5d5}.tribe-common--breakpoint-medium.tribe-common .tribe-common-form-control-text__input,.tribe-common .tribe-common-form-control-text__input{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;line-height:1.62;font-weight:400}.tribe-common--breakpoint-medium.tribe-common .tribe-common-form-control-text__input{font-size:14px;border:0}.tribe-common .tribe-common-form-control-text__input::-webkit-input-placeholder{color:#5d5d5d;font-style:normal;opacity:1}.tribe-common .tribe-common-form-control-text__input::-moz-placeholder{color:#5d5d5d;font-style:normal;opacity:1}.tribe-common .tribe-common-form-control-text__input:-ms-input-placeholder,.tribe-common .tribe-common-form-control-text__input::-ms-input-placeholder{color:#5d5d5d;font-style:normal;opacity:1}.tribe-common .tribe-common-form-control-text__input::placeholder{color:#5d5d5d;font-style:normal;opacity:1}.tribe-common .tribe-common-form-control-text__input:focus{border-bottom-color:#141827;outline:0}.tribe-theme-twentyseventeen .tribe-common .tribe-common-form-control-text__input{color:#141827}.tribe-theme-twentytwenty .tribe-common .tribe-common-form-control-text__input{line-height:inherit}#top .main_color .tribe-common .tribe-common-form-control-text__input,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-text__input{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:16px;line-height:1.62;font-weight:400;background:#fff;border:0;border-bottom:1px solid #d5d5d5}#top .main_color .tribe-common .tribe-common-form-control-text__input:focus,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-text__input:focus{border-bottom-color:#141827;box-shadow:none}#top .main_color .tribe-common.tribe-common--breakpoint-medium .tribe-common-form-control-text__input,#top.tribe-theme-enfold .tribe-common.tribe-common--breakpoint-medium .tribe-common-form-control-text__input{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:14px;line-height:1.62;font-weight:400;border:0}.tribe-common .tribe-common-form-control-toggle{line-height:0;position:relative}.tribe-common .tribe-common-form-control-toggle__input{border:none;border-radius:5px;height:10px;margin:5px 0;padding:0;position:relative;transition:background-color .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#7d7d7d;width:40px}.tribe-common .tribe-common-form-control-toggle__input::-ms-check{display:none}.tribe-common .tribe-common-form-control-toggle__input+label:before{background-color:#fff;border:1px solid #7d7d7d;border-radius:50%;box-shadow:0 2px 5px 0 rgba(0,0,0,.14);height:20px;width:20px;content:"";left:0;position:absolute;transition:transform .2s ease}.tribe-common .tribe-common-form-control-toggle__input:checked{background-color:#334aff}.tribe-common .tribe-common-form-control-toggle__input:checked+label:before{transform:translateX(20px)}.tribe-common .tribe-common-form-control-toggle__label{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:12px;line-height:1.38;font-weight:400;color:#5d5d5d}#top .main_color .tribe-common .tribe-common-form-control-toggle__label,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-toggle__label{font-weight:400;font-size:12px}.tribe-theme-twentytwenty .tribe-common .tribe-common-form-control-toggle__input:checked:before{content:none}.tribe-common a,.tribe-common a:active,.tribe-common a:focus,.tribe-common a:hover,.tribe-common a:visited{color:#141827;outline:0;text-decoration:none}.tribe-theme-twentyseventeen .tribe-common a{box-shadow:none}.tribe-theme-twentyseventeen .tribe-common a:focus,.tribe-theme-twentyseventeen .tribe-common a:hover{box-shadow:none;color:#141827}.tribe-theme-twentynineteen .entry .tribe-common a,.tribe-theme-twentynineteen .tribe-common a{text-decoration:none}.tribe-common .tribe-common-anchor{border-bottom:2px solid transparent;transition:border-color .2s ease}.tribe-common .tribe-common-anchor:active,.tribe-common .tribe-common-anchor:focus,.tribe-common .tribe-common-anchor:hover{border-bottom:2px solid #141827}.tribe-common .tribe-common-anchor-alt{border-bottom:2px solid #334aff;color:#141827;transition:color .2s ease}.tribe-common .tribe-common-anchor-alt:active,.tribe-common .tribe-common-anchor-alt:focus,.tribe-common .tribe-common-anchor-alt:hover{border-bottom:2px solid #334aff;color:#334aff}.tribe-common .tribe-common-anchor-thin{border-bottom:1px solid transparent;transition:border-color .2s ease}.tribe-common .tribe-common-anchor-thin:active,.tribe-common .tribe-common-anchor-thin:focus,.tribe-common .tribe-common-anchor-thin:hover{border-bottom:1px solid #141827}.tribe-common .tribe-common-anchor-thin-alt{border-bottom:1px solid #334aff;color:#141827;transition:color .2s ease}.tribe-common .tribe-common-anchor-thin-alt:active,.tribe-common .tribe-common-anchor-thin-alt:focus,.tribe-common .tribe-common-anchor-thin-alt:hover{border-bottom:1px solid #334aff;color:#334aff}.tribe-theme-twentyseventeen .tribe-common .tribe-common-anchor-alt:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-anchor-alt:hover,.tribe-theme-twentyseventeen .tribe-common .tribe-common-anchor-thin-alt:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-anchor-thin-alt:hover{color:#334aff}.tribe-common .tribe-common-b1{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.62}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b1{font-size:16px;line-height:1.62}.tribe-common .tribe-common-b1--bold{font-weight:700}.tribe-common .tribe-common-b2{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:12px;font-weight:400;line-height:1.38}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b2{font-size:14px;line-height:1.62}.tribe-common .tribe-common-b2--bold{font-weight:700}.tribe-common .tribe-common-b3{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:11px;font-weight:400;line-height:1.5}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b3{font-size:12px;line-height:1.38}.tribe-common .tribe-common-b3--bold{font-weight:700}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b1--min-medium{font-size:16px;line-height:1.62}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b2--min-medium{font-size:14px;line-height:1.62}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b3--min-medium{font-size:12px;line-height:1.38}.tribe-common .tribe-common-cta{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:12px;line-height:1.38;font-weight:400;font-weight:700;border-bottom:2px solid transparent;transition:border-color .2s ease}.tribe-common .tribe-common-cta:active,.tribe-common .tribe-common-cta:focus,.tribe-common .tribe-common-cta:hover{border-bottom:2px solid #141827}.tribe-common .tribe-common-cta--alt{border-bottom:2px solid #334aff;color:#141827;transition:color .2s ease}.tribe-common .tribe-common-cta--alt:active,.tribe-common .tribe-common-cta--alt:focus,.tribe-common .tribe-common-cta--alt:hover{border-bottom:2px solid #334aff;color:#334aff}.tribe-common .tribe-common-cta--thin{border-bottom:1px solid transparent;transition:border-color .2s ease}.tribe-common .tribe-common-cta--thin:active,.tribe-common .tribe-common-cta--thin:focus,.tribe-common .tribe-common-cta--thin:hover{border-bottom:1px solid #141827}.tribe-common .tribe-common-cta--thin-alt{border-bottom:1px solid #334aff;color:#141827;transition:color .2s ease}.tribe-common .tribe-common-cta--thin-alt:active,.tribe-common .tribe-common-cta--thin-alt:focus,.tribe-common .tribe-common-cta--thin-alt:hover{border-bottom:1px solid #334aff;color:#334aff}.tribe-theme-twentyseventeen .tribe-common .tribe-common-cta--alt:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-cta--alt:hover,.tribe-theme-twentyseventeen .tribe-common .tribe-common-cta--thin-alt:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-cta--thin-alt:hover{color:#334aff}.tribe-common .tribe-common-h1{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:28px;line-height:1.42}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h1{font-size:42px;line-height:1.38}.tribe-common .tribe-common-h2{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:24px;line-height:1.42}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h2{font-size:32px;line-height:1.38}.tribe-common .tribe-common-h3{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:22px;line-height:1.5}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h3{font-size:28px;line-height:1.42}.tribe-common .tribe-common-h4{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:20px;line-height:1.42}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h4{font-size:24px;line-height:1.42}.tribe-common .tribe-common-h5{font-size:18px}.tribe-common .tribe-common-h5,.tribe-common .tribe-common-h6{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;line-height:1.5}.tribe-common .tribe-common-h6{font-size:16px}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h6{font-size:16px;line-height:1.62}.tribe-common .tribe-common-h7{font-size:14px;line-height:1.62}.tribe-common .tribe-common-h7,.tribe-common .tribe-common-h8{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700}.tribe-common .tribe-common-h8{font-size:12px;line-height:1.38}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h3--min-medium{font-size:28px;line-height:1.42}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h4--min-medium{font-size:24px;line-height:1.42}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h5--min-medium{font-size:18px;line-height:1.5}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h6--min-medium{font-size:16px;line-height:1.62}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h7--min-medium{font-size:14px;line-height:1.62}.tribe-common .tribe-common-h--alt{font-weight:400}.tribe-theme-avada #main .tribe-common .tribe-common-h1{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:28px;line-height:1.42}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h1{font-size:42px;line-height:1.38}.tribe-theme-avada #main .tribe-common .tribe-common-h2{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:24px;line-height:1.42}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h2{font-size:32px;line-height:1.38}.tribe-theme-avada #main .tribe-common .tribe-common-h3{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:22px;line-height:1.5}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h3{font-size:28px;line-height:1.42}.tribe-theme-avada #main .tribe-common .tribe-common-h4{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:20px;line-height:1.42}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h4{font-size:24px;line-height:1.42}.tribe-theme-avada #main .tribe-common .tribe-common-h5{font-size:18px}.tribe-theme-avada #main .tribe-common .tribe-common-h5,.tribe-theme-avada #main .tribe-common .tribe-common-h6{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;line-height:1.5}.tribe-theme-avada #main .tribe-common .tribe-common-h6{font-size:16px}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h6{font-size:16px;line-height:1.62}.tribe-theme-avada #main .tribe-common .tribe-common-h7{font-size:14px;line-height:1.62}.tribe-theme-avada #main .tribe-common .tribe-common-h7,.tribe-theme-avada #main .tribe-common .tribe-common-h8{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700}.tribe-theme-avada #main .tribe-common .tribe-common-h8{font-size:12px;line-height:1.38}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h3--min-medium{font-size:28px;line-height:1.42}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h4--min-medium{font-size:24px;line-height:1.42}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h5--min-medium{font-size:18px;line-height:1.5}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h6--min-medium{font-size:16px;line-height:1.62}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h7--min-medium{font-size:14px;line-height:1.62}.tribe-theme-avada #main .tribe-common .tribe-common-h--alt{font-weight:400}.tribe-common button{border:none}.tribe-common button,.tribe-common button:focus,.tribe-common button:hover,.tribe-theme-twentyseventeen .tribe-common button:focus,.tribe-theme-twentyseventeen .tribe-common button:hover{background-color:transparent}.tribe-theme-twentytwenty .tribe-common button{background-color:transparent;text-transform:inherit}.tribe-theme-twentytwenty .tribe-common button:focus,.tribe-theme-twentytwenty .tribe-common button:hover{text-decoration:none}.tribe-common .tribe-common-svgicon--featured{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='16' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h16v20l-7.902-5.122L0 20z' fill='%23334aff'/%3E%3C/svg%3E")}.tribe-theme-enfold .tribe-common th{letter-spacing:0;text-transform:none}.tribe-common .tribe-common-c-btn-border,.tribe-common a.tribe-common-c-btn-border{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:14px;line-height:1.62;font-weight:400;font-weight:700;border:0;cursor:pointer;display:inline-block;height:auto;padding:0;text-decoration:none;width:auto;background-color:#fff;border:1px solid #334aff;border-radius:4px;text-align:center;transition:all .2s ease;color:#334aff;padding:11px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn-border,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn-border{width:auto}.tribe-common .tribe-common-c-btn-border:focus,.tribe-common .tribe-common-c-btn-border:hover,.tribe-common a.tribe-common-c-btn-border:focus,.tribe-common a.tribe-common-c-btn-border:hover{color:#fff;background-color:#334aff}.tribe-common .tribe-common-c-btn-border:active,.tribe-common a.tribe-common-c-btn-border:active{opacity:.9}.tribe-common .tribe-common-c-btn-border--secondary,.tribe-common a.tribe-common-c-btn-border--secondary{border-color:#141827;color:#141827}.tribe-common .tribe-common-c-btn-border--secondary:focus,.tribe-common .tribe-common-c-btn-border--secondary:hover,.tribe-common a.tribe-common-c-btn-border--secondary:focus,.tribe-common a.tribe-common-c-btn-border--secondary:hover{background-color:#141827}.tribe-common .tribe-common-c-btn-border--secondary:active,.tribe-common a.tribe-common-c-btn-border--secondary:active{opacity:.9}.tribe-common .tribe-common-c-btn-border--alt,.tribe-common a.tribe-common-c-btn-border--alt{border-color:#e4e4e4;color:#141827;font-weight:400}.tribe-common .tribe-common-c-btn-border--alt:focus,.tribe-common .tribe-common-c-btn-border--alt:hover,.tribe-common a.tribe-common-c-btn-border--alt:focus,.tribe-common a.tribe-common-c-btn-border--alt:hover{border-color:#141827;background-color:#fff;color:#141827}.tribe-common .tribe-common-c-btn-border--alt:active,.tribe-common a.tribe-common-c-btn-border--alt:active{opacity:.9}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border:hover{background-color:#334aff}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border--secondary:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border--secondary:hover{background-color:#141827}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border--alt:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border--alt:hover{background-color:#fff}.tribe-common .tribe-common-c-btn-border-small,.tribe-common a.tribe-common-c-btn-border-small{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:12px;line-height:1.38;font-weight:400;border:0;cursor:pointer;display:inline-block;height:auto;padding:0;text-decoration:none;width:auto;background-color:#fff;border:1px solid #d5d5d5;border-radius:4px;text-align:center;transition:color .2s ease,border-color .2s ease}.tribe-common .tribe-common-c-btn-border-small:focus,.tribe-common .tribe-common-c-btn-border-small:hover,.tribe-common a.tribe-common-c-btn-border-small:focus,.tribe-common a.tribe-common-c-btn-border-small:hover{background-color:#fff}.tribe-common .tribe-common-c-btn-border-small:active,.tribe-common a.tribe-common-c-btn-border-small:active{border-color:#141827}.tribe-common .tribe-common-c-btn-border-small,.tribe-common a.tribe-common-c-btn-border-small{color:#5d5d5d;padding:14px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn-border-small,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn-border-small{padding:6px 15px;width:auto}.tribe-common .tribe-common-c-btn-border-small:active,.tribe-common .tribe-common-c-btn-border-small:focus,.tribe-common .tribe-common-c-btn-border-small:hover,.tribe-common a.tribe-common-c-btn-border-small:active,.tribe-common a.tribe-common-c-btn-border-small:focus,.tribe-common a.tribe-common-c-btn-border-small:hover{color:#141827}.tribe-common .tribe-common-c-btn-border-small:disabled,.tribe-common a.tribe-common-c-btn-border-small:disabled{color:#d5d5d5}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border-small:hover{background-color:#fff}.tribe-common .tribe-common-c-btn-icon{border:0;cursor:pointer;display:inline-block;height:auto;padding:0;text-decoration:none;width:auto}.tribe-common .tribe-common-c-btn-icon--border{align-items:center;background-color:#fff;border:1px solid #d5d5d5;display:inline-flex;height:56px;justify-content:center;transition:none;width:56px}.tribe-common .tribe-common-c-btn-icon--border:focus,.tribe-common .tribe-common-c-btn-icon--border:hover{background-color:#fff}.tribe-common .tribe-common-c-btn-icon--border:active{border-color:#141827}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-icon--border:hover{background-color:#fff}.tribe-common .tribe-common-c-btn,.tribe-common a.tribe-common-c-btn{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:14px;line-height:1.62;font-weight:400;font-weight:700;border:0;cursor:pointer;display:inline-block;height:auto;padding:0;text-decoration:none;width:auto;border-radius:4px;color:#fff;text-align:center;transition:background-color .2s ease;background-color:#334aff;padding:11px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn{width:auto}.tribe-common .tribe-common-c-btn:focus,.tribe-common .tribe-common-c-btn:hover,.tribe-common a.tribe-common-c-btn:focus,.tribe-common a.tribe-common-c-btn:hover{background-color:rgba(51,74,255,.8)}.tribe-common .tribe-common-c-btn:active,.tribe-common a.tribe-common-c-btn:active{background-color:rgba(51,74,255,.9)}.tribe-common .tribe-common-c-btn:disabled,.tribe-common a.tribe-common-c-btn:disabled{background-color:rgba(51,74,255,.07)}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn:hover{background-color:rgba(51,74,255,.8);color:#fff}.tribe-theme-twentytwenty .tribe-common .tribe-common-c-btn{background-color:#334aff}.tribe-theme-twentytwenty .tribe-common .tribe-common-c-btn:focus,.tribe-theme-twentytwenty .tribe-common .tribe-common-c-btn:hover{background-color:rgba(51,74,255,.8);color:#fff}.tribe-common .tribe-common-c-loader__dot{animation-name:a;animation-duration:2.24s;animation-iteration-count:infinite;animation-direction:normal}.tribe-common .tribe-common-c-loader__dot--first{animation-delay:.45s}.tribe-common .tribe-common-c-loader__dot--second{animation-delay:1.05s}.tribe-common .tribe-common-c-loader__dot--third{animation-delay:1.35s}@keyframes a{50%{background-color:#334aff}}
|
1 |
+
.tribe-common figure{line-height:0}.tribe-common figcaption{line-height:normal}.tribe-common a{background-color:transparent;-webkit-text-decoration-skip:objects}.tribe-common abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.tribe-common code,.tribe-common kbd,.tribe-common pre,.tribe-common samp{font-family:monospace;font-size:1em}.tribe-common b,.tribe-common strong{font-weight:inherit;font-weight:bolder}.tribe-common dfn{font-style:italic}.tribe-common mark{background-color:#ff0;color:#000}.tribe-common small{font-size:80%}.tribe-common sub,.tribe-common sup{font-size:75%;line-height:0}.tribe-common hr{border:0;height:0}.tribe-common button,.tribe-common input[type=button],.tribe-common input[type=email],.tribe-common input[type=password],.tribe-common input[type=reset],.tribe-common input[type=search],.tribe-common input[type=submit],.tribe-common input[type=text],.tribe-common input[type=url],.tribe-common textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none}.tribe-common button,.tribe-common input,.tribe-common optgroup,.tribe-common select,.tribe-common textarea{color:inherit;font:inherit;line-height:normal;-webkit-font-smoothing:antialiased}.tribe-common button,.tribe-common input,.tribe-common select,.tribe-common textarea{outline:0;border-radius:0}.tribe-common select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.tribe-common optgroup{font-weight:700}.tribe-common h1,.tribe-common h2,.tribe-common h3,.tribe-common h4,.tribe-common h5,.tribe-common h6,.tribe-common p{font-weight:400;text-rendering:optimizeLegibility}#top .main_color .tribe-common button[disabled],#top.tribe-theme-enfold .tribe-common button[disabled]{opacity:1}.tribe-theme-twentynineteen .tribe-common h1:before,.tribe-theme-twentynineteen .tribe-common h2:before{content:none}.tribe-theme-twentynineteen .tribe-common button,.tribe-theme-twentynineteen .tribe-common input[type=button],.tribe-theme-twentynineteen .tribe-common input[type=reset],.tribe-theme-twentynineteen .tribe-common input[type=submit]{outline:none}.tribe-theme-twentynineteen .tribe-common td,.tribe-theme-twentynineteen .tribe-common th{word-break:normal}.tribe-theme-twentyseventeen .tribe-common h5{letter-spacing:normal;text-transform:none}.tribe-theme-twentyseventeen .tribe-common input[type=text]{border-radius:0}.tribe-theme-twentytwenty .tribe-common{background-color:#fff;letter-spacing:normal}.tribe-theme-twentytwenty .tribe-common input,.tribe-theme-twentytwenty .tribe-common textarea{letter-spacing:normal}.tribe-theme-twentytwenty .tribe-common *{word-break:normal}.tribe-common .tribe-common-form-control-checkbox,.tribe-common .tribe-common-form-control-radio{line-height:0}.tribe-common .tribe-common-form-control-checkbox__label,.tribe-common .tribe-common-form-control-radio__label{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:14px;line-height:1.62;font-weight:400}.tribe-common .tribe-common-form-control-checkbox__label:hover,.tribe-common .tribe-common-form-control-radio__label:hover{opacity:.8}.tribe-common .tribe-common-form-control-checkbox__input,.tribe-common .tribe-common-form-control-radio__input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border:1px solid #141827;height:20px;position:relative;width:20px}.tribe-common .tribe-common-form-control-checkbox__input:active,.tribe-common .tribe-common-form-control-checkbox__input:focus,.tribe-common .tribe-common-form-control-checkbox__input:hover,.tribe-common .tribe-common-form-control-radio__input:active,.tribe-common .tribe-common-form-control-radio__input:focus,.tribe-common .tribe-common-form-control-radio__input:hover{border-color:#141827;opacity:.8}.tribe-common .tribe-common-form-control-checkbox__input:checked,.tribe-common .tribe-common-form-control-radio__input:checked{background-color:#141827}.tribe-common .tribe-common-form-control-checkbox__input{border-radius:4px}.tribe-common .tribe-common-form-control-checkbox__input:checked:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='9' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.6.1L3.9 6.8 1.4 4.3c-.1-.1-.3-.1-.4 0l-.8.8c-.1.1-.1.3 0 .4l3.4 3.4c.2.1.4.1.5 0l7.7-7.7c.1-.1.1-.3 0-.4L11 .1c-.1-.1-.3-.1-.4 0z' fill='%23fff'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;content:"";display:block;height:9px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:12px}.tribe-common .tribe-common-form-control-checkbox__input:focus+.tribe-common-form-control-checkbox__label,.tribe-common .tribe-common-form-control-checkbox__input:hover+.tribe-common-form-control-checkbox__label{opacity:.8}.tribe-common .tribe-common-form-control-radio__input{border-radius:50%}.tribe-common .tribe-common-form-control-radio__input:checked:before{background-color:#fff;border-radius:50%;content:"";display:block;height:8px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:8px}.tribe-common .tribe-common-form-control-radio__input:focus+.tribe-common-form-control-radio__label,.tribe-common .tribe-common-form-control-radio__input:hover+.tribe-common-form-control-radio__label{opacity:.8}.tribe-theme-twentytwenty .tribe-common .tribe-common-form-control-checkbox__input:checked:before{margin:0}#top .main_color .tribe-common .tribe-common-form-control-checkbox__label,#top .main_color .tribe-common .tribe-common-form-control-radio__label,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-checkbox__label,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-radio__label{font-weight:400;font-size:14px}.tribe-common .tribe-common-form-control-slider{line-height:0}.tribe-common .tribe-common-form-control-slider__input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:0}.tribe-common .tribe-common-form-control-slider__input::-webkit-slider-runnable-track{border:none;border-radius:5px;height:10px;margin:5px 0;padding:0;position:relative;transition:background-color .2s ease;background-color:#334aff}.tribe-common .tribe-common-form-control-slider__input::-moz-range-track{border:none;border-radius:5px;height:10px;margin:5px 0;padding:0;position:relative;transition:background-color .2s ease;background-color:#334aff}.tribe-common .tribe-common-form-control-slider__input::-ms-track{background-color:transparent;border-color:transparent;border-width:5px 0;color:transparent;height:10px}.tribe-common .tribe-common-form-control-slider__input::-ms-fill-lower,.tribe-common .tribe-common-form-control-slider__input::-ms-fill-upper{background-color:#334aff;border-radius:10px}.tribe-common .tribe-common-form-control-slider__input::-webkit-slider-thumb{background-color:#fff;border:1px solid #7d7d7d;border-radius:50%;box-shadow:0 2px 5px 0 rgba(0,0,0,.14);height:20px;width:20px;margin-top:-5px;-webkit-appearance:none;appearance:none}.tribe-common .tribe-common-form-control-slider__input::-moz-range-thumb{background-color:#fff;border:1px solid #7d7d7d;border-radius:50%;box-shadow:0 2px 5px 0 rgba(0,0,0,.14);height:20px;width:20px;margin-top:-5px}.tribe-common .tribe-common-form-control-slider__input::-ms-thumb{background-color:#fff;border:1px solid #7d7d7d;border-radius:50%;box-shadow:0 2px 5px 0 rgba(0,0,0,.14);height:20px;width:20px;margin-top:-5px;box-shadow:none;margin-top:-1px}.tribe-common .tribe-common-form-control-slider__label{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:12px;line-height:1.38;font-weight:400;color:#5d5d5d}#top .main_color .tribe-common .tribe-common-form-control-slider__label,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-slider__label{font-weight:400;font-size:12px}.tribe-common .tribe-common-form-control-text__input{font-size:16px;border:0;border-bottom:1px solid #d5d5d5}.tribe-common--breakpoint-medium.tribe-common .tribe-common-form-control-text__input,.tribe-common .tribe-common-form-control-text__input{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;line-height:1.62;font-weight:400}.tribe-common--breakpoint-medium.tribe-common .tribe-common-form-control-text__input{font-size:14px;border:0}.tribe-common .tribe-common-form-control-text__input::-webkit-input-placeholder{color:#5d5d5d;font-style:normal;opacity:1}.tribe-common .tribe-common-form-control-text__input::-moz-placeholder{color:#5d5d5d;font-style:normal;opacity:1}.tribe-common .tribe-common-form-control-text__input:-ms-input-placeholder,.tribe-common .tribe-common-form-control-text__input::-ms-input-placeholder{color:#5d5d5d;font-style:normal;opacity:1}.tribe-common .tribe-common-form-control-text__input::placeholder{color:#5d5d5d;font-style:normal;opacity:1}.tribe-common .tribe-common-form-control-text__input:focus{border-bottom-color:#141827;outline:0}.tribe-theme-twentyseventeen .tribe-common .tribe-common-form-control-text__input{color:#141827}.tribe-theme-twentytwenty .tribe-common .tribe-common-form-control-text__input{line-height:inherit}#top .main_color .tribe-common .tribe-common-form-control-text__input,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-text__input{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:16px;line-height:1.62;font-weight:400;background:#fff;border:0;border-bottom:1px solid #d5d5d5}#top .main_color .tribe-common .tribe-common-form-control-text__input:focus,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-text__input:focus{border-bottom-color:#141827;box-shadow:none}#top .main_color .tribe-common.tribe-common--breakpoint-medium .tribe-common-form-control-text__input,#top.tribe-theme-enfold .tribe-common.tribe-common--breakpoint-medium .tribe-common-form-control-text__input{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:14px;line-height:1.62;font-weight:400;border:0}.tribe-common .tribe-common-form-control-toggle{line-height:0;position:relative}.tribe-common .tribe-common-form-control-toggle__input{border:none;border-radius:5px;height:10px;margin:5px 0;padding:0;position:relative;transition:background-color .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#7d7d7d;width:40px}.tribe-common .tribe-common-form-control-toggle__input::-ms-check{display:none}.tribe-common .tribe-common-form-control-toggle__input+label:before{background-color:#fff;border:1px solid #7d7d7d;border-radius:50%;box-shadow:0 2px 5px 0 rgba(0,0,0,.14);height:20px;width:20px;content:"";left:0;position:absolute;top:0;transition:transform .2s ease}.tribe-common .tribe-common-form-control-toggle__input:checked{background-color:#334aff}.tribe-common .tribe-common-form-control-toggle__input:checked+label:before{transform:translateX(20px)}.tribe-common .tribe-common-form-control-toggle__label{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:12px;line-height:1.38;font-weight:400;color:#5d5d5d}#top .main_color .tribe-common .tribe-common-form-control-toggle__label,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-toggle__label{font-weight:400;font-size:12px}.tribe-theme-twentytwenty .tribe-common .tribe-common-form-control-toggle__input:checked:before{content:none}.tribe-common a,.tribe-common a:active,.tribe-common a:focus,.tribe-common a:hover,.tribe-common a:visited{color:#141827;outline:0;text-decoration:none}.site-footer .widget-area .tribe-common a,.tribe-theme-twentyseventeen .site-footer .widget-area .tribe-common a,.tribe-theme-twentyseventeen .tribe-common a{box-shadow:none}.site-footer .widget-area .tribe-common a:focus,.site-footer .widget-area .tribe-common a:hover,.tribe-theme-twentyseventeen .site-footer .widget-area .tribe-common a:focus,.tribe-theme-twentyseventeen .site-footer .widget-area .tribe-common a:hover,.tribe-theme-twentyseventeen .tribe-common a:focus,.tribe-theme-twentyseventeen .tribe-common a:hover{box-shadow:none;color:#141827}.tribe-theme-twentynineteen .entry .tribe-common a,.tribe-theme-twentynineteen .tribe-common a{text-decoration:none}.main_color .sidebar .tribe-common a,.main_color .sidebar .tribe-common a:active,.main_color .sidebar .tribe-common a:focus,.main_color .sidebar .tribe-common a:hover,.main_color .sidebar .tribe-common a:visited,.tribe-theme-enfold .tribe-common a,.tribe-theme-enfold .tribe-common a:active,.tribe-theme-enfold .tribe-common a:focus,.tribe-theme-enfold .tribe-common a:hover,.tribe-theme-enfold .tribe-common a:visited{color:#141827}.tribe-common .tribe-common-anchor{border-bottom:2px solid transparent;transition:border-color .2s ease}.tribe-common .tribe-common-anchor:active,.tribe-common .tribe-common-anchor:focus,.tribe-common .tribe-common-anchor:hover{border-bottom:2px solid #141827}.tribe-common .tribe-common-anchor-alt{border-bottom:2px solid #334aff;color:#141827;transition:color .2s ease}.tribe-common .tribe-common-anchor-alt:active,.tribe-common .tribe-common-anchor-alt:focus,.tribe-common .tribe-common-anchor-alt:hover{border-bottom:2px solid #334aff;color:#334aff}.tribe-common .tribe-common-anchor-thin{border-bottom:1px solid transparent;transition:border-color .2s ease}.tribe-common .tribe-common-anchor-thin:active,.tribe-common .tribe-common-anchor-thin:focus,.tribe-common .tribe-common-anchor-thin:hover{border-bottom:1px solid #141827}.tribe-common .tribe-common-anchor-thin-alt{border-bottom:1px solid #334aff;color:#141827;transition:color .2s ease}.tribe-common .tribe-common-anchor-thin-alt:active,.tribe-common .tribe-common-anchor-thin-alt:focus,.tribe-common .tribe-common-anchor-thin-alt:hover{border-bottom:1px solid #334aff;color:#334aff}.tribe-theme-twentyseventeen .tribe-common .tribe-common-anchor-alt:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-anchor-alt:hover,.tribe-theme-twentyseventeen .tribe-common .tribe-common-anchor-thin-alt:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-anchor-thin-alt:hover{color:#334aff}.site-footer .widget-area .tribe-common .tribe-common-anchor,.site-footer .widget-area .tribe-common .tribe-common-anchor-thin,.tribe-theme-twentyseventeen .site-footer .widget-area .tribe-common .tribe-common-anchor,.tribe-theme-twentyseventeen .site-footer .widget-area .tribe-common .tribe-common-anchor-thin{transition:border-color .2s ease}.site-footer .widget-area .tribe-common .tribe-common-anchor-alt,.site-footer .widget-area .tribe-common .tribe-common-anchor-thin-alt,.tribe-theme-twentyseventeen .site-footer .widget-area .tribe-common .tribe-common-anchor-alt,.tribe-theme-twentyseventeen .site-footer .widget-area .tribe-common .tribe-common-anchor-thin-alt{transition:color .2s ease}.tribe-common .tribe-common-b1{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.62}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b1{font-size:16px;line-height:1.62}.tribe-common .tribe-common-b1--bold{font-weight:700}.tribe-common .tribe-common-b2{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:12px;font-weight:400;line-height:1.38}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b2{font-size:14px;line-height:1.62}.tribe-common .tribe-common-b2--bold{font-weight:700}.tribe-common .tribe-common-b3{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:11px;font-weight:400;line-height:1.5}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b3{font-size:12px;line-height:1.38}.tribe-common .tribe-common-b3--bold{font-weight:700}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b1--min-medium{font-size:16px;line-height:1.62}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b2--min-medium{font-size:14px;line-height:1.62}.tribe-common--breakpoint-medium.tribe-common .tribe-common-b3--min-medium{font-size:12px;line-height:1.38}.tribe-common .tribe-common-cta{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:12px;line-height:1.38;font-weight:400;font-weight:700;border-bottom:2px solid transparent;transition:border-color .2s ease}.tribe-common .tribe-common-cta:active,.tribe-common .tribe-common-cta:focus,.tribe-common .tribe-common-cta:hover{border-bottom:2px solid #141827}.tribe-common .tribe-common-cta--alt{border-bottom:2px solid #334aff;color:#141827;transition:color .2s ease}.tribe-common .tribe-common-cta--alt:active,.tribe-common .tribe-common-cta--alt:focus,.tribe-common .tribe-common-cta--alt:hover{border-bottom:2px solid #334aff;color:#334aff}.tribe-common .tribe-common-cta--thin{border-bottom:1px solid transparent;transition:border-color .2s ease}.tribe-common .tribe-common-cta--thin:active,.tribe-common .tribe-common-cta--thin:focus,.tribe-common .tribe-common-cta--thin:hover{border-bottom:1px solid #141827}.tribe-common .tribe-common-cta--thin-alt{border-bottom:1px solid #334aff;color:#141827;transition:color .2s ease}.tribe-common .tribe-common-cta--thin-alt:active,.tribe-common .tribe-common-cta--thin-alt:focus,.tribe-common .tribe-common-cta--thin-alt:hover{border-bottom:1px solid #334aff;color:#334aff}.tribe-theme-twentyseventeen .tribe-common .tribe-common-cta--alt:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-cta--alt:hover,.tribe-theme-twentyseventeen .tribe-common .tribe-common-cta--thin-alt:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-cta--thin-alt:hover{color:#334aff}.tribe-common .tribe-common-h1{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:28px;line-height:1.42}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h1{font-size:42px;line-height:1.38}.tribe-common .tribe-common-h2{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:24px;line-height:1.42}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h2{font-size:32px;line-height:1.38}.tribe-common .tribe-common-h3{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:22px;line-height:1.5}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h3{font-size:28px;line-height:1.42}.tribe-common .tribe-common-h4{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:20px;line-height:1.42}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h4{font-size:24px;line-height:1.42}.tribe-common .tribe-common-h5{font-size:18px}.tribe-common .tribe-common-h5,.tribe-common .tribe-common-h6{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;line-height:1.5}.tribe-common .tribe-common-h6{font-size:16px}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h6{font-size:16px;line-height:1.62}.tribe-common .tribe-common-h7{font-size:14px;line-height:1.62}.tribe-common .tribe-common-h7,.tribe-common .tribe-common-h8{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700}.tribe-common .tribe-common-h8{font-size:12px;line-height:1.38}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h3--min-medium{font-size:28px;line-height:1.42}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h4--min-medium{font-size:24px;line-height:1.42}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h5--min-medium{font-size:18px;line-height:1.5}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h6--min-medium{font-size:16px;line-height:1.62}.tribe-common--breakpoint-medium.tribe-common .tribe-common-h7--min-medium{font-size:14px;line-height:1.62}.tribe-common .tribe-common-h--alt{font-weight:400}.tribe-theme-avada #main .tribe-common .tribe-common-h1{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:28px;line-height:1.42}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h1{font-size:42px;line-height:1.38}.tribe-theme-avada #main .tribe-common .tribe-common-h2{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:24px;line-height:1.42}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h2{font-size:32px;line-height:1.38}.tribe-theme-avada #main .tribe-common .tribe-common-h3{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:22px;line-height:1.5}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h3{font-size:28px;line-height:1.42}.tribe-theme-avada #main .tribe-common .tribe-common-h4{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;font-size:20px;line-height:1.42}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h4{font-size:24px;line-height:1.42}.tribe-theme-avada #main .tribe-common .tribe-common-h5{font-size:18px}.tribe-theme-avada #main .tribe-common .tribe-common-h5,.tribe-theme-avada #main .tribe-common .tribe-common-h6{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700;line-height:1.5}.tribe-theme-avada #main .tribe-common .tribe-common-h6{font-size:16px}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h6{font-size:16px;line-height:1.62}.tribe-theme-avada #main .tribe-common .tribe-common-h7{font-size:14px;line-height:1.62}.tribe-theme-avada #main .tribe-common .tribe-common-h7,.tribe-theme-avada #main .tribe-common .tribe-common-h8{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-weight:700}.tribe-theme-avada #main .tribe-common .tribe-common-h8{font-size:12px;line-height:1.38}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h3--min-medium{font-size:28px;line-height:1.42}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h4--min-medium{font-size:24px;line-height:1.42}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h5--min-medium{font-size:18px;line-height:1.5}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h6--min-medium{font-size:16px;line-height:1.62}.tribe-theme-avada #main .tribe-common.tribe-common--breakpoint-medium .tribe-common-h7--min-medium{font-size:14px;line-height:1.62}.tribe-theme-avada #main .tribe-common .tribe-common-h--alt{font-weight:400}.tribe-common button{border:none}.tribe-common button,.tribe-common button:focus,.tribe-common button:hover,.tribe-theme-twentyseventeen .tribe-common button:focus,.tribe-theme-twentyseventeen .tribe-common button:hover{background-color:transparent}.tribe-theme-twentytwenty .tribe-common button{background-color:transparent;text-transform:inherit}.tribe-theme-twentytwenty .tribe-common button:focus,.tribe-theme-twentytwenty .tribe-common button:hover{text-decoration:none}.tribe-theme-enfold .tribe-common th{letter-spacing:0;text-transform:none}.tribe-common .tribe-common-c-btn-border,.tribe-common a.tribe-common-c-btn-border{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:14px;line-height:1.62;font-weight:400;font-weight:700;border:0;cursor:pointer;display:inline-block;height:auto;padding:0;text-decoration:none;width:auto;background-color:#fff;border:1px solid #334aff;border-radius:4px;text-align:center;transition:all .2s ease;color:#334aff;padding:11px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn-border,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn-border{width:auto}.tribe-common .tribe-common-c-btn-border:focus,.tribe-common .tribe-common-c-btn-border:hover,.tribe-common a.tribe-common-c-btn-border:focus,.tribe-common a.tribe-common-c-btn-border:hover{color:#fff;background-color:#334aff}.tribe-common .tribe-common-c-btn-border:active,.tribe-common a.tribe-common-c-btn-border:active{opacity:.9}.tribe-common .tribe-common-c-btn-border--secondary,.tribe-common a.tribe-common-c-btn-border--secondary{border-color:#141827;color:#141827}.tribe-common .tribe-common-c-btn-border--secondary:focus,.tribe-common .tribe-common-c-btn-border--secondary:hover,.tribe-common a.tribe-common-c-btn-border--secondary:focus,.tribe-common a.tribe-common-c-btn-border--secondary:hover{background-color:#141827}.tribe-common .tribe-common-c-btn-border--secondary:active,.tribe-common a.tribe-common-c-btn-border--secondary:active{opacity:.9}.tribe-common .tribe-common-c-btn-border--alt,.tribe-common a.tribe-common-c-btn-border--alt{border-color:#e4e4e4;color:#141827;font-weight:400}.tribe-common .tribe-common-c-btn-border--alt:focus,.tribe-common .tribe-common-c-btn-border--alt:hover,.tribe-common a.tribe-common-c-btn-border--alt:focus,.tribe-common a.tribe-common-c-btn-border--alt:hover{border-color:#141827;background-color:#fff;color:#141827}.tribe-common .tribe-common-c-btn-border--alt:active,.tribe-common a.tribe-common-c-btn-border--alt:active{opacity:.9}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border:hover{background-color:#334aff}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border--secondary:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border--secondary:hover{background-color:#141827}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border--alt:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border--alt:hover{background-color:#fff}.tribe-common .tribe-common-c-btn-border-small,.tribe-common a.tribe-common-c-btn-border-small{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:12px;line-height:1.38;font-weight:400;border:0;cursor:pointer;display:inline-block;height:auto;padding:0;text-decoration:none;width:auto;background-color:#fff;border:1px solid #d5d5d5;border-radius:4px;text-align:center;transition:color .2s ease,border-color .2s ease}.tribe-common .tribe-common-c-btn-border-small:focus,.tribe-common .tribe-common-c-btn-border-small:hover,.tribe-common a.tribe-common-c-btn-border-small:focus,.tribe-common a.tribe-common-c-btn-border-small:hover{background-color:#fff}.tribe-common .tribe-common-c-btn-border-small:active,.tribe-common a.tribe-common-c-btn-border-small:active{border-color:#141827}.tribe-common .tribe-common-c-btn-border-small,.tribe-common a.tribe-common-c-btn-border-small{color:#5d5d5d;padding:14px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn-border-small,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn-border-small{padding:6px 15px;width:auto}.tribe-common .tribe-common-c-btn-border-small:active,.tribe-common .tribe-common-c-btn-border-small:focus,.tribe-common .tribe-common-c-btn-border-small:hover,.tribe-common a.tribe-common-c-btn-border-small:active,.tribe-common a.tribe-common-c-btn-border-small:focus,.tribe-common a.tribe-common-c-btn-border-small:hover{color:#141827}.tribe-common .tribe-common-c-btn-border-small:disabled,.tribe-common a.tribe-common-c-btn-border-small:disabled{color:#d5d5d5}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-border-small:hover{background-color:#fff}.tribe-common .tribe-common-c-btn-icon{border:0;cursor:pointer;display:inline-block;height:auto;padding:0;text-decoration:none;width:auto}.tribe-common .tribe-common-c-btn-icon--caret-left:active .tribe-common-c-btn-icon__icon-svg path,.tribe-common .tribe-common-c-btn-icon--caret-left:focus .tribe-common-c-btn-icon__icon-svg path,.tribe-common .tribe-common-c-btn-icon--caret-left:hover .tribe-common-c-btn-icon__icon-svg path,.tribe-common .tribe-common-c-btn-icon--caret-right:active .tribe-common-c-btn-icon__icon-svg path,.tribe-common .tribe-common-c-btn-icon--caret-right:focus .tribe-common-c-btn-icon__icon-svg path,.tribe-common .tribe-common-c-btn-icon--caret-right:hover .tribe-common-c-btn-icon__icon-svg path{fill:#5d5d5d}.tribe-common .tribe-common-c-btn-icon--caret-left:disabled .tribe-common-c-btn-icon__icon-svg path,.tribe-common .tribe-common-c-btn-icon--caret-right:disabled .tribe-common-c-btn-icon__icon-svg path{fill:#d5d5d5}.tribe-common .tribe-common-c-btn-icon--caret-left .tribe-common-c-btn-icon__icon-svg path,.tribe-common .tribe-common-c-btn-icon--caret-right .tribe-common-c-btn-icon__icon-svg path{fill:#bababa}.tribe-common .tribe-common-c-btn-icon--border{align-items:center;background-color:#fff;border:1px solid #d5d5d5;display:inline-flex;height:56px;justify-content:center;transition:none;width:56px}.tribe-common .tribe-common-c-btn-icon--border:focus,.tribe-common .tribe-common-c-btn-icon--border:hover{background-color:#fff}.tribe-common .tribe-common-c-btn-icon--border:active{border-color:#141827}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn-icon--border:hover{background-color:#fff}.tribe-common .tribe-common-c-btn,.tribe-common a.tribe-common-c-btn{color:#141827;font-family:Helvetica Neue,Helvetica,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;font-size:14px;line-height:1.62;font-weight:400;font-weight:700;border:0;cursor:pointer;display:inline-block;height:auto;padding:0;text-decoration:none;width:auto;border-radius:4px;color:#fff;text-align:center;transition:background-color .2s ease;background-color:#334aff;padding:11px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn{width:auto}.tribe-common .tribe-common-c-btn:focus,.tribe-common .tribe-common-c-btn:hover,.tribe-common a.tribe-common-c-btn:focus,.tribe-common a.tribe-common-c-btn:hover{background-color:rgba(51,74,255,.8)}.tribe-common .tribe-common-c-btn:active,.tribe-common a.tribe-common-c-btn:active{background-color:rgba(51,74,255,.9)}.tribe-common .tribe-common-c-btn:disabled,.tribe-common a.tribe-common-c-btn:disabled{background-color:rgba(51,74,255,.07)}.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn:focus,.tribe-theme-twentyseventeen .tribe-common .tribe-common-c-btn:hover{background-color:rgba(51,74,255,.8);color:#fff}.tribe-theme-twentytwenty .tribe-common .tribe-common-c-btn{background-color:#334aff}.tribe-theme-twentytwenty .tribe-common .tribe-common-c-btn:focus,.tribe-theme-twentytwenty .tribe-common .tribe-common-c-btn:hover{background-color:rgba(51,74,255,.8);color:#fff}.tribe-common .tribe-common-c-loader__dot circle{animation-name:a;animation-duration:2.24s;animation-iteration-count:infinite;animation-direction:normal;fill:currentColor;opacity:.07}.tribe-common .tribe-common-c-loader__dot--first circle{animation-delay:.45s}.tribe-common .tribe-common-c-loader__dot--second circle{animation-delay:1.05s}.tribe-common .tribe-common-c-loader__dot--third circle{animation-delay:1.35s}@keyframes a{50%{opacity:1}}.tribe-common .tribe-common-c-svgicon{color:#334aff}.tribe-common .tribe-common-c-svgicon--featured path{fill:currentColor}.tribe-common .tribe-common-c-svgicon--recurring path{fill:#141827;stroke:#141827}.tribe-common .tribe-common-c-svgicon--close-alt path,.tribe-common .tribe-common-c-svgicon--close path{stroke:#bababa}.tribe-common .tribe-common-c-svgicon--messages-not-found path{stroke:#141827}.tribe-common .tribe-common-c-svgicon--messages-not-found .tribe-common-c-svgicon__svg-stroke{stroke:currentColor}.tribe-common .tribe-common-c-svgicon__svg-fill{fill:#141827}.tribe-common .tribe-common-c-svgicon__svg-stroke{stroke:#141827}
|
common/src/resources/css/common-skeleton.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.tribe-common{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smoothing:antialiased}.tribe-common *{box-sizing:border-box}.tribe-common article,.tribe-common aside,.tribe-common details,.tribe-common figcaption,.tribe-common figure,.tribe-common footer,.tribe-common header,.tribe-common main,.tribe-common menu,.tribe-common nav,.tribe-common section,.tribe-common summary{display:block}.tribe-common svg:not(:root){overflow:hidden}.tribe-common audio,.tribe-common canvas,.tribe-common progress,.tribe-common video{display:inline-block}.tribe-common audio:not([controls]){display:none;height:0}.tribe-common progress{vertical-align:baseline}.tribe-common [hidden],.tribe-common template{display:none}.tribe-common pre{overflow:auto}.tribe-common sub,.tribe-common sup{position:relative;vertical-align:baseline}.tribe-common sup{top:-.5em}.tribe-common sub{bottom:-.25em}.tribe-common button,.tribe-common input,.tribe-common select,.tribe-common textarea{box-sizing:border-box;margin:0}.tribe-common input[type=number]::-webkit-inner-spin-button,.tribe-common input[type=number]::-webkit-outer-spin-button{height:auto}.tribe-common legend{color:inherit;display:table;max-width:100%;white-space:normal}.tribe-common textarea{resize:none;overflow:auto}.tribe-common button,.tribe-common input[type=button],.tribe-common input[type=reset],.tribe-common input[type=submit]{cursor:pointer;overflow:visible}.tribe-common button[disabled],.tribe-common input[disabled]{cursor:default}.tribe-common button::-moz-focus-inner,.tribe-common input::-moz-focus-inner{border:0;padding:0}.tribe-common a,.tribe-common abbr,.tribe-common acronym,.tribe-common address,.tribe-common applet,.tribe-common article,.tribe-common aside,.tribe-common audio,.tribe-common b,.tribe-common big,.tribe-common blockquote,.tribe-common canvas,.tribe-common caption,.tribe-common center,.tribe-common cite,.tribe-common code,.tribe-common dd,.tribe-common del,.tribe-common details,.tribe-common dfn,.tribe-common div,.tribe-common dl,.tribe-common dt,.tribe-common em,.tribe-common embed,.tribe-common fieldset,.tribe-common figcaption,.tribe-common figure,.tribe-common footer,.tribe-common form,.tribe-common h1,.tribe-common h2,.tribe-common h3,.tribe-common h4,.tribe-common h5,.tribe-common h6,.tribe-common header,.tribe-common i,.tribe-common iframe,.tribe-common img,.tribe-common ins,.tribe-common kbd,.tribe-common label,.tribe-common legend,.tribe-common li,.tribe-common main,.tribe-common mark,.tribe-common menu,.tribe-common nav,.tribe-common object,.tribe-common ol,.tribe-common output,.tribe-common p,.tribe-common pre,.tribe-common q,.tribe-common ruby,.tribe-common s,.tribe-common samp,.tribe-common section,.tribe-common small,.tribe-common span,.tribe-common strike,.tribe-common strong,.tribe-common sub,.tribe-common summary,.tribe-common sup,.tribe-common table,.tribe-common tbody,.tribe-common td,.tribe-common tfoot,.tribe-common th,.tribe-common thead,.tribe-common time,.tribe-common tr,.tribe-common tt,.tribe-common u,.tribe-common ul,.tribe-common var,.tribe-common video{margin:0;padding:0;border:0}.tribe-common ol,.tribe-common ul{list-style:none}.tribe-common img{-ms-interpolation-mode:bicubic;height:auto;max-width:100%;border-style:none}.tribe-common embed,.tribe-common iframe,.tribe-common video{max-width:100%;max-height:100%}.tribe-theme-avada input[type=text]{margin:0}.tribe-theme-divi .entry-content .tribe-common table,.tribe-theme-divibody.et-pb-preview #main-content .container .tribe-common table{border:0;margin:0}.tribe-theme-divi .entry-content .tribe-common td,.tribe-theme-divibody.et-pb-preview #main-content .container .tribe-common td{border:0}.tribe-theme-divi #content-area .tribe-common td,.tribe-theme-divi #content-area .tribe-common th,.tribe-theme-divi #content-area .tribe-common tr,.tribe-theme-divi #left-area .tribe-common ul{padding:0}#top .main_color .tribe-common button[disabled],#top.tribe-theme-enfold .tribe-common button[disabled]{cursor:default}#top .main_color .tribe-common form,#top .main_color .tribe-common input,#top.tribe-theme-enfold .tribe-common form,#top.tribe-theme-enfold .tribe-common input{margin:0}.entry-content-wrapper .tribe-common li,.entry-content .tribe-common ol,.entry-content .tribe-common ul,.tribe-theme-genesis .tribe-common ol,.tribe-theme-genesis .tribe-common ul{margin:0;padding:0}.tribe-theme-twentyseventeen .tribe-common div.tribe-dialog{z-index:5!important}.tribe-common .tribe-common-form-control-checkbox,.tribe-common .tribe-common-form-control-radio{display:flex;align-items:flex-start}.tribe-common .tribe-common-form-control-checkbox__label,.tribe-common .tribe-common-form-control-radio__label{cursor:pointer;margin-left:15px}.tribe-common .tribe-common-form-control-checkbox__input,.tribe-common .tribe-common-form-control-radio__input{cursor:pointer;flex:none;margin:1px 0 0}#top .main_color .tribe-common .tribe-common-form-control-checkbox__input,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-checkbox__input{margin:1px 0 0}.tribe-common .tribe-common-form-control-checkbox-radio-group>*{margin-bottom:15px}.tribe-common .tribe-common-form-control-checkbox-radio-group>:last-child{margin-bottom:0}.tribe-common .tribe-common-form-control-slider__input{cursor:pointer;display:inline-block;margin:0;padding:0;width:120px;vertical-align:middle}.tribe-common .tribe-common-form-control-slider__label{cursor:pointer;display:inline-block;margin-left:11px;vertical-align:middle}.tribe-common .tribe-common-form-control-slider--vertical .tribe-common-form-control-slider__label{display:block;margin:0 0 6px}.tribe-common .tribe-common-form-control-text__label{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tribe-common .tribe-common-form-control-text__input{height:auto;padding:12px 28px 12px 0;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-form-control-text__input{padding:20px 20px 20px 40px}#top .main_color .tribe-common .tribe-common-form-control-text__input,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-text__input{padding:12px 28px 12px 0;width:100%}#top .main_color .tribe-common.tribe-common--breakpoint-medium .tribe-common-form-control-text__input,#top.tribe-theme-enfold .tribe-common.tribe-common--breakpoint-medium .tribe-common-form-control-text__input{padding:20px 20px 20px 40px}.tribe-common .tribe-common-form-control-toggle__input,.tribe-common .tribe-common-form-control-toggle__label{cursor:pointer;display:inline-block;vertical-align:middle}.tribe-common .tribe-common-form-control-toggle__label{margin-left:11px}.tribe-common .tribe-common-form-control-toggle--vertical .tribe-common-form-control-toggle__label{display:block;margin:0 0 6px}#top .main_color .tribe-common .tribe-common-form-control-toggle__input,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-toggle__input{display:inline-block;margin:5px 0}.tribe-common .tribe-common-g-col{min-width:0;width:100%}.tribe-common .tribe-common-g-row{display:flex;flex-wrap:wrap}.tribe-common .tribe-common-g-row--gutters{margin-left:-21px;margin-right:-21px}.tribe-common--breakpoint-medium.tribe-common .tribe-common-g-row--gutters{margin-left:-24px;margin-right:-24px}.tribe-common .tribe-common-g-row--gutters>.tribe-common-g-col{padding-left:21px;padding-right:21px}.tribe-common--breakpoint-medium.tribe-common .tribe-common-g-row--gutters>.tribe-common-g-col{padding-left:24px;padding-right:24px}.tribe-theme-twentynineteen .tribe-common .entry.tribe-common-g-row--gutters{margin-left:-21px;margin-right:-21px;padding:0}.tribe-theme-twentynineteen .tribe-common.tribe-common--breakpoint-medium .entry.tribe-common-g-row--gutters{margin-left:-24px;margin-right:-24px}.tribe-theme-twentynineteen .tribe-common .tribe-common-g-row--gutters>.entry.tribe-common-g-col{margin:0;padding-left:21px;padding-right:21px}.tribe-theme-twentynineteen .tribe-common.tribe-common--breakpoint-medium .tribe-common-g-row--gutters>.entry.tribe-common-g-col{padding-left:24px;padding-right:24px}.tribe-common a{cursor:pointer}.tribe-theme-divi #left-area .tribe-common ul,.tribe-theme-divi .entry-content .tribe-common ul,body.et-pb-preview.tribe-theme-divi #main-content .container .tribe-common ul{list-style-type:none;padding:0}.entry-content .tribe-common ol>li,.entry-content .tribe-common ul>li{list-style-type:none}.tribe-common button{padding:0}.tribe-common .tribe-common-l-container{max-width:1260px;margin-left:auto;margin-right:auto;padding-left:19.5px;padding-right:19.5px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-l-container{padding-left:42px;padding-right:42px}.tribe-common .tribe-common-svgicon{background-repeat:no-repeat;background-size:contain}.tribe-common .tribe-common-svgicon--close-secondary{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18'%3E%3Cpath d='M16 2L2 16m14 0L2 2' stroke='%23bababa' fill='none' fill-rule='evenodd' stroke-linecap='square' stroke-width='2'/%3E%3C/svg%3E")}.tribe-common .tribe-common-svgicon--day{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='21' height='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 .503v19.994c0 .278.19.503.424.503h20.152c.234 0 .424-.225.424-.503V.503C21 .225 20.81 0 20.576 0H.424C.19 0 0 .225 0 .503zm1.156.943h18.66v2.7H1.157v-2.7zm0 4.023h18.66V19.55H1.157V5.469zM14.18 14.53v1.747c0 .482.39.874.873.874H16.8a.873.873 0 0 0 .873-.874V14.53a.873.873 0 0 0-.873-.873h-1.747a.873.873 0 0 0-.873.873z' fill='%23141827'/%3E%3C/svg%3E")}.tribe-common .tribe-common-svgicon--list{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cg fill='%23141827' fill-rule='evenodd'%3E%3Cpath fill-rule='nonzero' d='M0 .504v20.03c0 .278.19.503.425.503h20.188c.235 0 .425-.225.425-.504V.503c0-.277-.19-.503-.425-.503H.425C.19 0 0 .226 0 .504zm1.158.944h18.695v2.705H1.158V1.448zm0 2.705h18.695v15.432H1.158V4.153z'/%3E%3Cpath d='M13.39 5.731v2.13a1.07 1.07 0 0 0 1.076 1.064h2.154a1.07 1.07 0 0 0 1.077-1.065V5.731a1.07 1.07 0 0 0-1.077-1.064h-2.154A1.07 1.07 0 0 0 13.39 5.73z'/%3E%3Cpath fill-rule='nonzero' d='M8.84 8.937c.286 0 .52-.236.52-.523v-.425a.523.523 0 0 0-.52-.522H4.02a.523.523 0 0 0-.52.522v.425c0 .287.234.523.52.523h4.82zm2.064-2.8c.287 0 .521-.236.521-.523v-.425a.523.523 0 0 0-.52-.522H4.02a.523.523 0 0 0-.521.522v.425c0 .287.234.523.52.523h6.884z'/%3E%3Cpath d='M13.39 12.731v2.13a1.07 1.07 0 0 0 1.076 1.064h2.154a1.07 1.07 0 0 0 1.077-1.065v-2.129a1.07 1.07 0 0 0-1.077-1.064h-2.154a1.07 1.07 0 0 0-1.077 1.064z'/%3E%3Cpath fill-rule='nonzero' d='M8.84 15.937c.286 0 .52-.236.52-.523v-.425a.523.523 0 0 0-.52-.522H4.02a.523.523 0 0 0-.52.522v.425c0 .287.234.523.52.523h4.82zm2.064-2.8c.287 0 .521-.236.521-.523v-.425a.523.523 0 0 0-.52-.522H4.02a.523.523 0 0 0-.521.522v.425c0 .287.234.523.52.523h6.884z'/%3E%3C/g%3E%3C/svg%3E")}.tribe-common .tribe-common-svgicon--map{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cg fill='%23141827' fill-rule='nonzero'%3E%3Cg stroke-width='.7'%3E%3Cpath stroke='%23141827' d='M10.67 17.21c.182-.225 4.46-5.527 4.46-8.18 0-2.728-2.085-4.947-4.648-4.947-2.563 0-4.649 2.22-4.649 4.946 0 2.654 4.279 7.956 4.46 8.18a.243.243 0 0 0 .189.092c.072 0 .14-.034.188-.092zM6.33 9.03c0-2.436 1.863-4.418 4.152-4.418 2.29 0 4.152 1.982 4.152 4.417 0 2.16-3.318 6.533-4.152 7.597C9.648 15.562 6.33 11.19 6.33 9.03z'/%3E%3Cpath stroke='%23000' d='M12.055 9.04c0-.911-.706-1.652-1.573-1.652-.868 0-1.574.74-1.574 1.652 0 .91.706 1.652 1.574 1.652.867 0 1.573-.741 1.573-1.652zm-2.85 0c0-.74.573-1.34 1.277-1.34s1.277.6 1.277 1.34c0 .74-.573 1.34-1.277 1.34s-1.277-.6-1.277-1.34z'/%3E%3C/g%3E%3Cpath d='M0 .504v20.03c0 .278.19.503.425.503h20.188c.235 0 .425-.225.425-.504V.503c0-.277-.19-.503-.425-.503H.425C.19 0 0 .226 0 .504zm1.158.944h18.695v2.705H1.158V1.448zm0 2.705h18.695v15.432H1.158V4.153z'/%3E%3C/g%3E%3C/svg%3E")}.tribe-common .tribe-common-svgicon--month{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='22' height='22' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M.637 1.063v19.879c0 .276.189.5.422.5h20.037c.232 0 .421-.224.421-.5V1.062c0-.275-.189-.5-.421-.5H1.059c-.233 0-.422.225-.422.5zM1.787 2H20.34v2.685H1.787V2zm0 4H20.34v14H1.787V6zM8 8.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm4 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm4 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm-8 4v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm4 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm4 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm-12 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm0 4v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm4 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm4 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5z' fill='%23141827'/%3E%3C/svg%3E")}.tribe-common .tribe-common-svgicon--no-map{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='92' height='92' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none'%3E%3Cg stroke='%23141827' stroke-width='2.5' transform='translate(2 2)'%3E%3Cpath d='M32.219 88S0 58.674 0 32.281C-.011 15.598 12.685 1.66 29.278.136c16.593-1.523 31.608 9.873 34.627 26.28M32.733 88s2.96-2.693 7.083-7.181' stroke-linecap='round'/%3E%3Ccircle cx='33' cy='33' r='8.905'/%3E%3Ccircle cx='65.127' cy='59.016' r='23.571'/%3E%3C/g%3E%3Cg transform='translate(64.857 47.048)'%3E%3Ccircle fill='%23111' cx='2.839' cy='26.495' r='2.839'/%3E%3Cpath d='M2.642 0v18.925' stroke='%23141827' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.tribe-common .tribe-common-svgicon--photo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 21 21'%3E%3Cg fill='%23141827'%3E%3Cpath d='M20.407 0H.577A.565.565 0 0 0 0 .564v19.872c0 .316.254.564.578.564h19.83a.565.565 0 0 0 .577-.564V.564A.565.565 0 0 0 20.407 0zm-.6 1.15v14.868l-2.226-3.427c-.646-.677-1.848-.677-2.495 0l-1.548 1.646-4.482-5.029a1.806 1.806 0 0 0-1.363-.586c-.508 0-1.016.225-1.34.609l-5.175 5.75V1.15h18.628zM1.177 19.85v-3.133l6.053-6.765a.588.588 0 0 1 .462-.203c.162 0 .37.068.485.203l4.921 5.525c.116.113.278.203.44.203.184.022.323-.068.438-.18l1.987-2.12c.185-.203.555-.203.763 0l3.103 4.352v2.14H1.178v-.022z'/%3E%3Cpath d='M14.955 9.041c1.16 0 2.122-.97 2.122-2.187 0-1.218-.94-2.187-2.122-2.187-1.181 0-2.122.97-2.122 2.187 0 1.218.963 2.187 2.122 2.187zm0-3.224c.547 0 1.006.473 1.006 1.037s-.459 1.037-1.006 1.037c-.547 0-1.006-.473-1.006-1.037s.46-1.037 1.006-1.037z'/%3E%3C/g%3E%3C/svg%3E")}.tribe-common .tribe-common-svgicon--week{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='21' height='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 .503v19.994c0 .278.19.503.424.503h20.152c.234 0 .424-.225.424-.503V.503C21 .225 20.81 0 20.576 0H.424C.19 0 0 .225 0 .503zm1.156.943h18.66v2.7H1.157v-2.7zm0 4.023h18.66V19.55H1.157V5.469zm6.25 6.537v1.006c0 .278.224.503.502.503h1.006a.503.503 0 0 0 .503-.503v-1.006a.503.503 0 0 0-.503-.502H7.908a.503.503 0 0 0-.503.502zm4.022 0v1.006c0 .278.225.503.503.503h1.006a.503.503 0 0 0 .503-.503v-1.006a.503.503 0 0 0-.503-.502H11.93a.503.503 0 0 0-.503.502zm4.023 0v1.006c0 .278.225.503.503.503h1.006a.503.503 0 0 0 .503-.503v-1.006a.503.503 0 0 0-.503-.502h-1.006a.503.503 0 0 0-.503.502zm-12.069 0v1.006c0 .278.225.503.503.503h1.006a.503.503 0 0 0 .503-.503v-1.006a.503.503 0 0 0-.503-.502H3.885a.503.503 0 0 0-.503.502z' fill='%23141827'/%3E%3C/svg%3E")}.tribe-common .tribe-common-svgicon--featured{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='16' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h16v20l-7.902-5.122L0 20z' fill='%23141827'/%3E%3C/svg%3E");height:10px;width:8px}.tribe-common .tribe-common-svgicon--recurring{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='20' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.333 3.826c0 .065 0 .13-.02.174 0 .022-.02.065-.02.087a.9.9 0 0 1-.197.37L10.45 7.37a.797.797 0 0 1-.592.26.797.797 0 0 1-.593-.26c-.316-.348-.316-.935 0-1.305l1.225-1.348H6.3c-2.547 0-4.64 2.283-4.64 5.11 0 1.369.474 2.651 1.363 3.608.316.348.316.935 0 1.304A.797.797 0 0 1 2.43 15a.797.797 0 0 1-.593-.26C.652 13.434 0 11.695 0 9.847c0-3.826 2.825-6.935 6.301-6.935h4.208L9.284 1.565c-.316-.348-.316-.935 0-1.304.316-.348.85-.348 1.185 0l2.647 2.913a.952.952 0 0 1 .198.37c0 .021.02.065.02.086v.196zM20 10.152c0 3.826-2.825 6.935-6.301 6.935H9.49l1.225 1.348c.336.348.336.935 0 1.304a.797.797 0 0 1-.593.261.83.83 0 0 1-.592-.26l-2.627-2.936a.948.948 0 0 1-.198-.37c0-.021-.02-.064-.02-.086-.02-.065-.02-.109-.02-.174 0-.065 0-.13.02-.174 0-.022.02-.065.02-.087a.9.9 0 0 1 .198-.37L9.55 12.63c.316-.347.849-.347 1.185 0 .336.348.336.935 0 1.305L9.51 15.283h4.208c2.548 0 4.641-2.283 4.641-5.11 0-1.369-.474-2.651-1.362-3.608a.97.97 0 0 1 0-1.304c.316-.348.849-.348 1.185 0C19.348 6.543 20 8.283 20 10.152z' fill='%23141827'/%3E%3C/svg%3E");height:10px;width:10px}.tribe-common .tribe-common-svgicon--search{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='20' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 18.711l-6.044-6.044a7.782 7.782 0 0 0 1.688-4.845c0-2.089-.822-4.044-2.288-5.533C11.866.822 9.91 0 7.822 0S3.778.822 2.29 2.289A7.801 7.801 0 0 0 0 7.822c0 2.09.822 4.045 2.289 5.534a7.801 7.801 0 0 0 5.533 2.288c1.778 0 3.467-.6 4.845-1.688L18.71 20 20 18.711zM3.578 12.067c-2.334-2.334-2.334-6.156 0-8.49a5.968 5.968 0 0 1 4.244-1.755c1.6 0 3.111.622 4.245 1.756 2.333 2.333 2.333 6.155 0 8.489a5.968 5.968 0 0 1-4.245 1.755c-1.6 0-3.11-.622-4.244-1.755z' fill='%235d5d5d'/%3E%3C/svg%3E")}.tribe-common .tribe-common-svgicon--filters{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17'%3E%3Cg fill='none' fill-rule='evenodd' stroke='%235d5d5d' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' transform='translate(1 1)'%3E%3Cpath d='M3 3V0m0 15v-2'/%3E%3Ccircle cx='3' cy='9' r='3'/%3E%3Cpath d='M12 9v6'/%3E%3Ccircle cx='12' cy='3' r='3' transform='matrix(1 0 0 -1 0 6)'/%3E%3C/g%3E%3C/svg%3E")}.tribe-common .tribe-common-svgicon--close{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18'%3E%3Cpath d='M16 2L2 16m14 0L2 2' stroke='%235d5d5d' fill='none' fill-rule='evenodd' stroke-linecap='square' stroke-width='2'/%3E%3C/svg%3E")}.tribe-common .tribe-common-a11y-hidden{display:none!important;visibility:hidden}.tribe-common .tribe-common-a11y-visual-hide,.tribe-common .tribe-common-a11y-visual-show{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tribe-common .tribe-common-c-btn-border,.tribe-common a.tribe-common-c-btn-border{padding:11px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn-border,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn-border{width:auto}.tribe-common .tribe-common-c-btn-border-small,.tribe-common a.tribe-common-c-btn-border-small{padding:14px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn-border-small,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn-border-small{padding:6px 15px;width:auto}.tribe-common .tribe-common-c-btn-icon:before{background-repeat:no-repeat;background-size:contain;content:"";display:block}.tribe-common .tribe-common-c-btn-icon--caret-left:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.916 17.841L10 19.757l-9.9-9.9L10-.041l1.916 1.916-7.983 7.984z' fill='%23bababa'/%3E%3C/svg%3E");height:20px;width:12px}.tribe-common .tribe-common-c-btn-icon--caret-left:active:before,.tribe-common .tribe-common-c-btn-icon--caret-left:focus:before,.tribe-common .tribe-common-c-btn-icon--caret-left:hover:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.916 17.841L10 19.757l-9.9-9.9L10-.041l1.916 1.916-7.983 7.984z' fill='%235d5d5d'/%3E%3C/svg%3E")}.tribe-common .tribe-common-c-btn-icon--caret-left:disabled:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.916 17.841L10 19.757l-9.9-9.9L10-.041l1.916 1.916-7.983 7.984z' fill='%23d5d5d5'/%3E%3C/svg%3E")}.tribe-common .tribe-common-c-btn-icon--caret-right:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M.084 2.159L2 .243l9.9 9.9L2 20.041.084 18.126l7.983-7.984z' fill='%23bababa'/%3E%3C/svg%3E");height:20px;width:12px}.tribe-common .tribe-common-c-btn-icon--caret-right:active:before,.tribe-common .tribe-common-c-btn-icon--caret-right:focus:before,.tribe-common .tribe-common-c-btn-icon--caret-right:hover:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M.084 2.159L2 .243l9.9 9.9L2 20.041.084 18.126l7.983-7.984z' fill='%235d5d5d'/%3E%3C/svg%3E")}.tribe-common .tribe-common-c-btn-icon--caret-right:disabled:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M.084 2.159L2 .243l9.9 9.9L2 20.041.084 18.126l7.983-7.984z' fill='%23d5d5d5'/%3E%3C/svg%3E")}.tribe-common .tribe-common-c-btn-icon--filters:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17'%3E%3Cg fill='none' fill-rule='evenodd' stroke='%235d5d5d' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' transform='translate(1 1)'%3E%3Cpath d='M3 3V0m0 15v-2'/%3E%3Ccircle cx='3' cy='9' r='3'/%3E%3Cpath d='M12 9v6'/%3E%3Ccircle cx='12' cy='3' r='3' transform='matrix(1 0 0 -1 0 6)'/%3E%3C/g%3E%3C/svg%3E");height:20px;width:24px}.tribe-common .tribe-common-c-btn-icon--filters:active:before,.tribe-common .tribe-common-c-btn-icon--filters:focus:before,.tribe-common .tribe-common-c-btn-icon--filters:hover:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17'%3E%3Cg fill='none' fill-rule='evenodd' stroke='%23141827' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' transform='translate(1 1)'%3E%3Cpath d='M3 3V0m0 15v-2'/%3E%3Ccircle cx='3' cy='9' r='3'/%3E%3Cpath d='M12 9v6'/%3E%3Ccircle cx='12' cy='3' r='3' transform='matrix(1 0 0 -1 0 6)'/%3E%3C/g%3E%3C/svg%3E")}.tribe-common .tribe-common-c-btn-icon--filters:disabled:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17'%3E%3Cg fill='none' fill-rule='evenodd' stroke='%23d5d5d5' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' transform='translate(1 1)'%3E%3Cpath d='M3 3V0m0 15v-2'/%3E%3Ccircle cx='3' cy='9' r='3'/%3E%3Cpath d='M12 9v6'/%3E%3Ccircle cx='12' cy='3' r='3' transform='matrix(1 0 0 -1 0 6)'/%3E%3C/g%3E%3C/svg%3E")}.tribe-common .tribe-common-c-btn-icon--search:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='20' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 18.711l-6.044-6.044a7.782 7.782 0 0 0 1.688-4.845c0-2.089-.822-4.044-2.288-5.533C11.866.822 9.91 0 7.822 0S3.778.822 2.29 2.289A7.801 7.801 0 0 0 0 7.822c0 2.09.822 4.045 2.289 5.534a7.801 7.801 0 0 0 5.533 2.288c1.778 0 3.467-.6 4.845-1.688L18.71 20 20 18.711zM3.578 12.067c-2.334-2.334-2.334-6.156 0-8.49a5.968 5.968 0 0 1 4.244-1.755c1.6 0 3.111.622 4.245 1.756 2.333 2.333 2.333 6.155 0 8.489a5.968 5.968 0 0 1-4.245 1.755c-1.6 0-3.11-.622-4.244-1.755z' fill='%235d5d5d'/%3E%3C/svg%3E");height:20px;width:20px}.tribe-common .tribe-common-c-btn-icon--search:active:before,.tribe-common .tribe-common-c-btn-icon--search:focus:before,.tribe-common .tribe-common-c-btn-icon--search:hover:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='20' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 18.711l-6.044-6.044a7.782 7.782 0 0 0 1.688-4.845c0-2.089-.822-4.044-2.288-5.533C11.866.822 9.91 0 7.822 0S3.778.822 2.29 2.289A7.801 7.801 0 0 0 0 7.822c0 2.09.822 4.045 2.289 5.534a7.801 7.801 0 0 0 5.533 2.288c1.778 0 3.467-.6 4.845-1.688L18.71 20 20 18.711zM3.578 12.067c-2.334-2.334-2.334-6.156 0-8.49a5.968 5.968 0 0 1 4.244-1.755c1.6 0 3.111.622 4.245 1.756 2.333 2.333 2.333 6.155 0 8.489a5.968 5.968 0 0 1-4.245 1.755c-1.6 0-3.11-.622-4.244-1.755z' fill='%23141827'/%3E%3C/svg%3E")}.tribe-common .tribe-common-c-btn-icon--search:disabled:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='20' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 18.711l-6.044-6.044a7.782 7.782 0 0 0 1.688-4.845c0-2.089-.822-4.044-2.288-5.533C11.866.822 9.91 0 7.822 0S3.778.822 2.29 2.289A7.801 7.801 0 0 0 0 7.822c0 2.09.822 4.045 2.289 5.534a7.801 7.801 0 0 0 5.533 2.288c1.778 0 3.467-.6 4.845-1.688L18.71 20 20 18.711zM3.578 12.067c-2.334-2.334-2.334-6.156 0-8.49a5.968 5.968 0 0 1 4.244-1.755c1.6 0 3.111.622 4.245 1.756 2.333 2.333 2.333 6.155 0 8.489a5.968 5.968 0 0 1-4.245 1.755c-1.6 0-3.11-.622-4.244-1.755z' fill='%23d5d5d5'/%3E%3C/svg%3E")}.tribe-common .tribe-common-c-btn,.tribe-common a.tribe-common-c-btn{padding:11px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn{width:auto}.tribe-common .tribe-common-c-image{display:block;height:auto;margin-left:auto;margin-right:auto;width:100%}.tribe-common .tribe-common-c-image--bg{position:relative}.tribe-common .tribe-common-c-image__bg{background:50% no-repeat;background-size:cover;bottom:0;height:100%;left:0;position:absolute;right:0;top:0;width:100%}.tribe-common .tribe-common-c-loader{display:flex;padding-top:192px}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-loader{padding-top:288px}.tribe-common .tribe-common-c-loader__dot{background-color:rgba(51,74,255,.07);height:15px;width:15px;border-radius:50%}.tribe-common .tribe-common-c-loader__dot:not(:first-of-type){margin-left:8px}
|
1 |
+
.tribe-common{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smoothing:antialiased}.tribe-common *{box-sizing:border-box}.tribe-common article,.tribe-common aside,.tribe-common details,.tribe-common figcaption,.tribe-common figure,.tribe-common footer,.tribe-common header,.tribe-common main,.tribe-common menu,.tribe-common nav,.tribe-common section,.tribe-common summary{display:block}.tribe-common svg:not(:root){overflow:hidden}.tribe-common audio,.tribe-common canvas,.tribe-common progress,.tribe-common video{display:inline-block}.tribe-common audio:not([controls]){display:none;height:0}.tribe-common progress{vertical-align:baseline}.tribe-common [hidden],.tribe-common template{display:none}.tribe-common pre{overflow:auto}.tribe-common sub,.tribe-common sup{position:relative;vertical-align:baseline}.tribe-common sup{top:-.5em}.tribe-common sub{bottom:-.25em}.tribe-common button,.tribe-common input,.tribe-common select,.tribe-common textarea{box-sizing:border-box;margin:0}.tribe-common input[type=number]::-webkit-inner-spin-button,.tribe-common input[type=number]::-webkit-outer-spin-button{height:auto}.tribe-common legend{color:inherit;display:table;max-width:100%;white-space:normal}.tribe-common textarea{resize:none;overflow:auto}.tribe-common button,.tribe-common input[type=button],.tribe-common input[type=reset],.tribe-common input[type=submit]{cursor:pointer;overflow:visible}.tribe-common button[disabled],.tribe-common input[disabled]{cursor:default}.tribe-common button::-moz-focus-inner,.tribe-common input::-moz-focus-inner{border:0;padding:0}.tribe-common a,.tribe-common abbr,.tribe-common acronym,.tribe-common address,.tribe-common applet,.tribe-common article,.tribe-common aside,.tribe-common audio,.tribe-common b,.tribe-common big,.tribe-common blockquote,.tribe-common canvas,.tribe-common caption,.tribe-common center,.tribe-common cite,.tribe-common code,.tribe-common dd,.tribe-common del,.tribe-common details,.tribe-common dfn,.tribe-common div,.tribe-common dl,.tribe-common dt,.tribe-common em,.tribe-common embed,.tribe-common fieldset,.tribe-common figcaption,.tribe-common figure,.tribe-common footer,.tribe-common form,.tribe-common h1,.tribe-common h2,.tribe-common h3,.tribe-common h4,.tribe-common h5,.tribe-common h6,.tribe-common header,.tribe-common i,.tribe-common iframe,.tribe-common img,.tribe-common ins,.tribe-common kbd,.tribe-common label,.tribe-common legend,.tribe-common li,.tribe-common main,.tribe-common mark,.tribe-common menu,.tribe-common nav,.tribe-common object,.tribe-common ol,.tribe-common output,.tribe-common p,.tribe-common pre,.tribe-common q,.tribe-common ruby,.tribe-common s,.tribe-common samp,.tribe-common section,.tribe-common small,.tribe-common span,.tribe-common strike,.tribe-common strong,.tribe-common sub,.tribe-common summary,.tribe-common sup,.tribe-common table,.tribe-common tbody,.tribe-common td,.tribe-common tfoot,.tribe-common th,.tribe-common thead,.tribe-common time,.tribe-common tr,.tribe-common tt,.tribe-common u,.tribe-common ul,.tribe-common var,.tribe-common video{margin:0;padding:0;border:0}.tribe-common ol,.tribe-common ul{list-style:none}.tribe-common img{-ms-interpolation-mode:bicubic;height:auto;max-width:100%;border-style:none}.tribe-common embed,.tribe-common iframe,.tribe-common video{max-width:100%;max-height:100%}.tribe-theme-avada input[type=text]{margin:0}.tribe-theme-divi .entry-content .tribe-common table,.tribe-theme-divibody.et-pb-preview #main-content .container .tribe-common table{border:0;margin:0}.tribe-theme-divi .entry-content .tribe-common td,.tribe-theme-divibody.et-pb-preview #main-content .container .tribe-common td{border:0}.tribe-theme-divi #content-area .tribe-common td,.tribe-theme-divi #content-area .tribe-common th,.tribe-theme-divi #content-area .tribe-common tr,.tribe-theme-divi #left-area .tribe-common ul{padding:0}#top .main_color .tribe-common button[disabled],#top.tribe-theme-enfold .tribe-common button[disabled]{cursor:default}#top .main_color .tribe-common form,#top .main_color .tribe-common input,#top.tribe-theme-enfold .tribe-common form,#top.tribe-theme-enfold .tribe-common input{margin:0}.entry-content-wrapper .tribe-common li,.entry-content .tribe-common ol,.entry-content .tribe-common ul,.tribe-theme-genesis .tribe-common ol,.tribe-theme-genesis .tribe-common ul{margin:0;padding:0}.tribe-theme-twentynineteen .tribe-common svg{fill:none}.tribe-theme-twentyseventeen .tribe-common div.tribe-dialog{z-index:5!important}.tribe-common .tribe-common-form-control-checkbox,.tribe-common .tribe-common-form-control-radio{display:flex;align-items:flex-start}.tribe-common .tribe-common-form-control-checkbox__label,.tribe-common .tribe-common-form-control-radio__label{cursor:pointer;margin-left:15px}.tribe-common .tribe-common-form-control-checkbox__input,.tribe-common .tribe-common-form-control-radio__input{cursor:pointer;flex:none;margin:1px 0 0}#top .main_color .tribe-common .tribe-common-form-control-checkbox__input,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-checkbox__input{margin:1px 0 0}.tribe-theme-twentytwenty .tribe-common .tribe-common-form-control-checkbox__input{top:0}.tribe-common .tribe-common-form-control-checkbox-radio-group>*{margin-bottom:15px}.tribe-common .tribe-common-form-control-checkbox-radio-group>:last-child{margin-bottom:0}.tribe-common .tribe-common-form-control-slider__input{cursor:pointer;display:inline-block;margin:0;padding:0;width:120px;vertical-align:middle}.tribe-common .tribe-common-form-control-slider__label{cursor:pointer;display:inline-block;margin-left:11px;vertical-align:middle}.tribe-common .tribe-common-form-control-slider--vertical .tribe-common-form-control-slider__label{display:block;margin:0 0 6px}.tribe-common .tribe-common-form-control-text__label{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tribe-common .tribe-common-form-control-text__input{height:auto;padding:12px 28px 12px 0;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-form-control-text__input{padding:20px 20px 20px 40px}#top .main_color .tribe-common .tribe-common-form-control-text__input,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-text__input{padding:12px 28px 12px 0;width:100%}#top .main_color .tribe-common.tribe-common--breakpoint-medium .tribe-common-form-control-text__input,#top.tribe-theme-enfold .tribe-common.tribe-common--breakpoint-medium .tribe-common-form-control-text__input{padding:20px 20px 20px 40px}.tribe-common .tribe-common-form-control-toggle__input,.tribe-common .tribe-common-form-control-toggle__label{cursor:pointer;display:inline-block;vertical-align:middle}.tribe-common .tribe-common-form-control-toggle__label{margin-left:11px}.tribe-common .tribe-common-form-control-toggle--vertical .tribe-common-form-control-toggle__label{display:block;margin:0 0 6px}#top .main_color .tribe-common .tribe-common-form-control-toggle__input,#top.tribe-theme-enfold .tribe-common .tribe-common-form-control-toggle__input{display:inline-block;margin:5px 0}.tribe-common .tribe-common-g-col{min-width:0;width:100%}.tribe-common .tribe-common-g-row{display:flex;flex-wrap:wrap}.tribe-common .tribe-common-g-row--gutters{margin-left:-21px;margin-right:-21px}.tribe-common--breakpoint-medium.tribe-common .tribe-common-g-row--gutters{margin-left:-24px;margin-right:-24px}.tribe-common .tribe-common-g-row--gutters>.tribe-common-g-col{padding-left:21px;padding-right:21px}.tribe-common--breakpoint-medium.tribe-common .tribe-common-g-row--gutters>.tribe-common-g-col{padding-left:24px;padding-right:24px}.tribe-theme-twentynineteen .tribe-common .entry.tribe-common-g-row--gutters{margin-left:-21px;margin-right:-21px;padding:0}.tribe-theme-twentynineteen .tribe-common.tribe-common--breakpoint-medium .entry.tribe-common-g-row--gutters{margin-left:-24px;margin-right:-24px}.tribe-theme-twentynineteen .tribe-common .tribe-common-g-row--gutters>.entry.tribe-common-g-col{margin:0;padding-left:21px;padding-right:21px}.tribe-theme-twentynineteen .tribe-common.tribe-common--breakpoint-medium .tribe-common-g-row--gutters>.entry.tribe-common-g-col{padding-left:24px;padding-right:24px}.tribe-common a{cursor:pointer}.tribe-theme-divi #left-area .tribe-common ul,.tribe-theme-divi .entry-content .tribe-common ul,body.et-pb-preview.tribe-theme-divi #main-content .container .tribe-common ul{list-style-type:none;padding:0}.entry-content .tribe-common ol>li,.entry-content .tribe-common ul>li{list-style-type:none}.tribe-common button{padding:0}.tribe-common .tribe-common-l-container{max-width:1260px;margin-left:auto;margin-right:auto;padding-left:19.5px;padding-right:19.5px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-l-container{padding-left:42px;padding-right:42px}.tribe-common .tribe-common-a11y-hidden{display:none!important;visibility:hidden}.tribe-common .tribe-common-a11y-visual-hide{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tribe-common .tribe-common-a11y-visual-show{clip:auto;height:auto;margin:0;position:static;width:auto}.tribe-common .tribe-common-c-btn-border,.tribe-common a.tribe-common-c-btn-border{padding:11px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn-border,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn-border{width:auto}.tribe-common .tribe-common-c-btn-border-small,.tribe-common a.tribe-common-c-btn-border-small{padding:14px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn-border-small,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn-border-small{padding:6px 15px;width:auto}.tribe-common .tribe-common-c-btn-icon:before{background-repeat:no-repeat;background-size:contain;content:"";display:block}.tribe-common .tribe-common-c-btn-icon--caret-left .tribe-common-c-btn-icon__icon-svg,.tribe-common .tribe-common-c-btn-icon--caret-right .tribe-common-c-btn-icon__icon-svg{width:11px}.tribe-common .tribe-common-c-btn-icon--caret-left .tribe-common-c-btn-icon__icon-svg path,.tribe-common .tribe-common-c-btn-icon--caret-right .tribe-common-c-btn-icon__icon-svg path{fill:currentColor}.tribe-common .tribe-common-c-btn,.tribe-common a.tribe-common-c-btn{padding:11px 20px;width:100%}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn,.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn{width:auto}.tribe-common .tribe-common-c-image{display:block;height:auto;margin-left:auto;margin-right:auto;width:100%}.tribe-common .tribe-common-c-image--bg{position:relative}.tribe-common .tribe-common-c-image__bg{background:50% no-repeat;background-size:cover;bottom:0;height:100%;left:0;position:absolute;right:0;top:0;width:100%}.tribe-common .tribe-common-c-loader{display:flex;padding-top:192px}.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-loader{padding-top:288px}.tribe-common .tribe-common-c-loader__dot{width:15px}.tribe-common .tribe-common-c-loader__dot:not(:first-of-type){margin-left:8px}.tribe-common .tribe-common-c-loader__dot circle{fill:currentColor}.tribe-common .tribe-common-c-svgicon--featured{width:8px}.tribe-common .tribe-common-c-svgicon--recurring{width:12px}.tribe-common .tribe-common-c-svgicon--search{width:16px}.tribe-common .tribe-common-c-svgicon--location{width:10px}.tribe-common .tribe-common-c-svgicon--day,.tribe-common .tribe-common-c-svgicon--map,.tribe-common .tribe-common-c-svgicon--month,.tribe-common .tribe-common-c-svgicon--photo,.tribe-common .tribe-common-c-svgicon--week{height:100%;width:100%}.tribe-common .tribe-common-c-svgicon--close-alt path,.tribe-common .tribe-common-c-svgicon--close path{stroke:currentColor}.tribe-common .tribe-common-c-svgicon--mail,.tribe-common .tribe-common-c-svgicon--map-pin,.tribe-common .tribe-common-c-svgicon--messages-not-found g,.tribe-common .tribe-common-c-svgicon--no-map,.tribe-common .tribe-common-c-svgicon--phone,.tribe-common .tribe-common-c-svgicon--virtual g,.tribe-common .tribe-common-c-svgicon--website{fill:none}.tribe-common .tribe-common-c-svgicon--messages-not-found{width:22px}.tribe-common .tribe-common-c-svgicon--messages-not-found path{stroke:currentColor}.tribe-common .tribe-common-c-svgicon--error{width:18px}.tribe-common .tribe-common-c-svgicon--error g,.tribe-common .tribe-common-c-svgicon--reset path{fill:none}.tribe-common .tribe-common-c-svgicon__svg-fill{fill:currentColor}.tribe-common .tribe-common-c-svgicon__svg-stroke{stroke:currentColor}
|
common/src/resources/css/tribe-common-admin.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.invalid input{border:2px solid red!important}.valid input{border:1px solid green}.clearfix{zoom:1}.placeholder{color:#999;cursor:text;padding:4px}input::-moz-placeholder,textarea::-moz-placeholder{color:#999}input:-ms-input-placeholder,input::-ms-input-placeholder,textarea:-ms-input-placeholder,textarea::-ms-input-placeholder{color:#999}input::placeholder,textarea::placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.bubble{background-color:#f9f9f9;border:1px solid #dfdfdf;border-radius:3px;border-spacing:0;padding:10px}.tribe-sticky-tooltip{color:#bbb}td.tribe_message{padding-bottom:10px!important}#tribe_thanks{float:left;margin:5px 0 0;width:200px}.tribe_brand{font-family:Georgia,serif!important;font-size:17px!important;font-weight:400;margin:8px 0}.tribe-rating{color:#3d54ff}.tribe-rating:hover{color:#1c39bb}#tribe-upgrade{background:#f6f6f6;border:1px solid #ccc;border-radius:5px;margin:20px 0 30px;padding:0 20px 20px}#tribe-upgrade .message{background-color:#ffffe0;border:1px solid #e6db55;border-radius:3px;padding:6px 12px}table.plugins .tribe-plugin-update-message{background:#d54e21;color:#fff;display:inline-table;margin:6px 0;padding:10px 12px}table.plugins .tribe-plugin-update-message h4{display:inline;font-weight:700;margin-right:8px}table.plugins .tribe-plugin-update-message h4:after{content:" \00BB "}table.plugins .tribe-plugin-update-message a{color:#fff;text-decoration:underline}.tribe-settings-form{max-width:1000px}.tribe-settings-form fieldset{clear:both;display:inline-block;padding:10px 0}.tribe-settings-form fieldset.tribe-field-license_key legend{width:auto}.tribe-settings-form legend{float:left;font-weight:700;margin-right:20px;width:220px}.tribe-settings-form .tribe-field-wrap{float:left;max-width:500px}.tribe-settings-form .tribe-field-wrap :first-child{margin-top:0}.tribe-settings-form .tribe-field-checkbox_list label,.tribe-settings-form .tribe-field-radio label{display:block;margin:5px 0 5px 20px;text-indent:-20px}.tribe-settings-form .tribe-field-checkbox_list label>p,.tribe-settings-form .tribe-field-radio label>p{text-indent:0;margin-left:1px}.tribe-settings-form .tribe-field-checkbox_list label input,.tribe-settings-form .tribe-field-radio label input{margin-right:5px}.tribe-settings-form .tribe-settings-form-wrap .description,.tribe-settings-form .tribe-settings-form-wrap fieldset,.tribe-settings-form fieldset[id^=tribe-field-geoloc_]{padding-left:12px}.tribe-settings-form .tribe-settings-form-wrap fieldset .description{margin-left:0;max-width:450px;padding-left:0}.tribe-settings-form .tribe-settings-form-wrap fieldset .tribe-style-selection{margin-bottom:18px}.tribe-settings-form .tribe-settings-form-wrap #tribe-field-stylesheetOption .description{color:#999;margin-left:1px}.tribe-settings-form .tribe-settings-form-wrap h3{background-color:#f9f9f9;margin-bottom:10px;padding:6px 0 6px 12px}.tribe-settings-form .tribe-settings-form-wrap .contained,.tribe-settings-form .tribe-settings-form-wrap .system-info,.tribe-settings-form .tribe-settings-form-wrap .tribe-sysinfo-optin-msg,.tribe-settings-form .tribe-settings-form-wrap h3+p{margin:0 0 10px;padding-left:12px}.tribe_settings .tribe-field-indent{margin-left:245px}.tribe_settings #pu_dashboard_message{display:none}.tribe_settings .tribe-errors-list{margin-left:15px}.tribe_settings .expiring-license{color:red}.tribe_settings .tribe-error{border:1px solid red}.tribe_settings .tribe-field-description{margin-bottom:0;position:relative;top:-12px}.tribe_settings #ical-link{top:-14px}#modern-tribe-info{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;margin:20px 0;padding:8px 20px 12px}#modern-tribe-info img{margin:10px 0}#modern-tribe-info ul{list-style:disc;margin-left:20px}#modern-tribe-info ul ul{list-style:circle}.tribe-field-inline-dropdown{margin-left:0;margin-right:0}.tribe-field-inline-text{line-height:28px;margin:0 2px}.tribe-field-textarea.tribe-size-small textarea{height:60px;width:180px}.tribe-field-textarea.tribe-size-medium textarea{height:80px;width:300px}.tribe-field-textarea.tribe-size-large textarea{height:120px;width:450px}.tribe-field-email.tribe-size-small input,.tribe-field-license_key.tribe-size-small input,.tribe-field-text.tribe-size-small input{width:50px}.tribe-field-email.tribe-size-medium input,.tribe-field-license_key.tribe-size-medium input,.tribe-field-text.tribe-size-medium input{width:225px}.tribe-field-email.tribe-size-large input,.tribe-field-license_key.tribe-size-large input,.tribe-field-text.tribe-size-large input{width:450px}.tribe-field-dropdown.tribe-size-small select{width:100px}.tribe-field-dropdown.tribe-size-medium select{width:300px}.tribe-field-dropdown.tribe-size-large select{width:450px}.tribe-field-wrapped_html.tribe-size-large .tribe-field-wrap{max-width:600px}.tribe-field-wrapped_html.tribe-size-large .tribe-field-wrap .description{max-width:100%}.tribe-field-dropdown_chosen.tribe-size-small select{width:100px}.tribe-field-dropdown_chosen.tribe-size-medium select{width:200px}.tribe-field-dropdown_chosen.tribe-size-large select{width:300px}.tribe-field-wrap .tooltip:first-child{font-style:normal}.tribe-field.indent{margin-left:252px;width:75%}.tribe-field.indent legend{font-weight:400;width:auto}.tribe-field.indent .tribe-field-wrap{padding-right:12px}.tribe-field.indent.tribe-field-radio .tribe-field-wrap{clear:left;margin-top:12px}.tribe-field.light-bordered{background-color:#fff;border:1px solid #d3d3d3}.ajax-loading-license,.invalid-key,.valid-key{display:none;margin:0 5px}.ajax-loading-license{position:relative;top:5px}.key-validity{display:inline-block}.invalid-key,.optin-fail{color:red}.optin-success,.valid-key{color:green}.valid-key.service-msg{color:#b72}#additional-field-table{margin-bottom:20px}.tribe-admin-box-left{float:left;width:20%}.tribe-admin-box-left,.tribe-admin-box-right{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;margin:20px 0;padding:0 20px 15px}.tribe-admin-box-right{float:right;width:68%}.ajax-loader{float:right;margin:10px}.tribe-arrangeable-item{border:1px solid #d3d3d3;border-radius:3px}.tribe-arrangeable-item .ui-state-default{border:none}.tribe-arrangeable-item-top{padding:6px}.tribe-arrangeable-item-top:hover{cursor:move}.tribe-arrangeable-action{float:right}.tribe-arrangeable-child{background-color:#f9f9f9;border-top:1px solid #d3d3d3;display:none;padding:25px}.tribe-arrangeable-child label{display:block;margin:0 0 7px}.tribe_events_active_filter_type_options{margin:10px 0}.tribe_events_active_filter_type_options label{margin:7px 0}#event_organizer td small,.OrganizerInfo td small{display:block;margin:0;max-width:250px}#event_organizer .organizer-email,.OrganizerInfo .organizer-email{vertical-align:top}.tribe-table-field-label{max-width:100%;width:200px}#tribe-help-general,#tribe-help-sidebar{float:left;margin-top:20px}#tribe-help-general p{margin-left:15px}#tribe-help-general ul{list-style-type:square}#tribe-help-general ol,#tribe-help-general ul{margin-bottom:20px;margin-left:35px}#tribe-help-general h3{background-color:#f9f9f9;margin-bottom:10px;padding:6px 0 6px 12px}#tribe-help-general h3~h3{margin-top:2.25em}#tribe-help-general h3+p{margin:0 0 20px;padding-left:12px}#tribe-help-general{width:65%}.tribe-help-section{padding-bottom:10px}.tribe-section-type-box{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;padding:8px 20px 12px}.tribe-section-type-box img{height:auto;margin:10px 0;max-width:300px}.tribe-section-type-box ul{list-style:disc;margin-left:20px}.tribe-section-type-box ul ul{list-style:circle}#tribe-log-controls{padding-bottom:1rem;padding-left:12px}#tribe-log-controls>div{display:inline-block;padding-right:1rem}#tribe-log-controls .working{opacity:1;transition:opacity .2s}#tribe-log-controls .working.hidden{opacity:0;transition:opacity .2s}#tribe-log-viewer,#tribe-system-info dl.support-stats,.template-updates-wrapper{background:#000;border-radius:2px;color:#888;max-height:400px;overflow:scroll;padding:10px}#tribe-system-info dl.support-stats dt,.template-updates-wrapper dt{clear:both;float:left;font-weight:700;text-transform:uppercase;width:25%}#tribe-system-info dl.support-stats dd,.template-updates-wrapper dd{margin-left:25%;padding-left:10px}.system-info-copy .system-info-copy-btn{padding:6px}.system-info-copy .system-info-copy-btn .dashicons{padding-right:10px}.template-updates-wrapper p{margin-top:0}#tribe-help-sidebar{margin:20px 0 0 3%;max-width:225px;width:32%}.tribe-help-plugin-info{border:1px solid #ccc;padding:0 12px 12px}.tribe-help-plugin-info dd,.tribe-help-plugin-info dt{display:inline;margin:0}.tribe-help-plugin-info dt{font-weight:700}.tribe-help-plugin-info dd:after{content:"";display:block;height:.4em}.tribe-help-plugin-info dd:last-child:after{height:0}.tribe-help-plugin-info+.tribe-help-plugin-info{margin-top:20px}.tribe-help-plugin-info>div{line-height:2em}.tribe-help-plugin-info .star-rating{display:inline-block;margin-left:3px;position:relative;top:-2px}.tribe-help-plugin-info .tribe-list-addons{color:#21a6cb;font-size:24px;list-style:circle inside;margin-bottom:10px;margin-top:10px;padding-left:4px}.tribe-help-plugin-info .tribe-list-addons a{font-size:13px;left:-5px;position:relative;top:-5px}.tribe-help-plugin-info .tribe-list-addons .tribe-active-addon{list-style:disc inside}.ui-widget-overlay{background:#666;filter:Alpha(Opacity=50);opacity:.5}.ui-widget-shadow{background:#000;border-radius:5px;filter:Alpha(Opacity=20);margin:-5px 0 0 -5px;opacity:.2;padding:5px}.ui-resizable{position:relative}.ui-resizable-handle{display:block;font-size:.1px;position:absolute;z-index:99999}.ui-resizable-autohide .ui-resizable-handle,.ui-resizable-disabled .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;left:0;top:-5px;width:100%}.ui-resizable-s{bottom:-5px;cursor:s-resize;height:7px;left:0;width:100%}.ui-resizable-e{cursor:e-resize;height:100%;right:-5px;top:0;width:7px}.ui-resizable-w{cursor:w-resize;height:100%;left:-5px;top:0;width:7px}.ui-resizable-se{bottom:1px;cursor:se-resize;height:12px;right:1px;width:12px}.ui-resizable-sw{bottom:-5px;cursor:sw-resize;height:9px;left:-5px;width:9px}.ui-resizable-nw{cursor:nw-resize;height:9px;left:-5px;top:-5px;width:9px}.ui-resizable-ne{cursor:ne-resize;height:9px;right:-5px;top:-5px;width:9px}.ui-dialog{padding:.2em;position:relative;width:375px}.ui-dialog .ui-dialog-titlebar{padding:.5em .3em .3em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0 .2em}.ui-dialog .ui-dialog-titlebar-close{height:18px;margin:-10px 0 0;padding:1px;position:absolute;right:.3em;top:50%;width:19px}.ui-dialog .ui-dialog-titlebar-close span{display:block;margin-left:-8px;margin-top:-8px}.ui-dialog .ui-dialog-titlebar-close:focus,.ui-dialog .ui-dialog-titlebar-close:hover{padding:0}.ui-dialog .ui-dialog-content{background:none;border:0;overflow:auto;padding:.5em 1em;zoom:1}.ui-dialog .ui-dialog-buttonpane{background-image:none;border-width:1px 0 0;margin:.5em 0 0;padding:.3em 1em .5em!important;text-align:right}.ui-dialog .ui-dialog-buttonpane button{cursor:pointer;line-height:1.4em;margin:.5em .4em!important;overflow:visible;padding:.2em .6em .3em;text-shadow:none;width:auto}.ui-dialog .ui-resizable-se{bottom:3px;height:14px;right:3px;width:14px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:none!important;text-align:center}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button .ui-button-text{display:block;line-height:1.4}#ui-datepicker-div{display:none}#tribe-loading{background:#fff;background:hsla(0,0%,100%,.8);display:none;height:100%;left:0;position:absolute;top:0;transition:all 1s linear;width:100%;z-index:4}#tribe-loading span{background:url(../images/tribe-loading.gif) 0 0 no-repeat;background-size:32px 32px;height:32px;left:50%;margin:-16px 0 0 -16px;position:absolute;top:50%;width:32px}.tribe_update_page{max-width:850px}.tribe-half-column{float:left;margin-bottom:30px;margin-right:5%;width:45%}.tribe-row:after,.tribe-row:before{content:"";display:table}.tribe-row,.tribe-row:after{clear:both}.tribe-row .tribe-half-column:last-child{margin-right:0;width:50%}.tribe_update_page h2{font-size:30px;line-height:1.2;margin-bottom:20px}.tribe_update_page h3{font-size:24px;font-weight:400;line-height:24px;margin-top:0}.tribe_update_page h4{font-size:18px;font-weight:600;line-height:18px;margin:0}.tribe_update_page p{font-size:15px}p.tribe-update-message{font-size:18px;font-weight:400}.tribe_update_page h4:before{content:"\f145";font-family:dashicons;font-size:34px;line-height:1;margin-right:5px;position:relative;top:5px}a.tribe-rating-link{text-decoration:none}.tribe-update-links{margin-top:30px}.tribe_update_page li:before{content:"\2022";padding-right:3px}.tribe_update_page .rss-widget{margin:1em 0}.tribe_update_page a.rsswidget{font-size:14px;font-weight:400;line-height:1}.tribe_update_page .rss-widget li:before{display:none}.tribe-update-bar{display:inline-block}.tribe-update-bar .progress{border:1px solid #ccc;float:left;margin-right:1rem;padding:1px;width:18rem}.tribe-update-bar .progress .bar{background:#ffba00;height:1rem;width:1%;background:#7ad03a}#tribe-dialog-wrapper>div{padding:1rem}#tribe-dialog-wrapper>div .stage{display:none}#tribe-dialog-wrapper #heading{background:#fff}#tribe-dialog-wrapper label{display:block}#tribe-dialog-wrapper .select-single-container{border:1px solid #888;overflow-y:scroll;height:300px}#tribe-dialog-wrapper .select-single-container label{opacity:1;padding:3px 5px;transition:opacity .2s}#tribe-dialog-wrapper .select-single-container label:nth-child(odd){background:#fff}#tribe-dialog-wrapper .select-single-container label.selected{background:#0073aa;color:#fff;font-weight:700}#tribe-dialog-wrapper .select-single-container label input{display:none}#tribe-dialog-wrapper .select-single-container.updating label{opacity:.35;transition:opacity .2s}.ui-front{z-index:1000000}.wp-list-table.plugins .column-description .update-message{color:#d54e21}.api-check{padding:1em;min-height:100px}.api-check+.notice-dismiss:hover:before{color:#fff}.api-check:after,.api-check:before{content:"";display:table}.api-check:after{clear:both}.api-check .tribe-mascot{bottom:0;display:none;padding:0 1rem 0 0;position:absolute;right:0;top:0}.api-check .tribe-mascot img{display:inline-block;max-height:150px;max-width:150px;height:100%;width:auto;vertical-align:middle}.api-check p{line-height:1.7;margin-bottom:1em}.api-check a{text-decoration:none}.api-check a:hover{text-decoration:underline}.api-check .plugin-list{display:inline;font-weight:600;margin:0;padding:0}.api-check .plugin-list span.plugin-invalid:after{content:", "}.api-check .plugin-list span.plugin-invalid:last-of-type:after{content:""}.tribe-marketing-notice{padding:1em}.tribe-marketing-notice+.notice-dismiss:hover:before{color:#fff}.tribe-marketing-notice:after,.tribe-marketing-notice:before{content:"";display:table}.tribe-marketing-notice:after{clear:both}.tribe-marketing-notice .tribe-marketing-notice__icon{display:none;flex-shrink:0;padding:0;position:static}.tribe-marketing-notice .tribe-marketing-notice__icon img{display:inline-block;max-height:100%;max-width:none;vertical-align:middle;width:100%}.tribe-marketing-notice h3{margin-bottom:.5em;margin-top:.5em}.tribe-marketing-notice p{line-height:1.7;margin-bottom:.5em}.tribe-marketing-notice a{text-decoration:none}.tribe-marketing-notice a:hover{text-decoration:underline}#wpcontent .notice-tribe-banner{align-items:center;background:#161b7d;border:0;box-shadow:none;display:flex;justify-content:flex-start;margin:0 0 16px;padding-right:0}.notice-tribe-banner .tribe-marketing-notice__icon{width:47px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:0;padding:1em 0}.notice-tribe-banner h3{color:#fff;display:block;font-size:.875rem;line-height:1.25;margin:0 0 .25rem}.notice-tribe-banner a{border-bottom:1px solid #fff;line-height:1.25;margin:0;text-decoration:none}.notice-tribe-banner a:hover{text-decoration:none}.notice-tribe-banner a,.notice-tribe-banner p{color:#fff;display:inline-block;font-size:.875rem;line-height:1.25}.notice-tribe-banner p{display:inline-block;margin:0;padding:0}.notice-tribe-banner .tribe-marketing-notice{align-items:center;display:flex;justify-content:flex-start;margin:0 auto;min-height:65px;padding:0 .75rem;width:100%}.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe-welcome .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:100%}.notice-tribe-banner .notice-dismiss{position:static}.notice-tribe-banner .notice-dismiss:before{color:#eaf1ff}.tribe-dropdown,.tribe-ea-dropdown{max-width:100%;width:auto}.tribe-dropdown.select2-container .selection,.tribe-ea-dropdown.select2-container .selection{margin-top:inherit}.tribe-dropdown .select2-selection--single,.tribe-ea-dropdown .select2-selection--single{height:32px}.tribe-dropdown .select2-selection--single .select2-selection__clear,.tribe-ea-dropdown .select2-selection--single .select2-selection__clear{line-height:28px}.tribe-dropdown .select2-selection--single .select2-selection__rendered,.tribe-ea-dropdown .select2-selection--single .select2-selection__rendered{line-height:32px;padding-right:28px}.tribe-dropdown.select2-container--focus .select2-selection--single,.tribe-ea-dropdown.select2-container--focus .select2-selection--single{border-color:#5897fb;box-shadow:0 0 5px rgba(0,0,0,.1)}.tribe-dropdown.select2-container--open .select2-search__field,.tribe-ea-dropdown.select2-container--open .select2-search__field{padding:0}.tribe-dropdown.select2-container--open .select2-dropdown--below,.tribe-ea-dropdown.select2-container--open .select2-dropdown--below{margin-top:-1px;border-top:1px solid #aaa}.tribe-dropdown.select2-container--open .select2-dropdown--above,.tribe-ea-dropdown.select2-container--open .select2-dropdown--above{margin-bottom:-16px;border-bottom:1px solid #aaa}.tribe-dropdown.select2-container--open .select2-selection--single,.tribe-ea-dropdown.select2-container--open .select2-selection--single{border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:#aaa}.tribe-dropdown.select2-container--open .select2-selection__arrow b,.tribe-ea-dropdown.select2-container--open .select2-selection__arrow b{transform:rotate(180deg)}.tribe-dropdown.select2-selection--single,.tribe-ea-dropdown.select2-selection--single{background-image:none;border-radius:3px;border:1px solid #ccc;overflow:hidden}.tribe-dropdown.select2-selection--single>.select2-selection__rendered,.tribe-ea-dropdown.select2-selection--single>.select2-selection__rendered{white-space:normal}.tribe-dropdown.select2-selection--single .select2-selection__arrow,.tribe-ea-dropdown.select2-selection--single .select2-selection__arrow{background-image:none;background:transparent;border-left:0;top:2px;width:26px}.tribe-dropdown.select2-selection--single .select2-selection__arrow b,.tribe-ea-dropdown.select2-selection--single .select2-selection__arrow b{background:#fff url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23555%22%2F%3E%3C%2Fsvg%3E") no-repeat right 5px top 55%;background-size:auto;background-size:16px 16px;border:0;top:0;bottom:0;left:0;right:0;display:block;width:auto;height:auto;margin:0;padding:0}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered{background-image:none;border-radius:3px;border:1px solid #ccc;min-height:25px}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline{line-height:25px}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline input,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline input{padding-top:0;padding-bottom:0}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{margin-top:2px;padding-top:0;padding-bottom:0;line-height:19px}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice div,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice div{line-height:inherit}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice__remove,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice__remove{top:3px;left:4px;transition-property:border,color}.select2-results .select2-results__option{color:#939393;font-weight:400;margin-bottom:0}.select2-results .select2-results__option[aria-disabled=true]{background-color:#e0e0e0}.select2-results.select2-results__option--highlighted{background-color:#efefef;color:#a1a1a1;cursor:default;display:block}.wp-core-ui .button-red{background-color:#a00;border-bottom-color:#8d1f21;border-color:#9b2124;box-shadow:inset 0 1px 0 rgba(120,200,230,.5);color:#fff;text-decoration:none;text-shadow:0 1px 0 rgba(0,0,0,.1)}.wp-core-ui .button-red.focus,.wp-core-ui .button-red.hover,.wp-core-ui .button-red:focus,.wp-core-ui .button-red:hover{background-color:#a00;border-color:#7f1c1f;box-shadow:inset 0 1px 0 rgba(120,200,230,.6);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.3)}.wp-core-ui .button-red.focus,.wp-core-ui .button-red:focus{border-color:#500f0e;box-shadow:inset 0 1px 0 rgba(120,200,230,.6),1px 1px 2px rgba(0,0,0,.4)}.wp-core-ui .button-red.active,.wp-core-ui .button-red.active:focus,.wp-core-ui .button-red.active:hover,.wp-core-ui .button-red:active{background:#7f1c1f;border-color:#601312 #ae2426 #ae2426;box-shadow:inset 0 1px 0 rgba(0,0,0,.1);color:hsla(0,0%,100%,.95);text-shadow:0 1px 0 rgba(0,0,0,.1)}.wp-core-ui .button-red-disabled,.wp-core-ui .button-red:disabled,.wp-core-ui .button-red[disabled]{color:#e79496!important;background:#ba292b!important;border-color:#7f1c1f!important;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}.ticket_form .select2-container .select2-selection--single .select2-selection__arrow{display:none}.clear{zoom:1}.clear:after,.clear:before{content:" ";display:table}.clear:after{clear:both}.checkmark:after{content:"";display:block;width:8px;height:15px;border:solid #0ab152;border-width:0 3px 3px 0;transform:rotate(45deg)}.checkmark.checkmark-right:after{float:right;margin-right:2em}.checkmark.checkmark-left:after{float:left;margin-left:2em}.checkmark.no-checkmark:after{display:none}.complete,.ok,.on,.yes,[data-status=complete],[data-status=ok],[data-status=on],[data-status=yes]{color:#0ab152}.incomplete,.ko,.no,.off,[data-status=incomplete],[data-status=ko],[data-status=no],[data-status=off]{color:#ff2500}.plugin-card-event-tickets-plus .column-downloaded,.plugin-card-event-tickets-plus .column-rating,.plugin-card-event-tickets-plus .column-updated,.plugin-card-event-tickets .column-downloaded,.plugin-card-event-tickets .column-rating,.plugin-card-event-tickets .column-updated,.plugin-card-events-calendar-pro .column-downloaded,.plugin-card-events-calendar-pro .column-rating,.plugin-card-events-calendar-pro .column-updated,.plugin-card-events-community-tickets .column-downloaded,.plugin-card-events-community-tickets .column-rating,.plugin-card-events-community-tickets .column-updated,.plugin-card-events-community .column-downloaded,.plugin-card-events-community .column-rating,.plugin-card-events-community .column-updated,.plugin-card-image-widget-plus .column-downloaded,.plugin-card-image-widget-plus .column-rating,.plugin-card-image-widget-plus .column-updated,.plugin-card-image-widget .column-downloaded,.plugin-card-image-widget .column-rating,.plugin-card-image-widget .column-updated,.plugin-card-the-events-calendar .column-downloaded,.plugin-card-the-events-calendar .column-rating,.plugin-card-the-events-calendar .column-updated,.plugin-card-tribe-eventbrite .column-downloaded,.plugin-card-tribe-eventbrite .column-rating,.plugin-card-tribe-eventbrite .column-updated,.plugin-card-tribe-filterbar .column-downloaded,.plugin-card-tribe-filterbar .column-rating,.plugin-card-tribe-filterbar .column-updated{display:none}body.tribe-welcome{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff}body.tribe-welcome .update-nag{display:none}body.tribe-welcome #wpcontent{padding:0}body.tribe-welcome .tribe_settings{margin:0}body.tribe-welcome #wpfooter,body.tribe-welcome .tribe_settings>h1{display:none}body.tribe-welcome #wpbody-content{padding-bottom:25px}body.tribe-welcome .tribe-dependency-error{display:none}.tribe-events-admin-content-wrapper{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;margin:0 auto;padding:20px;width:calc(100% - 40px)}.tribe-events-admin-card{background:#fff;border:1px solid #e1e1e4;box-sizing:border-box;border-radius:16px;display:block;margin:0 auto 36px;padding:27px;text-align:center}.tribe-events-admin-card--1up{width:100%}.tribe-events-admin-video{-webkit-mask-image:-webkit-radial-gradient(circle,#fff 100%,#000 0);-webkit-transform:rotate(.000001deg);border-radius:16px;height:200px;margin-bottom:72px;overflow:hidden}.tribe-events-admin-video iframe{width:100%}.tribe-events-admin-card--2up .tribe-events-admin-card__title{max-width:260px}.tribe-events-admin-card--3up .tribe-events-admin-card__description{height:71px}.tribe-events-admin-card--3up .tribe-events-admin-card__image{margin-bottom:28px}.tribe-events-admin-card--promo-blue{background-color:#3d54ff;background-image:url(../images/welcome/promo.jpg)}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{color:#fff;font-size:16px;text-align:left;margin-bottom:16px}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__title{text-align:left;color:#fff}.tribe-events-admin-graphic{position:absolute;top:106px;right:0;z-index:-1}.tribe-events-admin-graphic--desktop-only{display:none}.tribe-events-admin-graphic--mobile-only{display:block}.tribe-events-admin-card__form{position:relative}input[type=email].tribe-events-admin-card__input{background:#fff;border:1px solid #e1e1e4;box-sizing:border-box;border-radius:16px;font-size:14px;height:54px}input[type=email].tribe-events-admin-card__input::-webkit-input-placeholder{color:rgba(15,16,49,.72);letter-spacing:.5px;padding-left:10px}input[type=email].tribe-events-admin-card__input::-moz-placeholder{color:rgba(15,16,49,.72);letter-spacing:.5px;padding-left:10px}input[type=email].tribe-events-admin-card__input:-ms-input-placeholder,input[type=email].tribe-events-admin-card__input::-ms-input-placeholder{color:rgba(15,16,49,.72);letter-spacing:.5px;padding-left:10px}input[type=email].tribe-events-admin-card__input::placeholder{color:rgba(15,16,49,.72);letter-spacing:.5px;padding-left:10px}.tribe-events-admin-card__button{background-color:#fff;border:none;color:#3d54ff;font-size:14px;font-weight:700;letter-spacing:1px;line-height:16px;position:absolute;right:20px;text-transform:uppercase;top:17px}.tribe-events-admin-card__button:hover{color:#161b7d}.tribe-events-admin-card__description{color:#000;font-size:14px;font-style:normal;font-weight:400;line-height:22px;margin-top:16px}.tribe-events-admin-card__image{display:block;margin:0 auto;height:100px}.tribe-events-admin-card__link{color:#3d54ff;display:inline-block;font-size:16px;font-style:normal;font-weight:700;line-height:18px;margin-top:24px;position:relative;text-decoration:none}.tribe-events-admin-card__link:hover{color:#161b7d}.tribe-events-admin-card__link:after{border-style:solid;border-width:0 0 1px;bottom:-4px;content:"";left:0;position:absolute;width:100%}.tribe-events-admin-card__title{color:#0f1031;font-size:20px;font-weight:700;line-height:23px;margin:auto}.tribe-events-admin-card-grid{max-width:1048px}.tribe-events-admin-quick-nav{background:#fff;border-radius:16px;border:1px solid #e1e1e4;box-sizing:border-box;display:block;margin:40px 0 78px;padding:18px 23px 2px}.tribe-events-admin-quick-nav__link{color:#3d54ff;font-size:16px;font-weight:700;line-height:18px;text-align:center;text-decoration:none}.tribe-events-admin-quick-nav__link:hover{color:#161b7d}.tribe-events-admin-quick-nav__link-item{display:block;padding-bottom:19px}.tribe-events-admin-quick-nav__links{display:inline}.tribe-events-admin-quick-nav__title{color:rgba(15,16,49,.72);display:inline-block;font-size:14px;font-weight:400;line-height:16px;padding-bottom:14px;text-transform:uppercase}.tribe-events-admin-section-header{color:#000;font-size:24px;font-weight:700;line-height:28px;margin:21px 0 24px}.tribe-events-admin-title{padding-top:14px}.tribe-events-admin-title__description{color:#0f1031;font-size:16px;font-weight:400;line-height:24px;max-width:584px;padding-top:15px}.tribe-events-admin-title__heading{color:#0f1031;display:inline-block;font-size:24px;font-weight:700;line-height:28px;margin:5px 0 0}.tribe-events-admin-title__logo{margin-right:8px;vertical-align:top;width:34px}.tribe-events-admin-notice{background-color:#3d54ff;height:65px}.tribe-events-admin-notice .tribe-events-admin-content-wrapper{padding-top:8px;padding-bottom:0}.tribe-events-admin-notice p{color:#fff;display:inline-block;font-family:Helvetica;font-size:16px;line-height:18px;margin-top:0;padding-bottom:12px;padding-left:16px;vertical-align:middle;width:calc(100% - 60px)}.tribe-events-admin-notice__logo{display:inline-block}.tribe-events-admin-tickets .tribe-events-admin-section-header{font-size:28px;line-height:32px}.tribe-events-admin-tickets .tribe-events-admin-graphic--desktop-only{width:365px}.tribe-events-admin-tickets .tribe-events-admin-graphic--mobile-only{width:300px;top:230px}.tribe-events-admin-tickets .tribe-events-admin-title__heading{margin-top:0}.tribe-events-admin-tickets .tribe-events-admin-title__logo{margin-right:4px;width:32px}body.tribe-welcome #fs_connect{border:1px solid #e1e1e4;box-sizing:border-box;border-radius:16px;margin-left:22px;box-shadow:none}body.tribe-welcome #fs_connect .fs-actions{background-color:transparent}body.tribe-welcome #fs_connect .fs-permissions{border-top:1px solid #e1e1e4;margin:0 16px}body.tribe-welcome #fs_connect button{background-color:#3d54ff;border-color:#3d54ff}body.tribe-welcome #fs_connect .button-secondary{border-color:#3d54ff;color:#3d54ff;background:#fff}body.tribe-welcome #fs_connect a{color:#3d54ff}body.tribe-welcome #fs_connect a:focus{box-shadow:none;outline:none}body.tribe-welcome #fs_connect a:hover{color:#161b7d}@media only screen and (-o-min-device-pixel-ratio:2/1),only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min--moz-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2){#tribe-loading span{background-image:url(../images/tribe-loading@2x.gif)}}@media screen and (max-width:782px){.tribe-half-column,.tribe-row .tribe-half-column:last-child{margin:0 0 20px;width:100%}input[type=email]{width:100%}}@media screen and (max-width:782px){.events-cal .subsubsub{float:none}.events-cal .search-box{width:98%}.events-cal #search-submit{width:100%}.events-cal .tablenav.top{display:none}}@media screen and (min-width:500px){.api-check .tribe-mascot{display:block}.api-check .notice-content{margin-right:180px}}@media screen and (min-width:320px){.tribe-marketing-notice .tribe-marketing-notice__icon{display:block}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px}}@media screen and (min-width:600px) and (max-width:782px){.tribe-marketing-notice .tribe-marketing-notice__content{margin-left:145px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px;padding:0}}@media screen and (min-width:782px){.tribe-marketing-notice .tribe-marketing-notice__content{margin-left:130px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px;padding:0}.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe-welcome .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:642px}}@media screen and (min-width:400px){.notice-tribe-banner .tribe-marketing-notice__icon{width:67px}}@media screen and (min-width:800px){.notice-tribe-banner h3{display:inline-block;font-size:1rem;margin:0 .5rem 0 0}.notice-tribe-banner a{line-height:1.5}.notice-tribe-banner a,.notice-tribe-banner p{font-size:1rem}.notice-tribe-banner p{margin:0 .5rem 0 0}.notice-tribe-banner .tribe-marketing-notice__cta{display:inline-block;margin-left:.5rem}}@media screen and (min-width:1215px){.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:992px}.tribe-welcome .notice-tribe-banner .tribe-marketing-notice{max-width:1036px}}@media screen and (min-width:710px){.tribe-events-admin-content-wrapper{width:670px}.tribe-events-admin-card--1up{display:inline-block;width:calc(50% - 18px);margin-left:32px}.tribe-events-admin-card--1up .tribe-events-admin-card__description{height:71px}.tribe-events-admin-card--1up .tribe-events-admin-card__image{margin-bottom:28px}.tribe-events-admin-card--2up{display:inline-block;width:calc(50% - 20px)}.tribe-events-admin-card--2up.tribe-events-admin-card--first{margin-right:36px}.tribe-events-admin-card--2up.tribe-events-admin-card--last{margin-right:0}.tribe-events-admin-card--2up .tribe-events-admin-card__image{height:100px;margin-bottom:12px}.tribe-events-admin-card--2up .tribe-events-admin-card__title{max-width:340px;margin-bottom:27px}.tribe-events-admin-card--3up{display:inline-block;margin-bottom:32px;width:calc(50% - 18px)}.tribe-events-admin-card--3up.tribe-events-admin-card--first{margin-right:32px}.tribe-events-admin-card--3up.tribe-events-admin-card--middle{margin-right:0}.tribe-events-admin-card--promo-blue{display:block;margin-left:0;min-height:170px;width:100%}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{float:left;max-width:300px}.tribe-events-admin-graphic{top:0;max-width:250px}.tribe-events-admin-graphic--desktop-only{display:block}.tribe-events-admin-graphic--mobile-only{display:none}.tribe-events-admin-card__form{float:right;width:300px}input[type=email].tribe-events-admin-card__input{width:300px}.tribe-events-admin-card__title{font-size:20px;line-height:23px}.tribe-events-admin-section-header{font-size:28px;line-height:32px;margin-bottom:21px}.tribe-events-admin-title{padding-top:50px}.tribe-events-admin-title__description{padding-top:15px}.tribe-events-admin-title__heading{font-size:48px;line-height:55px;margin:0}.tribe-events-admin-title__logo{margin-right:14px;padding-top:5px;width:40px}.tribe-events-admin-tickets .tribe-events-admin-card__title{font-size:18px}.tribe-events-admin-tickets .tribe-events-admin-card--2up .tribe-events-admin-card__title{font-size:18px;height:66px}.tribe-events-admin-tickets .tribe-events-admin-title__logo{margin-right:8px;padding-top:4px;width:60px}}@media screen and (min-width:1217px){.tribe-events-admin-content-wrapper{width:100%;max-width:1060px}.tribe-events-admin-card--1up{margin:0 0 36px;padding:33px 44px 30px;text-align:left;width:1012px}.tribe-events-admin-card--1up .tribe-events-admin-card__description{height:auto}.tribe-events-admin-card--1up .tribe-events-admin-card__image{float:left;margin:0 48px 10px 0}.tribe-events-admin-card--2up{margin-right:36px;width:486px}.tribe-events-admin-card--3up{width:310px}.tribe-events-admin-card--3up.tribe-events-admin-card--first,.tribe-events-admin-card--3up.tribe-events-admin-card--middle{margin-right:36px}.tribe-events-admin-card--3up.tribe-events-admin-card--last{margin-right:0}.tribe-events-admin-card--promo-blue{min-height:150px}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{max-width:450px}.tribe-events-admin-graphic{max-width:none}.tribe-events-admin-card__form,input[type=email].tribe-events-admin-card__input{width:365px}.tribe-events-admin-quick-nav{display:inline-block;border-radius:100px;margin:24px 0 94px;max-width:1010px;padding:0 36px 0 0;height:54px}.tribe-events-admin-quick-nav__link-item{display:inline-block;padding:18px 10px 0}.tribe-events-admin-quick-nav__title{padding:19px 6px 17px 32px}.tribe-events-admin-tickets .tribe-events-admin-card--2up .tribe-events-admin-card__title{height:auto}}
|
1 |
+
.invalid input{border:2px solid red!important}.valid input{border:1px solid green}.clearfix{zoom:1}.placeholder{color:#999;cursor:text;padding:4px}input::-moz-placeholder,textarea::-moz-placeholder{color:#999}input:-ms-input-placeholder,input::-ms-input-placeholder,textarea:-ms-input-placeholder,textarea::-ms-input-placeholder{color:#999}input::placeholder,textarea::placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.bubble{background-color:#f9f9f9;border:1px solid #dfdfdf;border-radius:3px;border-spacing:0;padding:10px}.tribe-sticky-tooltip{color:#bbb}td.tribe_message{padding-bottom:10px!important}#tribe_thanks{float:left;margin:5px 0 0;width:200px}.tribe_brand{font-family:Georgia,serif!important;font-size:17px!important;font-weight:400;margin:8px 0}.tribe-rating{color:#3d54ff}.tribe-rating:hover{color:#1c39bb}#tribe-upgrade{background:#f6f6f6;border:1px solid #ccc;border-radius:5px;margin:20px 0 30px;padding:0 20px 20px}#tribe-upgrade .message{background-color:#ffffe0;border:1px solid #e6db55;border-radius:3px;padding:6px 12px}table.plugins .tribe-plugin-update-message{background:#d54e21;color:#fff;display:inline-table;margin:6px 0;padding:10px 12px}table.plugins .tribe-plugin-update-message h4{display:inline;font-weight:700;margin-right:8px}table.plugins .tribe-plugin-update-message h4:after{content:" \00BB "}table.plugins .tribe-plugin-update-message a{color:#fff;text-decoration:underline}.tribe-settings-form{max-width:1000px}.tribe-settings-form fieldset{clear:both;display:inline-block;padding:10px 0}.tribe-settings-form fieldset.tribe-field-license_key legend{width:auto}.tribe-settings-form legend{float:left;font-weight:700;margin-right:20px;width:220px}.tribe-settings-form .tribe-field-wrap{float:left;max-width:500px}.tribe-settings-form .tribe-field-wrap :first-child{margin-top:0}.tribe-settings-form .tribe-field-checkbox_list label,.tribe-settings-form .tribe-field-radio label{display:block;margin:5px 0 5px 20px;text-indent:-20px}.tribe-settings-form .tribe-field-checkbox_list label>p,.tribe-settings-form .tribe-field-radio label>p{text-indent:0;margin-left:1px}.tribe-settings-form .tribe-field-checkbox_list label input,.tribe-settings-form .tribe-field-radio label input{margin-right:5px}.tribe-settings-form .tribe-settings-form-wrap .description,.tribe-settings-form .tribe-settings-form-wrap fieldset,.tribe-settings-form fieldset[id^=tribe-field-geoloc_]{padding-left:12px}.tribe-settings-form .tribe-settings-form-wrap fieldset .description{margin-left:0;max-width:450px;padding-left:0}.tribe-settings-form .tribe-settings-form-wrap fieldset .tribe-style-selection{margin-bottom:18px}.tribe-settings-form .tribe-settings-form-wrap #tribe-field-stylesheetOption .description{color:#999;margin-left:1px}.tribe-settings-form .tribe-settings-form-wrap h3{background-color:#f9f9f9;margin-bottom:10px;padding:6px 0 6px 12px}.tribe-settings-form .tribe-settings-form-wrap .contained,.tribe-settings-form .tribe-settings-form-wrap .system-info,.tribe-settings-form .tribe-settings-form-wrap .tribe-sysinfo-optin-msg,.tribe-settings-form .tribe-settings-form-wrap h3+p{margin:0 0 10px;padding-left:12px}.tribe_settings .tribe-field-indent{margin-left:245px}.tribe_settings #pu_dashboard_message{display:none}.tribe_settings .tribe-errors-list{margin-left:15px}.tribe_settings .expiring-license{color:red}.tribe_settings .tribe-error{border:1px solid red}.tribe_settings .tribe-field-description{margin-bottom:0;position:relative;top:-12px}.tribe_settings #ical-link{top:-14px}#modern-tribe-info{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;margin:20px 0;padding:8px 20px 12px}#modern-tribe-info img{margin:10px 0}#modern-tribe-info ul{list-style:disc;margin-left:20px}#modern-tribe-info ul ul{list-style:circle}.tribe-field-inline-dropdown{margin-left:0;margin-right:0}.tribe-field-inline-text{line-height:28px;margin:0 2px}.tribe-field-textarea.tribe-size-small textarea{height:60px;width:180px}.tribe-field-textarea.tribe-size-medium textarea{height:80px;width:300px}.tribe-field-textarea.tribe-size-large textarea{height:120px;width:450px}.tribe-field-email.tribe-size-small input,.tribe-field-license_key.tribe-size-small input,.tribe-field-text.tribe-size-small input{width:50px}.tribe-field-email.tribe-size-medium input,.tribe-field-license_key.tribe-size-medium input,.tribe-field-text.tribe-size-medium input{width:225px}.tribe-field-email.tribe-size-large input,.tribe-field-license_key.tribe-size-large input,.tribe-field-text.tribe-size-large input{width:450px}.tribe-field-dropdown.tribe-size-small select{width:100px}.tribe-field-dropdown.tribe-size-medium select{width:300px}.tribe-field-dropdown.tribe-size-large select{width:450px}.tribe-field-wrapped_html.tribe-size-large .tribe-field-wrap{max-width:600px}.tribe-field-wrapped_html.tribe-size-large .tribe-field-wrap .description{max-width:100%}.tribe-field-dropdown_chosen.tribe-size-small select{width:100px}.tribe-field-dropdown_chosen.tribe-size-medium select{width:200px}.tribe-field-dropdown_chosen.tribe-size-large select{width:300px}.tribe-field-wrap .tooltip:first-child{font-style:normal}.tribe-field.indent{margin-left:252px;width:75%}.tribe-field.indent legend{font-weight:400;width:auto}.tribe-field.indent .tribe-field-wrap{padding-right:12px}.tribe-field.indent.tribe-field-radio .tribe-field-wrap{clear:left;margin-top:12px}.tribe-field.light-bordered{background-color:#fff;border:1px solid #d3d3d3}.ajax-loading-license,.invalid-key,.valid-key{display:none;margin:0 5px}.ajax-loading-license{position:relative;top:5px}.key-validity{display:inline-block}.invalid-key,.optin-fail{color:red}.optin-success,.valid-key{color:green}.valid-key.service-msg{color:#b72}#additional-field-table{margin-bottom:20px}.tribe-admin-box-left{float:left;width:20%}.tribe-admin-box-left,.tribe-admin-box-right{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;margin:20px 0;padding:0 20px 15px}.tribe-admin-box-right{float:right;width:68%}.ajax-loader{float:right;margin:10px}.tribe-arrangeable-item{border:1px solid #d3d3d3;border-radius:3px}.tribe-arrangeable-item .ui-state-default{border:none}.tribe-arrangeable-item-top{padding:6px}.tribe-arrangeable-item-top:hover{cursor:move}.tribe-arrangeable-action{float:right}.tribe-arrangeable-child{background-color:#f9f9f9;border-top:1px solid #d3d3d3;display:none;padding:25px}.tribe-arrangeable-child label{display:block;margin:0 0 7px}.tribe_events_active_filter_type_options{margin:10px 0}.tribe_events_active_filter_type_options label{margin:7px 0}#event_organizer td small,.OrganizerInfo td small{display:block;margin:0;max-width:250px}#event_organizer .organizer-email,.OrganizerInfo .organizer-email{vertical-align:top}.tribe-table-field-label{max-width:100%;width:200px}#tribe-help-general,#tribe-help-sidebar{float:left;margin-top:20px}#tribe-help-general p{margin-left:15px}#tribe-help-general ul{list-style-type:square}#tribe-help-general ol,#tribe-help-general ul{margin-bottom:20px;margin-left:35px}#tribe-help-general h3{background-color:#f9f9f9;margin-bottom:10px;padding:6px 0 6px 12px}#tribe-help-general h3~h3{margin-top:2.25em}#tribe-help-general h3+p{margin:0 0 20px;padding-left:12px}#tribe-help-general{width:65%}.tribe-help-section{padding-bottom:10px}.tribe-section-type-box{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;padding:8px 20px 12px}.tribe-section-type-box img{height:auto;margin:10px 0;max-width:300px}.tribe-section-type-box ul{list-style:disc;margin-left:20px}.tribe-section-type-box ul ul{list-style:circle}#tribe-log-controls{padding-bottom:1rem;padding-left:12px}#tribe-log-controls>div{display:inline-block;padding-right:1rem}#tribe-log-controls .working{opacity:1;transition:opacity .2s}#tribe-log-controls .working.hidden{opacity:0;transition:opacity .2s}#tribe-log-viewer,#tribe-system-info dl.support-stats,.template-updates-wrapper{background:#000;border-radius:2px;color:#888;max-height:400px;overflow:scroll;padding:10px}#tribe-system-info dl.support-stats dt,.template-updates-wrapper dt{clear:both;float:left;font-weight:700;text-transform:uppercase;width:25%}#tribe-system-info dl.support-stats dd,.template-updates-wrapper dd{margin-left:25%;padding-left:10px}.system-info-copy .system-info-copy-btn{padding:6px}.system-info-copy .system-info-copy-btn .dashicons{padding-right:10px}.template-updates-wrapper p{margin-top:0}#tribe-help-sidebar{margin:20px 0 0 3%;max-width:225px;width:32%}.tribe-help-plugin-info{border:1px solid #ccc;padding:0 12px 12px}.tribe-help-plugin-info dd,.tribe-help-plugin-info dt{display:inline;margin:0}.tribe-help-plugin-info dt{font-weight:700}.tribe-help-plugin-info dd:after{content:"";display:block;height:.4em}.tribe-help-plugin-info dd:last-child:after{height:0}.tribe-help-plugin-info+.tribe-help-plugin-info{margin-top:20px}.tribe-help-plugin-info>div{line-height:2em}.tribe-help-plugin-info .star-rating{display:inline-block;margin-left:3px;position:relative;top:-2px}.tribe-help-plugin-info .tribe-list-addons{color:#21a6cb;font-size:24px;list-style:circle inside;margin-bottom:10px;margin-top:10px;padding-left:4px}.tribe-help-plugin-info .tribe-list-addons a{font-size:13px;left:-5px;position:relative;top:-5px}.tribe-help-plugin-info .tribe-list-addons .tribe-active-addon{list-style:disc inside}.ui-widget-overlay{background:#666;filter:Alpha(Opacity=50);opacity:.5}.ui-widget-shadow{background:#000;border-radius:5px;filter:Alpha(Opacity=20);margin:-5px 0 0 -5px;opacity:.2;padding:5px}.ui-resizable{position:relative}.ui-resizable-handle{display:block;font-size:.1px;position:absolute;z-index:99999}.ui-resizable-autohide .ui-resizable-handle,.ui-resizable-disabled .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;left:0;top:-5px;width:100%}.ui-resizable-s{bottom:-5px;cursor:s-resize;height:7px;left:0;width:100%}.ui-resizable-e{cursor:e-resize;height:100%;right:-5px;top:0;width:7px}.ui-resizable-w{cursor:w-resize;height:100%;left:-5px;top:0;width:7px}.ui-resizable-se{bottom:1px;cursor:se-resize;height:12px;right:1px;width:12px}.ui-resizable-sw{bottom:-5px;cursor:sw-resize;height:9px;left:-5px;width:9px}.ui-resizable-nw{cursor:nw-resize;height:9px;left:-5px;top:-5px;width:9px}.ui-resizable-ne{cursor:ne-resize;height:9px;right:-5px;top:-5px;width:9px}.ui-dialog{padding:.2em;position:relative;width:375px}.ui-dialog .ui-dialog-titlebar{padding:.5em .3em .3em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0 .2em}.ui-dialog .ui-dialog-titlebar-close{height:18px;margin:-10px 0 0;padding:1px;position:absolute;right:.3em;top:50%;width:19px}.ui-dialog .ui-dialog-titlebar-close span{display:block;margin-left:-8px;margin-top:-8px}.ui-dialog .ui-dialog-titlebar-close:focus,.ui-dialog .ui-dialog-titlebar-close:hover{padding:0}.ui-dialog .ui-dialog-content{background:none;border:0;overflow:auto;padding:.5em 1em;zoom:1}.ui-dialog .ui-dialog-buttonpane{background-image:none;border-width:1px 0 0;margin:.5em 0 0;padding:.3em 1em .5em!important;text-align:right}.ui-dialog .ui-dialog-buttonpane button{cursor:pointer;line-height:1.4em;margin:.5em .4em!important;overflow:visible;padding:.2em .6em .3em;text-shadow:none;width:auto}.ui-dialog .ui-resizable-se{bottom:3px;height:14px;right:3px;width:14px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:none!important;text-align:center}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button .ui-button-text{display:block;line-height:1.4}#ui-datepicker-div{display:none}#tribe-loading{background:#fff;background:hsla(0,0%,100%,.8);display:none;height:100%;left:0;position:absolute;top:0;transition:all 1s linear;width:100%;z-index:4}#tribe-loading span{background:url(../images/tribe-loading.gif) 0 0 no-repeat;background-size:32px 32px;height:32px;left:50%;margin:-16px 0 0 -16px;position:absolute;top:50%;width:32px}.tribe_update_page{max-width:850px}.tribe-half-column{float:left;margin-bottom:30px;margin-right:5%;width:45%}.tribe-row:after,.tribe-row:before{content:"";display:table}.tribe-row,.tribe-row:after{clear:both}.tribe-row .tribe-half-column:last-child{margin-right:0;width:50%}.tribe_update_page h2{font-size:30px;line-height:1.2;margin-bottom:20px}.tribe_update_page h3{font-size:24px;font-weight:400;line-height:24px;margin-top:0}.tribe_update_page h4{font-size:18px;font-weight:600;line-height:18px;margin:0}.tribe_update_page p{font-size:15px}p.tribe-update-message{font-size:18px;font-weight:400}.tribe_update_page h4:before{content:"\f145";font-family:dashicons;font-size:34px;line-height:1;margin-right:5px;position:relative;top:5px}a.tribe-rating-link{text-decoration:none}.tribe-update-links{margin-top:30px}.tribe_update_page li:before{content:"\2022";padding-right:3px}.tribe_update_page .rss-widget{margin:1em 0}.tribe_update_page a.rsswidget{font-size:14px;font-weight:400;line-height:1}.tribe_update_page .rss-widget li:before{display:none}.tribe-events-widget-admin-form__input-section p{margin:0}.tribe-events-widget-admin-form__input-section h4{margin:.5em 0}.tribe-update-bar{display:inline-block}.tribe-update-bar .progress{border:1px solid #ccc;float:left;margin-right:1rem;padding:1px;width:18rem}.tribe-update-bar .progress .bar{background:#ffba00;height:1rem;width:1%;background:#7ad03a}#tribe-dialog-wrapper>div{padding:1rem}#tribe-dialog-wrapper>div .stage{display:none}#tribe-dialog-wrapper #heading{background:#fff}#tribe-dialog-wrapper label{display:block}#tribe-dialog-wrapper .select-single-container{border:1px solid #888;overflow-y:scroll;height:300px}#tribe-dialog-wrapper .select-single-container label{opacity:1;padding:3px 5px;transition:opacity .2s}#tribe-dialog-wrapper .select-single-container label:nth-child(odd){background:#fff}#tribe-dialog-wrapper .select-single-container label.selected{background:#0073aa;color:#fff;font-weight:700}#tribe-dialog-wrapper .select-single-container label input{display:none}#tribe-dialog-wrapper .select-single-container.updating label{opacity:.35;transition:opacity .2s}.ui-front{z-index:1000000}.wp-list-table.plugins .column-description .update-message{color:#d54e21}.api-check{padding:1em;min-height:100px}.api-check+.notice-dismiss:hover:before{color:#fff}.api-check:after,.api-check:before{content:"";display:table}.api-check:after{clear:both}.api-check .tribe-mascot{bottom:0;display:none;padding:0 1rem 0 0;position:absolute;right:0;top:0}.api-check .tribe-mascot img{display:inline-block;max-height:150px;max-width:150px;height:100%;width:auto;vertical-align:middle}.api-check p{line-height:1.7;margin-bottom:1em}.api-check a{text-decoration:none}.api-check a:hover{text-decoration:underline}.api-check .plugin-list{display:inline;font-weight:600;margin:0;padding:0}.api-check .plugin-list span.plugin-invalid:after{content:", "}.api-check .plugin-list span.plugin-invalid:last-of-type:after{content:""}.tribe-marketing-notice{padding:1em}.tribe-marketing-notice+.notice-dismiss:hover:before{color:#fff}.tribe-marketing-notice:after,.tribe-marketing-notice:before{content:"";display:table}.tribe-marketing-notice:after{clear:both}.tribe-marketing-notice .tribe-marketing-notice__icon{display:none;flex-shrink:0;padding:0;position:static}.tribe-marketing-notice .tribe-marketing-notice__icon img{display:inline-block;max-height:100%;max-width:none;vertical-align:middle;width:100%}.tribe-marketing-notice h3{margin-bottom:.5em;margin-top:.5em}.tribe-marketing-notice p{line-height:1.7;margin-bottom:.5em}.tribe-marketing-notice a{text-decoration:none}.tribe-marketing-notice a:hover{text-decoration:underline}#wpcontent .notice-tribe-banner{align-items:center;background:#161b7d;border:0;box-shadow:none;display:flex;justify-content:flex-start;margin:0 0 16px;padding-right:0}.notice-tribe-banner .tribe-marketing-notice__icon{width:47px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:0;padding:1em 0}.notice-tribe-banner h3{color:#fff;display:block;font-size:.875rem;line-height:1.25;margin:0 0 .25rem}.notice-tribe-banner a{border-bottom:1px solid #fff;line-height:1.25;margin:0;text-decoration:none}.notice-tribe-banner a:hover{text-decoration:none}.notice-tribe-banner a,.notice-tribe-banner p{color:#fff;display:inline-block;font-size:.875rem;line-height:1.25}.notice-tribe-banner p{display:inline-block;margin:0;padding:0}.notice-tribe-banner .tribe-marketing-notice{align-items:center;display:flex;justify-content:flex-start;margin:0 auto;min-height:65px;padding:0 .75rem;width:100%}.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe-welcome .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:100%}.notice-tribe-banner .notice-dismiss{position:static}.notice-tribe-banner .notice-dismiss:before{color:#eaf1ff}.tribe-dropdown,.tribe-ea-dropdown{max-width:100%;width:auto}.tribe-dropdown.select2-container .selection,.tribe-ea-dropdown.select2-container .selection{margin-top:inherit}.tribe-dropdown .select2-selection--single,.tribe-ea-dropdown .select2-selection--single{height:32px}.tribe-dropdown .select2-selection--single .select2-selection__clear,.tribe-ea-dropdown .select2-selection--single .select2-selection__clear{line-height:28px}.tribe-dropdown .select2-selection--single .select2-selection__rendered,.tribe-ea-dropdown .select2-selection--single .select2-selection__rendered{line-height:32px;padding-right:28px}.tribe-dropdown.select2-container--focus .select2-selection--single,.tribe-ea-dropdown.select2-container--focus .select2-selection--single{border-color:#5897fb;box-shadow:0 0 5px rgba(0,0,0,.1)}.tribe-dropdown.select2-container--open .select2-search__field,.tribe-ea-dropdown.select2-container--open .select2-search__field{padding:0}.tribe-dropdown.select2-container--open .select2-dropdown--below,.tribe-ea-dropdown.select2-container--open .select2-dropdown--below{margin-top:-1px;border-top:1px solid #aaa}.tribe-dropdown.select2-container--open .select2-dropdown--above,.tribe-ea-dropdown.select2-container--open .select2-dropdown--above{margin-bottom:-16px;border-bottom:1px solid #aaa}.tribe-dropdown.select2-container--open .select2-selection--single,.tribe-ea-dropdown.select2-container--open .select2-selection--single{border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:#aaa}.tribe-dropdown.select2-container--open .select2-selection__arrow b,.tribe-ea-dropdown.select2-container--open .select2-selection__arrow b{transform:rotate(180deg)}.tribe-dropdown.select2-selection--single,.tribe-ea-dropdown.select2-selection--single{background-image:none;border-radius:3px;border:1px solid #ccc;overflow:hidden}.tribe-dropdown.select2-selection--single>.select2-selection__rendered,.tribe-ea-dropdown.select2-selection--single>.select2-selection__rendered{white-space:normal}.tribe-dropdown.select2-selection--single .select2-selection__arrow,.tribe-ea-dropdown.select2-selection--single .select2-selection__arrow{background-image:none;background:transparent;border-left:0;top:2px;width:26px}.tribe-dropdown.select2-selection--single .select2-selection__arrow b,.tribe-ea-dropdown.select2-selection--single .select2-selection__arrow b{background:#fff url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23555%22%2F%3E%3C%2Fsvg%3E") no-repeat right 5px top 55%;background-size:auto;background-size:16px 16px;border:0;top:0;bottom:0;left:0;right:0;display:block;width:auto;height:auto;margin:0;padding:0}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered{background-image:none;border-radius:3px;border:1px solid #ccc;min-height:25px}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline{line-height:25px}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline input,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline input{padding-top:0;padding-bottom:0}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{margin-top:2px;padding-top:0;padding-bottom:0;line-height:19px}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice div,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice div{line-height:inherit}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice__remove,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice__remove{top:3px;left:4px;transition-property:border,color}.select2-results .select2-results__option{color:#939393;font-weight:400;margin-bottom:0}.select2-results .select2-results__option[aria-disabled=true]{background-color:#e0e0e0}.select2-results.select2-results__option--highlighted{background-color:#efefef;color:#a1a1a1;cursor:default;display:block}.wp-core-ui .button-red{background-color:#a00;border-bottom-color:#8d1f21;border-color:#9b2124;box-shadow:inset 0 1px 0 rgba(120,200,230,.5);color:#fff;text-decoration:none;text-shadow:0 1px 0 rgba(0,0,0,.1)}.wp-core-ui .button-red.focus,.wp-core-ui .button-red.hover,.wp-core-ui .button-red:focus,.wp-core-ui .button-red:hover{background-color:#a00;border-color:#7f1c1f;box-shadow:inset 0 1px 0 rgba(120,200,230,.6);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.3)}.wp-core-ui .button-red.focus,.wp-core-ui .button-red:focus{border-color:#500f0e;box-shadow:inset 0 1px 0 rgba(120,200,230,.6),1px 1px 2px rgba(0,0,0,.4)}.wp-core-ui .button-red.active,.wp-core-ui .button-red.active:focus,.wp-core-ui .button-red.active:hover,.wp-core-ui .button-red:active{background:#7f1c1f;border-color:#601312 #ae2426 #ae2426;box-shadow:inset 0 1px 0 rgba(0,0,0,.1);color:hsla(0,0%,100%,.95);text-shadow:0 1px 0 rgba(0,0,0,.1)}.wp-core-ui .button-red-disabled,.wp-core-ui .button-red:disabled,.wp-core-ui .button-red[disabled]{color:#e79496!important;background:#ba292b!important;border-color:#7f1c1f!important;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}.ticket_form .select2-container .select2-selection--single .select2-selection__arrow{display:none}.clear{zoom:1}.clear:after,.clear:before{content:" ";display:table}.clear:after{clear:both}.checkmark:after{content:"";display:block;width:8px;height:15px;border:solid #0ab152;border-width:0 3px 3px 0;transform:rotate(45deg)}.checkmark.checkmark-right:after{float:right;margin-right:2em}.checkmark.checkmark-left:after{float:left;margin-left:2em}.checkmark.no-checkmark:after{display:none}.complete,.ok,.on,.yes,[data-status=complete],[data-status=ok],[data-status=on],[data-status=yes]{color:#0ab152}.incomplete,.ko,.no,.off,[data-status=incomplete],[data-status=ko],[data-status=no],[data-status=off]{color:#ff2500}.plugin-card-event-tickets-plus .column-downloaded,.plugin-card-event-tickets-plus .column-rating,.plugin-card-event-tickets-plus .column-updated,.plugin-card-event-tickets .column-downloaded,.plugin-card-event-tickets .column-rating,.plugin-card-event-tickets .column-updated,.plugin-card-events-calendar-pro .column-downloaded,.plugin-card-events-calendar-pro .column-rating,.plugin-card-events-calendar-pro .column-updated,.plugin-card-events-community-tickets .column-downloaded,.plugin-card-events-community-tickets .column-rating,.plugin-card-events-community-tickets .column-updated,.plugin-card-events-community .column-downloaded,.plugin-card-events-community .column-rating,.plugin-card-events-community .column-updated,.plugin-card-image-widget-plus .column-downloaded,.plugin-card-image-widget-plus .column-rating,.plugin-card-image-widget-plus .column-updated,.plugin-card-image-widget .column-downloaded,.plugin-card-image-widget .column-rating,.plugin-card-image-widget .column-updated,.plugin-card-the-events-calendar .column-downloaded,.plugin-card-the-events-calendar .column-rating,.plugin-card-the-events-calendar .column-updated,.plugin-card-tribe-eventbrite .column-downloaded,.plugin-card-tribe-eventbrite .column-rating,.plugin-card-tribe-eventbrite .column-updated,.plugin-card-tribe-filterbar .column-downloaded,.plugin-card-tribe-filterbar .column-rating,.plugin-card-tribe-filterbar .column-updated{display:none}body.tribe-welcome{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff}body.tribe-welcome .update-nag{display:none}body.tribe-welcome #wpcontent{padding:0}body.tribe-welcome .tribe_settings{margin:0}body.tribe-welcome #wpfooter,body.tribe-welcome .tribe_settings>h1{display:none}body.tribe-welcome #wpbody-content{padding-bottom:25px}body.tribe-welcome .tribe-dependency-error{display:none}.tribe-events-admin-content-wrapper{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;margin:0 auto;padding:20px;width:calc(100% - 40px)}.tribe-events-admin-card{background:#fff;border:1px solid #e1e1e4;box-sizing:border-box;border-radius:16px;display:block;margin:0 auto 36px;padding:27px;text-align:center}.tribe-events-admin-card--1up{width:100%}.tribe-events-admin-video{-webkit-mask-image:-webkit-radial-gradient(circle,#fff 100%,#000 0);-webkit-transform:rotate(.000001deg);border-radius:16px;height:200px;margin-bottom:72px;overflow:hidden}.tribe-events-admin-video iframe{width:100%}.tribe-events-admin-card--2up .tribe-events-admin-card__title{max-width:260px}.tribe-events-admin-card--3up .tribe-events-admin-card__description{height:71px}.tribe-events-admin-card--3up .tribe-events-admin-card__image{margin-bottom:28px}.tribe-events-admin-card--promo-blue{background-color:#3d54ff;background-image:url(../images/welcome/promo.jpg)}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{color:#fff;font-size:16px;text-align:left;margin-bottom:16px}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__title{text-align:left;color:#fff}.tribe-events-admin-graphic{position:absolute;top:106px;right:0;z-index:-1}.tribe-events-admin-graphic--desktop-only{display:none}.tribe-events-admin-graphic--mobile-only{display:block}.tribe-events-admin-card__form{position:relative}input[type=email].tribe-events-admin-card__input{background:#fff;border:1px solid #e1e1e4;box-sizing:border-box;border-radius:16px;font-size:14px;height:54px}input[type=email].tribe-events-admin-card__input::-webkit-input-placeholder{color:rgba(15,16,49,.72);letter-spacing:.5px;padding-left:10px}input[type=email].tribe-events-admin-card__input::-moz-placeholder{color:rgba(15,16,49,.72);letter-spacing:.5px;padding-left:10px}input[type=email].tribe-events-admin-card__input:-ms-input-placeholder,input[type=email].tribe-events-admin-card__input::-ms-input-placeholder{color:rgba(15,16,49,.72);letter-spacing:.5px;padding-left:10px}input[type=email].tribe-events-admin-card__input::placeholder{color:rgba(15,16,49,.72);letter-spacing:.5px;padding-left:10px}.tribe-events-admin-card__button{background-color:#fff;border:none;color:#3d54ff;font-size:14px;font-weight:700;letter-spacing:1px;line-height:16px;position:absolute;right:20px;text-transform:uppercase;top:17px}.tribe-events-admin-card__button:hover{color:#161b7d}.tribe-events-admin-card__description{color:#000;font-size:14px;font-style:normal;font-weight:400;line-height:22px;margin-top:16px}.tribe-events-admin-card__image{display:block;margin:0 auto;height:100px}.tribe-events-admin-card__link{color:#3d54ff;display:inline-block;font-size:16px;font-style:normal;font-weight:700;line-height:18px;margin-top:24px;position:relative;text-decoration:none}.tribe-events-admin-card__link:hover{color:#161b7d}.tribe-events-admin-card__link:after{border-style:solid;border-width:0 0 1px;bottom:-4px;content:"";left:0;position:absolute;width:100%}.tribe-events-admin-card__title{color:#0f1031;font-size:20px;font-weight:700;line-height:23px;margin:auto}.tribe-events-admin-card-grid{max-width:1048px}.tribe-events-admin-quick-nav{background:#fff;border-radius:16px;border:1px solid #e1e1e4;box-sizing:border-box;display:block;margin:40px 0 78px;padding:18px 23px 2px}.tribe-events-admin-quick-nav__link{color:#3d54ff;font-size:16px;font-weight:700;line-height:18px;text-align:center;text-decoration:none}.tribe-events-admin-quick-nav__link:hover{color:#161b7d}.tribe-events-admin-quick-nav__link-item{display:block;padding-bottom:19px}.tribe-events-admin-quick-nav__links{display:inline}.tribe-events-admin-quick-nav__title{color:rgba(15,16,49,.72);display:inline-block;font-size:14px;font-weight:400;line-height:16px;padding-bottom:14px;text-transform:uppercase}.tribe-events-admin-section-header{color:#000;font-size:24px;font-weight:700;line-height:28px;margin:21px 0 24px}.tribe-events-admin-title{padding-top:14px}.tribe-events-admin-title__description{color:#0f1031;font-size:16px;font-weight:400;line-height:24px;max-width:584px;padding-top:15px}.tribe-events-admin-title__heading{color:#0f1031;display:inline-block;font-size:24px;font-weight:700;line-height:28px;margin:5px 0 0}.tribe-events-admin-title__logo{margin-right:8px;vertical-align:top;width:34px}.tribe-events-admin-notice{background-color:#3d54ff;height:65px}.tribe-events-admin-notice .tribe-events-admin-content-wrapper{padding-top:8px;padding-bottom:0}.tribe-events-admin-notice p{color:#fff;display:inline-block;font-family:Helvetica;font-size:16px;line-height:18px;margin-top:0;padding-bottom:12px;padding-left:16px;vertical-align:middle;width:calc(100% - 60px)}.tribe-events-admin-notice__logo{display:inline-block}.tribe-events-admin-tickets .tribe-events-admin-section-header{font-size:28px;line-height:32px}.tribe-events-admin-tickets .tribe-events-admin-graphic--desktop-only{width:365px}.tribe-events-admin-tickets .tribe-events-admin-graphic--mobile-only{width:300px;top:230px}.tribe-events-admin-tickets .tribe-events-admin-title__heading{margin-top:0}.tribe-events-admin-tickets .tribe-events-admin-title__logo{margin-right:4px;width:32px}body.tribe-welcome #fs_connect{border:1px solid #e1e1e4;box-sizing:border-box;border-radius:16px;margin-left:22px;box-shadow:none}body.tribe-welcome #fs_connect .fs-actions{background-color:transparent}body.tribe-welcome #fs_connect .fs-permissions{border-top:1px solid #e1e1e4;margin:0 16px}body.tribe-welcome #fs_connect button{background-color:#3d54ff;border-color:#3d54ff}body.tribe-welcome #fs_connect .button-secondary{border-color:#3d54ff;color:#3d54ff;background:#fff}body.tribe-welcome #fs_connect a{color:#3d54ff}body.tribe-welcome #fs_connect a:focus{box-shadow:none;outline:none}body.tribe-welcome #fs_connect a:hover{color:#161b7d}@media only screen and (-o-min-device-pixel-ratio:2/1),only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min--moz-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2){#tribe-loading span{background-image:url(../images/tribe-loading@2x.gif)}}@media screen and (max-width:782px){.tribe-half-column,.tribe-row .tribe-half-column:last-child{margin:0 0 20px;width:100%}input[type=email]{width:100%}}@media screen and (max-width:782px){.events-cal .subsubsub{float:none}.events-cal .search-box{width:98%}.events-cal #search-submit{width:100%}.events-cal .tablenav.top{display:none}}@media screen and (min-width:500px){.api-check .tribe-mascot{display:block}.api-check .notice-content{margin-right:180px}}@media screen and (min-width:320px){.tribe-marketing-notice .tribe-marketing-notice__icon{display:block}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px}}@media screen and (min-width:600px) and (max-width:782px){.tribe-marketing-notice .tribe-marketing-notice__content{margin-left:145px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px;padding:0}}@media screen and (min-width:782px){.tribe-marketing-notice .tribe-marketing-notice__content{margin-left:130px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px;padding:0}.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe-welcome .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:642px}}@media screen and (min-width:400px){.notice-tribe-banner .tribe-marketing-notice__icon{width:67px}}@media screen and (min-width:800px){.notice-tribe-banner h3{display:inline-block;font-size:1rem;margin:0 .5rem 0 0}.notice-tribe-banner a{line-height:1.5}.notice-tribe-banner a,.notice-tribe-banner p{font-size:1rem}.notice-tribe-banner p{margin:0 .5rem 0 0}.notice-tribe-banner .tribe-marketing-notice__cta{display:inline-block;margin-left:.5rem}}@media screen and (min-width:1215px){.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:992px}.tribe-welcome .notice-tribe-banner .tribe-marketing-notice{max-width:1036px}}@media screen and (min-width:710px){.tribe-events-admin-content-wrapper{width:670px}.tribe-events-admin-card--1up{display:inline-block;width:calc(50% - 18px);margin-left:32px}.tribe-events-admin-card--1up .tribe-events-admin-card__description{height:71px}.tribe-events-admin-card--1up .tribe-events-admin-card__image{margin-bottom:28px}.tribe-events-admin-card--2up{display:inline-block;width:calc(50% - 20px)}.tribe-events-admin-card--2up.tribe-events-admin-card--first{margin-right:36px}.tribe-events-admin-card--2up.tribe-events-admin-card--last{margin-right:0}.tribe-events-admin-card--2up .tribe-events-admin-card__image{height:100px;margin-bottom:12px}.tribe-events-admin-card--2up .tribe-events-admin-card__title{max-width:340px;margin-bottom:27px}.tribe-events-admin-card--3up{display:inline-block;margin-bottom:32px;width:calc(50% - 18px)}.tribe-events-admin-card--3up.tribe-events-admin-card--first{margin-right:32px}.tribe-events-admin-card--3up.tribe-events-admin-card--middle{margin-right:0}.tribe-events-admin-card--promo-blue{display:block;margin-left:0;min-height:170px;width:100%}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{float:left;max-width:300px}.tribe-events-admin-graphic{top:0;max-width:250px}.tribe-events-admin-graphic--desktop-only{display:block}.tribe-events-admin-graphic--mobile-only{display:none}.tribe-events-admin-card__form{float:right;width:300px}input[type=email].tribe-events-admin-card__input{width:300px}.tribe-events-admin-card__title{font-size:20px;line-height:23px}.tribe-events-admin-section-header{font-size:28px;line-height:32px;margin-bottom:21px}.tribe-events-admin-title{padding-top:50px}.tribe-events-admin-title__description{padding-top:15px}.tribe-events-admin-title__heading{font-size:48px;line-height:55px;margin:0}.tribe-events-admin-title__logo{margin-right:14px;padding-top:5px;width:40px}.tribe-events-admin-tickets .tribe-events-admin-card__title{font-size:18px}.tribe-events-admin-tickets .tribe-events-admin-card--2up .tribe-events-admin-card__title{font-size:18px;height:66px}.tribe-events-admin-tickets .tribe-events-admin-title__logo{margin-right:8px;padding-top:4px;width:60px}}@media screen and (min-width:1217px){.tribe-events-admin-content-wrapper{width:100%;max-width:1060px}.tribe-events-admin-card--1up{margin:0 0 36px;padding:33px 44px 30px;text-align:left;width:1012px}.tribe-events-admin-card--1up .tribe-events-admin-card__description{height:auto}.tribe-events-admin-card--1up .tribe-events-admin-card__image{float:left;margin:0 48px 10px 0}.tribe-events-admin-card--2up{margin-right:36px;width:486px}.tribe-events-admin-card--3up{width:310px}.tribe-events-admin-card--3up.tribe-events-admin-card--first,.tribe-events-admin-card--3up.tribe-events-admin-card--middle{margin-right:36px}.tribe-events-admin-card--3up.tribe-events-admin-card--last{margin-right:0}.tribe-events-admin-card--promo-blue{min-height:150px}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{max-width:450px}.tribe-events-admin-graphic{max-width:none}.tribe-events-admin-card__form,input[type=email].tribe-events-admin-card__input{width:365px}.tribe-events-admin-quick-nav{display:inline-block;border-radius:100px;margin:24px 0 94px;max-width:1010px;padding:0 36px 0 0;height:54px}.tribe-events-admin-quick-nav__link-item{display:inline-block;padding:18px 10px 0}.tribe-events-admin-quick-nav__title{padding:19px 6px 17px 32px}.tribe-events-admin-tickets .tribe-events-admin-card--2up .tribe-events-admin-card__title{height:auto}}
|
common/src/resources/images/mascot.png
CHANGED
Binary file
|
common/src/resources/js/app/components.min.js
CHANGED
@@ -3,7 +3,7 @@ var tribe="object"==typeof tribe?tribe:{};tribe.common=tribe.common||{},tribe.co
|
|
3 |
Â
Copyright (c) 2017 Jed Watson.
|
4 |
Â
Licensed under the MIT License (MIT), see
|
5 |
Â
http://jedwatson.github.io/classnames
|
6 |
-
*/!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var t=[],e=0;e<arguments.length;e++){var r=arguments[e];if(r){var i=typeof r;if("string"===i||"number"===i)t.push(r);else if(Array.isArray(r)&&r.length){var u=o.apply(null,r);u&&t.push(u)}else if("object"===i)for(var a in r)n.call(r,a)&&r[a]&&t.push(a)}}return t.join(" ")}t.exports?(o.default=o,t.exports=o):void 0===(r=function(){return o}.apply(e,[]))||(t.exports=r)}()},function(t,e,n){var r=n(23);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},function(t,e,n){var r=n(9),o=n(10),i=n(38),u=n(26),a=n(31),c=function(t,e,n){var s,f,l,p=t&c.F,d=t&c.G,h=t&c.S,v=t&c.P,y=t&c.B,b=t&c.W,g=d?o:o[e]||(o[e]={}),m=g.prototype,_=d?r:h?r[e]:(r[e]||{}).prototype;for(s in d&&(n=e),n)(f=!p&&_&&void 0!==_[s])&&a(g,s)||(l=f?_[s]:n[s],g[s]=d&&"function"!=typeof _[s]?n[s]:y&&f?i(l,r):b&&_[s]==l?function(t){var e=function(e,n,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,n)}return new t(e,n,r)}return t.apply(this,arguments)};return e.prototype=t.prototype,e}(l):v&&"function"==typeof l?i(Function.call,l):l,v&&((g.virtual||(g.virtual={}))[s]=l,t&c.R&&m&&!m[s]&&u(m,s,l)))};c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,t.exports=c},function(t,e,n){t.exports=!n(50)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(t,e,n){var r=n(32),o=n(222),i=n(223),u="[object Null]",a="[object Undefined]",c=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?a:u:c&&c in Object(t)?o(t):i(t)}},function(t,e,n){var r=n(17),o=n(166),i=n(112),u=Object.defineProperty;e.f=n(19)?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return u(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){var r=n(221),o=n(226);t.exports=function(t,e){var n=o(t,e);return r(n)?n:void 0}},function(t,e,n){"use strict";n.r(e),n.d(e,"get",(function(){return r})),n.d(e,"google",(function(){return o})),n.d(e,"wpApi",(function(){return i})),n.d(e,"wpApiRequest",(function(){return u})),n.d(e,"wpData",(function(){return a})),n.d(e,"wpHooks",(function(){return c})),n.d(e,"config",(function(){return s})),n.d(e,"common",(function(){return f})),n.d(e,"adminUrl",(function(){return l})),n.d(e,"rest",(function(){return p})),n.d(e,"restNonce",(function(){return d})),n.d(e,"dateSettings",(function(){return h})),n.d(e,"editorConstants",(function(){return v})),n.d(e,"list",(function(){return y})),n.d(e,"tec",(function(){return b})),n.d(e,"editor",(function(){return g})),n.d(e,"settings",(function(){return m})),n.d(e,"mapsAPI",(function(){return _})),n.d(e,"priceSettings",(function(){return x})),n.d(e,"tecDateSettings",(function(){return w})),n.d(e,"timezoneHtml",(function(){return O})),n.d(e,"defaultTimes",(function(){return j})),n.d(e,"timezone",(function(){return E})),n.d(e,"pro",(function(){return S})),n.d(e,"editorDefaults",(function(){return P})),n.d(e,"tickets",(function(){return A})),n.d(e,"postObjects",(function(){return k})),n.d(e,"blocks",(function(){return T}));var r=function(t,e){return window[t]||e},o=function(){return r("google")},i=wp.api,u=wp.apiRequest,a=wp.data,c=wp.hooks,s=function(){return r("tribe_editor_config",{})},f=function(){return s().common||{}},l=function(){return f().adminUrl||""},p=function(){return f().rest||{}},d=function(){return p().nonce||{}},h=function(){return f().dateSettings||{}},v=function(){return f().constants||{}},y=function(){return{countries:f().countries||{},us_states:f().usStates||{}}},b=function(){return s().events||{}},g=function(){return b().editor||{}},m=function(){return b().settings||{}},_=function(){return b().googleMap||{}},x=function(){return b().priceSettings||{}},w=function(){return b().dateSettings||{}},O=function(){return b().timezoneHTML||""},j=function(){return b().defaultTimes||{}},E=function(){return b().timeZone||{}},S=function(){return s().eventsPRO||{}},P=function(){return S().defaults||{}},A=function(){return s().tickets||{}},k=function(){return s().post_objects||{}},T=function(){return s().blocks||{}}},function(t,e,n){var r=n(21),o=n(51);t.exports=n(19)?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(204),i=(r=o)&&r.__esModule?r:{default:r};e.default=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":(0,i.default)(e))&&"function"!=typeof e?t:e}},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(208),i=(r=o)&&r.__esModule?r:{default:r};e.default=function(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e<t.length;e++)n[e]=t[e];return n}return(0,i.default)(t)}},function(t,e,n){"use strict";n.r(e);var r={};n.r(r),n.d(r,"ADD_FORM",(function(){return p})),n.d(r,"SET_FORM_FIELDS",(function(){return d})),n.d(r,"CREATE_FORM_DRAFT",(function(){return h})),n.d(r,"EDIT_FORM_ENTRY",(function(){return v})),n.d(r,"SUBMIT_FORM",(function(){return y})),n.d(r,"CLEAR_FORM",(function(){return b})),n.d(r,"SET_SAVING_FORM",(function(){return g})),n.d(r,"ADD_VOLATILE_ID",(function(){return m})),n.d(r,"REMOVE_VOLATILE_ID",(function(){return _}));var o={};n.r(o),n.d(o,"formSelector",(function(){return C})),n.d(o,"getFormType",(function(){return I})),n.d(o,"getFormEdit",(function(){return M})),n.d(o,"getFormCreate",(function(){return L})),n.d(o,"getFormSubmit",(function(){return N})),n.d(o,"getFormFields",(function(){return F})),n.d(o,"getFormSaving",(function(){return D})),n.d(o,"getVolatile",(function(){return B}));var i={};n.r(i),n.d(i,"registerForm",(function(){return W})),n.d(i,"clearForm",(function(){return U})),n.d(i,"createDraft",(function(){return q})),n.d(i,"editEntry",(function(){return z})),n.d(i,"setSubmit",(function(){return G})),n.d(i,"setSaving",(function(){return $})),n.d(i,"addVolatile",(function(){return V})),n.d(i,"removeVolatile",(function(){return H})),n.d(i,"sendForm",(function(){return K})),n.d(i,"maybeRemoveEntry",(function(){return J}));var u=n(200),a=n.n(u),c=n(4),s=n.n(c),f=n(15),l=n(13),p=l.a+"/ADD_FORM",d=l.a+"/SET_FORM_FIELDS",h=l.a+"/CREATE_FORM_DRAFT",v=l.a+"/EDIT_FORM_ENTRY",y=l.a+"/SUBMIT_FORM",b=l.a+"/CLEAR_FORM",g=l.a+"/SET_SAVING_FORM",m=l.a+"/ADD_VOLATILE_ID",_=l.a+"/REMOVE_VOLATILE_ID",x={edit:!1,create:!1,submit:!1,saving:!1,fields:{},type:n(78).EVENT},w=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:x,e=arguments[1];switch(e.type){case p:return s()({},t,{type:e.payload.type});case b:return s()({},t,x,{type:t.type});case h:return s()({},t,{submit:!1,edit:!1,create:!0,fields:e.payload.fields});case g:return s()({},t,{saving:e.payload.saving});case v:return s()({},t,{create:!1,submit:!1,edit:!0,fields:e.payload.fields});case y:return s()({},t,{submit:!0});default:return t}},O=n(28),j=n.n(O),E=Object(f.combineReducers)({byId:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments[1];switch(e.type){case p:case b:case d:case h:case v:case y:case g:return s()({},t,a()({},e.payload.id,w(t[e.payload.id],e)));default:return t}},volatile:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments[1];switch(e.type){case m:return[].concat(j()(t),[e.payload.id]);case _:return t.filter((function(t){return t!==e.payload.id}));default:return t}}}),S=n(44),P=n.n(S),A=n(42),k=n.n(A),T=n(33),R=n(37),C=function(t,e){return t.forms.byId[e.name]},I=Object(R.createSelector)([C],(function(t){return t?t.type:x.type})),M=Object(R.createSelector)([C],(function(t){return t?t.edit:x.edit})),L=Object(R.createSelector)([C],(function(t){return t?t.create:x.create})),N=Object(R.createSelector)([C],(function(t){return t?t.submit:x.submit})),F=Object(R.createSelector)([C],(function(t){return t?t.fields:x.fields})),D=Object(R.createSelector)([C],(function(t){return t?t.saving:x.saving})),B=function(t){return t.forms.volatile},W=function(t,e){return{type:p,payload:{id:t,type:e}}},U=function(t){return{type:b,payload:{id:t}}},q=function(t,e){return{type:h,payload:{id:t,fields:e}}},z=function(t,e){return{type:v,payload:{id:t,fields:e}}},G=function(t){return{type:y,payload:{id:t}}},$=function(t,e){return{type:g,payload:{id:t,saving:e}}},V=function(t){return{type:m,payload:{id:t}}},H=function(t){return{type:_,payload:{id:t}}},K=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments[2];return function(r,o){var i=o(),u={name:t},a=I(i,u),c=L(i,u),s=F(i,u);if(!D(i,u)){var f={path:c?""+a:a+"/"+s.id,params:{method:c?"POST":"PUT",body:JSON.stringify(e)},actions:{start:function(){return r($(t,!0))},success:function(e){var o=e.body,i=P()(o,"id","");c&&i&&r(V(i)),n(o),r(U(t)),r($(t,!1))},error:function(){r(U(t)),r($(t,!1))}}};r(T.actions.wpRequest(f))}}},Y=function(t){return function(e){return function(n){var r=n.body,o=r.id;if("draft"===r.status){var i={path:e,params:{method:"DELETE"},actions:{success:function(){return t(H(o))}}};t(T.actions.wpRequest(i))}else t(H(o))}}},J=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(n,r){var o=r(),i=I(o,{name:t});if(!k()(e)){var u=i+"/"+e.id,a={path:u,actions:{success:Y(n)(u)}};n(T.actions.wpRequest(a))}}};n.d(e,"types",(function(){return r})),n.d(e,"actions",(function(){return i})),n.d(e,"selectors",(function(){return o}));e.default=E},,function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){var r=n(11).Symbol;t.exports=r},function(t,e,n){"use strict";n.r(e);var r={};n.r(r),n.d(r,"WP_REQUEST",(function(){return u}));var o={};n.r(o),n.d(o,"wpRequest",(function(){return a}));var i={};n.r(i),n.d(i,"toWpParams",(function(){return v})),n.d(i,"toWPQuery",(function(){return y})),n.d(i,"getTotalPages",(function(){return b}));var u=n(13).a+"/WP_REQUEST",a=function(t){return{type:u,meta:t}},c=n(4),s=n.n(c),f=n(121),l=n.n(f),p=n(42),d=n.n(p),h=n(201),v=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=s()({orderby:"title",status:["draft","publish"],order:"asc",page:1},t);return l()(e.search)||d()(e.search)||(e.orderby="relevance"),d()(e.exclude)&&delete e.exclude,e},y=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object(h.stringify)(v(t))},b=function(t){var e=parseInt(t.get("x-wp-totalpages"),10);return isNaN(e)?0:e},g=n(68),m=n.n(g),_=n(122),x=n.n(_),w=n(202),O=n.n(w),j=n(44),E=n.n(j),S=n(8),P=n.n(S),A=(n(206),n(25)),k=function(){return function(t){return e=x()(m.a.mark((function e(n){var o,i,u,a,c,f,l,p,d,h,v,y,b,g,_,x,w,j,S,k;return m.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n.type===r.WP_REQUEST){e.next=2;break}return e.abrupt("return",t(n));case 2:if(o=n.meta,u=(i=void 0===o?{}:o).path,a=void 0===u?"":u,c=i.params,f=void 0===c?{}:c,t(n),l=Object(A.rest)(),p=l.url,d=void 0===p?"":p,h=l.nonce,v=(void 0===h?{}:h).wp_rest||"",y=A.rest.namespaces||{},b=y.core||"wp/v2",g=""+d+b,_=s()({start:P.a,success:P.a,error:P.a,none:P.a},E()(i,"actions",{})),""!==a){e.next=14;break}return _.none(a),e.abrupt("return");case 14:return x=g+"/"+a,_.start(x,f),w=s()({Accept:"application/json","Content-Type":"application/json"},E()(f,"headers",{}),{"X-WP-Nonce":v}),e.prev=17,e.next=20,fetch(x,s()({},f,{credentials:"include",headers:w}));case 20:if(j=e.sent,S=j.status,O()(S,200,300)){e.next=24;break}throw j;case 24:return e.next=26,j.json();case 26:return k=e.sent,_.success({body:k,headers:j.headers}),e.abrupt("return",[j,k]);case 31:return e.prev=31,e.t0=e.catch(17),_.error(e.t0),e.abrupt("return",e.t0);case 35:case"end":return e.stop()}}),e,void 0,[[17,31]])}))),function(t){return e.apply(this,arguments)};var e}};n.d(e,"default",(function(){return k})),n.d(e,"types",(function(){return r})),n.d(e,"actions",(function(){return o})),n.d(e,"utils",(function(){return i}))},function(t,e,n){"use strict";e.__esModule=!0,e.default=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(205),i=(r=o)&&r.__esModule?r:{default:r};e.default=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),(0,i.default)(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}()},function(t,e,n){"use strict";e.__esModule=!0;var r=u(n(395)),o=u(n(399)),i=u(n(204));function u(t){return t&&t.__esModule?t:{default:t}}e.default=function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":(0,i.default)(e)));t.prototype=(0,o.default)(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(r.default?(0,r.default)(t,e):t.__proto__=e)}},function(t,e,n){"use strict";function r(t,e){return t===e}function o(t,e,n){if(null===e||null===n||e.length!==n.length)return!1;for(var r=e.length,o=0;o<r;o++)if(!t(e[o],n[o]))return!1;return!0}function i(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r,n=null,i=null;return function(){return o(e,n,arguments)||(i=t.apply(null,arguments)),n=arguments,i}}function u(t){var e=Array.isArray(t[0])?t[0]:t;if(!e.every((function(t){return"function"==typeof t}))){var n=e.map((function(t){return typeof t})).join(", ");throw new Error("Selector creators expect all input-selectors to be functions, instead received the following types: ["+n+"]")}return e}function a(t){for(var e=arguments.length,n=Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];return function(){for(var e=arguments.length,r=Array(e),o=0;o<e;o++)r[o]=arguments[o];var a=0,c=r.pop(),s=u(r),f=t.apply(void 0,[function(){return a++,c.apply(null,arguments)}].concat(n)),l=i((function(){for(var t=[],e=s.length,n=0;n<e;n++)t.push(s[n].apply(null,arguments));return f.apply(null,t)}));return l.resultFunc=c,l.recomputations=function(){return a},l.resetRecomputations=function(){return a=0},l}}e.__esModule=!0,e.defaultMemoize=i,e.createSelectorCreator=a,e.createStructuredSelector=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:c;if("object"!=typeof t)throw new Error("createStructuredSelector expects first argument to be an object where each property is a selector, instead received a "+typeof t);var n=Object.keys(t);return e(n.map((function(e){return t[e]})),(function(){for(var t=arguments.length,e=Array(t),r=0;r<t;r++)e[r]=arguments[r];return e.reduce((function(t,e,r){return t[n[r]]=e,t}),{})}))};var c=e.createSelector=a(i)},function(t,e,n){var r=n(53);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},function(t,e){t.exports={}},function(t,e,n){var r=n(159),o=n(95),i=n(41);t.exports=function(t){return i(t)?r(t):o(t)}},function(t,e,n){var r=n(94),o=n(88);t.exports=function(t){return null!=t&&o(t.length)&&!r(t)}},function(t,e,n){var r=n(95),o=n(43),i=n(58),u=n(6),a=n(41),c=n(59),s=n(64),f=n(87),l="[object Map]",p="[object Set]",d=Object.prototype.hasOwnProperty;t.exports=function(t){if(null==t)return!0;if(a(t)&&(u(t)||"string"==typeof t||"function"==typeof t.splice||c(t)||f(t)||i(t)))return!t.length;var e=o(t);if(e==l||e==p)return!t.size;if(s(t))return!r(t).length;for(var n in t)if(d.call(t,n))return!1;return!0}},function(t,e,n){var r=n(256),o=n(85),i=n(257),u=n(153),a=n(154),c=n(20),s=n(138),f=s(r),l=s(o),p=s(i),d=s(u),h=s(a),v=c;(r&&"[object DataView]"!=v(new r(new ArrayBuffer(1)))||o&&"[object Map]"!=v(new o)||i&&"[object Promise]"!=v(i.resolve())||u&&"[object Set]"!=v(new u)||a&&"[object WeakMap]"!=v(new a))&&(v=function(t){var e=c(t),n="[object Object]"==e?t.constructor:void 0,r=n?s(n):"";if(r)switch(r){case f:return"[object DataView]";case l:return"[object Map]";case p:return"[object Promise]";case d:return"[object Set]";case h:return"[object WeakMap]"}return e}),t.exports=v},function(t,e,n){var r=n(143);t.exports=function(t,e,n){var o=null==t?void 0:r(t,e);return void 0===o?n:o}},function(t,e,n){var r=n(132),o=n(80);t.exports=function(t){return r(o(t))}},function(t,e,n){var r=n(20),o=n(14),i="[object Symbol]";t.exports=function(t){return"symbol"==typeof t||o(t)&&r(t)==i}},function(t,e,n){var r=n(46),o=1/0;t.exports=function(t){if("string"==typeof t||r(t))return t;var e=t+"";return"0"==e&&1/t==-o?"-0":e}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e){t.exports=!0},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e){t.exports=function(t){return t}},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,e,n){var r=n(24)(Object,"create");t.exports=r},function(t,e,n){var r=n(231),o=n(232),i=n(233),u=n(234),a=n(235);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,e,n){var r=n(71);t.exports=function(t,e){for(var n=t.length;n--;)if(r(t[n][0],e))return n;return-1}},function(t,e,n){var r=n(237);t.exports=function(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}},function(t,e,n){var r=n(246),o=n(14),i=Object.prototype,u=i.hasOwnProperty,a=i.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(t){return o(t)&&u.call(t,"callee")&&!a.call(t,"callee")};t.exports=c},function(t,e,n){(function(t){var r=n(11),o=n(247),i=e&&!e.nodeType&&e,u=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=u&&u.exports===i?r.Buffer:void 0,c=(a?a.isBuffer:void 0)||o;t.exports=c}).call(this,n(66)(t))},function(t,e,n){"use strict";n.r(e);var r={};n.r(r),n.d(r,"ADD_PLUGIN",(function(){return d})),n.d(r,"REMOVE_PLUGIN",(function(){return h}));var o={};n.r(o),n.d(o,"addPlugin",(function(){return v})),n.d(o,"removePlugin",(function(){return y}));var i={};n.r(i),n.d(i,"getPlugins",(function(){return x})),n.d(i,"hasPlugin",(function(){return w}));var u={};n.r(u),n.d(u,"EVENTS_PLUGIN",(function(){return O})),n.d(u,"EVENTS_PRO_PLUGIN",(function(){return j})),n.d(u,"EVENTS_VIRTUAL_PLUGIN",(function(){return E})),n.d(u,"TICKETS",(function(){return S})),n.d(u,"TICKETS_PLUS",(function(){return P}));var a={};n.r(a),n.d(a,"ReactSelectOption",(function(){return T})),n.d(a,"ReactSelectOptions",(function(){return R}));var c=n(28),s=n.n(c),f=n(198),l=n.n(f),p=n(13),d=p.a+"/ADD_PLUGIN",h=p.a+"/REMOVE_PLUGIN",v=function(t){return{type:d,payload:{name:t}}},y=function(t){return{type:h,payload:{name:t}}},b=n(199),g=n.n(b),m=n(127),_=n.n(m),x=function(t){return t.plugins},w=g()((function(t,e){return _()(x(t),e)})),O="events",j="events-pro",E="events-virtual",S="tickets",P="tickets-plus",A=n(1),k=n.n(A),T=k.a.shape({label:k.a.string.isRequired,value:k.a.any.isRequired}),R=k.a.arrayOf(T);n.d(e,"types",(function(){return r})),n.d(e,"actions",(function(){return o})),n.d(e,"selectors",(function(){return i})),n.d(e,"constants",(function(){return u})),n.d(e,"proptypes",(function(){return a}));e.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments[1];switch(e.type){case r.ADD_PLUGIN:return l()([].concat(s()(t),[e.payload.name]));case r.REMOVE_PLUGIN:return[].concat(s()(t)).filter((function(t){return t!==e.payload.name}));default:return t}}},function(t,e,n){"use strict";var r=n(210)(!0);n(131)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})}))},function(t,e,n){var r=n(21).f,o=n(31),i=n(12)("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},function(t,e,n){var r=n(80);t.exports=function(t){return Object(r(t))}},function(t,e){var n=Object.prototype;t.exports=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}},,function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},,function(t,e,n){t.exports=n(282)},function(t,e,n){var r=n(168),o=n(102);t.exports=Object.keys||function(t){return r(t,o)}},function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},function(t,e){t.exports=function(t,e){return t===e||t!=t&&e!=e}},function(t,e,n){var r=n(73),o=n(22);t.exports=function(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=r(t.prototype),i=t.apply(n,e);return o(i)?i:n}}},function(t,e,n){var r=n(22),o=Object.create,i=function(){function t(){}return function(e){if(!r(e))return{};if(o)return o(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=i},function(t,e){t.exports=function(t,e){var n=-1,r=t.length;for(e||(e=Array(r));++n<r;)e[n]=t[n];return e}},function(t,e){var n=9007199254740991,r=/^(?:0|[1-9]\d*)$/;t.exports=function(t,e){var o=typeof t;return!!(e=null==e?n:e)&&("number"==o||"symbol"!=o&&r.test(t))&&t>-1&&t%1==0&&t<e}},function(t,e,n){var r=n(190),o=n(191);t.exports=function(t,e,n,i){var u=!n;n||(n={});for(var a=-1,c=e.length;++a<c;){var s=e[a],f=i?i(n[s],t[s],s,n,t):void 0;void 0===f&&(f=t[s]),u?o(n,s,f):r(n,s,f)}return n}},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,o=Array(r);++n<r;)o[n]=e(t[n],n,t);return o}},function(t,e,n){"use strict";n.r(e),n.d(e,"EVENT",(function(){return r})),n.d(e,"VENUE",(function(){return o})),n.d(e,"ORGANIZER",(function(){return i}));var r="tribe_events",o="tribe_venue",i="tribe_organizer"},function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,e,n){var r=n(23),o=n(9).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,e,n){var r=n(79),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,e,n){var r=n(101)("keys"),o=n(70);t.exports=function(t){return r[t]||(r[t]=o(t))}},function(t,e,n){var r=n(218),o=n(236),i=n(238),u=n(239),a=n(240);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,e,n){var r=n(24)(n(11),"Map");t.exports=r},function(t,e,n){var r=n(157);t.exports=function(t){var e=r(t),n=e%1;return e==e?n?e-n:e:0}},function(t,e,n){var r=n(248),o=n(89),i=n(90),u=i&&i.isTypedArray,a=u?o(u):r;t.exports=a},function(t,e){var n=9007199254740991;t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=n}},function(t,e){t.exports=function(t){return function(e){return t(e)}}},function(t,e,n){(function(t){var r=n(137),o=e&&!e.nodeType&&e,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,u=i&&i.exports===o&&r.process,a=function(){try{var t=i&&i.require&&i.require("util").types;return t||u&&u.binding&&u.binding("util")}catch(t){}}();t.exports=a}).call(this,n(66)(t))},function(t,e,n){var r=n(6),o=n(46),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,u=/^\w*$/;t.exports=function(t,e){if(r(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!o(t))||(u.test(t)||!i.test(t)||null!=e&&t in Object(e))}},function(t,e){e.f={}.propertyIsEnumerable},function(t,e,n){"use strict";var r=n(53);function o(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)}t.exports.f=function(t){return new o(t)}},function(t,e,n){var r=n(20),o=n(22),i="[object AsyncFunction]",u="[object Function]",a="[object GeneratorFunction]",c="[object Proxy]";t.exports=function(t){if(!o(t))return!1;var e=r(t);return e==u||e==a||e==i||e==c}},function(t,e,n){var r=n(64),o=n(249),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return o(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}},function(t,e,n){var r=n(55),o=n(250),i=n(251),u=n(252),a=n(253),c=n(254);function s(t){var e=this.__data__=new r(t);this.size=e.size}s.prototype.clear=o,s.prototype.delete=i,s.prototype.get=u,s.prototype.has=a,s.prototype.set=c,t.exports=s},function(t,e){t.exports=function(t,e){for(var n=-1,r=e.length,o=t.length;++n<r;)t[o+n]=e[n];return t}},function(t,e,n){var r=n(169);t.exports=function(t){return null==t?"":r(t)}},function(t,e,n){var r=n(20),o=n(6),i=n(14),u="[object String]";t.exports=function(t){return"string"==typeof t||!o(t)&&i(t)&&r(t)==u}},function(t,e,n){"use strict";var r=n(15),o=function(t){return function(t){return!!t&&"object"==typeof t}(t)&&!function(t){var e=Object.prototype.toString.call(t);return"[object RegExp]"===e||"[object Date]"===e||function(t){return t.$$typeof===i}(t)}(t)};var i="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function u(t,e){return!1!==e.clone&&e.isMergeableObject(t)?c((n=t,Array.isArray(n)?[]:{}),t,e):t;var n}function a(t,e,n){return t.concat(e).map((function(t){return u(t,n)}))}function c(t,e,n){(n=n||{}).arrayMerge=n.arrayMerge||a,n.isMergeableObject=n.isMergeableObject||o;var r=Array.isArray(e);return r===Array.isArray(t)?r?n.arrayMerge(t,e,n):function(t,e,n){var r={};return n.isMergeableObject(t)&&Object.keys(t).forEach((function(e){r[e]=u(t[e],n)})),Object.keys(e).forEach((function(o){n.isMergeableObject(e[o])&&t[o]?r[o]=c(t[o],e[o],n):r[o]=u(e[o],n)})),r}(t,e,n):u(e,n)}c.all=function(t,e){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce((function(t,n){return c(t,n,e)}),{})};var s=c;function f(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e<t.length;e++)n[e]=t[e];return n}return Array.from(t)}var l=function t(e){for(var n=arguments.length,r=Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return e.length<=r.length?e.apply(void 0,r):function(){for(var n=arguments.length,o=Array(n),i=0;i<n;i++)o[i]=arguments[i];return t.apply(void 0,[e].concat(r,o))}},p=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},d=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var u,a=t[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")},h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function v(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var y=function(t){return null!==t&&"object"===(void 0===t?"undefined":h(t))},b=function(t){return"function"==typeof t},g=function(t){return(b(t)||y(t))&&function(t){return Object.values(t).some(b)}(t)},m=function(){for(var t=arguments.length,e=Array(t),n=0;n<t;n++)e[n]=arguments[n];return r.compose.apply(void 0,f(e.reverse()))}((function(t){return Object.entries(t).map((function(t){var e=d(t,2),n=e[0],o=e[1];return g(o)?v({},n,Object(r.combineReducers)(m(o))):b(o)?v({},n,o):void 0}))}),(function(t){return t.filter(y)}),(function(t){return t.reduce((function(t,e){return s(t,e)}),{})}));var _=l((function(t,e){return Object(r.combineReducers)(p({},t,m(e)))}));function x(t){return _(t)}var w=n(124),O=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var u,a=t[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")};var j=l((function(t,e){return e.injectedReducers={},e.injectReducers=function(n){Object.entries(n).forEach((function(n){var r=O(n,2),o=r[0],i=r[1];Object(w.has)(e.injectedReducers,o)||(Object(w.set)(e.injectedReducers,o,i),e.replaceReducer(t(e.injectedReducers)))}))},e}));n.d(e,"b",(function(){return x})),n.d(e,"a",(function(){return j}))},function(t,e,n){var r=n(10),o=n(9),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,e){return i[t]||(i[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n(49)?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,e){t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}},function(t,e,n){var r=n(177),o=n(321),i=n(322),u=n(179),a=n(335),c=n(183),s=n(336),f=n(185),l=n(187),p=n(86),d="Expected a function",h=1,v=2,y=8,b=16,g=32,m=64,_=Math.max;t.exports=function(t,e,n,x,w,O,j,E){var S=e&v;if(!S&&"function"!=typeof t)throw new TypeError(d);var P=x?x.length:0;if(P||(e&=~(g|m),x=w=void 0),j=void 0===j?j:_(p(j),0),E=void 0===E?E:p(E),P-=w?w.length:0,e&m){var A=x,k=w;x=w=void 0}var T=S?void 0:c(t),R=[t,e,n,x,w,A,k,O,j,E];if(T&&s(R,T),t=R[0],e=R[1],n=R[2],x=R[3],w=R[4],!(E=R[9]=void 0===R[9]?S?0:t.length:_(R[9]-P,0))&&e&(y|b)&&(e&=~(y|b)),e&&e!=h)C=e==y||e==b?i(t,e,E):e!=g&&e!=(h|g)||w.length?u.apply(void 0,R):a(t,e,n,x);else var C=o(t,e,n);return l((T?r:f)(C,R),t,e)}},function(t,e){var n="__lodash_placeholder__";t.exports=function(t,e){for(var r=-1,o=t.length,i=0,u=[];++r<o;){var a=t[r];a!==e&&a!==n||(t[r]=n,u[i++]=r)}return u}},function(t,e,n){var r=n(255),o=n(161),i=Object.prototype.propertyIsEnumerable,u=Object.getOwnPropertySymbols,a=u?function(t){return null==t?[]:(t=Object(t),r(u(t),(function(e){return i.call(t,e)})))}:o;t.exports=a},function(t,e,n){var r=n(258),o=n(266),i=n(52),u=n(6),a=n(272);t.exports=function(t){return"function"==typeof t?t:null==t?i:"object"==typeof t?u(t)?o(t[0],t[1]):r(t):a(t)}},function(t,e,n){n(286);for(var r=n(9),o=n(26),i=n(39),u=n(12)("toStringTag"),a="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),c=0;c<a.length;c++){var s=a[c],f=r[s],l=f&&f.prototype;l&&!l[u]&&o(l,u,s),i[s]=i.Array}},function(t,e,n){var r=n(110),o=n(12)("iterator"),i=n(39);t.exports=n(10).getIteratorMethod=function(t){if(null!=t)return t[o]||t["@@iterator"]||i[r(t)]}},function(t,e,n){var r=n(48),o=n(12)("toStringTag"),i="Arguments"==r(function(){return arguments}());t.exports=function(t){var e,n,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?n:i?r(e):"Object"==(u=r(e))&&"function"==typeof e.callee?"Arguments":u}},,function(t,e,n){var r=n(23);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,e,n){var r=n(175),o=n(243),i=n(244);t.exports=function(t,e,n){return e==e?i(t,e,n):r(t,o,n)}},function(t,e){t.exports=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}},function(t,e,n){var r=n(73),o=n(116),i=4294967295;function u(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=i,this.__views__=[]}u.prototype=r(o.prototype),u.prototype.constructor=u,t.exports=u},function(t,e){t.exports=function(){}},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r&&!1!==e(t[n],n,t););return t}},function(t,e,n){var r=n(160)(Object.getPrototypeOf,Object);t.exports=r},function(t,e,n){var r=n(164);t.exports=function(t){var e=new t.constructor(t.byteLength);return new r(e).set(new r(t)),e}},function(t,e){e.f=Object.getOwnPropertySymbols},function(t,e){t.exports=function(t){return void 0===t}},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(284),i=(r=o)&&r.__esModule?r:{default:r};e.default=function(t){return function(){var e=t.apply(this,arguments);return new i.default((function(t,n){return function r(o,u){try{var a=e[o](u),c=a.value}catch(t){return void n(t)}if(!a.done)return i.default.resolve(c).then((function(t){r("next",t)}),(function(t){r("throw",t)}));t(c)}("next")}))}}},function(t,e,n){"use strict";(function(t,r){var o,i=n(197);o="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:r;var u=Object(i.a)(o);e.a=u}).call(this,n(125),n(312)(t))},function(t,e,n){var r,o,i;!function(n,u){"use strict";"object"==typeof t.exports?t.exports=u():(o=[],void 0===(i="function"==typeof(r=u)?r.apply(e,o):r)||(t.exports=i))}(0,(function(){"use strict";var t=Object.prototype.toString;function e(t,e){return null!=t&&Object.prototype.hasOwnProperty.call(t,e)}function n(t){if(!t)return!0;if(o(t)&&0===t.length)return!0;if("string"!=typeof t){for(var n in t)if(e(t,n))return!1;return!0}return!1}function r(e){return t.call(e)}var o=Array.isArray||function(e){return"[object Array]"===t.call(e)};function i(t){var e=parseInt(t);return e.toString()===t?e:t}function u(t){t=t||{};var u=function(t){return Object.keys(u).reduce((function(e,n){return"create"===n?e:("function"==typeof u[n]&&(e[n]=u[n].bind(u,t)),e)}),{})};function a(n,r){return t.includeInheritedProps||"number"==typeof r&&Array.isArray(n)||e(n,r)}function c(t,e){if(a(t,e))return t[e]}function s(t,e,n,r){if("number"==typeof e&&(e=[e]),!e||0===e.length)return t;if("string"==typeof e)return s(t,e.split(".").map(i),n,r);var o=e[0],u=c(t,o);return 1===e.length?(void 0!==u&&r||(t[o]=n),u):(void 0===u&&("number"==typeof e[1]?t[o]=[]:t[o]={}),s(t[o],e.slice(1),n,r))}return u.has=function(n,r){if("number"==typeof r?r=[r]:"string"==typeof r&&(r=r.split(".")),!r||0===r.length)return!!n;for(var u=0;u<r.length;u++){var a=i(r[u]);if(!("number"==typeof a&&o(n)&&a<n.length||(t.includeInheritedProps?a in Object(n):e(n,a))))return!1;n=n[a]}return!0},u.ensureExists=function(t,e,n){return s(t,e,n,!0)},u.set=function(t,e,n,r){return s(t,e,n,r)},u.insert=function(t,e,n,r){var i=u.get(t,e);r=~~r,o(i)||(i=[],u.set(t,e,i)),i.splice(r,0,n)},u.empty=function(t,e){var i,c;if(!n(e)&&(null!=t&&(i=u.get(t,e)))){if("string"==typeof i)return u.set(t,e,"");if(function(t){return"boolean"==typeof t||"[object Boolean]"===r(t)}(i))return u.set(t,e,!1);if("number"==typeof i)return u.set(t,e,0);if(o(i))i.length=0;else{if(!function(t){return"object"==typeof t&&"[object Object]"===r(t)}(i))return u.set(t,e,null);for(c in i)a(i,c)&&delete i[c]}}},u.push=function(t,e){var n=u.get(t,e);o(n)||(n=[],u.set(t,e,n)),n.push.apply(n,Array.prototype.slice.call(arguments,2))},u.coalesce=function(t,e,n){for(var r,o=0,i=e.length;o<i;o++)if(void 0!==(r=u.get(t,e[o])))return r;return n},u.get=function(t,e,n){if("number"==typeof e&&(e=[e]),!e||0===e.length)return t;if(null==t)return n;if("string"==typeof e)return u.get(t,e.split("."),n);var r=i(e[0]),o=c(t,r);return void 0===o?n:1===e.length?o:u.get(t[r],e.slice(1),n)},u.del=function(t,e){if("number"==typeof e&&(e=[e]),null==t)return t;if(n(e))return t;if("string"==typeof e)return u.del(t,e.split("."));var r=i(e[0]);return a(t,r)?1!==e.length?u.del(t[r],e.slice(1)):(o(t)?t.splice(r,1):delete t[r],t):t},u}var a=u();return a.create=u,a.withInheritedProps=u({includeInheritedProps:!0}),a}))},function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},function(t,e,n){var r=n(17),o=n(212),i=n(102),u=n(83)("IE_PROTO"),a=function(){},c=function(){var t,e=n(81)("iframe"),r=i.length;for(e.style.display="none",n(133).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),c=t.F;r--;)delete c.prototype[i[r]];return c()};t.exports=Object.create||function(t,e){var n;return null!==t?(a.prototype=r(t),n=new a,a.prototype=null,n[u]=t):n=c(),void 0===e?n:o(n,e)}},function(t,e,n){var r=n(113),o=n(41),i=n(99),u=n(86),a=n(363),c=Math.max;t.exports=function(t,e,n,s){t=o(t)?t:a(t),n=n&&!s?u(n):0;var f=t.length;return n<0&&(n=c(f+n,0)),i(t)?n<=f&&t.indexOf(e,n)>-1:!!f&&r(t,e,n)>-1}},function(t,e,n){"use strict";n.d(e,"a",(function(){return _})),n.d(e,"c",(function(){return w}));var r=n(4),o=n.n(r),i=n(34),u=n.n(i),a=n(35),c=n.n(a),s=n(27),f=n.n(s),l=n(36),p=n.n(l),d=n(8),h=n.n(d),v=n(2),y=n.n(v),b=n(1),g=n.n(b),m=27,_="tribe:click:proxy",x=function(t){t.target.dispatchEvent(new CustomEvent(_,{bubbles:!0}))},w=function(t){return t.stopPropagation()};e.b=function(t){var e=function(e){function n(t){u()(this,n);var e=f()(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,t));return e.nodeRef=y.a.createRef(),e._eventNamespace=_,e._dispatchClickProxyEvent=x,e._interceptClickProxyEvent=w,e.open=function(){e.setState({isOpen:!0}),e.props.onOpen()},e.handleKeyDown=function(t){t.keyCode===m&&(e.setState({isOpen:!1}),e.props.onClose())},e.handleClick=function(){e.setState({isOpen:!1}),e.props.onClose()},e.state={isOpen:!1},e}return p()(n,e),c()(n,[{key:"componentDidUpdate",value:function(t,e){e.isOpen!==this.state.isOpen&&(this.state.isOpen?this._addEventListeners():this._removeEventListeners())}},{key:"componentWillUnmount",value:function(){this._removeEventListeners()}},{key:"_addEventListeners",value:function(){var t=this;this.node.addEventListener(this._eventNamespace,this._interceptClickProxyEvent),this.blacklistedNodes.forEach((function(e){return e.addEventListener(t._eventNamespace,t._interceptClickProxyEvent)})),document.addEventListener(this._eventNamespace,this.handleClick),document.addEventListener("click",this._dispatchClickProxyEvent),document.addEventListener("keydown",this.handleKeyDown)}},{key:"_removeEventListeners",value:function(){var t=this;this.node.removeEventListener(this._eventNamespace,this._interceptClickProxyEvent),this.blacklistedNodes.forEach((function(e){return e.removeEventListener(t._eventNamespace,t._interceptClickProxyEvent)})),document.removeEventListener("keydown",this.handleKeyDown),document.removeEventListener(this._eventNamespace,this.handleClick),document.removeEventListener("click",this._dispatchClickProxyEvent)}},{key:"render",value:function(){var e={open:this.open,isOpen:this.state.isOpen};return wp.element.createElement("div",{ref:this.nodeRef},wp.element.createElement(t,o()({},this.props,e)))}},{key:"blacklistedNodes",get:function(){var t=this.props.classNameClickBlacklist.join(", ");return Array.from(document.querySelectorAll(t))}},{key:"node",get:function(){return this.nodeRef.current}}]),n}(v.PureComponent);return e.displayName="WithBlockCloser( "+(t.displayName||t.name||"Component "),e.propTypes={onClose:g.a.func,onOpen:g.a.func,classNameClickBlacklist:g.a.arrayOf(g.a.string).isRequired},e.defaultProps={classNameClickBlacklist:[".edit-post-sidebar"],onClose:h.a,onOpen:h.a},e}},function(t,e,n){"use strict";e.__esModule=!0;var r=i(n(402)),o=i(n(405));function i(t){return t&&t.__esModule?t:{default:t}}e.default=function(t,e){if(Array.isArray(t))return t;if((0,r.default)(Object(t)))return function(t,e){var n=[],r=!0,i=!1,u=void 0;try{for(var a,c=(0,o.default)(t);!(r=(a=c.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,u=t}finally{try{!r&&c.return&&c.return()}finally{if(i)throw u}}return n}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(t,e){t.exports=wp.components},function(t,e,n){"use strict";var r=n(49),o=n(18),i=n(167),u=n(26),a=n(39),c=n(211),s=n(62),f=n(215),l=n(12)("iterator"),p=!([].keys&&"next"in[].keys()),d=function(){return this};t.exports=function(t,e,n,h,v,y,b){c(n,e,h);var g,m,_,x=function(t){if(!p&&t in E)return E[t];switch(t){case"keys":case"values":return function(){return new n(this,t)}}return function(){return new n(this,t)}},w=e+" Iterator",O="values"==v,j=!1,E=t.prototype,S=E[l]||E["@@iterator"]||v&&E[v],P=S||x(v),A=v?O?x("entries"):P:void 0,k="Array"==e&&E.entries||S;if(k&&(_=f(k.call(new t)))!==Object.prototype&&_.next&&(s(_,w,!0),r||"function"==typeof _[l]||u(_,l,d)),O&&S&&"values"!==S.name&&(j=!0,P=function(){return S.call(this)}),r&&!b||!p&&!j&&E[l]||u(E,l,P),a[e]=P,a[w]=d,v)if(g={values:O?P:x("values"),keys:y?P:x("keys"),entries:A},b)for(m in g)m in E||i(E,m,g[m]);else o(o.P+o.F*(p||j),e,g);return g}},function(t,e,n){var r=n(48);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},function(t,e,n){var r=n(9).document;t.exports=r&&r.documentElement},function(t,e,n){var r=n(17);t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(e){var i=t.return;throw void 0!==i&&r(i.call(t)),e}}},function(t,e,n){var r=n(39),o=n(12)("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},function(t,e,n){var r=n(12)("iterator"),o=!1;try{var i=[7][r]();i.return=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i=[7],u=i[r]();u.next=function(){return{done:n=!0}},i[r]=function(){return u},t(i)}catch(t){}return n}},function(t,e,n){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(this,n(125))},function(t,e){var n=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return n.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},function(t,e,n){var r=n(260),o=n(14);t.exports=function t(e,n,i,u,a){return e===n||(null==e||null==n||!o(e)&&!o(n)?e!=e&&n!=n:r(e,n,i,u,t,a))}},function(t,e,n){var r=n(151),o=n(261),i=n(152),u=1,a=2;t.exports=function(t,e,n,c,s,f){var l=n&u,p=t.length,d=e.length;if(p!=d&&!(l&&d>p))return!1;var h=f.get(t);if(h&&f.get(e))return h==e;var v=-1,y=!0,b=n&a?new r:void 0;for(f.set(t,e),f.set(e,t);++v<p;){var g=t[v],m=e[v];if(c)var _=l?c(m,g,v,e,t,f):c(g,m,v,t,e,f);if(void 0!==_){if(_)continue;y=!1;break}if(b){if(!o(e,(function(t,e){if(!i(b,e)&&(g===t||s(g,t,n,c,f)))return b.push(e)}))){y=!1;break}}else if(g!==m&&!s(g,m,n,c,f)){y=!1;break}}return f.delete(t),f.delete(e),y}},function(t,e,n){var r=n(22);t.exports=function(t){return t==t&&!r(t)}},function(t,e){t.exports=function(t,e){return function(n){return null!=n&&(n[t]===e&&(void 0!==e||t in Object(n)))}}},function(t,e,n){var r=n(144),o=n(47);t.exports=function(t,e){for(var n=0,i=(e=r(e,t)).length;null!=t&&n<i;)t=t[o(e[n++])];return n&&n==i?t:void 0}},function(t,e,n){var r=n(6),o=n(91),i=n(165),u=n(98);t.exports=function(t,e){return r(t)?t:o(t,e)?[t]:i(u(t))}},function(t,e,n){var r=n(17),o=n(53),i=n(12)("species");t.exports=function(t,e){var n,u=r(t).constructor;return void 0===u||null==(n=r(u)[i])?e:o(n)}},function(t,e,n){var r,o,i,u=n(38),a=n(292),c=n(133),s=n(81),f=n(9),l=f.process,p=f.setImmediate,d=f.clearImmediate,h=f.MessageChannel,v=f.Dispatch,y=0,b={},g=function(){var t=+this;if(b.hasOwnProperty(t)){var e=b[t];delete b[t],e()}},m=function(t){g.call(t.data)};p&&d||(p=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return b[++y]=function(){a("function"==typeof t?t:Function(t),e)},r(y),y},d=function(t){delete b[t]},"process"==n(48)(l)?r=function(t){l.nextTick(u(g,t,1))}:v&&v.now?r=function(t){v.now(u(g,t,1))}:h?(i=(o=new h).port2,o.port1.onmessage=m,r=u(i.postMessage,i,1)):f.addEventListener&&"function"==typeof postMessage&&!f.importScripts?(r=function(t){f.postMessage(t+"","*")},f.addEventListener("message",m,!1)):r="onreadystatechange"in s("script")?function(t){c.appendChild(s("script")).onreadystatechange=function(){c.removeChild(this),g.call(t)}}:function(t){setTimeout(u(g,t,1),0)}),t.exports={set:p,clear:d}},function(t,e){t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},function(t,e,n){var r=n(17),o=n(23),i=n(93);t.exports=function(t,e){if(r(t),o(e)&&e.constructor===t)return e;var n=i.f(t);return(0,n.resolve)(e),n.promise}},,function(t,e,n){"use strict";n.r(e);var r=n(78),o=n(29),i=n(60),u=n(100),a=Object(u.b)({plugins:i.default,forms:o.default});n.d(e,"default",(function(){return a})),n.d(e,"editor",(function(){return r})),n.d(e,"forms",(function(){return o})),n.d(e,"plugins",(function(){return i}))},function(t,e,n){var r=n(84),o=n(241),i=n(242);function u(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new r;++e<n;)this.add(t[e])}u.prototype.add=u.prototype.push=o,u.prototype.has=i,t.exports=u},function(t,e){t.exports=function(t,e){return t.has(e)}},function(t,e,n){var r=n(24)(n(11),"Set");t.exports=r},function(t,e,n){var r=n(24)(n(11),"WeakMap");t.exports=r},function(t,e,n){var r=n(331),o=n(186)(r);t.exports=o},function(t,e){t.exports=function(t){return t.placeholder}},function(t,e,n){var r=n(158),o=1/0,i=17976931348623157e292;t.exports=function(t){return t?(t=r(t))===o||t===-o?(t<0?-1:1)*i:t==t?t:0:0===t?t:0}},function(t,e,n){var r=n(22),o=n(46),i=NaN,u=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,s=/^0o[0-7]+$/i,f=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(o(t))return i;if(r(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=r(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(u,"");var n=c.test(t);return n||s.test(t)?f(t.slice(2),n?2:8):a.test(t)?i:+t}},function(t,e,n){var r=n(245),o=n(58),i=n(6),u=n(59),a=n(75),c=n(87),s=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=i(t),f=!n&&o(t),l=!n&&!f&&u(t),p=!n&&!f&&!l&&c(t),d=n||f||l||p,h=d?r(t.length,String):[],v=h.length;for(var y in t)!e&&!s.call(t,y)||d&&("length"==y||l&&("offset"==y||"parent"==y)||p&&("buffer"==y||"byteLength"==y||"byteOffset"==y)||a(y,v))||h.push(y);return h}},function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},function(t,e){t.exports=function(){return[]}},function(t,e,n){var r=n(163),o=n(106),i=n(40);t.exports=function(t){return r(t,i,o)}},function(t,e,n){var r=n(97),o=n(6);t.exports=function(t,e,n){var i=e(t);return o(t)?i:r(i,n(t))}},function(t,e,n){var r=n(11).Uint8Array;t.exports=r},function(t,e,n){var r=n(267),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,u=r((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(o,(function(t,n,r,o){e.push(r?o.replace(i,"$1"):n||t)})),e}));t.exports=u},function(t,e,n){t.exports=!n(19)&&!n(50)((function(){return 7!=Object.defineProperty(n(81)("div"),"a",{get:function(){return 7}}).a}))},function(t,e,n){t.exports=n(26)},function(t,e,n){var r=n(31),o=n(45),i=n(213)(!1),u=n(83)("IE_PROTO");t.exports=function(t,e){var n,a=o(t),c=0,s=[];for(n in a)n!=u&&r(a,n)&&s.push(n);for(;e.length>c;)r(a,n=e[c++])&&(~i(s,n)||s.push(n));return s}},function(t,e,n){var r=n(32),o=n(77),i=n(6),u=n(46),a=1/0,c=r?r.prototype:void 0,s=c?c.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(i(e))return o(e,t)+"";if(u(e))return s?s.call(e):"";var n=e+"";return"0"==n&&1/e==-a?"-0":n}},function(t,e){},function(t,e,n){e.f=n(12)},function(t,e,n){var r=n(9),o=n(10),i=n(49),u=n(171),a=n(21).f;t.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:r.Symbol||{});"_"==t.charAt(0)||t in e||a(e,t,{value:u.f(t)})}},,function(t,e,n){var r=n(113);t.exports=function(t,e){return!!(null==t?0:t.length)&&r(t,e,0)>-1}},function(t,e){t.exports=function(t,e,n,r){for(var o=t.length,i=n+(r?1:-1);r?i--:++i<o;)if(e(t[i],i,t))return i;return-1}},function(t,e){t.exports={}},function(t,e,n){var r=n(52),o=n(178),i=o?function(t,e){return o.set(t,e),t}:r;t.exports=i},function(t,e,n){var r=n(154),o=r&&new r;t.exports=o},function(t,e,n){var r=n(180),o=n(181),i=n(323),u=n(72),a=n(182),c=n(156),s=n(334),f=n(105),l=n(11),p=1,d=2,h=8,v=16,y=128,b=512;t.exports=function t(e,n,g,m,_,x,w,O,j,E){var S=n&y,P=n&p,A=n&d,k=n&(h|v),T=n&b,R=A?void 0:u(e);return function p(){for(var d=arguments.length,h=Array(d),v=d;v--;)h[v]=arguments[v];if(k)var y=c(p),b=i(h,y);if(m&&(h=r(h,m,_,k)),x&&(h=o(h,x,w,k)),d-=b,k&&d<E){var C=f(h,y);return a(e,n,t,p.placeholder,g,h,C,O,j,E-d)}var I=P?g:this,M=A?I[e]:e;return d=h.length,O?h=s(h,O):T&&d>1&&h.reverse(),S&&j<d&&(h.length=j),this&&this!==l&&this instanceof p&&(M=R||u(M)),M.apply(I,h)}}},function(t,e){var n=Math.max;t.exports=function(t,e,r,o){for(var i=-1,u=t.length,a=r.length,c=-1,s=e.length,f=n(u-a,0),l=Array(s+f),p=!o;++c<s;)l[c]=e[c];for(;++i<a;)(p||i<u)&&(l[r[i]]=t[i]);for(;f--;)l[c++]=t[i++];return l}},function(t,e){var n=Math.max;t.exports=function(t,e,r,o){for(var i=-1,u=t.length,a=-1,c=r.length,s=-1,f=e.length,l=n(u-c,0),p=Array(l+f),d=!o;++i<l;)p[i]=t[i];for(var h=i;++s<f;)p[h+s]=e[s];for(;++a<c;)(d||i<u)&&(p[h+r[a]]=t[i++]);return p}},function(t,e,n){var r=n(324),o=n(185),i=n(187),u=1,a=2,c=4,s=8,f=32,l=64;t.exports=function(t,e,n,p,d,h,v,y,b,g){var m=e&s;e|=m?f:l,(e&=~(m?l:f))&c||(e&=~(u|a));var _=[t,e,d,m?h:void 0,m?v:void 0,m?void 0:h,m?void 0:v,y,b,g],x=n.apply(void 0,_);return r(t)&&o(x,_),x.placeholder=p,i(x,t,e)}},function(t,e,n){var r=n(178),o=n(8),i=r?function(t){return r.get(t)}:o;t.exports=i},function(t,e,n){var r=n(73),o=n(116);function i(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=void 0}i.prototype=r(o.prototype),i.prototype.constructor=i,t.exports=i},function(t,e,n){var r=n(177),o=n(186)(r);t.exports=o},function(t,e){var n=800,r=16,o=Date.now;t.exports=function(t){var e=0,i=0;return function(){var u=o(),a=r-(u-i);if(i=u,a>0){if(++e>=n)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}},function(t,e,n){var r=n(329),o=n(330),i=n(155),u=n(333);t.exports=function(t,e,n){var a=e+"";return i(t,o(a,u(r(a),n)))}},function(t,e,n){var r=n(24),o=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();t.exports=o},function(t,e,n){var r=n(76),o=n(40);t.exports=function(t,e){return t&&r(e,o(e),t)}},function(t,e,n){var r=n(191),o=n(71),i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n){var u=t[e];i.call(t,e)&&o(u,n)&&(void 0!==n||e in t)||r(t,e,n)}},function(t,e,n){var r=n(188);t.exports=function(t,e,n){"__proto__"==e&&r?r(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}},function(t,e,n){var r=n(96),o=n(117),i=n(190),u=n(189),a=n(338),c=n(341),s=n(74),f=n(342),l=n(343),p=n(162),d=n(344),h=n(43),v=n(345),y=n(346),b=n(351),g=n(6),m=n(59),_=n(352),x=n(22),w=n(354),O=n(40),j=1,E=2,S=4,P="[object Arguments]",A="[object Function]",k="[object GeneratorFunction]",T="[object Object]",R={};R[P]=R["[object Array]"]=R["[object ArrayBuffer]"]=R["[object DataView]"]=R["[object Boolean]"]=R["[object Date]"]=R["[object Float32Array]"]=R["[object Float64Array]"]=R["[object Int8Array]"]=R["[object Int16Array]"]=R["[object Int32Array]"]=R["[object Map]"]=R["[object Number]"]=R[T]=R["[object RegExp]"]=R["[object Set]"]=R["[object String]"]=R["[object Symbol]"]=R["[object Uint8Array]"]=R["[object Uint8ClampedArray]"]=R["[object Uint16Array]"]=R["[object Uint32Array]"]=!0,R["[object Error]"]=R[A]=R["[object WeakMap]"]=!1,t.exports=function t(e,n,C,I,M,L){var N,F=n&j,D=n&E,B=n&S;if(C&&(N=M?C(e,I,M,L):C(e)),void 0!==N)return N;if(!x(e))return e;var W=g(e);if(W){if(N=v(e),!F)return s(e,N)}else{var U=h(e),q=U==A||U==k;if(m(e))return c(e,F);if(U==T||U==P||q&&!M){if(N=D||q?{}:b(e),!F)return D?l(e,a(N,e)):f(e,u(N,e))}else{if(!R[U])return M?e:{};N=y(e,U,F)}}L||(L=new r);var z=L.get(e);if(z)return z;L.set(e,N),w(e)?e.forEach((function(r){N.add(t(r,n,C,r,e,L))})):_(e)&&e.forEach((function(r,o){N.set(o,t(r,n,C,o,e,L))}));var G=B?D?d:p:D?keysIn:O,$=W?void 0:G(e);return o($||e,(function(r,o){$&&(r=e[o=r]),i(N,o,t(r,n,C,o,e,L))})),N}},function(t,e,n){var r=n(159),o=n(339),i=n(41);t.exports=function(t){return i(t)?r(t,!0):o(t)}},function(t,e,n){var r=n(97),o=n(118),i=n(106),u=n(161),a=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)r(e,i(t)),t=o(t);return e}:u;t.exports=a},function(t,e,n){var r=n(104),o=8;function i(t,e,n){var u=r(t,o,void 0,void 0,void 0,void 0,void 0,e=n?void 0:e);return u.placeholder=i.placeholder,u}i.placeholder={},t.exports=i},function(t,e,n){var r=n(275);t.exports=function(t){return(null==t?0:t.length)?r(t,1):[]}},function(t,e,n){"use strict";function r(t){var e,n=t.Symbol;return"function"==typeof n?n.observable?e=n.observable:(e=n("observable"),n.observable=e):e="@@observable",e}n.d(e,"a",(function(){return r}))},function(t,e,n){var r=n(313);t.exports=function(t){return t&&t.length?r(t):[]}},function(t,e,n){var r=n(316)("curry",n(195));r.placeholder=n(176),t.exports=r},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(205),i=(r=o)&&r.__esModule?r:{default:r};e.default=function(t,e,n){return e in t?(0,i.default)(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}},function(t,e,n){"use strict";var r=Object.prototype.hasOwnProperty;function o(t){return decodeURIComponent(t.replace(/\+/g," "))}e.stringify=function(t,e){e=e||"";var n=[];for(var o in"string"!=typeof e&&(e="?"),t)r.call(t,o)&&n.push(encodeURIComponent(o)+"="+encodeURIComponent(t[o]));return n.length?e+n.join("&"):""},e.parse=function(t){for(var e,n=/([^=?&]+)=?([^&]*)/g,r={};e=n.exec(t);){var i=o(e[1]),u=o(e[2]);i in r||(r[i]=u)}return r}},function(t,e,n){var r=n(367),o=n(157),i=n(158);t.exports=function(t,e,n){return e=o(e),void 0===n?(n=e,e=0):n=o(n),t=i(t),r(t,e,n)}},function(t,e,n){"use strict";t.exports=function(t,e,n,r,o,i,u,a){if(!t){var c;if(void 0===e)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var s=[n,r,o,i,u,a],f=0;(c=new Error(e.replace(/%s/g,(function(){return s[f++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},function(t,e,n){"use strict";e.__esModule=!0;var r=u(n(374)),o=u(n(376)),i="function"==typeof o.default&&"symbol"==typeof r.default?function(t){return typeof t}:function(t){return t&&"function"==typeof o.default&&t.constructor===o.default&&t!==o.default.prototype?"symbol":typeof t};function u(t){return t&&t.__esModule?t:{default:t}}e.default="function"==typeof o.default&&"symbol"===i(r.default)?function(t){return void 0===t?"undefined":i(t)}:function(t){return t&&"function"==typeof o.default&&t.constructor===o.default&&t!==o.default.prototype?"symbol":void 0===t?"undefined":i(t)}},function(t,e,n){t.exports={default:n(365),__esModule:!0}},function(t,e){!function(t){"use strict";if(!t.fetch){var e={searchParams:"URLSearchParams"in t,iterable:"Symbol"in t&&"iterator"in Symbol,blob:"FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),formData:"FormData"in t,arrayBuffer:"ArrayBuffer"in t};if(e.arrayBuffer)var n=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],r=function(t){return t&&DataView.prototype.isPrototypeOf(t)},o=ArrayBuffer.isView||function(t){return t&&n.indexOf(Object.prototype.toString.call(t))>-1};f.prototype.append=function(t,e){t=a(t),e=c(e);var n=this.map[t];this.map[t]=n?n+","+e:e},f.prototype.delete=function(t){delete this.map[a(t)]},f.prototype.get=function(t){return t=a(t),this.has(t)?this.map[t]:null},f.prototype.has=function(t){return this.map.hasOwnProperty(a(t))},f.prototype.set=function(t,e){this.map[a(t)]=c(e)},f.prototype.forEach=function(t,e){for(var n in this.map)this.map.hasOwnProperty(n)&&t.call(e,this.map[n],n,this)},f.prototype.keys=function(){var t=[];return this.forEach((function(e,n){t.push(n)})),s(t)},f.prototype.values=function(){var t=[];return this.forEach((function(e){t.push(e)})),s(t)},f.prototype.entries=function(){var t=[];return this.forEach((function(e,n){t.push([n,e])})),s(t)},e.iterable&&(f.prototype[Symbol.iterator]=f.prototype.entries);var i=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];y.prototype.clone=function(){return new y(this,{body:this._bodyInit})},v.call(y.prototype),v.call(g.prototype),g.prototype.clone=function(){return new g(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new f(this.headers),url:this.url})},g.error=function(){var t=new g(null,{status:0,statusText:""});return t.type="error",t};var u=[301,302,303,307,308];g.redirect=function(t,e){if(-1===u.indexOf(e))throw new RangeError("Invalid status code");return new g(null,{status:e,headers:{location:t}})},t.Headers=f,t.Request=y,t.Response=g,t.fetch=function(t,n){return new Promise((function(r,o){var i=new y(t,n),u=new XMLHttpRequest;u.onload=function(){var t,e,n={status:u.status,statusText:u.statusText,headers:(t=u.getAllResponseHeaders()||"",e=new f,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(t){var n=t.split(":"),r=n.shift().trim();if(r){var o=n.join(":").trim();e.append(r,o)}})),e)};n.url="responseURL"in u?u.responseURL:n.headers.get("X-Request-URL");var o="response"in u?u.response:u.responseText;r(new g(o,n))},u.onerror=function(){o(new TypeError("Network request failed"))},u.ontimeout=function(){o(new TypeError("Network request failed"))},u.open(i.method,i.url,!0),"include"===i.credentials?u.withCredentials=!0:"omit"===i.credentials&&(u.withCredentials=!1),"responseType"in u&&e.blob&&(u.responseType="blob"),i.headers.forEach((function(t,e){u.setRequestHeader(e,t)})),u.send(void 0===i._bodyInit?null:i._bodyInit)}))},t.fetch.polyfill=!0}function a(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function c(t){return"string"!=typeof t&&(t=String(t)),t}function s(t){var n={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return e.iterable&&(n[Symbol.iterator]=function(){return n}),n}function f(t){this.map={},t instanceof f?t.forEach((function(t,e){this.append(e,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(e){this.append(e,t[e])}),this)}function l(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function p(t){return new Promise((function(e,n){t.onload=function(){e(t.result)},t.onerror=function(){n(t.error)}}))}function d(t){var e=new FileReader,n=p(e);return e.readAsArrayBuffer(t),n}function h(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function v(){return this.bodyUsed=!1,this._initBody=function(t){if(this._bodyInit=t,t)if("string"==typeof t)this._bodyText=t;else if(e.blob&&Blob.prototype.isPrototypeOf(t))this._bodyBlob=t;else if(e.formData&&FormData.prototype.isPrototypeOf(t))this._bodyFormData=t;else if(e.searchParams&&URLSearchParams.prototype.isPrototypeOf(t))this._bodyText=t.toString();else if(e.arrayBuffer&&e.blob&&r(t))this._bodyArrayBuffer=h(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer]);else{if(!e.arrayBuffer||!ArrayBuffer.prototype.isPrototypeOf(t)&&!o(t))throw new Error("unsupported BodyInit type");this._bodyArrayBuffer=h(t)}else this._bodyText="";this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):e.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},e.blob&&(this.blob=function(){var t=l(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?l(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(d)}),this.text=function(){var t,e,n,r=l(this);if(r)return r;if(this._bodyBlob)return t=this._bodyBlob,e=new FileReader,n=p(e),e.readAsText(t),n;if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),n=new Array(e.length),r=0;r<e.length;r++)n[r]=String.fromCharCode(e[r]);return n.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},e.formData&&(this.formData=function(){return this.text().then(b)}),this.json=function(){return this.text().then(JSON.parse)},this}function y(t,e){var n,r,o=(e=e||{}).body;if(t instanceof y){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new f(t.headers)),this.method=t.method,this.mode=t.mode,o||null==t._bodyInit||(o=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||"omit",!e.headers&&this.headers||(this.headers=new f(e.headers)),this.method=(n=e.method||this.method||"GET",r=n.toUpperCase(),i.indexOf(r)>-1?r:n),this.mode=e.mode||this.mode||null,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(o)}function b(t){var e=new FormData;return t.trim().split("&").forEach((function(t){if(t){var n=t.split("="),r=n.shift().replace(/\+/g," "),o=n.join("=").replace(/\+/g," ");e.append(decodeURIComponent(r),decodeURIComponent(o))}})),e}function g(t,e){e||(e={}),this.type="default",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in e?e.statusText:"OK",this.headers=new f(e.headers),this.url=e.url||"",this._initBody(t)}}("undefined"!=typeof self?self:this)},function(t,e,n){"use strict";function r(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}var o=n(2),i=n.n(o),u=n(1),a=n.n(u),c=a.a.shape({trySubscribe:a.a.func.isRequired,tryUnsubscribe:a.a.func.isRequired,notifyNestedSubs:a.a.func.isRequired,isSubscribed:a.a.func.isRequired}),s=a.a.shape({subscribe:a.a.func.isRequired,dispatch:a.a.func.isRequired,getState:a.a.func.isRequired});i.a.forwardRef;!function(t){var e;void 0===t&&(t="store");var n=t+"Subscription",i=function(e){r(u,e);var i=u.prototype;function u(n,r){var o;return(o=e.call(this,n,r)||this)[t]=n.store,o}return i.getChildContext=function(){var e;return(e={})[t]=this[t],e[n]=null,e},i.render=function(){return o.Children.only(this.props.children)},u}(o.Component);i.propTypes={store:s.isRequired,children:a.a.element.isRequired},i.childContextTypes=((e={})[t]=s.isRequired,e[n]=c,e)}();function f(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function l(){return(l=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t}).apply(this,arguments)}function p(t,e){if(null==t)return{};var n,r,o={},i=Object.keys(t);for(r=0;r<i.length;r++)n=i[r],e.indexOf(n)>=0||(o[n]=t[n]);return o}var d=n(372),h=n.n(d),v=n(203),y=n.n(v),b=n(301),g=null,m={notify:function(){}};var _=function(){function t(t,e,n){this.store=t,this.parentSub=e,this.onStateChange=n,this.unsubscribe=null,this.listeners=m}var e=t.prototype;return e.addNestedSub=function(t){return this.trySubscribe(),this.listeners.subscribe(t)},e.notifyNestedSubs=function(){this.listeners.notify()},e.isSubscribed=function(){return Boolean(this.unsubscribe)},e.trySubscribe=function(){var t,e;this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.onStateChange):this.store.subscribe(this.onStateChange),this.listeners=(t=[],e=[],{clear:function(){e=g,t=g},notify:function(){for(var n=t=e,r=0;r<n.length;r++)n[r]()},get:function(){return e},subscribe:function(n){var r=!0;return e===t&&(e=t.slice()),e.push(n),function(){r&&t!==g&&(r=!1,e===t&&(e=t.slice()),e.splice(e.indexOf(n),1))}}}))},e.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null,this.listeners.clear(),this.listeners=m)},t}(),x=void 0!==i.a.forwardRef,w=0,O={};function j(){}function E(t,e){var n,i;void 0===e&&(e={});var u=e,a=u.getDisplayName,d=void 0===a?function(t){return"ConnectAdvanced("+t+")"}:a,v=u.methodName,g=void 0===v?"connectAdvanced":v,m=u.renderCountProp,E=void 0===m?void 0:m,S=u.shouldHandleStateChanges,P=void 0===S||S,A=u.storeKey,k=void 0===A?"store":A,T=u.withRef,R=void 0!==T&&T,C=p(u,["getDisplayName","methodName","renderCountProp","shouldHandleStateChanges","storeKey","withRef"]),I=k+"Subscription",M=w++,L=((n={})[k]=s,n[I]=c,n),N=((i={})[I]=c,i);return function(e){y()(Object(b.isValidElementType)(e),"You must pass a component to the function returned by "+g+". Instead received "+JSON.stringify(e));var n=e.displayName||e.name||"Component",i=d(n),u=l({},C,{getDisplayName:d,methodName:g,renderCountProp:E,shouldHandleStateChanges:P,storeKey:k,withRef:R,displayName:i,wrappedComponentName:n,WrappedComponent:e}),a=function(n){function a(t,e){var r;return(r=n.call(this,t,e)||this).version=M,r.state={},r.renderCount=0,r.store=t[k]||e[k],r.propsMode=Boolean(t[k]),r.setWrappedInstance=r.setWrappedInstance.bind(f(f(r))),y()(r.store,'Could not find "'+k+'" in either the context or props of "'+i+'". Either wrap the root component in a <Provider>, or explicitly pass "'+k+'" as a prop to "'+i+'".'),r.initSelector(),r.initSubscription(),r}r(a,n);var c=a.prototype;return c.getChildContext=function(){var t,e=this.propsMode?null:this.subscription;return(t={})[I]=e||this.context[I],t},c.componentDidMount=function(){P&&(this.subscription.trySubscribe(),this.selector.run(this.props),this.selector.shouldComponentUpdate&&this.forceUpdate())},c.componentWillReceiveProps=function(t){this.selector.run(t)},c.shouldComponentUpdate=function(){return this.selector.shouldComponentUpdate},c.componentWillUnmount=function(){this.subscription&&this.subscription.tryUnsubscribe(),this.subscription=null,this.notifyNestedSubs=j,this.store=null,this.selector.run=j,this.selector.shouldComponentUpdate=!1},c.getWrappedInstance=function(){return y()(R,"To access the wrapped instance, you need to specify { withRef: true } in the options argument of the "+g+"() call."),this.wrappedInstance},c.setWrappedInstance=function(t){this.wrappedInstance=t},c.initSelector=function(){var e=t(this.store.dispatch,u);this.selector=function(t,e){var n={run:function(r){try{var o=t(e.getState(),r);(o!==n.props||n.error)&&(n.shouldComponentUpdate=!0,n.props=o,n.error=null)}catch(t){n.shouldComponentUpdate=!0,n.error=t}}};return n}(e,this.store),this.selector.run(this.props)},c.initSubscription=function(){if(P){var t=(this.propsMode?this.props:this.context)[I];this.subscription=new _(this.store,t,this.onStateChange.bind(this)),this.notifyNestedSubs=this.subscription.notifyNestedSubs.bind(this.subscription)}},c.onStateChange=function(){this.selector.run(this.props),this.selector.shouldComponentUpdate?(this.componentDidUpdate=this.notifyNestedSubsOnComponentDidUpdate,this.setState(O)):this.notifyNestedSubs()},c.notifyNestedSubsOnComponentDidUpdate=function(){this.componentDidUpdate=void 0,this.notifyNestedSubs()},c.isSubscribed=function(){return Boolean(this.subscription)&&this.subscription.isSubscribed()},c.addExtraProps=function(t){if(!(R||E||this.propsMode&&this.subscription))return t;var e=l({},t);return R&&(e.ref=this.setWrappedInstance),E&&(e[E]=this.renderCount++),this.propsMode&&this.subscription&&(e[I]=this.subscription),e},c.render=function(){var t=this.selector;if(t.shouldComponentUpdate=!1,t.error)throw t.error;return Object(o.createElement)(e,this.addExtraProps(t.props))},a}(o.Component);return x&&(a.prototype.UNSAFE_componentWillReceiveProps=a.prototype.componentWillReceiveProps,delete a.prototype.componentWillReceiveProps),a.WrappedComponent=e,a.displayName=i,a.childContextTypes=N,a.contextTypes=L,a.propTypes=L,h()(a,e)}}var S=Object.prototype.hasOwnProperty;function P(t,e){return t===e?0!==t||0!==e||1/t==1/e:t!=t&&e!=e}function A(t,e){if(P(t,e))return!0;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return!1;var n=Object.keys(t),r=Object.keys(e);if(n.length!==r.length)return!1;for(var o=0;o<n.length;o++)if(!S.call(e,n[o])||!P(t[n[o]],e[n[o]]))return!1;return!0}var k=n(15);function T(t){return function(e,n){var r=t(e,n);function o(){return r}return o.dependsOnOwnProps=!1,o}}function R(t){return null!==t.dependsOnOwnProps&&void 0!==t.dependsOnOwnProps?Boolean(t.dependsOnOwnProps):1!==t.length}function C(t,e){return function(e,n){n.displayName;var r=function(t,e){return r.dependsOnOwnProps?r.mapToProps(t,e):r.mapToProps(t)};return r.dependsOnOwnProps=!0,r.mapToProps=function(e,n){r.mapToProps=t,r.dependsOnOwnProps=R(t);var o=r(e,n);return"function"==typeof o&&(r.mapToProps=o,r.dependsOnOwnProps=R(o),o=r(e,n)),o},r}}var I=[function(t){return"function"==typeof t?C(t):void 0},function(t){return t?void 0:T((function(t){return{dispatch:t}}))},function(t){return t&&"object"==typeof t?T((function(e){return Object(k.bindActionCreators)(t,e)})):void 0}];var M=[function(t){return"function"==typeof t?C(t):void 0},function(t){return t?void 0:T((function(){return{}}))}];function L(t,e,n){return l({},n,t,e)}var N=[function(t){return"function"==typeof t?function(t){return function(e,n){n.displayName;var r,o=n.pure,i=n.areMergedPropsEqual,u=!1;return function(e,n,a){var c=t(e,n,a);return u?o&&i(c,r)||(r=c):(u=!0,r=c),r}}}(t):void 0},function(t){return t?void 0:function(){return L}}];function F(t,e,n,r){return function(o,i){return n(t(o,i),e(r,i),i)}}function D(t,e,n,r,o){var i,u,a,c,s,f=o.areStatesEqual,l=o.areOwnPropsEqual,p=o.areStatePropsEqual,d=!1;function h(o,d){var h,v,y=!l(d,u),b=!f(o,i);return i=o,u=d,y&&b?(a=t(i,u),e.dependsOnOwnProps&&(c=e(r,u)),s=n(a,c,u)):y?(t.dependsOnOwnProps&&(a=t(i,u)),e.dependsOnOwnProps&&(c=e(r,u)),s=n(a,c,u)):b?(h=t(i,u),v=!p(h,a),a=h,v&&(s=n(a,c,u)),s):s}return function(o,f){return d?h(o,f):(a=t(i=o,u=f),c=e(r,u),s=n(a,c,u),d=!0,s)}}function B(t,e){var n=e.initMapStateToProps,r=e.initMapDispatchToProps,o=e.initMergeProps,i=p(e,["initMapStateToProps","initMapDispatchToProps","initMergeProps"]),u=n(t,i),a=r(t,i),c=o(t,i);return(i.pure?D:F)(u,a,c,t,i)}function W(t,e,n){for(var r=e.length-1;r>=0;r--){var o=e[r](t);if(o)return o}return function(e,r){throw new Error("Invalid value of type "+typeof t+" for "+n+" argument when connecting component "+r.wrappedComponentName+".")}}function U(t,e){return t===e}var q,z,G,$,V,H,K,Y,J,Q,X,Z,tt=(G=(z=void 0===q?{}:q).connectHOC,$=void 0===G?E:G,V=z.mapStateToPropsFactories,H=void 0===V?M:V,K=z.mapDispatchToPropsFactories,Y=void 0===K?I:K,J=z.mergePropsFactories,Q=void 0===J?N:J,X=z.selectorFactory,Z=void 0===X?B:X,function(t,e,n,r){void 0===r&&(r={});var o=r,i=o.pure,u=void 0===i||i,a=o.areStatesEqual,c=void 0===a?U:a,s=o.areOwnPropsEqual,f=void 0===s?A:s,d=o.areStatePropsEqual,h=void 0===d?A:d,v=o.areMergedPropsEqual,y=void 0===v?A:v,b=p(o,["pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual"]),g=W(t,H,"mapStateToProps"),m=W(e,Y,"mapDispatchToProps"),_=W(n,Q,"mergeProps");return $(Z,l({methodName:"connect",getDisplayName:function(t){return"Connect("+t+")"},shouldHandleStateChanges:Boolean(t),initMapStateToProps:g,initMapDispatchToProps:m,initMergeProps:_,pure:u,areStatesEqual:c,areOwnPropsEqual:f,areStatePropsEqual:h,areMergedPropsEqual:y},b))});n.d(e,"a",(function(){return tt}))},function(t,e,n){t.exports={default:n(209),__esModule:!0}},function(t,e,n){n(61),n(216),t.exports=n(10).Array.from},function(t,e,n){var r=n(79),o=n(80);t.exports=function(t){return function(e,n){var i,u,a=String(o(e)),c=r(n),s=a.length;return c<0||c>=s?t?"":void 0:(i=a.charCodeAt(c))<55296||i>56319||c+1===s||(u=a.charCodeAt(c+1))<56320||u>57343?t?a.charAt(c):i:t?a.slice(c,c+2):u-56320+(i-55296<<10)+65536}}},function(t,e,n){"use strict";var r=n(126),o=n(51),i=n(62),u={};n(26)(u,n(12)("iterator"),(function(){return this})),t.exports=function(t,e,n){t.prototype=r(u,{next:o(1,n)}),i(t,e+" Iterator")}},function(t,e,n){var r=n(21),o=n(17),i=n(69);t.exports=n(19)?Object.defineProperties:function(t,e){o(t);for(var n,u=i(e),a=u.length,c=0;a>c;)r.f(t,n=u[c++],e[n]);return t}},function(t,e,n){var r=n(45),o=n(82),i=n(214);t.exports=function(t){return function(e,n,u){var a,c=r(e),s=o(c.length),f=i(u,s);if(t&&n!=n){for(;s>f;)if((a=c[f++])!=a)return!0}else for(;s>f;f++)if((t||f in c)&&c[f]===n)return t||f||0;return!t&&-1}}},function(t,e,n){var r=n(79),o=Math.max,i=Math.min;t.exports=function(t,e){return(t=r(t))<0?o(t+e,0):i(t,e)}},function(t,e,n){var r=n(31),o=n(63),i=n(83)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},function(t,e,n){"use strict";var r=n(38),o=n(18),i=n(63),u=n(134),a=n(135),c=n(82),s=n(217),f=n(109);o(o.S+o.F*!n(136)((function(t){Array.from(t)})),"Array",{from:function(t){var e,n,o,l,p=i(t),d="function"==typeof this?this:Array,h=arguments.length,v=h>1?arguments[1]:void 0,y=void 0!==v,b=0,g=f(p);if(y&&(v=r(v,h>2?arguments[2]:void 0,2)),null==g||d==Array&&a(g))for(n=new d(e=c(p.length));e>b;b++)s(n,b,y?v(p[b],b):p[b]);else for(l=g.call(p),n=new d;!(o=l.next()).done;b++)s(n,b,y?u(l,v,[o.value,b],!0):o.value);return n.length=b,n}})},function(t,e,n){"use strict";var r=n(21),o=n(51);t.exports=function(t,e,n){e in t?r.f(t,e,o(0,n)):t[e]=n}},function(t,e,n){var r=n(219),o=n(55),i=n(85);t.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},function(t,e,n){var r=n(220),o=n(227),i=n(228),u=n(229),a=n(230);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,e,n){var r=n(54);t.exports=function(){this.__data__=r?r(null):{},this.size=0}},function(t,e,n){var r=n(94),o=n(224),i=n(22),u=n(138),a=/^\[object .+?Constructor\]$/,c=Function.prototype,s=Object.prototype,f=c.toString,l=s.hasOwnProperty,p=RegExp("^"+f.call(l).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||o(t))&&(r(t)?p:a).test(u(t))}},function(t,e,n){var r=n(32),o=Object.prototype,i=o.hasOwnProperty,u=o.toString,a=r?r.toStringTag:void 0;t.exports=function(t){var e=i.call(t,a),n=t[a];try{t[a]=void 0;var r=!0}catch(t){}var o=u.call(t);return r&&(e?t[a]=n:delete t[a]),o}},function(t,e){var n=Object.prototype.toString;t.exports=function(t){return n.call(t)}},function(t,e,n){var r,o=n(225),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!i&&i in t}},function(t,e,n){var r=n(11)["__core-js_shared__"];t.exports=r},function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},function(t,e){t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},function(t,e,n){var r=n(54),o="__lodash_hash_undefined__",i=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(r){var n=e[t];return n===o?void 0:n}return i.call(e,t)?e[t]:void 0}},function(t,e,n){var r=n(54),o=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return r?void 0!==e[t]:o.call(e,t)}},function(t,e,n){var r=n(54),o="__lodash_hash_undefined__";t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=r&&void 0===e?o:e,this}},function(t,e){t.exports=function(){this.__data__=[],this.size=0}},function(t,e,n){var r=n(56),o=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=r(e,t);return!(n<0)&&(n==e.length-1?e.pop():o.call(e,n,1),--this.size,!0)}},function(t,e,n){var r=n(56);t.exports=function(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}},function(t,e,n){var r=n(56);t.exports=function(t){return r(this.__data__,t)>-1}},function(t,e,n){var r=n(56);t.exports=function(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}},function(t,e,n){var r=n(57);t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},function(t,e){t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},function(t,e,n){var r=n(57);t.exports=function(t){return r(this,t).get(t)}},function(t,e,n){var r=n(57);t.exports=function(t){return r(this,t).has(t)}},function(t,e,n){var r=n(57);t.exports=function(t,e){var n=r(this,t),o=n.size;return n.set(t,e),this.size+=n.size==o?0:1,this}},function(t,e){var n="__lodash_hash_undefined__";t.exports=function(t){return this.__data__.set(t,n),this}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e){t.exports=function(t){return t!=t}},function(t,e){t.exports=function(t,e,n){for(var r=n-1,o=t.length;++r<o;)if(t[r]===e)return r;return-1}},function(t,e){t.exports=function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}},function(t,e,n){var r=n(20),o=n(14),i="[object Arguments]";t.exports=function(t){return o(t)&&r(t)==i}},function(t,e){t.exports=function(){return!1}},function(t,e,n){var r=n(20),o=n(88),i=n(14),u={};u["[object Float32Array]"]=u["[object Float64Array]"]=u["[object Int8Array]"]=u["[object Int16Array]"]=u["[object Int32Array]"]=u["[object Uint8Array]"]=u["[object Uint8ClampedArray]"]=u["[object Uint16Array]"]=u["[object Uint32Array]"]=!0,u["[object Arguments]"]=u["[object Array]"]=u["[object ArrayBuffer]"]=u["[object Boolean]"]=u["[object DataView]"]=u["[object Date]"]=u["[object Error]"]=u["[object Function]"]=u["[object Map]"]=u["[object Number]"]=u["[object Object]"]=u["[object RegExp]"]=u["[object Set]"]=u["[object String]"]=u["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&o(t.length)&&!!u[r(t)]}},function(t,e,n){var r=n(160)(Object.keys,Object);t.exports=r},function(t,e,n){var r=n(55);t.exports=function(){this.__data__=new r,this.size=0}},function(t,e){t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},function(t,e){t.exports=function(t){return this.__data__.get(t)}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e,n){var r=n(55),o=n(85),i=n(84),u=200;t.exports=function(t,e){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!o||a.length<u-1)return a.push([t,e]),this.size=++n.size,this;n=this.__data__=new i(a)}return n.set(t,e),this.size=n.size,this}},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,o=0,i=[];++n<r;){var u=t[n];e(u,n,t)&&(i[o++]=u)}return i}},function(t,e,n){var r=n(24)(n(11),"DataView");t.exports=r},function(t,e,n){var r=n(24)(n(11),"Promise");t.exports=r},function(t,e,n){var r=n(259),o=n(265),i=n(142);t.exports=function(t){var e=o(t);return 1==e.length&&e[0][2]?i(e[0][0],e[0][1]):function(n){return n===t||r(n,t,e)}}},function(t,e,n){var r=n(96),o=n(139),i=1,u=2;t.exports=function(t,e,n,a){var c=n.length,s=c,f=!a;if(null==t)return!s;for(t=Object(t);c--;){var l=n[c];if(f&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++c<s;){var p=(l=n[c])[0],d=t[p],h=l[1];if(f&&l[2]){if(void 0===d&&!(p in t))return!1}else{var v=new r;if(a)var y=a(d,h,p,t,e,v);if(!(void 0===y?o(h,d,i|u,a,v):y))return!1}}return!0}},function(t,e,n){var r=n(96),o=n(140),i=n(262),u=n(264),a=n(43),c=n(6),s=n(59),f=n(87),l=1,p="[object Arguments]",d="[object Array]",h="[object Object]",v=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,y,b,g){var m=c(t),_=c(e),x=m?d:a(t),w=_?d:a(e),O=(x=x==p?h:x)==h,j=(w=w==p?h:w)==h,E=x==w;if(E&&s(t)){if(!s(e))return!1;m=!0,O=!1}if(E&&!O)return g||(g=new r),m||f(t)?o(t,e,n,y,b,g):i(t,e,x,n,y,b,g);if(!(n&l)){var S=O&&v.call(t,"__wrapped__"),P=j&&v.call(e,"__wrapped__");if(S||P){var A=S?t.value():t,k=P?e.value():e;return g||(g=new r),b(A,k,n,y,g)}}return!!E&&(g||(g=new r),u(t,e,n,y,b,g))}},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}},function(t,e,n){var r=n(32),o=n(164),i=n(71),u=n(140),a=n(263),c=n(103),s=1,f=2,l="[object Boolean]",p="[object Date]",d="[object Error]",h="[object Map]",v="[object Number]",y="[object RegExp]",b="[object Set]",g="[object String]",m="[object Symbol]",_="[object ArrayBuffer]",x="[object DataView]",w=r?r.prototype:void 0,O=w?w.valueOf:void 0;t.exports=function(t,e,n,r,w,j,E){switch(n){case x:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case _:return!(t.byteLength!=e.byteLength||!j(new o(t),new o(e)));case l:case p:case v:return i(+t,+e);case d:return t.name==e.name&&t.message==e.message;case y:case g:return t==e+"";case h:var S=a;case b:var P=r&s;if(S||(S=c),t.size!=e.size&&!P)return!1;var A=E.get(t);if(A)return A==e;r|=f,E.set(t,e);var k=u(S(t),S(e),r,w,j,E);return E.delete(t),k;case m:if(O)return O.call(t)==O.call(e)}return!1}},function(t,e){t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}},function(t,e,n){var r=n(162),o=1,i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,u,a,c){var s=n&o,f=r(t),l=f.length;if(l!=r(e).length&&!s)return!1;for(var p=l;p--;){var d=f[p];if(!(s?d in e:i.call(e,d)))return!1}var h=c.get(t);if(h&&c.get(e))return h==e;var v=!0;c.set(t,e),c.set(e,t);for(var y=s;++p<l;){var b=t[d=f[p]],g=e[d];if(u)var m=s?u(g,b,d,e,t,c):u(b,g,d,t,e,c);if(!(void 0===m?b===g||a(b,g,n,u,c):m)){v=!1;break}y||(y="constructor"==d)}if(v&&!y){var _=t.constructor,x=e.constructor;_!=x&&"constructor"in t&&"constructor"in e&&!("function"==typeof _&&_ instanceof _&&"function"==typeof x&&x instanceof x)&&(v=!1)}return c.delete(t),c.delete(e),v}},function(t,e,n){var r=n(141),o=n(40);t.exports=function(t){for(var e=o(t),n=e.length;n--;){var i=e[n],u=t[i];e[n]=[i,u,r(u)]}return e}},function(t,e,n){var r=n(139),o=n(44),i=n(269),u=n(91),a=n(141),c=n(142),s=n(47),f=1,l=2;t.exports=function(t,e){return u(t)&&a(e)?c(s(t),e):function(n){var u=o(n,t);return void 0===u&&u===e?i(n,t):r(e,u,f|l)}}},function(t,e,n){var r=n(268),o=500;t.exports=function(t){var e=r(t,(function(t){return n.size===o&&n.clear(),t})),n=e.cache;return e}},function(t,e,n){var r=n(84),o="Expected a function";function i(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError(o);var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var u=t.apply(this,r);return n.cache=i.set(o,u)||i,u};return n.cache=new(i.Cache||r),n}i.Cache=r,t.exports=i},function(t,e,n){var r=n(270),o=n(271);t.exports=function(t,e){return null!=t&&o(t,e,r)}},function(t,e){t.exports=function(t,e){return null!=t&&e in Object(t)}},function(t,e,n){var r=n(144),o=n(58),i=n(6),u=n(75),a=n(88),c=n(47);t.exports=function(t,e,n){for(var s=-1,f=(e=r(e,t)).length,l=!1;++s<f;){var p=c(e[s]);if(!(l=null!=t&&n(t,p)))break;t=t[p]}return l||++s!=f?l:!!(f=null==t?0:t.length)&&a(f)&&u(p,f)&&(i(t)||o(t))}},function(t,e,n){var r=n(273),o=n(274),i=n(91),u=n(47);t.exports=function(t){return i(t)?r(u(t)):o(t)}},function(t,e){t.exports=function(t){return function(e){return null==e?void 0:e[t]}}},function(t,e,n){var r=n(143);t.exports=function(t){return function(e){return r(e,t)}}},function(t,e,n){var r=n(97),o=n(276);t.exports=function t(e,n,i,u,a){var c=-1,s=e.length;for(i||(i=o),a||(a=[]);++c<s;){var f=e[c];n>0&&i(f)?n>1?t(f,n-1,i,u,a):r(a,f):u||(a[a.length]=f)}return a}},function(t,e,n){var r=n(32),o=n(58),i=n(6),u=r?r.isConcatSpreadable:void 0;t.exports=function(t){return i(t)||o(t)||!!(u&&t&&t[u])}},function(t,e,n){var r=n(114),o=Math.max;t.exports=function(t,e,n){return e=o(void 0===e?t.length-1:e,0),function(){for(var i=arguments,u=-1,a=o(i.length-e,0),c=Array(a);++u<a;)c[u]=i[e+u];u=-1;for(var s=Array(e+1);++u<e;)s[u]=i[u];return s[e]=n(c),r(t,this,s)}}},function(t,e,n){t.exports={default:n(279),__esModule:!0}},function(t,e,n){n(280),t.exports=n(10).Object.assign},function(t,e,n){var r=n(18);r(r.S+r.F,"Object",{assign:n(281)})},function(t,e,n){"use strict";var r=n(19),o=n(69),i=n(120),u=n(92),a=n(63),c=n(132),s=Object.assign;t.exports=!s||n(50)((function(){var t={},e={},n=Symbol(),r="abcdefghijklmnopqrst";return t[n]=7,r.split("").forEach((function(t){e[t]=t})),7!=s({},t)[n]||Object.keys(s({},e)).join("")!=r}))?function(t,e){for(var n=a(t),s=arguments.length,f=1,l=i.f,p=u.f;s>f;)for(var d,h=c(arguments[f++]),v=l?o(h).concat(l(h)):o(h),y=v.length,b=0;y>b;)d=v[b++],r&&!p.call(h,d)||(n[d]=h[d]);return n}:s},function(t,e,n){var r=function(){return this}()||Function("return this")(),o=r.regeneratorRuntime&&Object.getOwnPropertyNames(r).indexOf("regeneratorRuntime")>=0,i=o&&r.regeneratorRuntime;if(r.regeneratorRuntime=void 0,t.exports=n(283),o)r.regeneratorRuntime=i;else try{delete r.regeneratorRuntime}catch(t){r.regeneratorRuntime=void 0}},function(t,e){!function(e){"use strict";var n,r=Object.prototype,o=r.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag",s="object"==typeof t,f=e.regeneratorRuntime;if(f)s&&(t.exports=f);else{(f=e.regeneratorRuntime=s?t.exports:{}).wrap=_;var l="suspendedStart",p="suspendedYield",d="executing",h="completed",v={},y={};y[u]=function(){return this};var b=Object.getPrototypeOf,g=b&&b(b(R([])));g&&g!==r&&o.call(g,u)&&(y=g);var m=j.prototype=w.prototype=Object.create(y);O.prototype=m.constructor=j,j.constructor=O,j[c]=O.displayName="GeneratorFunction",f.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===O||"GeneratorFunction"===(e.displayName||e.name))},f.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,j):(t.__proto__=j,c in t||(t[c]="GeneratorFunction")),t.prototype=Object.create(m),t},f.awrap=function(t){return{__await:t}},E(S.prototype),S.prototype[a]=function(){return this},f.AsyncIterator=S,f.async=function(t,e,n,r){var o=new S(_(t,e,n,r));return f.isGeneratorFunction(e)?o:o.next().then((function(t){return t.done?t.value:o.next()}))},E(m),m[c]="Generator",m[u]=function(){return this},m.toString=function(){return"[object Generator]"},f.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var r=e.pop();if(r in t)return n.value=r,n.done=!1,n}return n.done=!0,n}},f.values=R,T.prototype={constructor:T,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=n,this.done=!1,this.delegate=null,this.method="next",this.arg=n,this.tryEntries.forEach(k),!t)for(var e in this)"t"===e.charAt(0)&&o.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=n)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(r,o){return a.type="throw",a.arg=t,e.next=r,o&&(e.method="next",e.arg=n),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var u=this.tryEntries[i],a=u.completion;if("root"===u.tryLoc)return r("end");if(u.tryLoc<=this.prev){var c=o.call(u,"catchLoc"),s=o.call(u,"finallyLoc");if(c&&s){if(this.prev<u.catchLoc)return r(u.catchLoc,!0);if(this.prev<u.finallyLoc)return r(u.finallyLoc)}else if(c){if(this.prev<u.catchLoc)return r(u.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<u.finallyLoc)return r(u.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&o.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var u=i?i.completion:{};return u.type=t,u.arg=e,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(u)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),v},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),k(n),v}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;k(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:R(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=n),v}}}function _(t,e,n,r){var o=e&&e.prototype instanceof w?e:w,i=Object.create(o.prototype),u=new T(r||[]);return i._invoke=function(t,e,n){var r=l;return function(o,i){if(r===d)throw new Error("Generator is already running");if(r===h){if("throw"===o)throw i;return C()}for(n.method=o,n.arg=i;;){var u=n.delegate;if(u){var a=P(u,n);if(a){if(a===v)continue;return a}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===l)throw r=h,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=d;var c=x(t,e,n);if("normal"===c.type){if(r=n.done?h:p,c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r=h,n.method="throw",n.arg=c.arg)}}}(t,n,u),i}function x(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}function w(){}function O(){}function j(){}function E(t){["next","throw","return"].forEach((function(e){t[e]=function(t){return this._invoke(e,t)}}))}function S(t){var e;this._invoke=function(n,r){function i(){return new Promise((function(e,i){!function e(n,r,i,u){var a=x(t[n],t,r);if("throw"!==a.type){var c=a.arg,s=c.value;return s&&"object"==typeof s&&o.call(s,"__await")?Promise.resolve(s.__await).then((function(t){e("next",t,i,u)}),(function(t){e("throw",t,i,u)})):Promise.resolve(s).then((function(t){c.value=t,i(c)}),u)}u(a.arg)}(n,r,e,i)}))}return e=e?e.then(i,i):i()}}function P(t,e){var r=t.iterator[e.method];if(r===n){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=n,P(t,e),"throw"===e.method))return v;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return v}var o=x(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,v;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=n),e.delegate=null,v):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,v)}function A(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(A,this),this.reset(!0)}function R(t){if(t){var e=t[u];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,i=function e(){for(;++r<t.length;)if(o.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=n,e.done=!0,e};return i.next=i}}return{next:C}}function C(){return{value:n,done:!0}}}(function(){return this}()||Function("return this")())},function(t,e,n){t.exports={default:n(285),__esModule:!0}},function(t,e,n){n(170),n(61),n(108),n(289),n(297),n(298),t.exports=n(10).Promise},function(t,e,n){"use strict";var r=n(287),o=n(288),i=n(39),u=n(45);t.exports=n(131)(Array,"Array",(function(t,e){this._t=u(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},function(t,e){t.exports=function(){}},function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},function(t,e,n){"use strict";var r,o,i,u,a=n(49),c=n(9),s=n(38),f=n(110),l=n(18),p=n(23),d=n(53),h=n(290),v=n(291),y=n(145),b=n(146).set,g=n(293)(),m=n(93),_=n(147),x=n(294),w=n(148),O=c.TypeError,j=c.process,E=j&&j.versions,S=E&&E.v8||"",P=c.Promise,A="process"==f(j),k=function(){},T=o=m.f,R=!!function(){try{var t=P.resolve(1),e=(t.constructor={})[n(12)("species")]=function(t){t(k,k)};return(A||"function"==typeof PromiseRejectionEvent)&&t.then(k)instanceof e&&0!==S.indexOf("6.6")&&-1===x.indexOf("Chrome/66")}catch(t){}}(),C=function(t){var e;return!(!p(t)||"function"!=typeof(e=t.then))&&e},I=function(t,e){if(!t._n){t._n=!0;var n=t._c;g((function(){for(var r=t._v,o=1==t._s,i=0,u=function(e){var n,i,u,a=o?e.ok:e.fail,c=e.resolve,s=e.reject,f=e.domain;try{a?(o||(2==t._h&&N(t),t._h=1),!0===a?n=r:(f&&f.enter(),n=a(r),f&&(f.exit(),u=!0)),n===e.promise?s(O("Promise-chain cycle")):(i=C(n))?i.call(n,c,s):c(n)):s(r)}catch(t){f&&!u&&f.exit(),s(t)}};n.length>i;)u(n[i++]);t._c=[],t._n=!1,e&&!t._h&&M(t)}))}},M=function(t){b.call(c,(function(){var e,n,r,o=t._v,i=L(t);if(i&&(e=_((function(){A?j.emit("unhandledRejection",o,t):(n=c.onunhandledrejection)?n({promise:t,reason:o}):(r=c.console)&&r.error&&r.error("Unhandled promise rejection",o)})),t._h=A||L(t)?2:1),t._a=void 0,i&&e.e)throw e.v}))},L=function(t){return 1!==t._h&&0===(t._a||t._c).length},N=function(t){b.call(c,(function(){var e;A?j.emit("rejectionHandled",t):(e=c.onrejectionhandled)&&e({promise:t,reason:t._v})}))},F=function(t){var e=this;e._d||(e._d=!0,(e=e._w||e)._v=t,e._s=2,e._a||(e._a=e._c.slice()),I(e,!0))},D=function(t){var e,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===t)throw O("Promise can't be resolved itself");(e=C(t))?g((function(){var r={_w:n,_d:!1};try{e.call(t,s(D,r,1),s(F,r,1))}catch(t){F.call(r,t)}})):(n._v=t,n._s=1,I(n,!1))}catch(t){F.call({_w:n,_d:!1},t)}}};R||(P=function(t){h(this,P,"Promise","_h"),d(t),r.call(this);try{t(s(D,this,1),s(F,this,1))}catch(t){F.call(this,t)}},(r=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=n(295)(P.prototype,{then:function(t,e){var n=T(y(this,P));return n.ok="function"!=typeof t||t,n.fail="function"==typeof e&&e,n.domain=A?j.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&I(this,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new r;this.promise=t,this.resolve=s(D,t,1),this.reject=s(F,t,1)},m.f=T=function(t){return t===P||t===u?new i(t):o(t)}),l(l.G+l.W+l.F*!R,{Promise:P}),n(62)(P,"Promise"),n(296)("Promise"),u=n(10).Promise,l(l.S+l.F*!R,"Promise",{reject:function(t){var e=T(this);return(0,e.reject)(t),e.promise}}),l(l.S+l.F*(a||!R),"Promise",{resolve:function(t){return w(a&&this===u?P:this,t)}}),l(l.S+l.F*!(R&&n(136)((function(t){P.all(t).catch(k)}))),"Promise",{all:function(t){var e=this,n=T(e),r=n.resolve,o=n.reject,i=_((function(){var n=[],i=0,u=1;v(t,!1,(function(t){var a=i++,c=!1;n.push(void 0),u++,e.resolve(t).then((function(t){c||(c=!0,n[a]=t,--u||r(n))}),o)})),--u||r(n)}));return i.e&&o(i.v),n.promise},race:function(t){var e=this,n=T(e),r=n.reject,o=_((function(){v(t,!1,(function(t){e.resolve(t).then(n.resolve,r)}))}));return o.e&&r(o.v),n.promise}})},function(t,e){t.exports=function(t,e,n,r){if(!(t instanceof e)||void 0!==r&&r in t)throw TypeError(n+": incorrect invocation!");return t}},function(t,e,n){var r=n(38),o=n(134),i=n(135),u=n(17),a=n(82),c=n(109),s={},f={};(e=t.exports=function(t,e,n,l,p){var d,h,v,y,b=p?function(){return t}:c(t),g=r(n,l,e?2:1),m=0;if("function"!=typeof b)throw TypeError(t+" is not iterable!");if(i(b)){for(d=a(t.length);d>m;m++)if((y=e?g(u(h=t[m])[0],h[1]):g(t[m]))===s||y===f)return y}else for(v=b.call(t);!(h=v.next()).done;)if((y=o(v,g,h.value,e))===s||y===f)return y}).BREAK=s,e.RETURN=f},function(t,e){t.exports=function(t,e,n){var r=void 0===n;switch(e.length){case 0:return r?t():t.call(n);case 1:return r?t(e[0]):t.call(n,e[0]);case 2:return r?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return r?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return r?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},function(t,e,n){var r=n(9),o=n(146).set,i=r.MutationObserver||r.WebKitMutationObserver,u=r.process,a=r.Promise,c="process"==n(48)(u);t.exports=function(){var t,e,n,s=function(){var r,o;for(c&&(r=u.domain)&&r.exit();t;){o=t.fn,t=t.next;try{o()}catch(r){throw t?n():e=void 0,r}}e=void 0,r&&r.enter()};if(c)n=function(){u.nextTick(s)};else if(!i||r.navigator&&r.navigator.standalone)if(a&&a.resolve){var f=a.resolve(void 0);n=function(){f.then(s)}}else n=function(){o.call(r,s)};else{var l=!0,p=document.createTextNode("");new i(s).observe(p,{characterData:!0}),n=function(){p.data=l=!l}}return function(r){var o={fn:r,next:void 0};e&&(e.next=o),t||(t=o,n()),e=o}}},function(t,e,n){var r=n(9).navigator;t.exports=r&&r.userAgent||""},function(t,e,n){var r=n(26);t.exports=function(t,e,n){for(var o in e)n&&t[o]?t[o]=e[o]:r(t,o,e[o]);return t}},function(t,e,n){"use strict";var r=n(9),o=n(10),i=n(21),u=n(19),a=n(12)("species");t.exports=function(t){var e="function"==typeof o[t]?o[t]:r[t];u&&e&&!e[a]&&i.f(e,a,{configurable:!0,get:function(){return this}})}},function(t,e,n){"use strict";var r=n(18),o=n(10),i=n(9),u=n(145),a=n(148);r(r.P+r.R,"Promise",{finally:function(t){var e=u(this,o.Promise||i.Promise),n="function"==typeof t;return this.then(n?function(n){return a(e,t()).then((function(){return n}))}:t,n?function(n){return a(e,t()).then((function(){throw n}))}:t)}})},function(t,e,n){"use strict";var r=n(18),o=n(93),i=n(147);r(r.S,"Promise",{try:function(t){var e=o.f(this),n=i(t);return(n.e?e.reject:e.resolve)(n.v),e.promise}})},function(t,e,n){var r=n(168),o=n(102).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},,function(t,e,n){"use strict";t.exports=n(394)},function(t,e,n){"use strict";var r=n(15).compose;e.__esModule=!0,e.composeWithDevTools=function(){if(0!==arguments.length)return"object"==typeof arguments[0]?r:r.apply(null,arguments)},e.devToolsEnhancer=function(){return function(t){return t}}},,function(t,e,n){var r=n(92),o=n(51),i=n(45),u=n(112),a=n(31),c=n(166),s=Object.getOwnPropertyDescriptor;e.f=n(19)?s:function(t,e){if(t=i(t),e=u(e,!0),c)try{return s(t,e)}catch(t){}if(a(t,e))return o(!r.f.call(t,e),t[e])}},function(t,e,n){"use strict";n.r(e);var r={};n.r(r),n.d(r,"wpRequest",(function(){return qt.default})),n.d(r,"request",(function(){return qt}));n(373);var o=n(15),i=n(302),u=n(100);function a(t){return function(e){var n=e.dispatch,r=e.getState;return function(e){return function(o){return"function"==typeof o?o(n,r,t):e(o)}}}}var c=a();c.withExtraArgument=a;var s=c,f=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},p=function(t){return"@@redux-saga/"+t},d=p("TASK"),h=p("HELPER"),v=p("MATCH"),y=p("CANCEL_PROMISE"),b=p("SAGA_ACTION"),g=p("SELF_CANCELLATION"),m=function(t){return function(){return t}},_=m(!0),x=function(){},w=function(t){return t};function O(t,e,n){if(!e(t))throw N("error","uncaught at check",n),new Error(n)}var j=Object.prototype.hasOwnProperty;function E(t,e){return S.notUndef(t)&&j.call(t,e)}var S={undef:function(t){return null==t},notUndef:function(t){return null!=t},func:function(t){return"function"==typeof t},number:function(t){return"number"==typeof t},string:function(t){return"string"==typeof t},array:Array.isArray,object:function(t){return t&&!S.array(t)&&"object"===(void 0===t?"undefined":l(t))},promise:function(t){return t&&S.func(t.then)},iterator:function(t){return t&&S.func(t.next)&&S.func(t.throw)},iterable:function(t){return t&&S.func(Symbol)?S.func(t[Symbol.iterator]):S.array(t)},task:function(t){return t&&t[d]},observable:function(t){return t&&S.func(t.subscribe)},buffer:function(t){return t&&S.func(t.isEmpty)&&S.func(t.take)&&S.func(t.put)},pattern:function(t){return t&&(S.string(t)||"symbol"===(void 0===t?"undefined":l(t))||S.func(t)||S.array(t))},channel:function(t){return t&&S.func(t.take)&&S.func(t.close)},helper:function(t){return t&&t[h]},stringableFunc:function(t){return S.func(t)&&E(t,"toString")}},P={assign:function(t,e){for(var n in e)E(e,n)&&(t[n]=e[n])}};function A(t,e){var n=t.indexOf(e);n>=0&&t.splice(n,1)}var k={from:function(t){var e=Array(t.length);for(var n in t)E(t,n)&&(e[n]=t[n]);return e}};function T(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=f({},t),n=new Promise((function(t,n){e.resolve=t,e.reject=n}));return e.promise=n,e}function R(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return function(){return++t}}var C=R(),I=function(t){throw t},M=function(t){return{value:t,done:!0}};function L(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:I,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=arguments[3],o={name:n,next:t,throw:e,return:M};return r&&(o[h]=!0),"undefined"!=typeof Symbol&&(o[Symbol.iterator]=function(){return o}),o}function N(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";"undefined"==typeof window?console.log("redux-saga "+t+": "+e+"\n"+(n&&n.stack||n)):console[t](e,n)}function F(t,e){return function(){return t.apply(void 0,arguments)}}var D=function(t,e){return t+" has been deprecated in favor of "+e+", please update your code"},B=function(t){return new Error("\n redux-saga: Error checking hooks detected an inconsistent state. This is likely a bug\n in redux-saga code and not yours. Thanks for reporting this in the project's github repo.\n Error: "+t+"\n")},W=function(t,e){return(t?t+".":"")+"setContext(props): argument "+e+" is not a plain object"},U=function(t){return function(e){return t(Object.defineProperty(e,b,{value:!0}))}},q="Channel's Buffer overflow!",z=1,G=3,$=4,V={isEmpty:_,put:x,take:x};function H(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,e=arguments[1],n=new Array(t),r=0,o=0,i=0,u=function(e){n[o]=e,o=(o+1)%t,r++},a=function(){if(0!=r){var e=n[i];return n[i]=null,r--,i=(i+1)%t,e}},c=function(){for(var t=[];r;)t.push(a());return t};return{isEmpty:function(){return 0==r},put:function(a){if(r<t)u(a);else{var s=void 0;switch(e){case z:throw new Error(q);case G:n[o]=a,i=o=(o+1)%t;break;case $:s=2*t,n=c(),r=n.length,o=n.length,i=0,n.length=s,t=s,u(a)}}},take:a,flush:c}}var K={none:function(){return V},fixed:function(t){return H(t,z)},dropping:function(t){return H(t,2)},sliding:function(t){return H(t,G)},expanding:function(t){return H(t,$)}},Y=[],J=0;function Q(t){try{Z(),t()}finally{tt()}}function X(t){Y.push(t),J||(Z(),et())}function Z(){J++}function tt(){J--}function et(){tt();for(var t=void 0;!J&&void 0!==(t=Y.shift());)Q(t)}var nt=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},rt={type:"@@redux-saga/CHANNEL_END"},ot=function(t){return t&&"@@redux-saga/CHANNEL_END"===t.type};var it="invalid buffer passed to channel factory function",ut="Saga was provided with an undefined action";function at(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.none(),n=arguments[2];arguments.length>2&&O(n,S.func,"Invalid match function passed to eventChannel");var r=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:K.fixed(),e=!1,n=[];function r(){if(e&&n.length)throw B("Cannot have a closed channel with pending takers");if(n.length&&!t.isEmpty())throw B("Cannot have pending takers with non empty buffer")}return O(t,S.buffer,it),{take:function(o){r(),O(o,S.func,"channel.take's callback must be a function"),e&&t.isEmpty()?o(rt):t.isEmpty()?(n.push(o),o.cancel=function(){return A(n,o)}):o(t.take())},put:function(o){if(r(),O(o,S.notUndef,ut),!e){if(!n.length)return t.put(o);for(var i=0;i<n.length;i++){var u=n[i];if(!u[v]||u[v](o))return n.splice(i,1),u(o)}}},flush:function(n){r(),O(n,S.func,"channel.flush' callback must be a function"),e&&t.isEmpty()?n(rt):n(t.flush())},close:function(){if(r(),!e&&(e=!0,n.length)){var t=n;n=[];for(var o=0,i=t.length;o<i;o++)t[o](rt)}},get __takers__(){return n},get __closed__(){return e}}}(e),o=function(){r.__closed__||(i&&i(),r.close())},i=t((function(t){ot(t)?o():n&&!n(t)||r.put(t)}));if(r.__closed__&&i(),!S.func(i))throw new Error("in eventChannel: subscribe should return a function to unsubscribe");return{take:r.take,flush:r.flush,close:o}}var ct=p("IO"),st="TAKE",ft="PUT",lt="ALL",pt="RACE",dt="CALL",ht="CPS",vt="FORK",yt="JOIN",bt="CANCEL",gt="SELECT",mt="ACTION_CHANNEL",_t="CANCELLED",xt="FLUSH",wt="GET_CONTEXT",Ot="SET_CONTEXT",jt=function(t,e){var n;return(n={})[ct]=!0,n[t]=e,n};function Et(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"*";if(arguments.length&&O(arguments[0],S.notUndef,"take(patternOrChannel): patternOrChannel is undefined"),S.pattern(t))return jt(st,{pattern:t});if(S.channel(t))return jt(st,{channel:t});throw new Error("take(patternOrChannel): argument "+String(t)+" is not valid channel or a valid pattern")}Et.maybe=function(){var t=Et.apply(void 0,arguments);return t[st].maybe=!0,t};Et.maybe;function St(t,e){return arguments.length>1?(O(t,S.notUndef,"put(channel, action): argument channel is undefined"),O(t,S.channel,"put(channel, action): argument "+t+" is not a valid channel"),O(e,S.notUndef,"put(channel, action): argument action is undefined")):(O(t,S.notUndef,"put(action): argument action is undefined"),e=t,t=null),jt(ft,{channel:t,action:e})}St.resolve=function(){var t=St.apply(void 0,arguments);return t[ft].resolve=!0,t},St.sync=F(St.resolve);var Pt=function(t){return function(e){return e&&e[ct]&&e[t]}},At={take:Pt(st),put:Pt(ft),all:Pt(lt),race:Pt(pt),call:Pt(dt),cps:Pt(ht),fork:Pt(vt),join:Pt(yt),cancel:Pt(bt),select:Pt(gt),actionChannel:Pt(mt),cancelled:Pt(_t),flush:Pt(xt),getContext:Pt(wt),setContext:Pt(Ot)},kt=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},Tt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};var Rt="proc first argument (Saga function result) must be an iterator",Ct={toString:function(){return"@@redux-saga/CHANNEL_END"}},It={toString:function(){return"@@redux-saga/TASK_CANCEL"}},Mt={wildcard:function(){return _},default:function(t){return"symbol"===(void 0===t?"undefined":Tt(t))?function(e){return e.type===t}:function(e){return e.type===String(t)}},array:function(t){return function(e){return t.some((function(t){return Lt(t)(e)}))}},predicate:function(t){return function(e){return t(e)}}};function Lt(t){return("*"===t?Mt.wildcard:S.array(t)?Mt.array:S.stringableFunc(t)?Mt.default:S.func(t)?Mt.predicate:Mt.default)(t)}var Nt=function(t){return{fn:t}};function Ft(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){return x},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:x,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:x,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},u=arguments.length>6&&void 0!==arguments[6]?arguments[6]:0,a=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"anonymous",c=arguments[8];O(t,S.iterator,Rt);var s=F($,D("[...effects]","all([...effects])")),f=i.sagaMonitor,l=i.logger,p=i.onError,h=l||N,m=function(t){var e=t.sagaStack;!e&&t.stack&&(e=-1!==t.stack.split("\n")[0].indexOf(t.message)?t.stack:"Error: "+t.message+"\n"+t.stack),h("error","uncaught at "+a,e||t.message||t)},_=function(t){var e=at((function(e){return t((function(t){t[b]?e(t):X((function(){return e(t)}))}))}));return nt({},e,{take:function(t,n){arguments.length>1&&(O(n,S.func,"channel.take's matcher argument must be a function"),t[v]=n),e.take(t)}})}(e),w=Object.create(o);M.cancel=x;var j=function(t,e,n,r){var o,i;return n._deferredEnd=null,(o={})[d]=!0,o.id=t,o.name=e,"done",(i={}).done=i.done||{},i.done.get=function(){if(n._deferredEnd)return n._deferredEnd.promise;var t=T();return n._deferredEnd=t,n._isRunning||(n._error?t.reject(n._error):t.resolve(n._result)),t.promise},o.cont=r,o.joiners=[],o.cancel=I,o.isRunning=function(){return n._isRunning},o.isCancelled=function(){return n._isCancelled},o.isAborted=function(){return n._isAborted},o.result=function(){return n._result},o.error=function(){return n._error},o.setContext=function(t){O(t,S.object,W("task",t)),P.assign(w,t)},function(t,e){for(var n in e){var r=e[n];r.configurable=r.enumerable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,n,r)}}(o,i),o}(u,a,t,c),E={name:a,cancel:function(){E.isRunning&&!E.isCancelled&&(E.isCancelled=!0,M(It))},isRunning:!0},R=function(t,e,n){var r=[],o=void 0,i=!1;function u(t){c(),n(t,!0)}function a(t){r.push(t),t.cont=function(a,c){i||(A(r,t),t.cont=x,c?u(a):(t===e&&(o=a),r.length||(i=!0,n(o))))}}function c(){i||(i=!0,r.forEach((function(t){t.cont=x,t.cancel()})),r=[])}return a(e),{addTask:a,cancelAll:c,abort:u,getTasks:function(){return r},taskNames:function(){return r.map((function(t){return t.name}))}}}(0,E,B);function I(){t._isRunning&&!t._isCancelled&&(t._isCancelled=!0,R.cancelAll(),B(It))}return c&&(c.cancel=I),t._isRunning=!0,M(),j;function M(e,n){if(!E.isRunning)throw new Error("Trying to resume an already finished generator");try{var r=void 0;n?r=t.throw(e):e===It?(E.isCancelled=!0,M.cancel(),r=S.func(t.return)?t.return(It):{done:!0,value:It}):r=e===Ct?S.func(t.return)?t.return():{done:!0}:t.next(e),r.done?(E.isMainRunning=!1,E.cont&&E.cont(r.value)):U(r.value,u,"",M)}catch(t){E.isCancelled&&m(t),E.isMainRunning=!1,E.cont(t,!0)}}function B(e,n){t._isRunning=!1,_.close(),n?(e instanceof Error&&Object.defineProperty(e,"sagaStack",{value:"at "+a+" \n "+(e.sagaStack||e.stack),configurable:!0}),j.cont||(e instanceof Error&&p?p(e):m(e)),t._error=e,t._isAborted=!0,t._deferredEnd&&t._deferredEnd.reject(e)):(t._result=e,t._deferredEnd&&t._deferredEnd.resolve(e)),j.cont&&j.cont(e,n),j.joiners.forEach((function(t){return t.cb(e,n)})),j.joiners=null}function U(t,o){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",u=arguments[3],c=C();f&&f.effectTriggered({effectId:c,parentEffectId:o,label:i,effect:t});var l=void 0;function p(t,e){l||(l=!0,u.cancel=x,f&&(e?f.effectRejected(c,t):f.effectResolved(c,t)),u(t,e))}p.cancel=x,u.cancel=function(){if(!l){l=!0;try{p.cancel()}catch(t){m(t)}p.cancel=x,f&&f.effectCancelled(c)}};var d=void 0;return(S.promise(t)?q(t,p):S.helper(t)?G(Nt(t),c,p):S.iterator(t)?z(t,c,a,p):S.array(t)?s(t,c,p):(d=At.take(t))?function(t,e){var n=t.channel,r=t.pattern,o=t.maybe;n=n||_;var i=function(t){return t instanceof Error?e(t,!0):ot(t)&&!o?e(Ct):e(t)};try{n.take(i,Lt(r))}catch(t){return e(t,!0)}e.cancel=i.cancel}(d,p):(d=At.put(t))?function(t,e){var r=t.channel,o=t.action,i=t.resolve;X((function(){var t=void 0;try{t=(r?r.put:n)(o)}catch(t){if(r||i)return e(t,!0);m(t)}if(!i||!S.promise(t))return e(t);q(t,e)}))}(d,p):(d=At.all(t))?$(d,c,p):(d=At.race(t))?function(t,e,n){var r=void 0,o=Object.keys(t),i={};o.forEach((function(e){var u=function(i,u){if(!r)if(u)n.cancel(),n(i,!0);else if(!ot(i)&&i!==Ct&&i!==It){var a;n.cancel(),r=!0;var c=((a={})[e]=i,a);n(S.array(t)?[].slice.call(kt({},c,{length:o.length})):c)}};u.cancel=x,i[e]=u})),n.cancel=function(){r||(r=!0,o.forEach((function(t){return i[t].cancel()})))},o.forEach((function(n){r||U(t[n],e,n,i[n])}))}(d,c,p):(d=At.call(t))?function(t,e,n){var r=t.context,o=t.fn,i=t.args,u=void 0;try{u=o.apply(r,i)}catch(t){return n(t,!0)}return S.promise(u)?q(u,n):S.iterator(u)?z(u,e,o.name,n):n(u)}(d,c,p):(d=At.cps(t))?function(t,e){var n=t.context,r=t.fn,o=t.args;try{var i=function(t,n){return S.undef(t)?e(n):e(t,!0)};r.apply(n,o.concat(i)),i.cancel&&(e.cancel=function(){return i.cancel()})}catch(t){return e(t,!0)}}(d,p):(d=At.fork(t))?G(d,c,p):(d=At.join(t))?function(t,e){if(t.isRunning()){var n={task:j,cb:e};e.cancel=function(){return A(t.joiners,n)},t.joiners.push(n)}else t.isAborted()?e(t.error(),!0):e(t.result())}(d,p):(d=At.cancel(t))?function(t,e){t===g&&(t=j);t.isRunning()&&t.cancel();e()}(d,p):(d=At.select(t))?function(t,e){var n=t.selector,o=t.args;try{var i=n.apply(void 0,[r()].concat(o));e(i)}catch(t){e(t,!0)}}(d,p):(d=At.actionChannel(t))?function(t,n){var r=t.pattern,o=t.buffer,i=Lt(r);i.pattern=r,n(at(e,o||K.fixed(),i))}(d,p):(d=At.flush(t))?function(t,e){t.flush(e)}(d,p):(d=At.cancelled(t))?function(t,e){e(!!E.isCancelled)}(0,p):(d=At.getContext(t))?function(t,e){e(w[t])}(d,p):(d=At.setContext(t))?function(t,e){P.assign(w,t),e()}(d,p):p(t))}function q(t,e){var n=t[y];S.func(n)?e.cancel=n:S.func(t.abort)&&(e.cancel=function(){return t.abort()}),t.then(e,(function(t){return e(t,!0)}))}function z(t,o,u,a){Ft(t,e,n,r,w,i,o,u,a)}function G(t,o,u){var a=t.context,c=t.fn,s=t.args,f=t.detached,l=function(t){var e=t.context,n=t.fn,r=t.args;if(S.iterator(n))return n;var o,i,u=void 0,a=void 0;try{u=n.apply(e,r)}catch(t){a=t}return S.iterator(u)?u:L(a?function(){throw a}:(o=void 0,i={done:!1,value:u},function(t){return o?{done:!0,value:t}:(o=!0,i)}))}({context:a,fn:c,args:s});try{Z();var p=Ft(l,e,n,r,w,i,o,c.name,f?null:x);f?u(p):l._isRunning?(R.addTask(p),u(p)):l._error?R.abort(l._error):u(p)}finally{et()}}function $(t,e,n){var r=Object.keys(t);if(!r.length)return n(S.array(t)?[]:{});var o=0,i=void 0,u={},a={};r.forEach((function(e){var c=function(a,c){i||(c||ot(a)||a===Ct||a===It?(n.cancel(),n(a,c)):(u[e]=a,++o===r.length&&(i=!0,n(S.array(t)?k.from(kt({},u,{length:r.length})):u))))};c.cancel=x,a[e]=c})),n.cancel=function(){i||(i=!0,r.forEach((function(t){return a[t].cancel()})))},r.forEach((function(n){return U(t[n],e,n,a[n])}))}}var Dt="runSaga(storeInterface, saga, ...args): saga argument must be a Generator function!";function Bt(t,e){for(var n=arguments.length,r=Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];var i=void 0;S.iterator(t)?(i=t,t=e):(O(e,S.func,Dt),O(i=e.apply(void 0,r),S.iterator,Dt));var u=t,a=u.subscribe,c=u.dispatch,s=u.getState,f=u.context,l=u.sagaMonitor,p=u.logger,d=u.onError,h=C();l&&(l.effectTriggered=l.effectTriggered||x,l.effectResolved=l.effectResolved||x,l.effectRejected=l.effectRejected||x,l.effectCancelled=l.effectCancelled||x,l.actionDispatched=l.actionDispatched||x,l.effectTriggered({effectId:h,root:!0,parentEffectId:0,effect:{root:!0,saga:e,args:r}}));var v=Ft(i,a,U(c),s,f,{sagaMonitor:l,logger:p,onError:d},h,e.name);return l&&l.effectResolved(h,v),v}var Wt=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.context,n=void 0===e?{}:e,r=function(t,e){var n={};for(var r in t)e.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}(t,["context"]),o=r.sagaMonitor,i=r.logger,u=r.onError;if(S.func(r))throw new Error("Saga middleware no longer accept Generator functions. Use sagaMiddleware.run instead");if(i&&!S.func(i))throw new Error("`options.logger` passed to the Saga middleware is not a function!");if(u&&!S.func(u))throw new Error("`options.onError` passed to the Saga middleware is not a function!");if(r.emitter&&!S.func(r.emitter))throw new Error("`options.emitter` passed to the Saga middleware is not a function!");function a(t){var e,c=t.getState,s=t.dispatch,f=(e=[],{subscribe:function(t){return e.push(t),function(){return A(e,t)}},emit:function(t){for(var n=e.slice(),r=0,o=n.length;r<o;r++)n[r](t)}});return f.emit=(r.emitter||w)(f.emit),a.run=Bt.bind(null,{context:n,subscribe:f.subscribe,dispatch:s,getState:c,sagaMonitor:o,logger:i,onError:u}),function(t){return function(e){o&&o.actionDispatched&&o.actionDispatched(e);var n=t(e);return f.emit(e),n}}}return a.run=function(){throw new Error("Before running a Saga, you must mount the Saga middleware on the Store using applyMiddleware")},a.setContext=function(t){O(t,S.object,W("sagaMiddleware",t)),P.assign(n,t)},a},Ut=n(150),qt=n(33),zt=Wt();n.d(e,"store",(function(){return Gt})),n.d(e,"middlewares",(function(){return r}));var Gt=function(){if(window.__tribe_common_store__)return window.__tribe_common_store__;var t=[s,zt,qt.default],e=Object(i.composeWithDevTools)({name:"tribe/common"}),n=Object(o.createStore)(Object(Ut.default)({}),e(o.applyMiddleware.apply(void 0,t)));return Object(u.a)(Ut.default,n),n.run=zt.run,window.__tribe_common_store__=n,n}()},function(t,e,n){var r=n(77),o=n(107),i=n(412),u=n(6);t.exports=function(t,e){return(u(t)?r:i)(t,o(e,3))}},function(t,e,n){var r=n(413)(n(414));t.exports=r},,function(t,e,n){var r;window,t.exports=(r=n(2),function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:r})},n.r=function(t){Object.defineProperty(t,"__esModule",{value:!0})},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="/",n(n.s=12)}([function(t,e){t.exports=r},function(t,e,n){t.exports=n(11)()},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),o=n(0),i=a(n(1)),u=a(n(7));function a(t){return t&&t.__esModule?t:{default:t}}var c=function(t){function e(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e);var n=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t));return n.scrollArea={},n.handleScroll=n.handleScroll.bind(n),n.handleScrollById=n.handleScrollById.bind(n),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,o.Component),r(e,[{key:"getChildContext",value:function(){var t=this;return{addScrollArea:function(e,n){t.scrollArea[n]=e},removeScrollArea:function(e,n){delete t.scrollArea[n]}}}},{key:"handleScroll",value:function(t,e){var n=this,r=Object.keys(this.scrollArea);0===r.length?(0,u.default)(t,e):r.forEach((function(r){n.scrollArea[r].scrollLeft=t,n.scrollArea[r].scrollTop=e}))}},{key:"handleScrollById",value:function(t,e,n){var r=this.scrollArea[t];r&&(r.scrollLeft=e,r.scrollTop=n)}},{key:"render",value:function(){return this.props.children&&this.props.children(this.handleScroll,this.handleScrollById)}}]),e}();c.childContextTypes={addScrollArea:i.default.func.isRequired,removeScrollArea:i.default.func.isRequired},c.defaultProps={children:function(){}},c.propTypes={children:i.default.func.isRequired},e.default=c},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){var e=t.displayName,n=t.name;return e||n?e||n:"string"==typeof t&&t.length>0?t:"Unknown"}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},o=a(n(0)),i=a(n(3)),u=a(n(2));function a(t){return t&&t.__esModule?t:{default:t}}e.default=function(t){var e=function(e){return o.default.createElement(u.default,null,(function(n,i){return o.default.createElement(t,r({},e,{scroll:n,scrollById:i}))}))};return e.displayName="WithScrollToHOC("+(0,i.default)(t)+")",e}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r,o=(r=0,function(){return"scrollto-"+r++});e.default=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},o=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),i=n(0),u=s(i),a=s(n(1)),c=s(n(5));function s(t){return t&&t.__esModule?t:{default:t}}var f=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,i.Component),o(e,[{key:"componentDidMount",value:function(){this.id=this.node.id||(0,c.default)(),this.context.addScrollArea(this.node,this.id)}},{key:"componentWillUnmount",value:function(){this.context.removeScrollArea(this.node,this.id)}},{key:"render",value:function(){var t=this,e=this.props,n=e.children,o=function(t,e){var n={};for(var r in t)e.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}(e,["children"]);return u.default.createElement("div",r({},o,{ref:function(e){return t.node=e}}),n)}}]),e}();f.contextTypes={addScrollArea:a.default.func.isRequired,removeScrollArea:a.default.func.isRequired},e.default=f},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;window.scroll(t,e)}},function(t,e,n){"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(t,e,n){"use strict";t.exports=function(t,e,n,r,o,i,u,a){if(!t){var c;if(void 0===e)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var s=[n,r,o,i,u,a],f=0;(c=new Error(e.replace(/%s/g,(function(){return s[f++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},function(t,e,n){"use strict";function r(t){return function(){return t}}var o=function(){};o.thatReturns=r,o.thatReturnsFalse=r(!1),o.thatReturnsTrue=r(!0),o.thatReturnsNull=r(null),o.thatReturnsThis=function(){return this},o.thatReturnsArgument=function(t){return t},t.exports=o},function(t,e,n){"use strict";var r=n(10),o=n(9),i=n(8);t.exports=function(){function t(t,e,n,r,u,a){a!==i&&o(!1,"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types")}function e(){return t}t.isRequired=t;var n={array:t,bool:t,func:t,number:t,object:t,string:t,symbol:t,any:t,arrayOf:e,element:t,instanceOf:e,node:t,objectOf:e,oneOf:e,oneOfType:e,shape:e,exact:e};return n.checkPropTypes=r,n.PropTypes=n,n}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(2);Object.defineProperty(e,"ScrollTo",{enumerable:!0,get:function(){return u(r).default}});var o=n(6);Object.defineProperty(e,"ScrollArea",{enumerable:!0,get:function(){return u(o).default}});var i=n(4);function u(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"ScrollToHOC",{enumerable:!0,get:function(){return u(i).default}})}]))},function(t,e,n){"use strict";var r=n(311);function o(){}function i(){}i.resetWarningCache=o,t.exports=function(){function t(t,e,n,o,i,u){if(u!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function e(){return t}t.isRequired=t;var n={array:t,bool:t,func:t,number:t,object:t,string:t,symbol:t,any:t,arrayOf:e,element:t,elementType:t,instanceOf:e,node:t,objectOf:e,oneOf:e,oneOfType:e,shape:e,exact:e,checkPropTypes:i,resetWarningCache:o};return n.PropTypes=n,n}},function(t,e,n){"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(t,e){t.exports=function(t){if(!t.webpackPolyfill){var e=Object.create(t);e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),Object.defineProperty(e,"exports",{enumerable:!0}),e.webpackPolyfill=1}return e}},function(t,e,n){var r=n(151),o=n(174),i=n(314),u=n(152),a=n(315),c=n(103),s=200;t.exports=function(t,e,n){var f=-1,l=o,p=t.length,d=!0,h=[],v=h;if(n)d=!1,l=i;else if(p>=s){var y=e?null:a(t);if(y)return c(y);d=!1,l=u,v=new r}else v=e?[]:h;t:for(;++f<p;){var b=t[f],g=e?e(b):b;if(b=n||0!==b?b:0,d&&g==g){for(var m=v.length;m--;)if(v[m]===g)continue t;e&&v.push(g),h.push(b)}else l(v,g,n)||(v!==h&&v.push(g),h.push(b))}return h}},function(t,e){t.exports=function(t,e,n){for(var r=-1,o=null==t?0:t.length;++r<o;)if(n(e,t[r]))return!0;return!1}},function(t,e,n){var r=n(153),o=n(8),i=n(103),u=r&&1/i(new r([,-0]))[1]==1/0?function(t){return new r(t)}:o;t.exports=u},function(t,e,n){var r=n(317),o=n(319);t.exports=function(t,e,n){return r(o,t,e,n)}},function(t,e,n){var r=n(318),o=n(176),i=Array.prototype.push;function u(t,e){return 2==e?function(e,n){return t(e,n)}:function(e){return t(e)}}function a(t){for(var e=t?t.length:0,n=Array(e);e--;)n[e]=t[e];return n}function c(t,e){return function(){var n=arguments.length;if(n){for(var r=Array(n);n--;)r[n]=arguments[n];var o=r[0]=e.apply(void 0,r);return t.apply(void 0,r),o}}}t.exports=function t(e,n,s,f){var l="function"==typeof n,p=n===Object(n);if(p&&(f=s,s=n,n=void 0),null==s)throw new TypeError;f||(f={});var d={cap:!("cap"in f)||f.cap,curry:!("curry"in f)||f.curry,fixed:!("fixed"in f)||f.fixed,immutable:!("immutable"in f)||f.immutable,rearg:!("rearg"in f)||f.rearg},h=l?s:o,v="curry"in f&&f.curry,y="fixed"in f&&f.fixed,b="rearg"in f&&f.rearg,g=l?s.runInContext():void 0,m=l?s:{ary:e.ary,assign:e.assign,clone:e.clone,curry:e.curry,forEach:e.forEach,isArray:e.isArray,isError:e.isError,isFunction:e.isFunction,isWeakMap:e.isWeakMap,iteratee:e.iteratee,keys:e.keys,rearg:e.rearg,toInteger:e.toInteger,toPath:e.toPath},_=m.ary,x=m.assign,w=m.clone,O=m.curry,j=m.forEach,E=m.isArray,S=m.isError,P=m.isFunction,A=m.isWeakMap,k=m.keys,T=m.rearg,R=m.toInteger,C=m.toPath,I=k(r.aryMethod),M={castArray:function(t){return function(){var e=arguments[0];return E(e)?t(a(e)):t.apply(void 0,arguments)}},iteratee:function(t){return function(){var e=arguments[0],n=arguments[1],r=t(e,n),o=r.length;return d.cap&&"number"==typeof n?(n=n>2?n-2:1,o&&o<=n?r:u(r,n)):r}},mixin:function(t){return function(e){var n=this;if(!P(n))return t(n,Object(e));var r=[];return j(k(e),(function(t){P(e[t])&&r.push([t,n.prototype[t]])})),t(n,Object(e)),j(r,(function(t){var e=t[1];P(e)?n.prototype[t[0]]=e:delete n.prototype[t[0]]})),n}},nthArg:function(t){return function(e){var n=e<0?1:R(e)+1;return O(t(e),n)}},rearg:function(t){return function(e,n){var r=n?n.length:0;return O(t(e,n),r)}},runInContext:function(n){return function(r){return t(e,n(r),f)}}};function L(t,e){if(d.cap){var n=r.iterateeRearg[t];if(n)return function(t,e){return W(t,(function(t){var n=e.length;return function(t,e){return 2==e?function(e,n){return t.apply(void 0,arguments)}:function(e){return t.apply(void 0,arguments)}}(T(u(t,n),e),n)}))}(e,n);var o=!l&&r.iterateeAry[t];if(o)return function(t,e){return W(t,(function(t){return"function"==typeof t?u(t,e):t}))}(e,o)}return e}function N(t,e,n){if(d.fixed&&(y||!r.skipFixed[t])){var o=r.methodSpread[t],u=o&&o.start;return void 0===u?_(e,n):function(t,e){return function(){for(var n=arguments.length,r=n-1,o=Array(n);n--;)o[n]=arguments[n];var u=o[e],a=o.slice(0,e);return u&&i.apply(a,u),e!=r&&i.apply(a,o.slice(e+1)),t.apply(this,a)}}(e,u)}return e}function F(t,e,n){return d.rearg&&n>1&&(b||!r.skipRearg[t])?T(e,r.methodRearg[t]||r.aryRearg[n]):e}function D(t,e){for(var n=-1,r=(e=C(e)).length,o=r-1,i=w(Object(t)),u=i;null!=u&&++n<r;){var a=e[n],c=u[a];null==c||P(c)||S(c)||A(c)||(u[a]=w(n==o?c:Object(c))),u=u[a]}return i}function B(e,n){var o=r.aliasToReal[e]||e,i=r.remap[o]||o,u=f;return function(e){var r=l?g:m,a=l?g[i]:n,c=x(x({},u),e);return t(r,o,a,c)}}function W(t,e){return function(){var n=arguments.length;if(!n)return t();for(var r=Array(n);n--;)r[n]=arguments[n];var o=d.rearg?0:n-1;return r[o]=e(r[o]),t.apply(void 0,r)}}function U(t,e,n){var o,i=r.aliasToReal[t]||t,u=e,s=M[i];return s?u=s(e):d.immutable&&(r.mutate.array[i]?u=c(e,a):r.mutate.object[i]?u=c(e,function(t){return function(e){return t({},e)}}(e)):r.mutate.set[i]&&(u=c(e,D))),j(I,(function(t){return j(r.aryMethod[t],(function(e){if(i==e){var n=r.methodSpread[i],a=n&&n.afterRearg;return o=a?N(i,F(i,u,t),t):F(i,N(i,u,t),t),o=function(t,e,n){return v||d.curry&&n>1?O(e,n):e}(0,o=L(i,o),t),!1}})),!o})),o||(o=u),o==e&&(o=v?O(o,1):function(){return e.apply(this,arguments)}),o.convert=B(i,e),o.placeholder=e.placeholder=n,o}if(!p)return U(n,s,h);var q=s,z=[];return j(I,(function(t){j(r.aryMethod[t],(function(t){var e=q[r.remap[t]||t];e&&z.push([t,U(t,e,q)])}))})),j(k(q),(function(t){var e=q[t];if("function"==typeof e){for(var n=z.length;n--;)if(z[n][0]==t)return;e.convert=B(t,e),z.push([t,e])}})),j(z,(function(t){q[t[0]]=t[1]})),q.convert=function(t){return q.runInContext.convert(t)(void 0)},q.placeholder=q,j(k(q),(function(t){j(r.realToAlias[t]||[],(function(e){q[e]=q[t]}))})),q}},function(t,e){e.aliasToReal={each:"forEach",eachRight:"forEachRight",entries:"toPairs",entriesIn:"toPairsIn",extend:"assignIn",extendAll:"assignInAll",extendAllWith:"assignInAllWith",extendWith:"assignInWith",first:"head",conforms:"conformsTo",matches:"isMatch",property:"get",__:"placeholder",F:"stubFalse",T:"stubTrue",all:"every",allPass:"overEvery",always:"constant",any:"some",anyPass:"overSome",apply:"spread",assoc:"set",assocPath:"set",complement:"negate",compose:"flowRight",contains:"includes",dissoc:"unset",dissocPath:"unset",dropLast:"dropRight",dropLastWhile:"dropRightWhile",equals:"isEqual",identical:"eq",indexBy:"keyBy",init:"initial",invertObj:"invert",juxt:"over",omitAll:"omit",nAry:"ary",path:"get",pathEq:"matchesProperty",pathOr:"getOr",paths:"at",pickAll:"pick",pipe:"flow",pluck:"map",prop:"get",propEq:"matchesProperty",propOr:"getOr",props:"at",symmetricDifference:"xor",symmetricDifferenceBy:"xorBy",symmetricDifferenceWith:"xorWith",takeLast:"takeRight",takeLastWhile:"takeRightWhile",unapply:"rest",unnest:"flatten",useWith:"overArgs",where:"conformsTo",whereEq:"isMatch",zipObj:"zipObject"},e.aryMethod={1:["assignAll","assignInAll","attempt","castArray","ceil","create","curry","curryRight","defaultsAll","defaultsDeepAll","floor","flow","flowRight","fromPairs","invert","iteratee","memoize","method","mergeAll","methodOf","mixin","nthArg","over","overEvery","overSome","rest","reverse","round","runInContext","spread","template","trim","trimEnd","trimStart","uniqueId","words","zipAll"],2:["add","after","ary","assign","assignAllWith","assignIn","assignInAllWith","at","before","bind","bindAll","bindKey","chunk","cloneDeepWith","cloneWith","concat","conformsTo","countBy","curryN","curryRightN","debounce","defaults","defaultsDeep","defaultTo","delay","difference","divide","drop","dropRight","dropRightWhile","dropWhile","endsWith","eq","every","filter","find","findIndex","findKey","findLast","findLastIndex","findLastKey","flatMap","flatMapDeep","flattenDepth","forEach","forEachRight","forIn","forInRight","forOwn","forOwnRight","get","groupBy","gt","gte","has","hasIn","includes","indexOf","intersection","invertBy","invoke","invokeMap","isEqual","isMatch","join","keyBy","lastIndexOf","lt","lte","map","mapKeys","mapValues","matchesProperty","maxBy","meanBy","merge","mergeAllWith","minBy","multiply","nth","omit","omitBy","overArgs","pad","padEnd","padStart","parseInt","partial","partialRight","partition","pick","pickBy","propertyOf","pull","pullAll","pullAt","random","range","rangeRight","rearg","reject","remove","repeat","restFrom","result","sampleSize","some","sortBy","sortedIndex","sortedIndexOf","sortedLastIndex","sortedLastIndexOf","sortedUniqBy","split","spreadFrom","startsWith","subtract","sumBy","take","takeRight","takeRightWhile","takeWhile","tap","throttle","thru","times","trimChars","trimCharsEnd","trimCharsStart","truncate","union","uniqBy","uniqWith","unset","unzipWith","without","wrap","xor","zip","zipObject","zipObjectDeep"],3:["assignInWith","assignWith","clamp","differenceBy","differenceWith","findFrom","findIndexFrom","findLastFrom","findLastIndexFrom","getOr","includesFrom","indexOfFrom","inRange","intersectionBy","intersectionWith","invokeArgs","invokeArgsMap","isEqualWith","isMatchWith","flatMapDepth","lastIndexOfFrom","mergeWith","orderBy","padChars","padCharsEnd","padCharsStart","pullAllBy","pullAllWith","rangeStep","rangeStepRight","reduce","reduceRight","replace","set","slice","sortedIndexBy","sortedLastIndexBy","transform","unionBy","unionWith","update","xorBy","xorWith","zipWith"],4:["fill","setWith","updateWith"]},e.aryRearg={2:[1,0],3:[2,0,1],4:[3,2,0,1]},e.iterateeAry={dropRightWhile:1,dropWhile:1,every:1,filter:1,find:1,findFrom:1,findIndex:1,findIndexFrom:1,findKey:1,findLast:1,findLastFrom:1,findLastIndex:1,findLastIndexFrom:1,findLastKey:1,flatMap:1,flatMapDeep:1,flatMapDepth:1,forEach:1,forEachRight:1,forIn:1,forInRight:1,forOwn:1,forOwnRight:1,map:1,mapKeys:1,mapValues:1,partition:1,reduce:2,reduceRight:2,reject:1,remove:1,some:1,takeRightWhile:1,takeWhile:1,times:1,transform:2},e.iterateeRearg={mapKeys:[1],reduceRight:[1,0]},e.methodRearg={assignInAllWith:[1,0],assignInWith:[1,2,0],assignAllWith:[1,0],assignWith:[1,2,0],differenceBy:[1,2,0],differenceWith:[1,2,0],getOr:[2,1,0],intersectionBy:[1,2,0],intersectionWith:[1,2,0],isEqualWith:[1,2,0],isMatchWith:[2,1,0],mergeAllWith:[1,0],mergeWith:[1,2,0],padChars:[2,1,0],padCharsEnd:[2,1,0],padCharsStart:[2,1,0],pullAllBy:[2,1,0],pullAllWith:[2,1,0],rangeStep:[1,2,0],rangeStepRight:[1,2,0],setWith:[3,1,2,0],sortedIndexBy:[2,1,0],sortedLastIndexBy:[2,1,0],unionBy:[1,2,0],unionWith:[1,2,0],updateWith:[3,1,2,0],xorBy:[1,2,0],xorWith:[1,2,0],zipWith:[1,2,0]},e.methodSpread={assignAll:{start:0},assignAllWith:{start:0},assignInAll:{start:0},assignInAllWith:{start:0},defaultsAll:{start:0},defaultsDeepAll:{start:0},invokeArgs:{start:2},invokeArgsMap:{start:2},mergeAll:{start:0},mergeAllWith:{start:0},partial:{start:1},partialRight:{start:1},without:{start:1},zipAll:{start:0}},e.mutate={array:{fill:!0,pull:!0,pullAll:!0,pullAllBy:!0,pullAllWith:!0,pullAt:!0,remove:!0,reverse:!0},object:{assign:!0,assignAll:!0,assignAllWith:!0,assignIn:!0,assignInAll:!0,assignInAllWith:!0,assignInWith:!0,assignWith:!0,defaults:!0,defaultsAll:!0,defaultsDeep:!0,defaultsDeepAll:!0,merge:!0,mergeAll:!0,mergeAllWith:!0,mergeWith:!0},set:{set:!0,setWith:!0,unset:!0,update:!0,updateWith:!0}},e.realToAlias=function(){var t=Object.prototype.hasOwnProperty,n=e.aliasToReal,r={};for(var o in n){var i=n[o];t.call(r,i)?r[i].push(o):r[i]=[o]}return r}(),e.remap={assignAll:"assign",assignAllWith:"assignWith",assignInAll:"assignIn",assignInAllWith:"assignInWith",curryN:"curry",curryRightN:"curryRight",defaultsAll:"defaults",defaultsDeepAll:"defaultsDeep",findFrom:"find",findIndexFrom:"findIndex",findLastFrom:"findLast",findLastIndexFrom:"findLastIndex",getOr:"get",includesFrom:"includes",indexOfFrom:"indexOf",invokeArgs:"invoke",invokeArgsMap:"invokeMap",lastIndexOfFrom:"lastIndexOf",mergeAll:"merge",mergeAllWith:"mergeWith",padChars:"pad",padCharsEnd:"padEnd",padCharsStart:"padStart",propertyOf:"get",rangeStep:"range",rangeStepRight:"rangeRight",restFrom:"rest",spreadFrom:"spread",trimChars:"trim",trimCharsEnd:"trimEnd",trimCharsStart:"trimStart",zipAll:"zip"},e.skipFixed={castArray:!0,flow:!0,flowRight:!0,iteratee:!0,mixin:!0,rearg:!0,runInContext:!0},e.skipRearg={add:!0,assign:!0,assignIn:!0,bind:!0,bindKey:!0,concat:!0,difference:!0,divide:!0,eq:!0,gt:!0,gte:!0,isEqual:!0,lt:!0,lte:!0,matchesProperty:!0,merge:!0,multiply:!0,overArgs:!0,partial:!0,partialRight:!0,propertyOf:!0,random:!0,range:!0,rangeRight:!0,subtract:!0,zip:!0,zipObject:!0,zipObjectDeep:!0}},function(t,e,n){t.exports={ary:n(320),assign:n(189),clone:n(337),curry:n(195),forEach:n(117),isArray:n(6),isError:n(356),isFunction:n(94),isWeakMap:n(358),iteratee:n(359),keys:n(95),rearg:n(360),toInteger:n(86),toPath:n(362)}},function(t,e,n){var r=n(104),o=128;t.exports=function(t,e,n){return e=n?void 0:e,e=t&&null==e?t.length:e,r(t,o,void 0,void 0,void 0,void 0,e)}},function(t,e,n){var r=n(72),o=n(11),i=1;t.exports=function(t,e,n){var u=e&i,a=r(t);return function e(){return(this&&this!==o&&this instanceof e?a:t).apply(u?n:this,arguments)}}},function(t,e,n){var r=n(114),o=n(72),i=n(179),u=n(182),a=n(156),c=n(105),s=n(11);t.exports=function(t,e,n){var f=o(t);return function o(){for(var l=arguments.length,p=Array(l),d=l,h=a(o);d--;)p[d]=arguments[d];var v=l<3&&p[0]!==h&&p[l-1]!==h?[]:c(p,h);return(l-=v.length)<n?u(t,e,i,o.placeholder,void 0,p,v,void 0,void 0,n-l):r(this&&this!==s&&this instanceof o?f:t,this,p)}}},function(t,e){t.exports=function(t,e){for(var n=t.length,r=0;n--;)t[n]===e&&++r;return r}},function(t,e,n){var r=n(115),o=n(183),i=n(325),u=n(327);t.exports=function(t){var e=i(t),n=u[e];if("function"!=typeof n||!(e in r.prototype))return!1;if(t===n)return!0;var a=o(n);return!!a&&t===a[0]}},function(t,e,n){var r=n(326),o=Object.prototype.hasOwnProperty;t.exports=function(t){for(var e=t.name+"",n=r[e],i=o.call(r,e)?n.length:0;i--;){var u=n[i],a=u.func;if(null==a||a==t)return u.name}return e}},function(t,e){t.exports={}},function(t,e,n){var r=n(115),o=n(184),i=n(116),u=n(6),a=n(14),c=n(328),s=Object.prototype.hasOwnProperty;function f(t){if(a(t)&&!u(t)&&!(t instanceof r)){if(t instanceof o)return t;if(s.call(t,"__wrapped__"))return c(t)}return new o(t)}f.prototype=i.prototype,f.prototype.constructor=f,t.exports=f},function(t,e,n){var r=n(115),o=n(184),i=n(74);t.exports=function(t){if(t instanceof r)return t.clone();var e=new o(t.__wrapped__,t.__chain__);return e.__actions__=i(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}},function(t,e){var n=/\{\n\/\* \[wrapped with (.+)\] \*/,r=/,? & /;t.exports=function(t){var e=t.match(n);return e?e[1].split(r):[]}},function(t,e){var n=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;t.exports=function(t,e){var r=e.length;if(!r)return t;var o=r-1;return e[o]=(r>1?"& ":"")+e[o],e=e.join(r>2?", ":" "),t.replace(n,"{\n/* [wrapped with "+e+"] */\n")}},function(t,e,n){var r=n(332),o=n(188),i=n(52),u=o?function(t,e){return o(t,"toString",{configurable:!0,enumerable:!1,value:r(e),writable:!0})}:i;t.exports=u},function(t,e){t.exports=function(t){return function(){return t}}},function(t,e,n){var r=n(117),o=n(174),i=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]];t.exports=function(t,e){return r(i,(function(n){var r="_."+n[0];e&n[1]&&!o(t,r)&&t.push(r)})),t.sort()}},function(t,e,n){var r=n(74),o=n(75),i=Math.min;t.exports=function(t,e){for(var n=t.length,u=i(e.length,n),a=r(t);u--;){var c=e[u];t[u]=o(c,n)?a[c]:void 0}return t}},function(t,e,n){var r=n(114),o=n(72),i=n(11),u=1;t.exports=function(t,e,n,a){var c=e&u,s=o(t);return function e(){for(var o=-1,u=arguments.length,f=-1,l=a.length,p=Array(l+u),d=this&&this!==i&&this instanceof e?s:t;++f<l;)p[f]=a[f];for(;u--;)p[f++]=arguments[++o];return r(d,c?n:this,p)}}},function(t,e,n){var r=n(180),o=n(181),i=n(105),u="__lodash_placeholder__",a=1,c=2,s=4,f=8,l=128,p=256,d=Math.min;t.exports=function(t,e){var n=t[1],h=e[1],v=n|h,y=v<(a|c|l),b=h==l&&n==f||h==l&&n==p&&t[7].length<=e[8]||h==(l|p)&&e[7].length<=e[8]&&n==f;if(!y&&!b)return t;h&a&&(t[2]=e[2],v|=n&a?0:s);var g=e[3];if(g){var m=t[3];t[3]=m?r(m,g,e[4]):g,t[4]=m?i(t[3],u):e[4]}return(g=e[5])&&(m=t[5],t[5]=m?o(m,g,e[6]):g,t[6]=m?i(t[5],u):e[6]),(g=e[7])&&(t[7]=g),h&l&&(t[8]=null==t[8]?e[8]:d(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=v,t}},function(t,e,n){var r=n(192),o=4;t.exports=function(t){return r(t,o)}},function(t,e,n){var r=n(76),o=n(193);t.exports=function(t,e){return t&&r(e,o(e),t)}},function(t,e,n){var r=n(22),o=n(64),i=n(340),u=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return i(t);var e=o(t),n=[];for(var a in t)("constructor"!=a||!e&&u.call(t,a))&&n.push(a);return n}},function(t,e){t.exports=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}},function(t,e,n){(function(t){var r=n(11),o=e&&!e.nodeType&&e,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,u=i&&i.exports===o?r.Buffer:void 0,a=u?u.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,r=a?a(n):new t.constructor(n);return t.copy(r),r}}).call(this,n(66)(t))},function(t,e,n){var r=n(76),o=n(106);t.exports=function(t,e){return r(t,o(t),e)}},function(t,e,n){var r=n(76),o=n(194);t.exports=function(t,e){return r(t,o(t),e)}},function(t,e,n){var r=n(163),o=n(194),i=n(193);t.exports=function(t){return r(t,i,o)}},function(t,e){var n=Object.prototype.hasOwnProperty;t.exports=function(t){var e=t.length,r=new t.constructor(e);return e&&"string"==typeof t[0]&&n.call(t,"index")&&(r.index=t.index,r.input=t.input),r}},function(t,e,n){var r=n(119),o=n(347),i=n(348),u=n(349),a=n(350),c="[object Boolean]",s="[object Date]",f="[object Map]",l="[object Number]",p="[object RegExp]",d="[object Set]",h="[object String]",v="[object Symbol]",y="[object ArrayBuffer]",b="[object DataView]",g="[object Float32Array]",m="[object Float64Array]",_="[object Int8Array]",x="[object Int16Array]",w="[object Int32Array]",O="[object Uint8Array]",j="[object Uint8ClampedArray]",E="[object Uint16Array]",S="[object Uint32Array]";t.exports=function(t,e,n){var P=t.constructor;switch(e){case y:return r(t);case c:case s:return new P(+t);case b:return o(t,n);case g:case m:case _:case x:case w:case O:case j:case E:case S:return a(t,n);case f:return new P;case l:case h:return new P(t);case p:return i(t);case d:return new P;case v:return u(t)}}},function(t,e,n){var r=n(119);t.exports=function(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}},function(t,e){var n=/\w*$/;t.exports=function(t){var e=new t.constructor(t.source,n.exec(t));return e.lastIndex=t.lastIndex,e}},function(t,e,n){var r=n(32),o=r?r.prototype:void 0,i=o?o.valueOf:void 0;t.exports=function(t){return i?Object(i.call(t)):{}}},function(t,e,n){var r=n(119);t.exports=function(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}},function(t,e,n){var r=n(73),o=n(118),i=n(64);t.exports=function(t){return"function"!=typeof t.constructor||i(t)?{}:r(o(t))}},function(t,e,n){var r=n(353),o=n(89),i=n(90),u=i&&i.isMap,a=u?o(u):r;t.exports=a},function(t,e,n){var r=n(43),o=n(14),i="[object Map]";t.exports=function(t){return o(t)&&r(t)==i}},function(t,e,n){var r=n(355),o=n(89),i=n(90),u=i&&i.isSet,a=u?o(u):r;t.exports=a},function(t,e,n){var r=n(43),o=n(14),i="[object Set]";t.exports=function(t){return o(t)&&r(t)==i}},function(t,e,n){var r=n(20),o=n(14),i=n(357),u="[object DOMException]",a="[object Error]";t.exports=function(t){if(!o(t))return!1;var e=r(t);return e==a||e==u||"string"==typeof t.message&&"string"==typeof t.name&&!i(t)}},function(t,e,n){var r=n(20),o=n(118),i=n(14),u="[object Object]",a=Function.prototype,c=Object.prototype,s=a.toString,f=c.hasOwnProperty,l=s.call(Object);t.exports=function(t){if(!i(t)||r(t)!=u)return!1;var e=o(t);if(null===e)return!0;var n=f.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&s.call(n)==l}},function(t,e,n){var r=n(43),o=n(14),i="[object WeakMap]";t.exports=function(t){return o(t)&&r(t)==i}},function(t,e,n){var r=n(192),o=n(107),i=1;t.exports=function(t){return o("function"==typeof t?t:r(t,i))}},function(t,e,n){var r=n(104),o=n(361),i=o((function(t,e){return r(t,256,void 0,void 0,void 0,e)}));t.exports=i},function(t,e,n){var r=n(196),o=n(277),i=n(155);t.exports=function(t){return i(o(t,void 0,r),t+"")}},function(t,e,n){var r=n(77),o=n(74),i=n(6),u=n(46),a=n(165),c=n(47),s=n(98);t.exports=function(t){return i(t)?r(t,c):u(t)?[t]:o(a(s(t)))}},function(t,e,n){var r=n(364),o=n(40);t.exports=function(t){return null==t?[]:r(t,o(t))}},function(t,e,n){var r=n(77);t.exports=function(t,e){return r(e,(function(e){return t[e]}))}},function(t,e,n){n(366);var r=n(10).Object;t.exports=function(t,e,n){return r.defineProperty(t,e,n)}},function(t,e,n){var r=n(18);r(r.S+r.F*!n(19),"Object",{defineProperty:n(21).f})},function(t,e){var n=Math.max,r=Math.min;t.exports=function(t,e,o){return t>=r(e,o)&&t<n(e,o)}},,,,,function(t,e,n){"use strict";var r=n(301),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},i={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},u={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},a={};function c(t){return r.isMemo(t)?u:a[t.$$typeof]||o}a[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0};var s=Object.defineProperty,f=Object.getOwnPropertyNames,l=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,d=Object.getPrototypeOf,h=Object.prototype;t.exports=function t(e,n,r){if("string"!=typeof n){if(h){var o=d(n);o&&o!==h&&t(e,o,r)}var u=f(n);l&&(u=u.concat(l(n)));for(var a=c(e),v=c(n),y=0;y<u.length;++y){var b=u[y];if(!(i[b]||r&&r[b]||v&&v[b]||a&&a[b])){var g=p(n,b);try{s(e,b,g)}catch(t){}}}}return e}},function(t,e){!function(e){"use strict";var n,r=Object.prototype,o=r.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag",s="object"==typeof t,f=e.regeneratorRuntime;if(f)s&&(t.exports=f);else{(f=e.regeneratorRuntime=s?t.exports:{}).wrap=_;var l="suspendedStart",p="suspendedYield",d="executing",h="completed",v={},y={};y[u]=function(){return this};var b=Object.getPrototypeOf,g=b&&b(b(R([])));g&&g!==r&&o.call(g,u)&&(y=g);var m=j.prototype=w.prototype=Object.create(y);O.prototype=m.constructor=j,j.constructor=O,j[c]=O.displayName="GeneratorFunction",f.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===O||"GeneratorFunction"===(e.displayName||e.name))},f.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,j):(t.__proto__=j,c in t||(t[c]="GeneratorFunction")),t.prototype=Object.create(m),t},f.awrap=function(t){return{__await:t}},E(S.prototype),S.prototype[a]=function(){return this},f.AsyncIterator=S,f.async=function(t,e,n,r){var o=new S(_(t,e,n,r));return f.isGeneratorFunction(e)?o:o.next().then((function(t){return t.done?t.value:o.next()}))},E(m),m[c]="Generator",m[u]=function(){return this},m.toString=function(){return"[object Generator]"},f.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var r=e.pop();if(r in t)return n.value=r,n.done=!1,n}return n.done=!0,n}},f.values=R,T.prototype={constructor:T,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=n,this.done=!1,this.delegate=null,this.method="next",this.arg=n,this.tryEntries.forEach(k),!t)for(var e in this)"t"===e.charAt(0)&&o.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=n)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(r,o){return a.type="throw",a.arg=t,e.next=r,o&&(e.method="next",e.arg=n),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var u=this.tryEntries[i],a=u.completion;if("root"===u.tryLoc)return r("end");if(u.tryLoc<=this.prev){var c=o.call(u,"catchLoc"),s=o.call(u,"finallyLoc");if(c&&s){if(this.prev<u.catchLoc)return r(u.catchLoc,!0);if(this.prev<u.finallyLoc)return r(u.finallyLoc)}else if(c){if(this.prev<u.catchLoc)return r(u.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<u.finallyLoc)return r(u.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&o.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var u=i?i.completion:{};return u.type=t,u.arg=e,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(u)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),v},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),k(n),v}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;k(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:R(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=n),v}}}function _(t,e,n,r){var o=e&&e.prototype instanceof w?e:w,i=Object.create(o.prototype),u=new T(r||[]);return i._invoke=function(t,e,n){var r=l;return function(o,i){if(r===d)throw new Error("Generator is already running");if(r===h){if("throw"===o)throw i;return C()}for(n.method=o,n.arg=i;;){var u=n.delegate;if(u){var a=P(u,n);if(a){if(a===v)continue;return a}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===l)throw r=h,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=d;var c=x(t,e,n);if("normal"===c.type){if(r=n.done?h:p,c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r=h,n.method="throw",n.arg=c.arg)}}}(t,n,u),i}function x(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}function w(){}function O(){}function j(){}function E(t){["next","throw","return"].forEach((function(e){t[e]=function(t){return this._invoke(e,t)}}))}function S(t){var e;this._invoke=function(n,r){function i(){return new Promise((function(e,i){!function e(n,r,i,u){var a=x(t[n],t,r);if("throw"!==a.type){var c=a.arg,s=c.value;return s&&"object"==typeof s&&o.call(s,"__await")?Promise.resolve(s.__await).then((function(t){e("next",t,i,u)}),(function(t){e("throw",t,i,u)})):Promise.resolve(s).then((function(t){c.value=t,i(c)}),(function(t){return e("throw",t,i,u)}))}u(a.arg)}(n,r,e,i)}))}return e=e?e.then(i,i):i()}}function P(t,e){var r=t.iterator[e.method];if(r===n){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=n,P(t,e),"throw"===e.method))return v;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return v}var o=x(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,v;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=n),e.delegate=null,v):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,v)}function A(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(A,this),this.reset(!0)}function R(t){if(t){var e=t[u];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,i=function e(){for(;++r<t.length;)if(o.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=n,e.done=!0,e};return i.next=i}}return{next:C}}function C(){return{value:n,done:!0}}}(function(){return this||"object"==typeof self&&self}()||Function("return this")())},function(t,e,n){t.exports={default:n(375),__esModule:!0}},function(t,e,n){n(61),n(108),t.exports=n(171).f("iterator")},function(t,e,n){t.exports={default:n(377),__esModule:!0}},function(t,e,n){n(378),n(170),n(383),n(384),t.exports=n(10).Symbol},function(t,e,n){"use strict";var r=n(9),o=n(31),i=n(19),u=n(18),a=n(167),c=n(379).KEY,s=n(50),f=n(101),l=n(62),p=n(70),d=n(12),h=n(171),v=n(172),y=n(380),b=n(381),g=n(17),m=n(23),_=n(63),x=n(45),w=n(112),O=n(51),j=n(126),E=n(382),S=n(304),P=n(120),A=n(21),k=n(69),T=S.f,R=A.f,C=E.f,I=r.Symbol,M=r.JSON,L=M&&M.stringify,N=d("_hidden"),F=d("toPrimitive"),D={}.propertyIsEnumerable,B=f("symbol-registry"),W=f("symbols"),U=f("op-symbols"),q=Object.prototype,z="function"==typeof I&&!!P.f,G=r.QObject,$=!G||!G.prototype||!G.prototype.findChild,V=i&&s((function(){return 7!=j(R({},"a",{get:function(){return R(this,"a",{value:7}).a}})).a}))?function(t,e,n){var r=T(q,e);r&&delete q[e],R(t,e,n),r&&t!==q&&R(q,e,r)}:R,H=function(t){var e=W[t]=j(I.prototype);return e._k=t,e},K=z&&"symbol"==typeof I.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof I},Y=function(t,e,n){return t===q&&Y(U,e,n),g(t),e=w(e,!0),g(n),o(W,e)?(n.enumerable?(o(t,N)&&t[N][e]&&(t[N][e]=!1),n=j(n,{enumerable:O(0,!1)})):(o(t,N)||R(t,N,O(1,{})),t[N][e]=!0),V(t,e,n)):R(t,e,n)},J=function(t,e){g(t);for(var n,r=y(e=x(e)),o=0,i=r.length;i>o;)Y(t,n=r[o++],e[n]);return t},Q=function(t){var e=D.call(this,t=w(t,!0));return!(this===q&&o(W,t)&&!o(U,t))&&(!(e||!o(this,t)||!o(W,t)||o(this,N)&&this[N][t])||e)},X=function(t,e){if(t=x(t),e=w(e,!0),t!==q||!o(W,e)||o(U,e)){var n=T(t,e);return!n||!o(W,e)||o(t,N)&&t[N][e]||(n.enumerable=!0),n}},Z=function(t){for(var e,n=C(x(t)),r=[],i=0;n.length>i;)o(W,e=n[i++])||e==N||e==c||r.push(e);return r},tt=function(t){for(var e,n=t===q,r=C(n?U:x(t)),i=[],u=0;r.length>u;)!o(W,e=r[u++])||n&&!o(q,e)||i.push(W[e]);return i};z||(a((I=function(){if(this instanceof I)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),e=function(n){this===q&&e.call(U,n),o(this,N)&&o(this[N],t)&&(this[N][t]=!1),V(this,t,O(1,n))};return i&&$&&V(q,t,{configurable:!0,set:e}),H(t)}).prototype,"toString",(function(){return this._k})),S.f=X,A.f=Y,n(299).f=E.f=Z,n(92).f=Q,P.f=tt,i&&!n(49)&&a(q,"propertyIsEnumerable",Q,!0),h.f=function(t){return H(d(t))}),u(u.G+u.W+u.F*!z,{Symbol:I});for(var et="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),nt=0;et.length>nt;)d(et[nt++]);for(var rt=k(d.store),ot=0;rt.length>ot;)v(rt[ot++]);u(u.S+u.F*!z,"Symbol",{for:function(t){return o(B,t+="")?B[t]:B[t]=I(t)},keyFor:function(t){if(!K(t))throw TypeError(t+" is not a symbol!");for(var e in B)if(B[e]===t)return e},useSetter:function(){$=!0},useSimple:function(){$=!1}}),u(u.S+u.F*!z,"Object",{create:function(t,e){return void 0===e?j(t):J(j(t),e)},defineProperty:Y,defineProperties:J,getOwnPropertyDescriptor:X,getOwnPropertyNames:Z,getOwnPropertySymbols:tt});var it=s((function(){P.f(1)}));u(u.S+u.F*it,"Object",{getOwnPropertySymbols:function(t){return P.f(_(t))}}),M&&u(u.S+u.F*(!z||s((function(){var t=I();return"[null]"!=L([t])||"{}"!=L({a:t})||"{}"!=L(Object(t))}))),"JSON",{stringify:function(t){for(var e,n,r=[t],o=1;arguments.length>o;)r.push(arguments[o++]);if(n=e=r[1],(m(e)||void 0!==t)&&!K(t))return b(e)||(e=function(t,e){if("function"==typeof n&&(e=n.call(this,t,e)),!K(e))return e}),r[1]=e,L.apply(M,r)}}),I.prototype[F]||n(26)(I.prototype,F,I.prototype.valueOf),l(I,"Symbol"),l(Math,"Math",!0),l(r.JSON,"JSON",!0)},function(t,e,n){var r=n(70)("meta"),o=n(23),i=n(31),u=n(21).f,a=0,c=Object.isExtensible||function(){return!0},s=!n(50)((function(){return c(Object.preventExtensions({}))})),f=function(t){u(t,r,{value:{i:"O"+ ++a,w:{}}})},l=t.exports={KEY:r,NEED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,r)){if(!c(t))return"F";if(!e)return"E";f(t)}return t[r].i},getWeak:function(t,e){if(!i(t,r)){if(!c(t))return!0;if(!e)return!1;f(t)}return t[r].w},onFreeze:function(t){return s&&l.NEED&&c(t)&&!i(t,r)&&f(t),t}}},function(t,e,n){var r=n(69),o=n(120),i=n(92);t.exports=function(t){var e=r(t),n=o.f;if(n)for(var u,a=n(t),c=i.f,s=0;a.length>s;)c.call(t,u=a[s++])&&e.push(u);return e}},function(t,e,n){var r=n(48);t.exports=Array.isArray||function(t){return"Array"==r(t)}},function(t,e,n){var r=n(45),o=n(299).f,i={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return u&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return u.slice()}}(t):o(r(t))}},function(t,e,n){n(172)("asyncIterator")},function(t,e,n){n(172)("observable")},function(t,e,n){var r=n(408),o=n(411)(r);t.exports=o},,,,,function(t,e,n){"use strict";n.r(e);var r=n(4),o=n.n(r),i=n(2),u=n(305),a=function(){return u.store},c=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(e){return function(n){var r=o()({},t,{store:a()});return wp.element.createElement(e,o()({},n,r))}}},s=n(34),f=n.n(s),l=n(35),p=n.n(l),d=n(27),h=n.n(d),v=n(36),y=n.n(v),b=n(8),g=n.n(b),m=n(1),_=n.n(m),x=n(15),w=n(207),O=n(29),j=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g.a;return function(e){var n=function(n){function r(){return f()(this,r),h()(this,(r.__proto__||Object.getPrototypeOf(r)).apply(this,arguments))}return y()(r,n),p()(r,[{key:"componentDidMount",value:function(){var e=t(this.props),n=this.props;(0,n.registerForm)(e,n.postType)}},{key:"render",value:function(){return wp.element.createElement(e,o()({},this.props,this.additionalProps()))}},{key:"additionalProps",value:function(){var e=this.props,n=e.createDraft,r=e.sendForm,o=e.setSubmit,i=e.editEntry,u=e.maybeRemoveEntry,a=t(this.props);return{createDraft:function(t){return n(a,t)},editEntry:function(t){return i(a,t)},sendForm:function(t,e){return r(a,t,e)},setSubmit:function(){return o(a)},maybeRemoveEntry:function(t){return u(a,t)}}}}]),r}(i.Component);n.propTypes={registerForm:_.a.func,postType:_.a.string};return Object(w.a)((function(e,n){var r={name:t(n)};return{edit:O.selectors.getFormEdit(e,r),create:O.selectors.getFormCreate(e,r),fields:O.selectors.getFormFields(e,r),submit:O.selectors.getFormSubmit(e,r)}}),(function(t){return Object(x.bindActionCreators)(O.actions,t)}))(n)}},E=n(128),S=function(){return function(t){var e=function(e){function n(){return f()(this,n),h()(this,(n.__proto__||Object.getPrototypeOf(n)).apply(this,arguments))}return y()(n,e),p()(n,[{key:"componentDidMount",value:function(){var t=this.props,e=t.isSelected,n=t.onBlockFocus,r=t.onBlockBlur;e?n():r()}},{key:"componentDidUpdate",value:function(t){var e=this.props,n=e.isSelected,r=e.onBlockFocus,o=e.onBlockBlur;t.isSelected!==n&&(n?r():o())}},{key:"render",value:function(){return wp.element.createElement(t,this.props)}}]),n}(i.Component);return e.defaultProps={isSelected:!1,onBlockFocus:g.a,onBlockBlur:g.a},e.propTypes={onBlockFocus:_.a.func,onBlockBlur:_.a.func,isSelected:_.a.bool},e.displayName="WithIsSelected( "+(t.displayName||t.name||"Component "),e}};n.d(e,"withStore",(function(){return c})),n.d(e,"withForm",(function(){return j})),n.d(e,"withBlockCloser",(function(){return E.b})),n.d(e,"withSelected",(function(){return S}))},function(t,e){t.exports=wp.editor},,,function(t,e,n){"use strict";
|
7 |
Â
/** @license React v16.12.0
|
8 |
Â
* react-is.production.min.js
|
9 |
Â
*
|
@@ -11,4 +11,4 @@ var tribe="object"==typeof tribe?tribe:{};tribe.common=tribe.common||{},tribe.co
|
|
11 |
Â
*
|
12 |
Â
* This source code is licensed under the MIT license found in the
|
13 |
Â
* LICENSE file in the root directory of this source tree.
|
14 |
-
*/Object.defineProperty(e,"__esModule",{value:!0});var r="function"==typeof Symbol&&Symbol.for,o=r?Symbol.for("react.element"):60103,i=r?Symbol.for("react.portal"):60106,u=r?Symbol.for("react.fragment"):60107,a=r?Symbol.for("react.strict_mode"):60108,c=r?Symbol.for("react.profiler"):60114,s=r?Symbol.for("react.provider"):60109,f=r?Symbol.for("react.context"):60110,l=r?Symbol.for("react.async_mode"):60111,p=r?Symbol.for("react.concurrent_mode"):60111,d=r?Symbol.for("react.forward_ref"):60112,h=r?Symbol.for("react.suspense"):60113,v=r?Symbol.for("react.suspense_list"):60120,y=r?Symbol.for("react.memo"):60115,b=r?Symbol.for("react.lazy"):60116,g=r?Symbol.for("react.fundamental"):60117,m=r?Symbol.for("react.responder"):60118,_=r?Symbol.for("react.scope"):60119;function x(t){if("object"==typeof t&&null!==t){var e=t.$$typeof;switch(e){case o:switch(t=t.type){case l:case p:case u:case c:case a:case h:return t;default:switch(t=t&&t.$$typeof){case f:case d:case b:case y:case s:return t;default:return e}}case i:return e}}}function w(t){return x(t)===p}e.typeOf=x,e.AsyncMode=l,e.ConcurrentMode=p,e.ContextConsumer=f,e.ContextProvider=s,e.Element=o,e.ForwardRef=d,e.Fragment=u,e.Lazy=b,e.Memo=y,e.Portal=i,e.Profiler=c,e.StrictMode=a,e.Suspense=h,e.isValidElementType=function(t){return"string"==typeof t||"function"==typeof t||t===u||t===p||t===c||t===a||t===h||t===v||"object"==typeof t&&null!==t&&(t.$$typeof===b||t.$$typeof===y||t.$$typeof===s||t.$$typeof===f||t.$$typeof===d||t.$$typeof===g||t.$$typeof===m||t.$$typeof===_)},e.isAsyncMode=function(t){return w(t)||x(t)===l},e.isConcurrentMode=w,e.isContextConsumer=function(t){return x(t)===f},e.isContextProvider=function(t){return x(t)===s},e.isElement=function(t){return"object"==typeof t&&null!==t&&t.$$typeof===o},e.isForwardRef=function(t){return x(t)===d},e.isFragment=function(t){return x(t)===u},e.isLazy=function(t){return x(t)===b},e.isMemo=function(t){return x(t)===y},e.isPortal=function(t){return x(t)===i},e.isProfiler=function(t){return x(t)===c},e.isStrictMode=function(t){return x(t)===a},e.isSuspense=function(t){return x(t)===h}},function(t,e,n){t.exports={default:n(396),__esModule:!0}},function(t,e,n){n(397),t.exports=n(10).Object.setPrototypeOf},function(t,e,n){var r=n(18);r(r.S,"Object",{setPrototypeOf:n(398).set})},function(t,e,n){var r=n(23),o=n(17),i=function(t,e){if(o(t),!r(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,r){try{(r=n(38)(Function.call,n(304).f(Object.prototype,"__proto__").set,2))(t,[]),e=!(t instanceof Array)}catch(t){e=!0}return function(t,n){return i(t,n),e?t.__proto__=n:r(t,n),t}}({},!1):void 0),check:i}},function(t,e,n){t.exports={default:n(400),__esModule:!0}},function(t,e,n){n(401);var r=n(10).Object;t.exports=function(t,e){return r.create(t,e)}},function(t,e,n){var r=n(18);r(r.S,"Object",{create:n(126)})},function(t,e,n){t.exports={default:n(403),__esModule:!0}},function(t,e,n){n(108),n(61),t.exports=n(404)},function(t,e,n){var r=n(110),o=n(12)("iterator"),i=n(39);t.exports=n(10).isIterable=function(t){var e=Object(t);return void 0!==e[o]||"@@iterator"in e||i.hasOwnProperty(r(e))}},function(t,e,n){t.exports={default:n(406),__esModule:!0}},function(t,e,n){n(108),n(61),t.exports=n(407)},function(t,e,n){var r=n(17),o=n(109);t.exports=n(10).getIterator=function(t){var e=o(t);if("function"!=typeof e)throw TypeError(t+" is not iterable!");return r(e.call(t))}},function(t,e,n){var r=n(409),o=n(40);t.exports=function(t,e){return t&&r(t,e,o)}},function(t,e,n){var r=n(410)();t.exports=r},function(t,e){t.exports=function(t){return function(e,n,r){for(var o=-1,i=Object(e),u=r(e),a=u.length;a--;){var c=u[t?a:++o];if(!1===n(i[c],c,i))break}return e}}},function(t,e,n){var r=n(41);t.exports=function(t,e){return function(n,o){if(null==n)return n;if(!r(n))return t(n,o);for(var i=n.length,u=e?i:-1,a=Object(n);(e?u--:++u<i)&&!1!==o(a[u],u,a););return n}}},function(t,e,n){var r=n(385),o=n(41);t.exports=function(t,e){var n=-1,i=o(t)?Array(t.length):[];return r(t,(function(t,r,o){i[++n]=e(t,r,o)})),i}},function(t,e,n){var r=n(107),o=n(41),i=n(40);t.exports=function(t){return function(e,n,u){var a=Object(e);if(!o(e)){var c=r(n,3);e=i(e),n=function(t){return c(a[t],t,a)}}var s=t(e,n,u);return s>-1?a[c?e[s]:s]:void 0}}},function(t,e,n){var r=n(175),o=n(107),i=n(86),u=Math.max;t.exports=function(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var c=null==n?0:i(n);return c<0&&(c=u(a+c,0)),r(t,o(e,3),c)}},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,e,n){var r=n(669),o=n(385),i=n(107),u=n(670),a=n(6);t.exports=function(t,e,n){var c=a(t)?r:u,s=arguments.length<3;return c(t,i(e,4),n,s,o)}},function(t,e){t.exports=wp.data},function(t,e,n){var r=n(672),o=n(104),i=n(156),u=n(105),a=r((function(t,e){var n=u(e,i(a));return o(t,32,void 0,e,n)}));a.placeholder={},t.exports=a},,,,,,function(t,e,n){"use strict";n.r(e);var r=n(207),o=n(15),i=n(60),u=n(390),a=n(28),c=n.n(a),s=n(129),f=n.n(s),l=n(34),p=n.n(l),d=n(35),h=n.n(d),v=n(27),y=n.n(v),b=n(36),g=n.n(b),m=n(6),_=n.n(m),x=n(127),w=n.n(x),O=n(658),j=n.n(O),E=n(306),S=n.n(E),P=n(2),A=n.n(P),k=n(1),T=n.n(k),R=n(391),C=n(659),I=(n(671),function(t){function e(){return p()(this,e),y()(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return g()(e,t),h()(e,[{key:"filterPluginTemplates",value:function(t,e){var n=this;return j()(e,(function(e,r){var o=f()(r,3),i=o[0],u=o[1],a=o[2];if(w()(t,i)){var s=_()(a)?[i,u,n.filterPluginTemplates(t,a)]:[i,u];return[].concat(c()(e),[s])}return e}),[])}},{key:"render",value:function(){return wp.element.createElement("div",{className:"tribe-common__plugin-block-hook"},wp.element.createElement(R.InnerBlocks,{allowedBlocks:this.props.allowedBlocks,layouts:this.props.layouts,template:this.template,templateInsertUpdatesSelection:this.props.templateInsertUpdatesSelection,templateLock:this.props.templateLock}))}},{key:"registeredBlockNames",get:function(){var t=Object(C.select)("core/blocks").getBlockTypes();return S()(t,(function(t){return t.name}))}},{key:"template",get:function(){var t=this,e=this.registeredBlockNames;return this.props.plugins.reduce((function(n,r){var o=t.props.pluginTemplates[r];if(o){var i=t.filterPluginTemplates(e,o);return[].concat(c()(n),c()(i))}return n}),[])}}]),e}(P.PureComponent));I.propTypes={allowedBlocks:T.a.arrayOf(T.a.string),layouts:T.a.oneOfType([T.a.object,T.a.arrayOf(T.a.object)]),plugins:T.a.arrayOf(T.a.string).isRequired,pluginTemplates:T.a.objectOf(T.a.arrayOf(T.a.array)),templateInsertUpdatesSelection:T.a.bool.isRequired,templateLock:T.a.oneOf(["all","insert",!1])},I.defaultProps={templateInsertUpdatesSelection:!1};var M=I,L=Object(o.compose)(Object(u.withStore)(),Object(r.a)((function(t,e){return{plugins:i.selectors.getPlugins(t)}})))(M),N=n(128),F=function(t){function e(){var t,n,r,o;p()(this,e);for(var i=arguments.length,u=Array(i),a=0;a<i;a++)u[a]=arguments[a];return n=r=y()(this,(t=e.__proto__||Object.getPrototypeOf(e)).call.apply(t,[this].concat(u))),r.nodeRef=A.a.createRef(),o=n,y()(r,o)}return g()(e,t),h()(e,[{key:"componentDidMount",value:function(){this.node.addEventListener(N.a,N.c)}},{key:"componentWillUnmount",value:function(){this.node.removeEventListener(N.a,N.c)}},{key:"render",value:function(){return wp.element.createElement("div",{ref:this.nodeRef},this.props.children)}},{key:"node",get:function(){return this.nodeRef.current}}]),e}(P.PureComponent);F.propTypes={children:T.a.node.isRequired};var D=F,B=n(307),W=n.n(B),U=n(660),q=n.n(U),z=n(8),G=n.n(z),$=n(16),V=n.n($),H=n(130),K=n(309),Y=(n(673),function(t){function e(){var t,n,r,o;p()(this,e);for(var i=arguments.length,u=Array(i),a=0;a<i;a++)u[a]=arguments[a];return n=r=y()(this,(t=e.__proto__||Object.getPrototypeOf(e)).call.apply(t,[this].concat(u))),r._onOptionClick=function(t,e,n){r.props.onOptionClick(e,n),t()},r.renderOptions=function(t){return r.props.options.map((function(e){return wp.element.createElement("button",{className:V()("tribe-common-form-select__options__option",r.props.optionClassName),key:e.value,onClick:q()(r._onOptionClick,t,e.value),role:"menuitem",type:"button",value:e.value},e.label)}))},r.renderToggle=function(t){var e=t.onToggle,n=t.isOpen;return wp.element.createElement("div",{className:"tribe-common-form-select__toggle"},wp.element.createElement("button",{type:"button","aria-expanded":n,onClick:e},wp.element.createElement("span",null,r.label),wp.element.createElement(H.Dashicon,{className:"btn--icon",icon:n?"arrow-up":"arrow-down"})))},r.renderContent=function(t){var e=t.onClose;return wp.element.createElement(K.ScrollTo,null,(function(){return wp.element.createElement(D,null,wp.element.createElement(K.ScrollArea,{role:"menu",className:V()("tribe-common-form-select__options")},r.renderOptions(e)))}))},o=n,y()(r,o)}return g()(e,t),h()(e,[{key:"render",value:function(){return wp.element.createElement(H.Dropdown,{className:V()("tribe-common-form-select",this.props.className),position:"bottom center",contentClassName:"tribe-common-form-select__content",renderToggle:this.renderToggle,renderContent:this.renderContent})}},{key:"selected",get:function(){var t=this;return W()(this.props.options,(function(e){return e.value===t.props.value}))}},{key:"label",get:function(){var t=this.selected;return t&&t.label}}]),e}(P.PureComponent));Y.propTypes={options:T.a.shape({label:T.a.string,value:T.a.any}),onOptionClick:T.a.func.isRequired,optionClassName:T.a.string,isOpen:T.a.bool.isRequired,value:T.a.any,className:T.a.string},Y.defaultProps={onOptionClick:G.a,isOpen:!0,optionClassName:""};var J=Y;n.d(e,"PluginBlockHooks",(function(){return L})),n.d(e,"PreventBlockClose",(function(){return D})),n.d(e,"Select",(function(){return J}))},,,function(t,e){t.exports=function(t,e,n,r){var o=-1,i=null==t?0:t.length;for(r&&i&&(n=t[++o]);++o<i;)n=e(n,t[o],o,t);return n}},function(t,e){t.exports=function(t,e,n,r,o){return o(t,(function(t,o,i){n=r?(r=!1,t):e(n,t,o,i)})),n}},function(t,e,n){},function(t,e,n){var r=n(52),o=n(277),i=n(155);t.exports=function(t,e){return i(o(t,e,r),t+"")}},function(t,e,n){}]);
|
3 |
Â
Copyright (c) 2017 Jed Watson.
|
4 |
Â
Licensed under the MIT License (MIT), see
|
5 |
Â
http://jedwatson.github.io/classnames
|
6 |
+
*/!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var t=[],e=0;e<arguments.length;e++){var r=arguments[e];if(r){var i=typeof r;if("string"===i||"number"===i)t.push(r);else if(Array.isArray(r)&&r.length){var u=o.apply(null,r);u&&t.push(u)}else if("object"===i)for(var a in r)n.call(r,a)&&r[a]&&t.push(a)}}return t.join(" ")}t.exports?(o.default=o,t.exports=o):void 0===(r=function(){return o}.apply(e,[]))||(t.exports=r)}()},function(t,e,n){var r=n(23);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},function(t,e,n){var r=n(9),o=n(10),i=n(38),u=n(26),a=n(31),c=function(t,e,n){var s,f,l,p=t&c.F,d=t&c.G,h=t&c.S,v=t&c.P,y=t&c.B,b=t&c.W,g=d?o:o[e]||(o[e]={}),m=g.prototype,_=d?r:h?r[e]:(r[e]||{}).prototype;for(s in d&&(n=e),n)(f=!p&&_&&void 0!==_[s])&&a(g,s)||(l=f?_[s]:n[s],g[s]=d&&"function"!=typeof _[s]?n[s]:y&&f?i(l,r):b&&_[s]==l?function(t){var e=function(e,n,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,n)}return new t(e,n,r)}return t.apply(this,arguments)};return e.prototype=t.prototype,e}(l):v&&"function"==typeof l?i(Function.call,l):l,v&&((g.virtual||(g.virtual={}))[s]=l,t&c.R&&m&&!m[s]&&u(m,s,l)))};c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,t.exports=c},function(t,e,n){t.exports=!n(50)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(t,e,n){var r=n(32),o=n(222),i=n(223),u="[object Null]",a="[object Undefined]",c=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?a:u:c&&c in Object(t)?o(t):i(t)}},function(t,e,n){var r=n(17),o=n(166),i=n(112),u=Object.defineProperty;e.f=n(19)?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return u(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){var r=n(221),o=n(226);t.exports=function(t,e){var n=o(t,e);return r(n)?n:void 0}},function(t,e,n){"use strict";n.r(e),n.d(e,"get",(function(){return r})),n.d(e,"google",(function(){return o})),n.d(e,"wpApi",(function(){return i})),n.d(e,"wpApiRequest",(function(){return u})),n.d(e,"wpData",(function(){return a})),n.d(e,"wpHooks",(function(){return c})),n.d(e,"config",(function(){return s})),n.d(e,"common",(function(){return f})),n.d(e,"adminUrl",(function(){return l})),n.d(e,"rest",(function(){return p})),n.d(e,"restNonce",(function(){return d})),n.d(e,"dateSettings",(function(){return h})),n.d(e,"editorConstants",(function(){return v})),n.d(e,"list",(function(){return y})),n.d(e,"tec",(function(){return b})),n.d(e,"editor",(function(){return g})),n.d(e,"settings",(function(){return m})),n.d(e,"mapsAPI",(function(){return _})),n.d(e,"priceSettings",(function(){return x})),n.d(e,"tecDateSettings",(function(){return w})),n.d(e,"timezoneHtml",(function(){return O})),n.d(e,"defaultTimes",(function(){return j})),n.d(e,"timezone",(function(){return E})),n.d(e,"pro",(function(){return S})),n.d(e,"editorDefaults",(function(){return P})),n.d(e,"tickets",(function(){return A})),n.d(e,"ticketsPlus",(function(){return k})),n.d(e,"iacVars",(function(){return T})),n.d(e,"postObjects",(function(){return R})),n.d(e,"blocks",(function(){return C}));var r=function(t,e){return window[t]||e},o=function(){return r("google")},i=wp.api,u=wp.apiRequest,a=wp.data,c=wp.hooks,s=function(){return r("tribe_editor_config",{})},f=function(){return s().common||{}},l=function(){return f().adminUrl||""},p=function(){return f().rest||{}},d=function(){return p().nonce||{}},h=function(){return f().dateSettings||{}},v=function(){return f().constants||{}},y=function(){return{countries:f().countries||{},us_states:f().usStates||{}}},b=function(){return s().events||{}},g=function(){return b().editor||{}},m=function(){return b().settings||{}},_=function(){return b().googleMap||{}},x=function(){return b().priceSettings||{}},w=function(){return b().dateSettings||{}},O=function(){return b().timezoneHTML||""},j=function(){return b().defaultTimes||{}},E=function(){return b().timeZone||{}},S=function(){return s().eventsPRO||{}},P=function(){return S().defaults||{}},A=function(){return s().tickets||{}},k=function(){return s().ticketsPlus||{}},T=function(){return k().iacVars||{}},R=function(){return s().post_objects||{}},C=function(){return s().blocks||{}}},function(t,e,n){var r=n(21),o=n(51);t.exports=n(19)?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(204),i=(r=o)&&r.__esModule?r:{default:r};e.default=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":(0,i.default)(e))&&"function"!=typeof e?t:e}},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(208),i=(r=o)&&r.__esModule?r:{default:r};e.default=function(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e<t.length;e++)n[e]=t[e];return n}return(0,i.default)(t)}},function(t,e,n){"use strict";n.r(e);var r={};n.r(r),n.d(r,"ADD_FORM",(function(){return p})),n.d(r,"SET_FORM_FIELDS",(function(){return d})),n.d(r,"CREATE_FORM_DRAFT",(function(){return h})),n.d(r,"EDIT_FORM_ENTRY",(function(){return v})),n.d(r,"SUBMIT_FORM",(function(){return y})),n.d(r,"CLEAR_FORM",(function(){return b})),n.d(r,"SET_SAVING_FORM",(function(){return g})),n.d(r,"ADD_VOLATILE_ID",(function(){return m})),n.d(r,"REMOVE_VOLATILE_ID",(function(){return _}));var o={};n.r(o),n.d(o,"formSelector",(function(){return C})),n.d(o,"getFormType",(function(){return I})),n.d(o,"getFormEdit",(function(){return M})),n.d(o,"getFormCreate",(function(){return L})),n.d(o,"getFormSubmit",(function(){return N})),n.d(o,"getFormFields",(function(){return F})),n.d(o,"getFormSaving",(function(){return D})),n.d(o,"getVolatile",(function(){return B}));var i={};n.r(i),n.d(i,"registerForm",(function(){return W})),n.d(i,"clearForm",(function(){return U})),n.d(i,"createDraft",(function(){return q})),n.d(i,"editEntry",(function(){return z})),n.d(i,"setSubmit",(function(){return G})),n.d(i,"setSaving",(function(){return V})),n.d(i,"addVolatile",(function(){return $})),n.d(i,"removeVolatile",(function(){return H})),n.d(i,"sendForm",(function(){return K})),n.d(i,"maybeRemoveEntry",(function(){return J}));var u=n(200),a=n.n(u),c=n(4),s=n.n(c),f=n(15),l=n(13),p=l.a+"/ADD_FORM",d=l.a+"/SET_FORM_FIELDS",h=l.a+"/CREATE_FORM_DRAFT",v=l.a+"/EDIT_FORM_ENTRY",y=l.a+"/SUBMIT_FORM",b=l.a+"/CLEAR_FORM",g=l.a+"/SET_SAVING_FORM",m=l.a+"/ADD_VOLATILE_ID",_=l.a+"/REMOVE_VOLATILE_ID",x={edit:!1,create:!1,submit:!1,saving:!1,fields:{},type:n(78).EVENT},w=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:x,e=arguments[1];switch(e.type){case p:return s()({},t,{type:e.payload.type});case b:return s()({},t,x,{type:t.type});case h:return s()({},t,{submit:!1,edit:!1,create:!0,fields:e.payload.fields});case g:return s()({},t,{saving:e.payload.saving});case v:return s()({},t,{create:!1,submit:!1,edit:!0,fields:e.payload.fields});case y:return s()({},t,{submit:!0});default:return t}},O=n(28),j=n.n(O),E=Object(f.combineReducers)({byId:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments[1];switch(e.type){case p:case b:case d:case h:case v:case y:case g:return s()({},t,a()({},e.payload.id,w(t[e.payload.id],e)));default:return t}},volatile:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments[1];switch(e.type){case m:return[].concat(j()(t),[e.payload.id]);case _:return t.filter((function(t){return t!==e.payload.id}));default:return t}}}),S=n(44),P=n.n(S),A=n(42),k=n.n(A),T=n(33),R=n(37),C=function(t,e){return t.forms.byId[e.name]},I=Object(R.createSelector)([C],(function(t){return t?t.type:x.type})),M=Object(R.createSelector)([C],(function(t){return t?t.edit:x.edit})),L=Object(R.createSelector)([C],(function(t){return t?t.create:x.create})),N=Object(R.createSelector)([C],(function(t){return t?t.submit:x.submit})),F=Object(R.createSelector)([C],(function(t){return t?t.fields:x.fields})),D=Object(R.createSelector)([C],(function(t){return t?t.saving:x.saving})),B=function(t){return t.forms.volatile},W=function(t,e){return{type:p,payload:{id:t,type:e}}},U=function(t){return{type:b,payload:{id:t}}},q=function(t,e){return{type:h,payload:{id:t,fields:e}}},z=function(t,e){return{type:v,payload:{id:t,fields:e}}},G=function(t){return{type:y,payload:{id:t}}},V=function(t,e){return{type:g,payload:{id:t,saving:e}}},$=function(t){return{type:m,payload:{id:t}}},H=function(t){return{type:_,payload:{id:t}}},K=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments[2];return function(r,o){var i=o(),u={name:t},a=I(i,u),c=L(i,u),s=F(i,u);if(!D(i,u)){var f={path:c?""+a:a+"/"+s.id,params:{method:c?"POST":"PUT",body:JSON.stringify(e)},actions:{start:function(){return r(V(t,!0))},success:function(e){var o=e.body,i=P()(o,"id","");c&&i&&r($(i)),n(o),r(U(t)),r(V(t,!1))},error:function(){r(U(t)),r(V(t,!1))}}};r(T.actions.wpRequest(f))}}},Y=function(t){return function(e){return function(n){var r=n.body,o=r.id;if("draft"===r.status){var i={path:e,params:{method:"DELETE"},actions:{success:function(){return t(H(o))}}};t(T.actions.wpRequest(i))}else t(H(o))}}},J=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(n,r){var o=r(),i=I(o,{name:t});if(!k()(e)){var u=i+"/"+e.id,a={path:u,actions:{success:Y(n)(u)}};n(T.actions.wpRequest(a))}}};n.d(e,"types",(function(){return r})),n.d(e,"actions",(function(){return i})),n.d(e,"selectors",(function(){return o}));e.default=E},,function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){var r=n(11).Symbol;t.exports=r},function(t,e,n){"use strict";n.r(e);var r={};n.r(r),n.d(r,"WP_REQUEST",(function(){return u}));var o={};n.r(o),n.d(o,"wpRequest",(function(){return a}));var i={};n.r(i),n.d(i,"toWpParams",(function(){return v})),n.d(i,"toWPQuery",(function(){return y})),n.d(i,"getTotalPages",(function(){return b}));var u=n(13).a+"/WP_REQUEST",a=function(t){return{type:u,meta:t}},c=n(4),s=n.n(c),f=n(121),l=n.n(f),p=n(42),d=n.n(p),h=n(201),v=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=s()({orderby:"title",status:["draft","publish"],order:"asc",page:1},t);return l()(e.search)||d()(e.search)||(e.orderby="relevance"),d()(e.exclude)&&delete e.exclude,e},y=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object(h.stringify)(v(t))},b=function(t){var e=parseInt(t.get("x-wp-totalpages"),10);return isNaN(e)?0:e},g=n(68),m=n.n(g),_=n(122),x=n.n(_),w=n(202),O=n.n(w),j=n(44),E=n.n(j),S=n(8),P=n.n(S),A=(n(206),n(25)),k=function(){return function(t){return e=x()(m.a.mark((function e(n){var o,i,u,a,c,f,l,p,d,h,v,y,b,g,_,x,w,j,S,k;return m.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n.type===r.WP_REQUEST){e.next=2;break}return e.abrupt("return",t(n));case 2:if(o=n.meta,u=(i=void 0===o?{}:o).path,a=void 0===u?"":u,c=i.params,f=void 0===c?{}:c,t(n),l=Object(A.rest)(),p=l.url,d=void 0===p?"":p,h=l.nonce,v=(void 0===h?{}:h).wp_rest||"",y=A.rest.namespaces||{},b=y.core||"wp/v2",g=""+d+b,_=s()({start:P.a,success:P.a,error:P.a,none:P.a},E()(i,"actions",{})),""!==a){e.next=14;break}return _.none(a),e.abrupt("return");case 14:return x=g+"/"+a,_.start(x,f),w=s()({Accept:"application/json","Content-Type":"application/json"},E()(f,"headers",{}),{"X-WP-Nonce":v}),e.prev=17,e.next=20,fetch(x,s()({},f,{credentials:"include",headers:w}));case 20:if(j=e.sent,S=j.status,O()(S,200,300)){e.next=24;break}throw j;case 24:return e.next=26,j.json();case 26:return k=e.sent,_.success({body:k,headers:j.headers}),e.abrupt("return",[j,k]);case 31:return e.prev=31,e.t0=e.catch(17),_.error(e.t0),e.abrupt("return",e.t0);case 35:case"end":return e.stop()}}),e,void 0,[[17,31]])}))),function(t){return e.apply(this,arguments)};var e}};n.d(e,"default",(function(){return k})),n.d(e,"types",(function(){return r})),n.d(e,"actions",(function(){return o})),n.d(e,"utils",(function(){return i}))},function(t,e,n){"use strict";e.__esModule=!0,e.default=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(205),i=(r=o)&&r.__esModule?r:{default:r};e.default=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),(0,i.default)(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}()},function(t,e,n){"use strict";e.__esModule=!0;var r=u(n(395)),o=u(n(399)),i=u(n(204));function u(t){return t&&t.__esModule?t:{default:t}}e.default=function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":(0,i.default)(e)));t.prototype=(0,o.default)(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(r.default?(0,r.default)(t,e):t.__proto__=e)}},function(t,e,n){"use strict";function r(t,e){return t===e}function o(t,e,n){if(null===e||null===n||e.length!==n.length)return!1;for(var r=e.length,o=0;o<r;o++)if(!t(e[o],n[o]))return!1;return!0}function i(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r,n=null,i=null;return function(){return o(e,n,arguments)||(i=t.apply(null,arguments)),n=arguments,i}}function u(t){var e=Array.isArray(t[0])?t[0]:t;if(!e.every((function(t){return"function"==typeof t}))){var n=e.map((function(t){return typeof t})).join(", ");throw new Error("Selector creators expect all input-selectors to be functions, instead received the following types: ["+n+"]")}return e}function a(t){for(var e=arguments.length,n=Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];return function(){for(var e=arguments.length,r=Array(e),o=0;o<e;o++)r[o]=arguments[o];var a=0,c=r.pop(),s=u(r),f=t.apply(void 0,[function(){return a++,c.apply(null,arguments)}].concat(n)),l=i((function(){for(var t=[],e=s.length,n=0;n<e;n++)t.push(s[n].apply(null,arguments));return f.apply(null,t)}));return l.resultFunc=c,l.recomputations=function(){return a},l.resetRecomputations=function(){return a=0},l}}e.__esModule=!0,e.defaultMemoize=i,e.createSelectorCreator=a,e.createStructuredSelector=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:c;if("object"!=typeof t)throw new Error("createStructuredSelector expects first argument to be an object where each property is a selector, instead received a "+typeof t);var n=Object.keys(t);return e(n.map((function(e){return t[e]})),(function(){for(var t=arguments.length,e=Array(t),r=0;r<t;r++)e[r]=arguments[r];return e.reduce((function(t,e,r){return t[n[r]]=e,t}),{})}))};var c=e.createSelector=a(i)},function(t,e,n){var r=n(53);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},function(t,e){t.exports={}},function(t,e,n){var r=n(159),o=n(95),i=n(41);t.exports=function(t){return i(t)?r(t):o(t)}},function(t,e,n){var r=n(94),o=n(88);t.exports=function(t){return null!=t&&o(t.length)&&!r(t)}},function(t,e,n){var r=n(95),o=n(43),i=n(58),u=n(6),a=n(41),c=n(59),s=n(64),f=n(87),l="[object Map]",p="[object Set]",d=Object.prototype.hasOwnProperty;t.exports=function(t){if(null==t)return!0;if(a(t)&&(u(t)||"string"==typeof t||"function"==typeof t.splice||c(t)||f(t)||i(t)))return!t.length;var e=o(t);if(e==l||e==p)return!t.size;if(s(t))return!r(t).length;for(var n in t)if(d.call(t,n))return!1;return!0}},function(t,e,n){var r=n(256),o=n(85),i=n(257),u=n(153),a=n(154),c=n(20),s=n(138),f=s(r),l=s(o),p=s(i),d=s(u),h=s(a),v=c;(r&&"[object DataView]"!=v(new r(new ArrayBuffer(1)))||o&&"[object Map]"!=v(new o)||i&&"[object Promise]"!=v(i.resolve())||u&&"[object Set]"!=v(new u)||a&&"[object WeakMap]"!=v(new a))&&(v=function(t){var e=c(t),n="[object Object]"==e?t.constructor:void 0,r=n?s(n):"";if(r)switch(r){case f:return"[object DataView]";case l:return"[object Map]";case p:return"[object Promise]";case d:return"[object Set]";case h:return"[object WeakMap]"}return e}),t.exports=v},function(t,e,n){var r=n(143);t.exports=function(t,e,n){var o=null==t?void 0:r(t,e);return void 0===o?n:o}},function(t,e,n){var r=n(132),o=n(80);t.exports=function(t){return r(o(t))}},function(t,e,n){var r=n(20),o=n(14),i="[object Symbol]";t.exports=function(t){return"symbol"==typeof t||o(t)&&r(t)==i}},function(t,e,n){var r=n(46),o=1/0;t.exports=function(t){if("string"==typeof t||r(t))return t;var e=t+"";return"0"==e&&1/t==-o?"-0":e}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e){t.exports=!0},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e){t.exports=function(t){return t}},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,e,n){var r=n(24)(Object,"create");t.exports=r},function(t,e,n){var r=n(231),o=n(232),i=n(233),u=n(234),a=n(235);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,e,n){var r=n(71);t.exports=function(t,e){for(var n=t.length;n--;)if(r(t[n][0],e))return n;return-1}},function(t,e,n){var r=n(237);t.exports=function(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}},function(t,e,n){var r=n(246),o=n(14),i=Object.prototype,u=i.hasOwnProperty,a=i.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(t){return o(t)&&u.call(t,"callee")&&!a.call(t,"callee")};t.exports=c},function(t,e,n){(function(t){var r=n(11),o=n(247),i=e&&!e.nodeType&&e,u=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=u&&u.exports===i?r.Buffer:void 0,c=(a?a.isBuffer:void 0)||o;t.exports=c}).call(this,n(66)(t))},function(t,e,n){"use strict";n.r(e);var r={};n.r(r),n.d(r,"ADD_PLUGIN",(function(){return d})),n.d(r,"REMOVE_PLUGIN",(function(){return h}));var o={};n.r(o),n.d(o,"addPlugin",(function(){return v})),n.d(o,"removePlugin",(function(){return y}));var i={};n.r(i),n.d(i,"getPlugins",(function(){return x})),n.d(i,"hasPlugin",(function(){return w}));var u={};n.r(u),n.d(u,"EVENTS_PLUGIN",(function(){return O})),n.d(u,"EVENTS_PRO_PLUGIN",(function(){return j})),n.d(u,"EVENTS_VIRTUAL_PLUGIN",(function(){return E})),n.d(u,"TICKETS",(function(){return S})),n.d(u,"TICKETS_PLUS",(function(){return P}));var a={};n.r(a),n.d(a,"ReactSelectOption",(function(){return T})),n.d(a,"ReactSelectOptions",(function(){return R}));var c=n(28),s=n.n(c),f=n(198),l=n.n(f),p=n(13),d=p.a+"/ADD_PLUGIN",h=p.a+"/REMOVE_PLUGIN",v=function(t){return{type:d,payload:{name:t}}},y=function(t){return{type:h,payload:{name:t}}},b=n(199),g=n.n(b),m=n(127),_=n.n(m),x=function(t){return t.plugins},w=g()((function(t,e){return _()(x(t),e)})),O="events",j="events-pro",E="events-virtual",S="tickets",P="tickets-plus",A=n(1),k=n.n(A),T=k.a.shape({label:k.a.string.isRequired,value:k.a.any.isRequired}),R=k.a.arrayOf(T);n.d(e,"types",(function(){return r})),n.d(e,"actions",(function(){return o})),n.d(e,"selectors",(function(){return i})),n.d(e,"constants",(function(){return u})),n.d(e,"proptypes",(function(){return a}));e.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments[1];switch(e.type){case r.ADD_PLUGIN:return l()([].concat(s()(t),[e.payload.name]));case r.REMOVE_PLUGIN:return[].concat(s()(t)).filter((function(t){return t!==e.payload.name}));default:return t}}},function(t,e,n){"use strict";var r=n(210)(!0);n(131)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})}))},function(t,e,n){var r=n(21).f,o=n(31),i=n(12)("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},function(t,e,n){var r=n(80);t.exports=function(t){return Object(r(t))}},function(t,e){var n=Object.prototype;t.exports=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}},,function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},,function(t,e,n){t.exports=n(282)},function(t,e,n){var r=n(168),o=n(102);t.exports=Object.keys||function(t){return r(t,o)}},function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},function(t,e){t.exports=function(t,e){return t===e||t!=t&&e!=e}},function(t,e,n){var r=n(73),o=n(22);t.exports=function(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=r(t.prototype),i=t.apply(n,e);return o(i)?i:n}}},function(t,e,n){var r=n(22),o=Object.create,i=function(){function t(){}return function(e){if(!r(e))return{};if(o)return o(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=i},function(t,e){t.exports=function(t,e){var n=-1,r=t.length;for(e||(e=Array(r));++n<r;)e[n]=t[n];return e}},function(t,e){var n=9007199254740991,r=/^(?:0|[1-9]\d*)$/;t.exports=function(t,e){var o=typeof t;return!!(e=null==e?n:e)&&("number"==o||"symbol"!=o&&r.test(t))&&t>-1&&t%1==0&&t<e}},function(t,e,n){var r=n(190),o=n(191);t.exports=function(t,e,n,i){var u=!n;n||(n={});for(var a=-1,c=e.length;++a<c;){var s=e[a],f=i?i(n[s],t[s],s,n,t):void 0;void 0===f&&(f=t[s]),u?o(n,s,f):r(n,s,f)}return n}},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,o=Array(r);++n<r;)o[n]=e(t[n],n,t);return o}},function(t,e,n){"use strict";n.r(e),n.d(e,"EVENT",(function(){return r})),n.d(e,"VENUE",(function(){return o})),n.d(e,"ORGANIZER",(function(){return i}));var r="tribe_events",o="tribe_venue",i="tribe_organizer"},function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,e,n){var r=n(23),o=n(9).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,e,n){var r=n(79),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,e,n){var r=n(101)("keys"),o=n(70);t.exports=function(t){return r[t]||(r[t]=o(t))}},function(t,e,n){var r=n(218),o=n(236),i=n(238),u=n(239),a=n(240);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,e,n){var r=n(24)(n(11),"Map");t.exports=r},function(t,e,n){var r=n(157);t.exports=function(t){var e=r(t),n=e%1;return e==e?n?e-n:e:0}},function(t,e,n){var r=n(248),o=n(89),i=n(90),u=i&&i.isTypedArray,a=u?o(u):r;t.exports=a},function(t,e){var n=9007199254740991;t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=n}},function(t,e){t.exports=function(t){return function(e){return t(e)}}},function(t,e,n){(function(t){var r=n(137),o=e&&!e.nodeType&&e,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,u=i&&i.exports===o&&r.process,a=function(){try{var t=i&&i.require&&i.require("util").types;return t||u&&u.binding&&u.binding("util")}catch(t){}}();t.exports=a}).call(this,n(66)(t))},function(t,e,n){var r=n(6),o=n(46),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,u=/^\w*$/;t.exports=function(t,e){if(r(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!o(t))||(u.test(t)||!i.test(t)||null!=e&&t in Object(e))}},function(t,e){e.f={}.propertyIsEnumerable},function(t,e,n){"use strict";var r=n(53);function o(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)}t.exports.f=function(t){return new o(t)}},function(t,e,n){var r=n(20),o=n(22),i="[object AsyncFunction]",u="[object Function]",a="[object GeneratorFunction]",c="[object Proxy]";t.exports=function(t){if(!o(t))return!1;var e=r(t);return e==u||e==a||e==i||e==c}},function(t,e,n){var r=n(64),o=n(249),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return o(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}},function(t,e,n){var r=n(55),o=n(250),i=n(251),u=n(252),a=n(253),c=n(254);function s(t){var e=this.__data__=new r(t);this.size=e.size}s.prototype.clear=o,s.prototype.delete=i,s.prototype.get=u,s.prototype.has=a,s.prototype.set=c,t.exports=s},function(t,e){t.exports=function(t,e){for(var n=-1,r=e.length,o=t.length;++n<r;)t[o+n]=e[n];return t}},function(t,e,n){var r=n(169);t.exports=function(t){return null==t?"":r(t)}},function(t,e,n){var r=n(20),o=n(6),i=n(14),u="[object String]";t.exports=function(t){return"string"==typeof t||!o(t)&&i(t)&&r(t)==u}},function(t,e,n){"use strict";var r=n(15),o=function(t){return function(t){return!!t&&"object"==typeof t}(t)&&!function(t){var e=Object.prototype.toString.call(t);return"[object RegExp]"===e||"[object Date]"===e||function(t){return t.$$typeof===i}(t)}(t)};var i="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function u(t,e){return!1!==e.clone&&e.isMergeableObject(t)?c((n=t,Array.isArray(n)?[]:{}),t,e):t;var n}function a(t,e,n){return t.concat(e).map((function(t){return u(t,n)}))}function c(t,e,n){(n=n||{}).arrayMerge=n.arrayMerge||a,n.isMergeableObject=n.isMergeableObject||o;var r=Array.isArray(e);return r===Array.isArray(t)?r?n.arrayMerge(t,e,n):function(t,e,n){var r={};return n.isMergeableObject(t)&&Object.keys(t).forEach((function(e){r[e]=u(t[e],n)})),Object.keys(e).forEach((function(o){n.isMergeableObject(e[o])&&t[o]?r[o]=c(t[o],e[o],n):r[o]=u(e[o],n)})),r}(t,e,n):u(e,n)}c.all=function(t,e){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce((function(t,n){return c(t,n,e)}),{})};var s=c;function f(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e<t.length;e++)n[e]=t[e];return n}return Array.from(t)}var l=function t(e){for(var n=arguments.length,r=Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return e.length<=r.length?e.apply(void 0,r):function(){for(var n=arguments.length,o=Array(n),i=0;i<n;i++)o[i]=arguments[i];return t.apply(void 0,[e].concat(r,o))}},p=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},d=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var u,a=t[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")},h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function v(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var y=function(t){return null!==t&&"object"===(void 0===t?"undefined":h(t))},b=function(t){return"function"==typeof t},g=function(t){return(b(t)||y(t))&&function(t){return Object.values(t).some(b)}(t)},m=function(){for(var t=arguments.length,e=Array(t),n=0;n<t;n++)e[n]=arguments[n];return r.compose.apply(void 0,f(e.reverse()))}((function(t){return Object.entries(t).map((function(t){var e=d(t,2),n=e[0],o=e[1];return g(o)?v({},n,Object(r.combineReducers)(m(o))):b(o)?v({},n,o):void 0}))}),(function(t){return t.filter(y)}),(function(t){return t.reduce((function(t,e){return s(t,e)}),{})}));var _=l((function(t,e){return Object(r.combineReducers)(p({},t,m(e)))}));function x(t){return _(t)}var w=n(124),O=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var u,a=t[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")};var j=l((function(t,e){return e.injectedReducers={},e.injectReducers=function(n){Object.entries(n).forEach((function(n){var r=O(n,2),o=r[0],i=r[1];Object(w.has)(e.injectedReducers,o)||(Object(w.set)(e.injectedReducers,o,i),e.replaceReducer(t(e.injectedReducers)))}))},e}));n.d(e,"b",(function(){return x})),n.d(e,"a",(function(){return j}))},function(t,e,n){var r=n(10),o=n(9),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,e){return i[t]||(i[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n(49)?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,e){t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}},function(t,e,n){var r=n(177),o=n(321),i=n(322),u=n(179),a=n(335),c=n(183),s=n(336),f=n(185),l=n(187),p=n(86),d="Expected a function",h=1,v=2,y=8,b=16,g=32,m=64,_=Math.max;t.exports=function(t,e,n,x,w,O,j,E){var S=e&v;if(!S&&"function"!=typeof t)throw new TypeError(d);var P=x?x.length:0;if(P||(e&=~(g|m),x=w=void 0),j=void 0===j?j:_(p(j),0),E=void 0===E?E:p(E),P-=w?w.length:0,e&m){var A=x,k=w;x=w=void 0}var T=S?void 0:c(t),R=[t,e,n,x,w,A,k,O,j,E];if(T&&s(R,T),t=R[0],e=R[1],n=R[2],x=R[3],w=R[4],!(E=R[9]=void 0===R[9]?S?0:t.length:_(R[9]-P,0))&&e&(y|b)&&(e&=~(y|b)),e&&e!=h)C=e==y||e==b?i(t,e,E):e!=g&&e!=(h|g)||w.length?u.apply(void 0,R):a(t,e,n,x);else var C=o(t,e,n);return l((T?r:f)(C,R),t,e)}},function(t,e){var n="__lodash_placeholder__";t.exports=function(t,e){for(var r=-1,o=t.length,i=0,u=[];++r<o;){var a=t[r];a!==e&&a!==n||(t[r]=n,u[i++]=r)}return u}},function(t,e,n){var r=n(255),o=n(161),i=Object.prototype.propertyIsEnumerable,u=Object.getOwnPropertySymbols,a=u?function(t){return null==t?[]:(t=Object(t),r(u(t),(function(e){return i.call(t,e)})))}:o;t.exports=a},function(t,e,n){var r=n(258),o=n(266),i=n(52),u=n(6),a=n(272);t.exports=function(t){return"function"==typeof t?t:null==t?i:"object"==typeof t?u(t)?o(t[0],t[1]):r(t):a(t)}},function(t,e,n){n(286);for(var r=n(9),o=n(26),i=n(39),u=n(12)("toStringTag"),a="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),c=0;c<a.length;c++){var s=a[c],f=r[s],l=f&&f.prototype;l&&!l[u]&&o(l,u,s),i[s]=i.Array}},function(t,e,n){var r=n(110),o=n(12)("iterator"),i=n(39);t.exports=n(10).getIteratorMethod=function(t){if(null!=t)return t[o]||t["@@iterator"]||i[r(t)]}},function(t,e,n){var r=n(48),o=n(12)("toStringTag"),i="Arguments"==r(function(){return arguments}());t.exports=function(t){var e,n,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?n:i?r(e):"Object"==(u=r(e))&&"function"==typeof e.callee?"Arguments":u}},,function(t,e,n){var r=n(23);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,e,n){var r=n(175),o=n(243),i=n(244);t.exports=function(t,e,n){return e==e?i(t,e,n):r(t,o,n)}},function(t,e){t.exports=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}},function(t,e,n){var r=n(73),o=n(116),i=4294967295;function u(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=i,this.__views__=[]}u.prototype=r(o.prototype),u.prototype.constructor=u,t.exports=u},function(t,e){t.exports=function(){}},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r&&!1!==e(t[n],n,t););return t}},function(t,e,n){var r=n(160)(Object.getPrototypeOf,Object);t.exports=r},function(t,e,n){var r=n(164);t.exports=function(t){var e=new t.constructor(t.byteLength);return new r(e).set(new r(t)),e}},function(t,e){e.f=Object.getOwnPropertySymbols},function(t,e){t.exports=function(t){return void 0===t}},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(284),i=(r=o)&&r.__esModule?r:{default:r};e.default=function(t){return function(){var e=t.apply(this,arguments);return new i.default((function(t,n){return function r(o,u){try{var a=e[o](u),c=a.value}catch(t){return void n(t)}if(!a.done)return i.default.resolve(c).then((function(t){r("next",t)}),(function(t){r("throw",t)}));t(c)}("next")}))}}},function(t,e,n){"use strict";(function(t,r){var o,i=n(197);o="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:r;var u=Object(i.a)(o);e.a=u}).call(this,n(125),n(312)(t))},function(t,e,n){var r,o,i;!function(n,u){"use strict";"object"==typeof t.exports?t.exports=u():(o=[],void 0===(i="function"==typeof(r=u)?r.apply(e,o):r)||(t.exports=i))}(0,(function(){"use strict";var t=Object.prototype.toString;function e(t,e){return null!=t&&Object.prototype.hasOwnProperty.call(t,e)}function n(t){if(!t)return!0;if(o(t)&&0===t.length)return!0;if("string"!=typeof t){for(var n in t)if(e(t,n))return!1;return!0}return!1}function r(e){return t.call(e)}var o=Array.isArray||function(e){return"[object Array]"===t.call(e)};function i(t){var e=parseInt(t);return e.toString()===t?e:t}function u(t){t=t||{};var u=function(t){return Object.keys(u).reduce((function(e,n){return"create"===n?e:("function"==typeof u[n]&&(e[n]=u[n].bind(u,t)),e)}),{})};function a(n,r){return t.includeInheritedProps||"number"==typeof r&&Array.isArray(n)||e(n,r)}function c(t,e){if(a(t,e))return t[e]}function s(t,e,n,r){if("number"==typeof e&&(e=[e]),!e||0===e.length)return t;if("string"==typeof e)return s(t,e.split(".").map(i),n,r);var o=e[0],u=c(t,o);return 1===e.length?(void 0!==u&&r||(t[o]=n),u):(void 0===u&&("number"==typeof e[1]?t[o]=[]:t[o]={}),s(t[o],e.slice(1),n,r))}return u.has=function(n,r){if("number"==typeof r?r=[r]:"string"==typeof r&&(r=r.split(".")),!r||0===r.length)return!!n;for(var u=0;u<r.length;u++){var a=i(r[u]);if(!("number"==typeof a&&o(n)&&a<n.length||(t.includeInheritedProps?a in Object(n):e(n,a))))return!1;n=n[a]}return!0},u.ensureExists=function(t,e,n){return s(t,e,n,!0)},u.set=function(t,e,n,r){return s(t,e,n,r)},u.insert=function(t,e,n,r){var i=u.get(t,e);r=~~r,o(i)||(i=[],u.set(t,e,i)),i.splice(r,0,n)},u.empty=function(t,e){var i,c;if(!n(e)&&(null!=t&&(i=u.get(t,e)))){if("string"==typeof i)return u.set(t,e,"");if(function(t){return"boolean"==typeof t||"[object Boolean]"===r(t)}(i))return u.set(t,e,!1);if("number"==typeof i)return u.set(t,e,0);if(o(i))i.length=0;else{if(!function(t){return"object"==typeof t&&"[object Object]"===r(t)}(i))return u.set(t,e,null);for(c in i)a(i,c)&&delete i[c]}}},u.push=function(t,e){var n=u.get(t,e);o(n)||(n=[],u.set(t,e,n)),n.push.apply(n,Array.prototype.slice.call(arguments,2))},u.coalesce=function(t,e,n){for(var r,o=0,i=e.length;o<i;o++)if(void 0!==(r=u.get(t,e[o])))return r;return n},u.get=function(t,e,n){if("number"==typeof e&&(e=[e]),!e||0===e.length)return t;if(null==t)return n;if("string"==typeof e)return u.get(t,e.split("."),n);var r=i(e[0]),o=c(t,r);return void 0===o?n:1===e.length?o:u.get(t[r],e.slice(1),n)},u.del=function(t,e){if("number"==typeof e&&(e=[e]),null==t)return t;if(n(e))return t;if("string"==typeof e)return u.del(t,e.split("."));var r=i(e[0]);return a(t,r)?1!==e.length?u.del(t[r],e.slice(1)):(o(t)?t.splice(r,1):delete t[r],t):t},u}var a=u();return a.create=u,a.withInheritedProps=u({includeInheritedProps:!0}),a}))},function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},function(t,e,n){var r=n(17),o=n(212),i=n(102),u=n(83)("IE_PROTO"),a=function(){},c=function(){var t,e=n(81)("iframe"),r=i.length;for(e.style.display="none",n(133).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),c=t.F;r--;)delete c.prototype[i[r]];return c()};t.exports=Object.create||function(t,e){var n;return null!==t?(a.prototype=r(t),n=new a,a.prototype=null,n[u]=t):n=c(),void 0===e?n:o(n,e)}},function(t,e,n){var r=n(113),o=n(41),i=n(99),u=n(86),a=n(363),c=Math.max;t.exports=function(t,e,n,s){t=o(t)?t:a(t),n=n&&!s?u(n):0;var f=t.length;return n<0&&(n=c(f+n,0)),i(t)?n<=f&&t.indexOf(e,n)>-1:!!f&&r(t,e,n)>-1}},function(t,e,n){"use strict";n.d(e,"a",(function(){return _})),n.d(e,"c",(function(){return w}));var r=n(4),o=n.n(r),i=n(34),u=n.n(i),a=n(35),c=n.n(a),s=n(27),f=n.n(s),l=n(36),p=n.n(l),d=n(8),h=n.n(d),v=n(2),y=n.n(v),b=n(1),g=n.n(b),m=27,_="tribe:click:proxy",x=function(t){t.target.dispatchEvent(new CustomEvent(_,{bubbles:!0}))},w=function(t){return t.stopPropagation()};e.b=function(t){var e=function(e){function n(t){u()(this,n);var e=f()(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,t));return e.nodeRef=y.a.createRef(),e._eventNamespace=_,e._dispatchClickProxyEvent=x,e._interceptClickProxyEvent=w,e.open=function(){e.setState({isOpen:!0}),e.props.onOpen()},e.handleKeyDown=function(t){t.keyCode===m&&(e.setState({isOpen:!1}),e.props.onClose())},e.handleClick=function(){e.setState({isOpen:!1}),e.props.onClose()},e.state={isOpen:!1},e}return p()(n,e),c()(n,[{key:"componentDidUpdate",value:function(t,e){e.isOpen!==this.state.isOpen&&(this.state.isOpen?this._addEventListeners():this._removeEventListeners())}},{key:"componentWillUnmount",value:function(){this._removeEventListeners()}},{key:"_addEventListeners",value:function(){var t=this;this.node.addEventListener(this._eventNamespace,this._interceptClickProxyEvent),this.blacklistedNodes.forEach((function(e){return e.addEventListener(t._eventNamespace,t._interceptClickProxyEvent)})),document.addEventListener(this._eventNamespace,this.handleClick),document.addEventListener("click",this._dispatchClickProxyEvent),document.addEventListener("keydown",this.handleKeyDown)}},{key:"_removeEventListeners",value:function(){var t=this;this.node.removeEventListener(this._eventNamespace,this._interceptClickProxyEvent),this.blacklistedNodes.forEach((function(e){return e.removeEventListener(t._eventNamespace,t._interceptClickProxyEvent)})),document.removeEventListener("keydown",this.handleKeyDown),document.removeEventListener(this._eventNamespace,this.handleClick),document.removeEventListener("click",this._dispatchClickProxyEvent)}},{key:"render",value:function(){var e={open:this.open,isOpen:this.state.isOpen};return wp.element.createElement("div",{ref:this.nodeRef},wp.element.createElement(t,o()({},this.props,e)))}},{key:"blacklistedNodes",get:function(){var t=this.props.classNameClickBlacklist.join(", ");return Array.from(document.querySelectorAll(t))}},{key:"node",get:function(){return this.nodeRef.current}}]),n}(v.PureComponent);return e.displayName="WithBlockCloser( "+(t.displayName||t.name||"Component "),e.propTypes={onClose:g.a.func,onOpen:g.a.func,classNameClickBlacklist:g.a.arrayOf(g.a.string).isRequired},e.defaultProps={classNameClickBlacklist:[".edit-post-sidebar"],onClose:h.a,onOpen:h.a},e}},function(t,e,n){"use strict";e.__esModule=!0;var r=i(n(402)),o=i(n(405));function i(t){return t&&t.__esModule?t:{default:t}}e.default=function(t,e){if(Array.isArray(t))return t;if((0,r.default)(Object(t)))return function(t,e){var n=[],r=!0,i=!1,u=void 0;try{for(var a,c=(0,o.default)(t);!(r=(a=c.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,u=t}finally{try{!r&&c.return&&c.return()}finally{if(i)throw u}}return n}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(t,e){t.exports=wp.components},function(t,e,n){"use strict";var r=n(49),o=n(18),i=n(167),u=n(26),a=n(39),c=n(211),s=n(62),f=n(215),l=n(12)("iterator"),p=!([].keys&&"next"in[].keys()),d=function(){return this};t.exports=function(t,e,n,h,v,y,b){c(n,e,h);var g,m,_,x=function(t){if(!p&&t in E)return E[t];switch(t){case"keys":case"values":return function(){return new n(this,t)}}return function(){return new n(this,t)}},w=e+" Iterator",O="values"==v,j=!1,E=t.prototype,S=E[l]||E["@@iterator"]||v&&E[v],P=S||x(v),A=v?O?x("entries"):P:void 0,k="Array"==e&&E.entries||S;if(k&&(_=f(k.call(new t)))!==Object.prototype&&_.next&&(s(_,w,!0),r||"function"==typeof _[l]||u(_,l,d)),O&&S&&"values"!==S.name&&(j=!0,P=function(){return S.call(this)}),r&&!b||!p&&!j&&E[l]||u(E,l,P),a[e]=P,a[w]=d,v)if(g={values:O?P:x("values"),keys:y?P:x("keys"),entries:A},b)for(m in g)m in E||i(E,m,g[m]);else o(o.P+o.F*(p||j),e,g);return g}},function(t,e,n){var r=n(48);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},function(t,e,n){var r=n(9).document;t.exports=r&&r.documentElement},function(t,e,n){var r=n(17);t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(e){var i=t.return;throw void 0!==i&&r(i.call(t)),e}}},function(t,e,n){var r=n(39),o=n(12)("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},function(t,e,n){var r=n(12)("iterator"),o=!1;try{var i=[7][r]();i.return=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i=[7],u=i[r]();u.next=function(){return{done:n=!0}},i[r]=function(){return u},t(i)}catch(t){}return n}},function(t,e,n){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(this,n(125))},function(t,e){var n=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return n.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},function(t,e,n){var r=n(260),o=n(14);t.exports=function t(e,n,i,u,a){return e===n||(null==e||null==n||!o(e)&&!o(n)?e!=e&&n!=n:r(e,n,i,u,t,a))}},function(t,e,n){var r=n(151),o=n(261),i=n(152),u=1,a=2;t.exports=function(t,e,n,c,s,f){var l=n&u,p=t.length,d=e.length;if(p!=d&&!(l&&d>p))return!1;var h=f.get(t);if(h&&f.get(e))return h==e;var v=-1,y=!0,b=n&a?new r:void 0;for(f.set(t,e),f.set(e,t);++v<p;){var g=t[v],m=e[v];if(c)var _=l?c(m,g,v,e,t,f):c(g,m,v,t,e,f);if(void 0!==_){if(_)continue;y=!1;break}if(b){if(!o(e,(function(t,e){if(!i(b,e)&&(g===t||s(g,t,n,c,f)))return b.push(e)}))){y=!1;break}}else if(g!==m&&!s(g,m,n,c,f)){y=!1;break}}return f.delete(t),f.delete(e),y}},function(t,e,n){var r=n(22);t.exports=function(t){return t==t&&!r(t)}},function(t,e){t.exports=function(t,e){return function(n){return null!=n&&(n[t]===e&&(void 0!==e||t in Object(n)))}}},function(t,e,n){var r=n(144),o=n(47);t.exports=function(t,e){for(var n=0,i=(e=r(e,t)).length;null!=t&&n<i;)t=t[o(e[n++])];return n&&n==i?t:void 0}},function(t,e,n){var r=n(6),o=n(91),i=n(165),u=n(98);t.exports=function(t,e){return r(t)?t:o(t,e)?[t]:i(u(t))}},function(t,e,n){var r=n(17),o=n(53),i=n(12)("species");t.exports=function(t,e){var n,u=r(t).constructor;return void 0===u||null==(n=r(u)[i])?e:o(n)}},function(t,e,n){var r,o,i,u=n(38),a=n(292),c=n(133),s=n(81),f=n(9),l=f.process,p=f.setImmediate,d=f.clearImmediate,h=f.MessageChannel,v=f.Dispatch,y=0,b={},g=function(){var t=+this;if(b.hasOwnProperty(t)){var e=b[t];delete b[t],e()}},m=function(t){g.call(t.data)};p&&d||(p=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return b[++y]=function(){a("function"==typeof t?t:Function(t),e)},r(y),y},d=function(t){delete b[t]},"process"==n(48)(l)?r=function(t){l.nextTick(u(g,t,1))}:v&&v.now?r=function(t){v.now(u(g,t,1))}:h?(i=(o=new h).port2,o.port1.onmessage=m,r=u(i.postMessage,i,1)):f.addEventListener&&"function"==typeof postMessage&&!f.importScripts?(r=function(t){f.postMessage(t+"","*")},f.addEventListener("message",m,!1)):r="onreadystatechange"in s("script")?function(t){c.appendChild(s("script")).onreadystatechange=function(){c.removeChild(this),g.call(t)}}:function(t){setTimeout(u(g,t,1),0)}),t.exports={set:p,clear:d}},function(t,e){t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},function(t,e,n){var r=n(17),o=n(23),i=n(93);t.exports=function(t,e){if(r(t),o(e)&&e.constructor===t)return e;var n=i.f(t);return(0,n.resolve)(e),n.promise}},,function(t,e,n){"use strict";n.r(e);var r=n(78),o=n(29),i=n(60),u=n(100),a=Object(u.b)({plugins:i.default,forms:o.default});n.d(e,"default",(function(){return a})),n.d(e,"editor",(function(){return r})),n.d(e,"forms",(function(){return o})),n.d(e,"plugins",(function(){return i}))},function(t,e,n){var r=n(84),o=n(241),i=n(242);function u(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new r;++e<n;)this.add(t[e])}u.prototype.add=u.prototype.push=o,u.prototype.has=i,t.exports=u},function(t,e){t.exports=function(t,e){return t.has(e)}},function(t,e,n){var r=n(24)(n(11),"Set");t.exports=r},function(t,e,n){var r=n(24)(n(11),"WeakMap");t.exports=r},function(t,e,n){var r=n(331),o=n(186)(r);t.exports=o},function(t,e){t.exports=function(t){return t.placeholder}},function(t,e,n){var r=n(158),o=1/0,i=17976931348623157e292;t.exports=function(t){return t?(t=r(t))===o||t===-o?(t<0?-1:1)*i:t==t?t:0:0===t?t:0}},function(t,e,n){var r=n(22),o=n(46),i=NaN,u=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,s=/^0o[0-7]+$/i,f=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(o(t))return i;if(r(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=r(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(u,"");var n=c.test(t);return n||s.test(t)?f(t.slice(2),n?2:8):a.test(t)?i:+t}},function(t,e,n){var r=n(245),o=n(58),i=n(6),u=n(59),a=n(75),c=n(87),s=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=i(t),f=!n&&o(t),l=!n&&!f&&u(t),p=!n&&!f&&!l&&c(t),d=n||f||l||p,h=d?r(t.length,String):[],v=h.length;for(var y in t)!e&&!s.call(t,y)||d&&("length"==y||l&&("offset"==y||"parent"==y)||p&&("buffer"==y||"byteLength"==y||"byteOffset"==y)||a(y,v))||h.push(y);return h}},function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},function(t,e){t.exports=function(){return[]}},function(t,e,n){var r=n(163),o=n(106),i=n(40);t.exports=function(t){return r(t,i,o)}},function(t,e,n){var r=n(97),o=n(6);t.exports=function(t,e,n){var i=e(t);return o(t)?i:r(i,n(t))}},function(t,e,n){var r=n(11).Uint8Array;t.exports=r},function(t,e,n){var r=n(267),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,u=r((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(o,(function(t,n,r,o){e.push(r?o.replace(i,"$1"):n||t)})),e}));t.exports=u},function(t,e,n){t.exports=!n(19)&&!n(50)((function(){return 7!=Object.defineProperty(n(81)("div"),"a",{get:function(){return 7}}).a}))},function(t,e,n){t.exports=n(26)},function(t,e,n){var r=n(31),o=n(45),i=n(213)(!1),u=n(83)("IE_PROTO");t.exports=function(t,e){var n,a=o(t),c=0,s=[];for(n in a)n!=u&&r(a,n)&&s.push(n);for(;e.length>c;)r(a,n=e[c++])&&(~i(s,n)||s.push(n));return s}},function(t,e,n){var r=n(32),o=n(77),i=n(6),u=n(46),a=1/0,c=r?r.prototype:void 0,s=c?c.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(i(e))return o(e,t)+"";if(u(e))return s?s.call(e):"";var n=e+"";return"0"==n&&1/e==-a?"-0":n}},function(t,e){},function(t,e,n){e.f=n(12)},function(t,e,n){var r=n(9),o=n(10),i=n(49),u=n(171),a=n(21).f;t.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:r.Symbol||{});"_"==t.charAt(0)||t in e||a(e,t,{value:u.f(t)})}},,function(t,e,n){var r=n(113);t.exports=function(t,e){return!!(null==t?0:t.length)&&r(t,e,0)>-1}},function(t,e){t.exports=function(t,e,n,r){for(var o=t.length,i=n+(r?1:-1);r?i--:++i<o;)if(e(t[i],i,t))return i;return-1}},function(t,e){t.exports={}},function(t,e,n){var r=n(52),o=n(178),i=o?function(t,e){return o.set(t,e),t}:r;t.exports=i},function(t,e,n){var r=n(154),o=r&&new r;t.exports=o},function(t,e,n){var r=n(180),o=n(181),i=n(323),u=n(72),a=n(182),c=n(156),s=n(334),f=n(105),l=n(11),p=1,d=2,h=8,v=16,y=128,b=512;t.exports=function t(e,n,g,m,_,x,w,O,j,E){var S=n&y,P=n&p,A=n&d,k=n&(h|v),T=n&b,R=A?void 0:u(e);return function p(){for(var d=arguments.length,h=Array(d),v=d;v--;)h[v]=arguments[v];if(k)var y=c(p),b=i(h,y);if(m&&(h=r(h,m,_,k)),x&&(h=o(h,x,w,k)),d-=b,k&&d<E){var C=f(h,y);return a(e,n,t,p.placeholder,g,h,C,O,j,E-d)}var I=P?g:this,M=A?I[e]:e;return d=h.length,O?h=s(h,O):T&&d>1&&h.reverse(),S&&j<d&&(h.length=j),this&&this!==l&&this instanceof p&&(M=R||u(M)),M.apply(I,h)}}},function(t,e){var n=Math.max;t.exports=function(t,e,r,o){for(var i=-1,u=t.length,a=r.length,c=-1,s=e.length,f=n(u-a,0),l=Array(s+f),p=!o;++c<s;)l[c]=e[c];for(;++i<a;)(p||i<u)&&(l[r[i]]=t[i]);for(;f--;)l[c++]=t[i++];return l}},function(t,e){var n=Math.max;t.exports=function(t,e,r,o){for(var i=-1,u=t.length,a=-1,c=r.length,s=-1,f=e.length,l=n(u-c,0),p=Array(l+f),d=!o;++i<l;)p[i]=t[i];for(var h=i;++s<f;)p[h+s]=e[s];for(;++a<c;)(d||i<u)&&(p[h+r[a]]=t[i++]);return p}},function(t,e,n){var r=n(324),o=n(185),i=n(187),u=1,a=2,c=4,s=8,f=32,l=64;t.exports=function(t,e,n,p,d,h,v,y,b,g){var m=e&s;e|=m?f:l,(e&=~(m?l:f))&c||(e&=~(u|a));var _=[t,e,d,m?h:void 0,m?v:void 0,m?void 0:h,m?void 0:v,y,b,g],x=n.apply(void 0,_);return r(t)&&o(x,_),x.placeholder=p,i(x,t,e)}},function(t,e,n){var r=n(178),o=n(8),i=r?function(t){return r.get(t)}:o;t.exports=i},function(t,e,n){var r=n(73),o=n(116);function i(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=void 0}i.prototype=r(o.prototype),i.prototype.constructor=i,t.exports=i},function(t,e,n){var r=n(177),o=n(186)(r);t.exports=o},function(t,e){var n=800,r=16,o=Date.now;t.exports=function(t){var e=0,i=0;return function(){var u=o(),a=r-(u-i);if(i=u,a>0){if(++e>=n)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}},function(t,e,n){var r=n(329),o=n(330),i=n(155),u=n(333);t.exports=function(t,e,n){var a=e+"";return i(t,o(a,u(r(a),n)))}},function(t,e,n){var r=n(24),o=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();t.exports=o},function(t,e,n){var r=n(76),o=n(40);t.exports=function(t,e){return t&&r(e,o(e),t)}},function(t,e,n){var r=n(191),o=n(71),i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n){var u=t[e];i.call(t,e)&&o(u,n)&&(void 0!==n||e in t)||r(t,e,n)}},function(t,e,n){var r=n(188);t.exports=function(t,e,n){"__proto__"==e&&r?r(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}},function(t,e,n){var r=n(96),o=n(117),i=n(190),u=n(189),a=n(338),c=n(341),s=n(74),f=n(342),l=n(343),p=n(162),d=n(344),h=n(43),v=n(345),y=n(346),b=n(351),g=n(6),m=n(59),_=n(352),x=n(22),w=n(354),O=n(40),j=1,E=2,S=4,P="[object Arguments]",A="[object Function]",k="[object GeneratorFunction]",T="[object Object]",R={};R[P]=R["[object Array]"]=R["[object ArrayBuffer]"]=R["[object DataView]"]=R["[object Boolean]"]=R["[object Date]"]=R["[object Float32Array]"]=R["[object Float64Array]"]=R["[object Int8Array]"]=R["[object Int16Array]"]=R["[object Int32Array]"]=R["[object Map]"]=R["[object Number]"]=R[T]=R["[object RegExp]"]=R["[object Set]"]=R["[object String]"]=R["[object Symbol]"]=R["[object Uint8Array]"]=R["[object Uint8ClampedArray]"]=R["[object Uint16Array]"]=R["[object Uint32Array]"]=!0,R["[object Error]"]=R[A]=R["[object WeakMap]"]=!1,t.exports=function t(e,n,C,I,M,L){var N,F=n&j,D=n&E,B=n&S;if(C&&(N=M?C(e,I,M,L):C(e)),void 0!==N)return N;if(!x(e))return e;var W=g(e);if(W){if(N=v(e),!F)return s(e,N)}else{var U=h(e),q=U==A||U==k;if(m(e))return c(e,F);if(U==T||U==P||q&&!M){if(N=D||q?{}:b(e),!F)return D?l(e,a(N,e)):f(e,u(N,e))}else{if(!R[U])return M?e:{};N=y(e,U,F)}}L||(L=new r);var z=L.get(e);if(z)return z;L.set(e,N),w(e)?e.forEach((function(r){N.add(t(r,n,C,r,e,L))})):_(e)&&e.forEach((function(r,o){N.set(o,t(r,n,C,o,e,L))}));var G=B?D?d:p:D?keysIn:O,V=W?void 0:G(e);return o(V||e,(function(r,o){V&&(r=e[o=r]),i(N,o,t(r,n,C,o,e,L))})),N}},function(t,e,n){var r=n(159),o=n(339),i=n(41);t.exports=function(t){return i(t)?r(t,!0):o(t)}},function(t,e,n){var r=n(97),o=n(118),i=n(106),u=n(161),a=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)r(e,i(t)),t=o(t);return e}:u;t.exports=a},function(t,e,n){var r=n(104),o=8;function i(t,e,n){var u=r(t,o,void 0,void 0,void 0,void 0,void 0,e=n?void 0:e);return u.placeholder=i.placeholder,u}i.placeholder={},t.exports=i},function(t,e,n){var r=n(275);t.exports=function(t){return(null==t?0:t.length)?r(t,1):[]}},function(t,e,n){"use strict";function r(t){var e,n=t.Symbol;return"function"==typeof n?n.observable?e=n.observable:(e=n("observable"),n.observable=e):e="@@observable",e}n.d(e,"a",(function(){return r}))},function(t,e,n){var r=n(313);t.exports=function(t){return t&&t.length?r(t):[]}},function(t,e,n){var r=n(316)("curry",n(195));r.placeholder=n(176),t.exports=r},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(205),i=(r=o)&&r.__esModule?r:{default:r};e.default=function(t,e,n){return e in t?(0,i.default)(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}},function(t,e,n){"use strict";var r=Object.prototype.hasOwnProperty;function o(t){return decodeURIComponent(t.replace(/\+/g," "))}e.stringify=function(t,e){e=e||"";var n=[];for(var o in"string"!=typeof e&&(e="?"),t)r.call(t,o)&&n.push(encodeURIComponent(o)+"="+encodeURIComponent(t[o]));return n.length?e+n.join("&"):""},e.parse=function(t){for(var e,n=/([^=?&]+)=?([^&]*)/g,r={};e=n.exec(t);){var i=o(e[1]),u=o(e[2]);i in r||(r[i]=u)}return r}},function(t,e,n){var r=n(367),o=n(157),i=n(158);t.exports=function(t,e,n){return e=o(e),void 0===n?(n=e,e=0):n=o(n),t=i(t),r(t,e,n)}},function(t,e,n){"use strict";t.exports=function(t,e,n,r,o,i,u,a){if(!t){var c;if(void 0===e)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var s=[n,r,o,i,u,a],f=0;(c=new Error(e.replace(/%s/g,(function(){return s[f++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},function(t,e,n){"use strict";e.__esModule=!0;var r=u(n(374)),o=u(n(376)),i="function"==typeof o.default&&"symbol"==typeof r.default?function(t){return typeof t}:function(t){return t&&"function"==typeof o.default&&t.constructor===o.default&&t!==o.default.prototype?"symbol":typeof t};function u(t){return t&&t.__esModule?t:{default:t}}e.default="function"==typeof o.default&&"symbol"===i(r.default)?function(t){return void 0===t?"undefined":i(t)}:function(t){return t&&"function"==typeof o.default&&t.constructor===o.default&&t!==o.default.prototype?"symbol":void 0===t?"undefined":i(t)}},function(t,e,n){t.exports={default:n(365),__esModule:!0}},function(t,e){!function(t){"use strict";if(!t.fetch){var e={searchParams:"URLSearchParams"in t,iterable:"Symbol"in t&&"iterator"in Symbol,blob:"FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),formData:"FormData"in t,arrayBuffer:"ArrayBuffer"in t};if(e.arrayBuffer)var n=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],r=function(t){return t&&DataView.prototype.isPrototypeOf(t)},o=ArrayBuffer.isView||function(t){return t&&n.indexOf(Object.prototype.toString.call(t))>-1};f.prototype.append=function(t,e){t=a(t),e=c(e);var n=this.map[t];this.map[t]=n?n+","+e:e},f.prototype.delete=function(t){delete this.map[a(t)]},f.prototype.get=function(t){return t=a(t),this.has(t)?this.map[t]:null},f.prototype.has=function(t){return this.map.hasOwnProperty(a(t))},f.prototype.set=function(t,e){this.map[a(t)]=c(e)},f.prototype.forEach=function(t,e){for(var n in this.map)this.map.hasOwnProperty(n)&&t.call(e,this.map[n],n,this)},f.prototype.keys=function(){var t=[];return this.forEach((function(e,n){t.push(n)})),s(t)},f.prototype.values=function(){var t=[];return this.forEach((function(e){t.push(e)})),s(t)},f.prototype.entries=function(){var t=[];return this.forEach((function(e,n){t.push([n,e])})),s(t)},e.iterable&&(f.prototype[Symbol.iterator]=f.prototype.entries);var i=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];y.prototype.clone=function(){return new y(this,{body:this._bodyInit})},v.call(y.prototype),v.call(g.prototype),g.prototype.clone=function(){return new g(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new f(this.headers),url:this.url})},g.error=function(){var t=new g(null,{status:0,statusText:""});return t.type="error",t};var u=[301,302,303,307,308];g.redirect=function(t,e){if(-1===u.indexOf(e))throw new RangeError("Invalid status code");return new g(null,{status:e,headers:{location:t}})},t.Headers=f,t.Request=y,t.Response=g,t.fetch=function(t,n){return new Promise((function(r,o){var i=new y(t,n),u=new XMLHttpRequest;u.onload=function(){var t,e,n={status:u.status,statusText:u.statusText,headers:(t=u.getAllResponseHeaders()||"",e=new f,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(t){var n=t.split(":"),r=n.shift().trim();if(r){var o=n.join(":").trim();e.append(r,o)}})),e)};n.url="responseURL"in u?u.responseURL:n.headers.get("X-Request-URL");var o="response"in u?u.response:u.responseText;r(new g(o,n))},u.onerror=function(){o(new TypeError("Network request failed"))},u.ontimeout=function(){o(new TypeError("Network request failed"))},u.open(i.method,i.url,!0),"include"===i.credentials?u.withCredentials=!0:"omit"===i.credentials&&(u.withCredentials=!1),"responseType"in u&&e.blob&&(u.responseType="blob"),i.headers.forEach((function(t,e){u.setRequestHeader(e,t)})),u.send(void 0===i._bodyInit?null:i._bodyInit)}))},t.fetch.polyfill=!0}function a(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function c(t){return"string"!=typeof t&&(t=String(t)),t}function s(t){var n={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return e.iterable&&(n[Symbol.iterator]=function(){return n}),n}function f(t){this.map={},t instanceof f?t.forEach((function(t,e){this.append(e,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(e){this.append(e,t[e])}),this)}function l(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function p(t){return new Promise((function(e,n){t.onload=function(){e(t.result)},t.onerror=function(){n(t.error)}}))}function d(t){var e=new FileReader,n=p(e);return e.readAsArrayBuffer(t),n}function h(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function v(){return this.bodyUsed=!1,this._initBody=function(t){if(this._bodyInit=t,t)if("string"==typeof t)this._bodyText=t;else if(e.blob&&Blob.prototype.isPrototypeOf(t))this._bodyBlob=t;else if(e.formData&&FormData.prototype.isPrototypeOf(t))this._bodyFormData=t;else if(e.searchParams&&URLSearchParams.prototype.isPrototypeOf(t))this._bodyText=t.toString();else if(e.arrayBuffer&&e.blob&&r(t))this._bodyArrayBuffer=h(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer]);else{if(!e.arrayBuffer||!ArrayBuffer.prototype.isPrototypeOf(t)&&!o(t))throw new Error("unsupported BodyInit type");this._bodyArrayBuffer=h(t)}else this._bodyText="";this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):e.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},e.blob&&(this.blob=function(){var t=l(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?l(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(d)}),this.text=function(){var t,e,n,r=l(this);if(r)return r;if(this._bodyBlob)return t=this._bodyBlob,e=new FileReader,n=p(e),e.readAsText(t),n;if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),n=new Array(e.length),r=0;r<e.length;r++)n[r]=String.fromCharCode(e[r]);return n.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},e.formData&&(this.formData=function(){return this.text().then(b)}),this.json=function(){return this.text().then(JSON.parse)},this}function y(t,e){var n,r,o=(e=e||{}).body;if(t instanceof y){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new f(t.headers)),this.method=t.method,this.mode=t.mode,o||null==t._bodyInit||(o=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||"omit",!e.headers&&this.headers||(this.headers=new f(e.headers)),this.method=(n=e.method||this.method||"GET",r=n.toUpperCase(),i.indexOf(r)>-1?r:n),this.mode=e.mode||this.mode||null,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(o)}function b(t){var e=new FormData;return t.trim().split("&").forEach((function(t){if(t){var n=t.split("="),r=n.shift().replace(/\+/g," "),o=n.join("=").replace(/\+/g," ");e.append(decodeURIComponent(r),decodeURIComponent(o))}})),e}function g(t,e){e||(e={}),this.type="default",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in e?e.statusText:"OK",this.headers=new f(e.headers),this.url=e.url||"",this._initBody(t)}}("undefined"!=typeof self?self:this)},function(t,e,n){"use strict";function r(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}var o=n(2),i=n.n(o),u=n(1),a=n.n(u),c=a.a.shape({trySubscribe:a.a.func.isRequired,tryUnsubscribe:a.a.func.isRequired,notifyNestedSubs:a.a.func.isRequired,isSubscribed:a.a.func.isRequired}),s=a.a.shape({subscribe:a.a.func.isRequired,dispatch:a.a.func.isRequired,getState:a.a.func.isRequired});i.a.forwardRef;!function(t){var e;void 0===t&&(t="store");var n=t+"Subscription",i=function(e){r(u,e);var i=u.prototype;function u(n,r){var o;return(o=e.call(this,n,r)||this)[t]=n.store,o}return i.getChildContext=function(){var e;return(e={})[t]=this[t],e[n]=null,e},i.render=function(){return o.Children.only(this.props.children)},u}(o.Component);i.propTypes={store:s.isRequired,children:a.a.element.isRequired},i.childContextTypes=((e={})[t]=s.isRequired,e[n]=c,e)}();function f(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function l(){return(l=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t}).apply(this,arguments)}function p(t,e){if(null==t)return{};var n,r,o={},i=Object.keys(t);for(r=0;r<i.length;r++)n=i[r],e.indexOf(n)>=0||(o[n]=t[n]);return o}var d=n(372),h=n.n(d),v=n(203),y=n.n(v),b=n(301),g=null,m={notify:function(){}};var _=function(){function t(t,e,n){this.store=t,this.parentSub=e,this.onStateChange=n,this.unsubscribe=null,this.listeners=m}var e=t.prototype;return e.addNestedSub=function(t){return this.trySubscribe(),this.listeners.subscribe(t)},e.notifyNestedSubs=function(){this.listeners.notify()},e.isSubscribed=function(){return Boolean(this.unsubscribe)},e.trySubscribe=function(){var t,e;this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.onStateChange):this.store.subscribe(this.onStateChange),this.listeners=(t=[],e=[],{clear:function(){e=g,t=g},notify:function(){for(var n=t=e,r=0;r<n.length;r++)n[r]()},get:function(){return e},subscribe:function(n){var r=!0;return e===t&&(e=t.slice()),e.push(n),function(){r&&t!==g&&(r=!1,e===t&&(e=t.slice()),e.splice(e.indexOf(n),1))}}}))},e.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null,this.listeners.clear(),this.listeners=m)},t}(),x=void 0!==i.a.forwardRef,w=0,O={};function j(){}function E(t,e){var n,i;void 0===e&&(e={});var u=e,a=u.getDisplayName,d=void 0===a?function(t){return"ConnectAdvanced("+t+")"}:a,v=u.methodName,g=void 0===v?"connectAdvanced":v,m=u.renderCountProp,E=void 0===m?void 0:m,S=u.shouldHandleStateChanges,P=void 0===S||S,A=u.storeKey,k=void 0===A?"store":A,T=u.withRef,R=void 0!==T&&T,C=p(u,["getDisplayName","methodName","renderCountProp","shouldHandleStateChanges","storeKey","withRef"]),I=k+"Subscription",M=w++,L=((n={})[k]=s,n[I]=c,n),N=((i={})[I]=c,i);return function(e){y()(Object(b.isValidElementType)(e),"You must pass a component to the function returned by "+g+". Instead received "+JSON.stringify(e));var n=e.displayName||e.name||"Component",i=d(n),u=l({},C,{getDisplayName:d,methodName:g,renderCountProp:E,shouldHandleStateChanges:P,storeKey:k,withRef:R,displayName:i,wrappedComponentName:n,WrappedComponent:e}),a=function(n){function a(t,e){var r;return(r=n.call(this,t,e)||this).version=M,r.state={},r.renderCount=0,r.store=t[k]||e[k],r.propsMode=Boolean(t[k]),r.setWrappedInstance=r.setWrappedInstance.bind(f(f(r))),y()(r.store,'Could not find "'+k+'" in either the context or props of "'+i+'". Either wrap the root component in a <Provider>, or explicitly pass "'+k+'" as a prop to "'+i+'".'),r.initSelector(),r.initSubscription(),r}r(a,n);var c=a.prototype;return c.getChildContext=function(){var t,e=this.propsMode?null:this.subscription;return(t={})[I]=e||this.context[I],t},c.componentDidMount=function(){P&&(this.subscription.trySubscribe(),this.selector.run(this.props),this.selector.shouldComponentUpdate&&this.forceUpdate())},c.componentWillReceiveProps=function(t){this.selector.run(t)},c.shouldComponentUpdate=function(){return this.selector.shouldComponentUpdate},c.componentWillUnmount=function(){this.subscription&&this.subscription.tryUnsubscribe(),this.subscription=null,this.notifyNestedSubs=j,this.store=null,this.selector.run=j,this.selector.shouldComponentUpdate=!1},c.getWrappedInstance=function(){return y()(R,"To access the wrapped instance, you need to specify { withRef: true } in the options argument of the "+g+"() call."),this.wrappedInstance},c.setWrappedInstance=function(t){this.wrappedInstance=t},c.initSelector=function(){var e=t(this.store.dispatch,u);this.selector=function(t,e){var n={run:function(r){try{var o=t(e.getState(),r);(o!==n.props||n.error)&&(n.shouldComponentUpdate=!0,n.props=o,n.error=null)}catch(t){n.shouldComponentUpdate=!0,n.error=t}}};return n}(e,this.store),this.selector.run(this.props)},c.initSubscription=function(){if(P){var t=(this.propsMode?this.props:this.context)[I];this.subscription=new _(this.store,t,this.onStateChange.bind(this)),this.notifyNestedSubs=this.subscription.notifyNestedSubs.bind(this.subscription)}},c.onStateChange=function(){this.selector.run(this.props),this.selector.shouldComponentUpdate?(this.componentDidUpdate=this.notifyNestedSubsOnComponentDidUpdate,this.setState(O)):this.notifyNestedSubs()},c.notifyNestedSubsOnComponentDidUpdate=function(){this.componentDidUpdate=void 0,this.notifyNestedSubs()},c.isSubscribed=function(){return Boolean(this.subscription)&&this.subscription.isSubscribed()},c.addExtraProps=function(t){if(!(R||E||this.propsMode&&this.subscription))return t;var e=l({},t);return R&&(e.ref=this.setWrappedInstance),E&&(e[E]=this.renderCount++),this.propsMode&&this.subscription&&(e[I]=this.subscription),e},c.render=function(){var t=this.selector;if(t.shouldComponentUpdate=!1,t.error)throw t.error;return Object(o.createElement)(e,this.addExtraProps(t.props))},a}(o.Component);return x&&(a.prototype.UNSAFE_componentWillReceiveProps=a.prototype.componentWillReceiveProps,delete a.prototype.componentWillReceiveProps),a.WrappedComponent=e,a.displayName=i,a.childContextTypes=N,a.contextTypes=L,a.propTypes=L,h()(a,e)}}var S=Object.prototype.hasOwnProperty;function P(t,e){return t===e?0!==t||0!==e||1/t==1/e:t!=t&&e!=e}function A(t,e){if(P(t,e))return!0;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return!1;var n=Object.keys(t),r=Object.keys(e);if(n.length!==r.length)return!1;for(var o=0;o<n.length;o++)if(!S.call(e,n[o])||!P(t[n[o]],e[n[o]]))return!1;return!0}var k=n(15);function T(t){return function(e,n){var r=t(e,n);function o(){return r}return o.dependsOnOwnProps=!1,o}}function R(t){return null!==t.dependsOnOwnProps&&void 0!==t.dependsOnOwnProps?Boolean(t.dependsOnOwnProps):1!==t.length}function C(t,e){return function(e,n){n.displayName;var r=function(t,e){return r.dependsOnOwnProps?r.mapToProps(t,e):r.mapToProps(t)};return r.dependsOnOwnProps=!0,r.mapToProps=function(e,n){r.mapToProps=t,r.dependsOnOwnProps=R(t);var o=r(e,n);return"function"==typeof o&&(r.mapToProps=o,r.dependsOnOwnProps=R(o),o=r(e,n)),o},r}}var I=[function(t){return"function"==typeof t?C(t):void 0},function(t){return t?void 0:T((function(t){return{dispatch:t}}))},function(t){return t&&"object"==typeof t?T((function(e){return Object(k.bindActionCreators)(t,e)})):void 0}];var M=[function(t){return"function"==typeof t?C(t):void 0},function(t){return t?void 0:T((function(){return{}}))}];function L(t,e,n){return l({},n,t,e)}var N=[function(t){return"function"==typeof t?function(t){return function(e,n){n.displayName;var r,o=n.pure,i=n.areMergedPropsEqual,u=!1;return function(e,n,a){var c=t(e,n,a);return u?o&&i(c,r)||(r=c):(u=!0,r=c),r}}}(t):void 0},function(t){return t?void 0:function(){return L}}];function F(t,e,n,r){return function(o,i){return n(t(o,i),e(r,i),i)}}function D(t,e,n,r,o){var i,u,a,c,s,f=o.areStatesEqual,l=o.areOwnPropsEqual,p=o.areStatePropsEqual,d=!1;function h(o,d){var h,v,y=!l(d,u),b=!f(o,i);return i=o,u=d,y&&b?(a=t(i,u),e.dependsOnOwnProps&&(c=e(r,u)),s=n(a,c,u)):y?(t.dependsOnOwnProps&&(a=t(i,u)),e.dependsOnOwnProps&&(c=e(r,u)),s=n(a,c,u)):b?(h=t(i,u),v=!p(h,a),a=h,v&&(s=n(a,c,u)),s):s}return function(o,f){return d?h(o,f):(a=t(i=o,u=f),c=e(r,u),s=n(a,c,u),d=!0,s)}}function B(t,e){var n=e.initMapStateToProps,r=e.initMapDispatchToProps,o=e.initMergeProps,i=p(e,["initMapStateToProps","initMapDispatchToProps","initMergeProps"]),u=n(t,i),a=r(t,i),c=o(t,i);return(i.pure?D:F)(u,a,c,t,i)}function W(t,e,n){for(var r=e.length-1;r>=0;r--){var o=e[r](t);if(o)return o}return function(e,r){throw new Error("Invalid value of type "+typeof t+" for "+n+" argument when connecting component "+r.wrappedComponentName+".")}}function U(t,e){return t===e}var q,z,G,V,$,H,K,Y,J,Q,X,Z,tt=(G=(z=void 0===q?{}:q).connectHOC,V=void 0===G?E:G,$=z.mapStateToPropsFactories,H=void 0===$?M:$,K=z.mapDispatchToPropsFactories,Y=void 0===K?I:K,J=z.mergePropsFactories,Q=void 0===J?N:J,X=z.selectorFactory,Z=void 0===X?B:X,function(t,e,n,r){void 0===r&&(r={});var o=r,i=o.pure,u=void 0===i||i,a=o.areStatesEqual,c=void 0===a?U:a,s=o.areOwnPropsEqual,f=void 0===s?A:s,d=o.areStatePropsEqual,h=void 0===d?A:d,v=o.areMergedPropsEqual,y=void 0===v?A:v,b=p(o,["pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual"]),g=W(t,H,"mapStateToProps"),m=W(e,Y,"mapDispatchToProps"),_=W(n,Q,"mergeProps");return V(Z,l({methodName:"connect",getDisplayName:function(t){return"Connect("+t+")"},shouldHandleStateChanges:Boolean(t),initMapStateToProps:g,initMapDispatchToProps:m,initMergeProps:_,pure:u,areStatesEqual:c,areOwnPropsEqual:f,areStatePropsEqual:h,areMergedPropsEqual:y},b))});n.d(e,"a",(function(){return tt}))},function(t,e,n){t.exports={default:n(209),__esModule:!0}},function(t,e,n){n(61),n(216),t.exports=n(10).Array.from},function(t,e,n){var r=n(79),o=n(80);t.exports=function(t){return function(e,n){var i,u,a=String(o(e)),c=r(n),s=a.length;return c<0||c>=s?t?"":void 0:(i=a.charCodeAt(c))<55296||i>56319||c+1===s||(u=a.charCodeAt(c+1))<56320||u>57343?t?a.charAt(c):i:t?a.slice(c,c+2):u-56320+(i-55296<<10)+65536}}},function(t,e,n){"use strict";var r=n(126),o=n(51),i=n(62),u={};n(26)(u,n(12)("iterator"),(function(){return this})),t.exports=function(t,e,n){t.prototype=r(u,{next:o(1,n)}),i(t,e+" Iterator")}},function(t,e,n){var r=n(21),o=n(17),i=n(69);t.exports=n(19)?Object.defineProperties:function(t,e){o(t);for(var n,u=i(e),a=u.length,c=0;a>c;)r.f(t,n=u[c++],e[n]);return t}},function(t,e,n){var r=n(45),o=n(82),i=n(214);t.exports=function(t){return function(e,n,u){var a,c=r(e),s=o(c.length),f=i(u,s);if(t&&n!=n){for(;s>f;)if((a=c[f++])!=a)return!0}else for(;s>f;f++)if((t||f in c)&&c[f]===n)return t||f||0;return!t&&-1}}},function(t,e,n){var r=n(79),o=Math.max,i=Math.min;t.exports=function(t,e){return(t=r(t))<0?o(t+e,0):i(t,e)}},function(t,e,n){var r=n(31),o=n(63),i=n(83)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},function(t,e,n){"use strict";var r=n(38),o=n(18),i=n(63),u=n(134),a=n(135),c=n(82),s=n(217),f=n(109);o(o.S+o.F*!n(136)((function(t){Array.from(t)})),"Array",{from:function(t){var e,n,o,l,p=i(t),d="function"==typeof this?this:Array,h=arguments.length,v=h>1?arguments[1]:void 0,y=void 0!==v,b=0,g=f(p);if(y&&(v=r(v,h>2?arguments[2]:void 0,2)),null==g||d==Array&&a(g))for(n=new d(e=c(p.length));e>b;b++)s(n,b,y?v(p[b],b):p[b]);else for(l=g.call(p),n=new d;!(o=l.next()).done;b++)s(n,b,y?u(l,v,[o.value,b],!0):o.value);return n.length=b,n}})},function(t,e,n){"use strict";var r=n(21),o=n(51);t.exports=function(t,e,n){e in t?r.f(t,e,o(0,n)):t[e]=n}},function(t,e,n){var r=n(219),o=n(55),i=n(85);t.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},function(t,e,n){var r=n(220),o=n(227),i=n(228),u=n(229),a=n(230);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,e,n){var r=n(54);t.exports=function(){this.__data__=r?r(null):{},this.size=0}},function(t,e,n){var r=n(94),o=n(224),i=n(22),u=n(138),a=/^\[object .+?Constructor\]$/,c=Function.prototype,s=Object.prototype,f=c.toString,l=s.hasOwnProperty,p=RegExp("^"+f.call(l).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||o(t))&&(r(t)?p:a).test(u(t))}},function(t,e,n){var r=n(32),o=Object.prototype,i=o.hasOwnProperty,u=o.toString,a=r?r.toStringTag:void 0;t.exports=function(t){var e=i.call(t,a),n=t[a];try{t[a]=void 0;var r=!0}catch(t){}var o=u.call(t);return r&&(e?t[a]=n:delete t[a]),o}},function(t,e){var n=Object.prototype.toString;t.exports=function(t){return n.call(t)}},function(t,e,n){var r,o=n(225),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!i&&i in t}},function(t,e,n){var r=n(11)["__core-js_shared__"];t.exports=r},function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},function(t,e){t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},function(t,e,n){var r=n(54),o="__lodash_hash_undefined__",i=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(r){var n=e[t];return n===o?void 0:n}return i.call(e,t)?e[t]:void 0}},function(t,e,n){var r=n(54),o=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return r?void 0!==e[t]:o.call(e,t)}},function(t,e,n){var r=n(54),o="__lodash_hash_undefined__";t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=r&&void 0===e?o:e,this}},function(t,e){t.exports=function(){this.__data__=[],this.size=0}},function(t,e,n){var r=n(56),o=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=r(e,t);return!(n<0)&&(n==e.length-1?e.pop():o.call(e,n,1),--this.size,!0)}},function(t,e,n){var r=n(56);t.exports=function(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}},function(t,e,n){var r=n(56);t.exports=function(t){return r(this.__data__,t)>-1}},function(t,e,n){var r=n(56);t.exports=function(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}},function(t,e,n){var r=n(57);t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},function(t,e){t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},function(t,e,n){var r=n(57);t.exports=function(t){return r(this,t).get(t)}},function(t,e,n){var r=n(57);t.exports=function(t){return r(this,t).has(t)}},function(t,e,n){var r=n(57);t.exports=function(t,e){var n=r(this,t),o=n.size;return n.set(t,e),this.size+=n.size==o?0:1,this}},function(t,e){var n="__lodash_hash_undefined__";t.exports=function(t){return this.__data__.set(t,n),this}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e){t.exports=function(t){return t!=t}},function(t,e){t.exports=function(t,e,n){for(var r=n-1,o=t.length;++r<o;)if(t[r]===e)return r;return-1}},function(t,e){t.exports=function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}},function(t,e,n){var r=n(20),o=n(14),i="[object Arguments]";t.exports=function(t){return o(t)&&r(t)==i}},function(t,e){t.exports=function(){return!1}},function(t,e,n){var r=n(20),o=n(88),i=n(14),u={};u["[object Float32Array]"]=u["[object Float64Array]"]=u["[object Int8Array]"]=u["[object Int16Array]"]=u["[object Int32Array]"]=u["[object Uint8Array]"]=u["[object Uint8ClampedArray]"]=u["[object Uint16Array]"]=u["[object Uint32Array]"]=!0,u["[object Arguments]"]=u["[object Array]"]=u["[object ArrayBuffer]"]=u["[object Boolean]"]=u["[object DataView]"]=u["[object Date]"]=u["[object Error]"]=u["[object Function]"]=u["[object Map]"]=u["[object Number]"]=u["[object Object]"]=u["[object RegExp]"]=u["[object Set]"]=u["[object String]"]=u["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&o(t.length)&&!!u[r(t)]}},function(t,e,n){var r=n(160)(Object.keys,Object);t.exports=r},function(t,e,n){var r=n(55);t.exports=function(){this.__data__=new r,this.size=0}},function(t,e){t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},function(t,e){t.exports=function(t){return this.__data__.get(t)}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e,n){var r=n(55),o=n(85),i=n(84),u=200;t.exports=function(t,e){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!o||a.length<u-1)return a.push([t,e]),this.size=++n.size,this;n=this.__data__=new i(a)}return n.set(t,e),this.size=n.size,this}},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,o=0,i=[];++n<r;){var u=t[n];e(u,n,t)&&(i[o++]=u)}return i}},function(t,e,n){var r=n(24)(n(11),"DataView");t.exports=r},function(t,e,n){var r=n(24)(n(11),"Promise");t.exports=r},function(t,e,n){var r=n(259),o=n(265),i=n(142);t.exports=function(t){var e=o(t);return 1==e.length&&e[0][2]?i(e[0][0],e[0][1]):function(n){return n===t||r(n,t,e)}}},function(t,e,n){var r=n(96),o=n(139),i=1,u=2;t.exports=function(t,e,n,a){var c=n.length,s=c,f=!a;if(null==t)return!s;for(t=Object(t);c--;){var l=n[c];if(f&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++c<s;){var p=(l=n[c])[0],d=t[p],h=l[1];if(f&&l[2]){if(void 0===d&&!(p in t))return!1}else{var v=new r;if(a)var y=a(d,h,p,t,e,v);if(!(void 0===y?o(h,d,i|u,a,v):y))return!1}}return!0}},function(t,e,n){var r=n(96),o=n(140),i=n(262),u=n(264),a=n(43),c=n(6),s=n(59),f=n(87),l=1,p="[object Arguments]",d="[object Array]",h="[object Object]",v=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,y,b,g){var m=c(t),_=c(e),x=m?d:a(t),w=_?d:a(e),O=(x=x==p?h:x)==h,j=(w=w==p?h:w)==h,E=x==w;if(E&&s(t)){if(!s(e))return!1;m=!0,O=!1}if(E&&!O)return g||(g=new r),m||f(t)?o(t,e,n,y,b,g):i(t,e,x,n,y,b,g);if(!(n&l)){var S=O&&v.call(t,"__wrapped__"),P=j&&v.call(e,"__wrapped__");if(S||P){var A=S?t.value():t,k=P?e.value():e;return g||(g=new r),b(A,k,n,y,g)}}return!!E&&(g||(g=new r),u(t,e,n,y,b,g))}},function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}},function(t,e,n){var r=n(32),o=n(164),i=n(71),u=n(140),a=n(263),c=n(103),s=1,f=2,l="[object Boolean]",p="[object Date]",d="[object Error]",h="[object Map]",v="[object Number]",y="[object RegExp]",b="[object Set]",g="[object String]",m="[object Symbol]",_="[object ArrayBuffer]",x="[object DataView]",w=r?r.prototype:void 0,O=w?w.valueOf:void 0;t.exports=function(t,e,n,r,w,j,E){switch(n){case x:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case _:return!(t.byteLength!=e.byteLength||!j(new o(t),new o(e)));case l:case p:case v:return i(+t,+e);case d:return t.name==e.name&&t.message==e.message;case y:case g:return t==e+"";case h:var S=a;case b:var P=r&s;if(S||(S=c),t.size!=e.size&&!P)return!1;var A=E.get(t);if(A)return A==e;r|=f,E.set(t,e);var k=u(S(t),S(e),r,w,j,E);return E.delete(t),k;case m:if(O)return O.call(t)==O.call(e)}return!1}},function(t,e){t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}},function(t,e,n){var r=n(162),o=1,i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,u,a,c){var s=n&o,f=r(t),l=f.length;if(l!=r(e).length&&!s)return!1;for(var p=l;p--;){var d=f[p];if(!(s?d in e:i.call(e,d)))return!1}var h=c.get(t);if(h&&c.get(e))return h==e;var v=!0;c.set(t,e),c.set(e,t);for(var y=s;++p<l;){var b=t[d=f[p]],g=e[d];if(u)var m=s?u(g,b,d,e,t,c):u(b,g,d,t,e,c);if(!(void 0===m?b===g||a(b,g,n,u,c):m)){v=!1;break}y||(y="constructor"==d)}if(v&&!y){var _=t.constructor,x=e.constructor;_!=x&&"constructor"in t&&"constructor"in e&&!("function"==typeof _&&_ instanceof _&&"function"==typeof x&&x instanceof x)&&(v=!1)}return c.delete(t),c.delete(e),v}},function(t,e,n){var r=n(141),o=n(40);t.exports=function(t){for(var e=o(t),n=e.length;n--;){var i=e[n],u=t[i];e[n]=[i,u,r(u)]}return e}},function(t,e,n){var r=n(139),o=n(44),i=n(269),u=n(91),a=n(141),c=n(142),s=n(47),f=1,l=2;t.exports=function(t,e){return u(t)&&a(e)?c(s(t),e):function(n){var u=o(n,t);return void 0===u&&u===e?i(n,t):r(e,u,f|l)}}},function(t,e,n){var r=n(268),o=500;t.exports=function(t){var e=r(t,(function(t){return n.size===o&&n.clear(),t})),n=e.cache;return e}},function(t,e,n){var r=n(84),o="Expected a function";function i(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError(o);var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var u=t.apply(this,r);return n.cache=i.set(o,u)||i,u};return n.cache=new(i.Cache||r),n}i.Cache=r,t.exports=i},function(t,e,n){var r=n(270),o=n(271);t.exports=function(t,e){return null!=t&&o(t,e,r)}},function(t,e){t.exports=function(t,e){return null!=t&&e in Object(t)}},function(t,e,n){var r=n(144),o=n(58),i=n(6),u=n(75),a=n(88),c=n(47);t.exports=function(t,e,n){for(var s=-1,f=(e=r(e,t)).length,l=!1;++s<f;){var p=c(e[s]);if(!(l=null!=t&&n(t,p)))break;t=t[p]}return l||++s!=f?l:!!(f=null==t?0:t.length)&&a(f)&&u(p,f)&&(i(t)||o(t))}},function(t,e,n){var r=n(273),o=n(274),i=n(91),u=n(47);t.exports=function(t){return i(t)?r(u(t)):o(t)}},function(t,e){t.exports=function(t){return function(e){return null==e?void 0:e[t]}}},function(t,e,n){var r=n(143);t.exports=function(t){return function(e){return r(e,t)}}},function(t,e,n){var r=n(97),o=n(276);t.exports=function t(e,n,i,u,a){var c=-1,s=e.length;for(i||(i=o),a||(a=[]);++c<s;){var f=e[c];n>0&&i(f)?n>1?t(f,n-1,i,u,a):r(a,f):u||(a[a.length]=f)}return a}},function(t,e,n){var r=n(32),o=n(58),i=n(6),u=r?r.isConcatSpreadable:void 0;t.exports=function(t){return i(t)||o(t)||!!(u&&t&&t[u])}},function(t,e,n){var r=n(114),o=Math.max;t.exports=function(t,e,n){return e=o(void 0===e?t.length-1:e,0),function(){for(var i=arguments,u=-1,a=o(i.length-e,0),c=Array(a);++u<a;)c[u]=i[e+u];u=-1;for(var s=Array(e+1);++u<e;)s[u]=i[u];return s[e]=n(c),r(t,this,s)}}},function(t,e,n){t.exports={default:n(279),__esModule:!0}},function(t,e,n){n(280),t.exports=n(10).Object.assign},function(t,e,n){var r=n(18);r(r.S+r.F,"Object",{assign:n(281)})},function(t,e,n){"use strict";var r=n(19),o=n(69),i=n(120),u=n(92),a=n(63),c=n(132),s=Object.assign;t.exports=!s||n(50)((function(){var t={},e={},n=Symbol(),r="abcdefghijklmnopqrst";return t[n]=7,r.split("").forEach((function(t){e[t]=t})),7!=s({},t)[n]||Object.keys(s({},e)).join("")!=r}))?function(t,e){for(var n=a(t),s=arguments.length,f=1,l=i.f,p=u.f;s>f;)for(var d,h=c(arguments[f++]),v=l?o(h).concat(l(h)):o(h),y=v.length,b=0;y>b;)d=v[b++],r&&!p.call(h,d)||(n[d]=h[d]);return n}:s},function(t,e,n){var r=function(){return this}()||Function("return this")(),o=r.regeneratorRuntime&&Object.getOwnPropertyNames(r).indexOf("regeneratorRuntime")>=0,i=o&&r.regeneratorRuntime;if(r.regeneratorRuntime=void 0,t.exports=n(283),o)r.regeneratorRuntime=i;else try{delete r.regeneratorRuntime}catch(t){r.regeneratorRuntime=void 0}},function(t,e){!function(e){"use strict";var n,r=Object.prototype,o=r.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag",s="object"==typeof t,f=e.regeneratorRuntime;if(f)s&&(t.exports=f);else{(f=e.regeneratorRuntime=s?t.exports:{}).wrap=_;var l="suspendedStart",p="suspendedYield",d="executing",h="completed",v={},y={};y[u]=function(){return this};var b=Object.getPrototypeOf,g=b&&b(b(R([])));g&&g!==r&&o.call(g,u)&&(y=g);var m=j.prototype=w.prototype=Object.create(y);O.prototype=m.constructor=j,j.constructor=O,j[c]=O.displayName="GeneratorFunction",f.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===O||"GeneratorFunction"===(e.displayName||e.name))},f.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,j):(t.__proto__=j,c in t||(t[c]="GeneratorFunction")),t.prototype=Object.create(m),t},f.awrap=function(t){return{__await:t}},E(S.prototype),S.prototype[a]=function(){return this},f.AsyncIterator=S,f.async=function(t,e,n,r){var o=new S(_(t,e,n,r));return f.isGeneratorFunction(e)?o:o.next().then((function(t){return t.done?t.value:o.next()}))},E(m),m[c]="Generator",m[u]=function(){return this},m.toString=function(){return"[object Generator]"},f.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var r=e.pop();if(r in t)return n.value=r,n.done=!1,n}return n.done=!0,n}},f.values=R,T.prototype={constructor:T,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=n,this.done=!1,this.delegate=null,this.method="next",this.arg=n,this.tryEntries.forEach(k),!t)for(var e in this)"t"===e.charAt(0)&&o.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=n)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(r,o){return a.type="throw",a.arg=t,e.next=r,o&&(e.method="next",e.arg=n),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var u=this.tryEntries[i],a=u.completion;if("root"===u.tryLoc)return r("end");if(u.tryLoc<=this.prev){var c=o.call(u,"catchLoc"),s=o.call(u,"finallyLoc");if(c&&s){if(this.prev<u.catchLoc)return r(u.catchLoc,!0);if(this.prev<u.finallyLoc)return r(u.finallyLoc)}else if(c){if(this.prev<u.catchLoc)return r(u.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<u.finallyLoc)return r(u.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&o.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var u=i?i.completion:{};return u.type=t,u.arg=e,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(u)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),v},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),k(n),v}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;k(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:R(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=n),v}}}function _(t,e,n,r){var o=e&&e.prototype instanceof w?e:w,i=Object.create(o.prototype),u=new T(r||[]);return i._invoke=function(t,e,n){var r=l;return function(o,i){if(r===d)throw new Error("Generator is already running");if(r===h){if("throw"===o)throw i;return C()}for(n.method=o,n.arg=i;;){var u=n.delegate;if(u){var a=P(u,n);if(a){if(a===v)continue;return a}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===l)throw r=h,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=d;var c=x(t,e,n);if("normal"===c.type){if(r=n.done?h:p,c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r=h,n.method="throw",n.arg=c.arg)}}}(t,n,u),i}function x(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}function w(){}function O(){}function j(){}function E(t){["next","throw","return"].forEach((function(e){t[e]=function(t){return this._invoke(e,t)}}))}function S(t){var e;this._invoke=function(n,r){function i(){return new Promise((function(e,i){!function e(n,r,i,u){var a=x(t[n],t,r);if("throw"!==a.type){var c=a.arg,s=c.value;return s&&"object"==typeof s&&o.call(s,"__await")?Promise.resolve(s.__await).then((function(t){e("next",t,i,u)}),(function(t){e("throw",t,i,u)})):Promise.resolve(s).then((function(t){c.value=t,i(c)}),u)}u(a.arg)}(n,r,e,i)}))}return e=e?e.then(i,i):i()}}function P(t,e){var r=t.iterator[e.method];if(r===n){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=n,P(t,e),"throw"===e.method))return v;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return v}var o=x(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,v;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=n),e.delegate=null,v):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,v)}function A(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(A,this),this.reset(!0)}function R(t){if(t){var e=t[u];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,i=function e(){for(;++r<t.length;)if(o.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=n,e.done=!0,e};return i.next=i}}return{next:C}}function C(){return{value:n,done:!0}}}(function(){return this}()||Function("return this")())},function(t,e,n){t.exports={default:n(285),__esModule:!0}},function(t,e,n){n(170),n(61),n(108),n(289),n(297),n(298),t.exports=n(10).Promise},function(t,e,n){"use strict";var r=n(287),o=n(288),i=n(39),u=n(45);t.exports=n(131)(Array,"Array",(function(t,e){this._t=u(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},function(t,e){t.exports=function(){}},function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},function(t,e,n){"use strict";var r,o,i,u,a=n(49),c=n(9),s=n(38),f=n(110),l=n(18),p=n(23),d=n(53),h=n(290),v=n(291),y=n(145),b=n(146).set,g=n(293)(),m=n(93),_=n(147),x=n(294),w=n(148),O=c.TypeError,j=c.process,E=j&&j.versions,S=E&&E.v8||"",P=c.Promise,A="process"==f(j),k=function(){},T=o=m.f,R=!!function(){try{var t=P.resolve(1),e=(t.constructor={})[n(12)("species")]=function(t){t(k,k)};return(A||"function"==typeof PromiseRejectionEvent)&&t.then(k)instanceof e&&0!==S.indexOf("6.6")&&-1===x.indexOf("Chrome/66")}catch(t){}}(),C=function(t){var e;return!(!p(t)||"function"!=typeof(e=t.then))&&e},I=function(t,e){if(!t._n){t._n=!0;var n=t._c;g((function(){for(var r=t._v,o=1==t._s,i=0,u=function(e){var n,i,u,a=o?e.ok:e.fail,c=e.resolve,s=e.reject,f=e.domain;try{a?(o||(2==t._h&&N(t),t._h=1),!0===a?n=r:(f&&f.enter(),n=a(r),f&&(f.exit(),u=!0)),n===e.promise?s(O("Promise-chain cycle")):(i=C(n))?i.call(n,c,s):c(n)):s(r)}catch(t){f&&!u&&f.exit(),s(t)}};n.length>i;)u(n[i++]);t._c=[],t._n=!1,e&&!t._h&&M(t)}))}},M=function(t){b.call(c,(function(){var e,n,r,o=t._v,i=L(t);if(i&&(e=_((function(){A?j.emit("unhandledRejection",o,t):(n=c.onunhandledrejection)?n({promise:t,reason:o}):(r=c.console)&&r.error&&r.error("Unhandled promise rejection",o)})),t._h=A||L(t)?2:1),t._a=void 0,i&&e.e)throw e.v}))},L=function(t){return 1!==t._h&&0===(t._a||t._c).length},N=function(t){b.call(c,(function(){var e;A?j.emit("rejectionHandled",t):(e=c.onrejectionhandled)&&e({promise:t,reason:t._v})}))},F=function(t){var e=this;e._d||(e._d=!0,(e=e._w||e)._v=t,e._s=2,e._a||(e._a=e._c.slice()),I(e,!0))},D=function(t){var e,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===t)throw O("Promise can't be resolved itself");(e=C(t))?g((function(){var r={_w:n,_d:!1};try{e.call(t,s(D,r,1),s(F,r,1))}catch(t){F.call(r,t)}})):(n._v=t,n._s=1,I(n,!1))}catch(t){F.call({_w:n,_d:!1},t)}}};R||(P=function(t){h(this,P,"Promise","_h"),d(t),r.call(this);try{t(s(D,this,1),s(F,this,1))}catch(t){F.call(this,t)}},(r=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=n(295)(P.prototype,{then:function(t,e){var n=T(y(this,P));return n.ok="function"!=typeof t||t,n.fail="function"==typeof e&&e,n.domain=A?j.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&I(this,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new r;this.promise=t,this.resolve=s(D,t,1),this.reject=s(F,t,1)},m.f=T=function(t){return t===P||t===u?new i(t):o(t)}),l(l.G+l.W+l.F*!R,{Promise:P}),n(62)(P,"Promise"),n(296)("Promise"),u=n(10).Promise,l(l.S+l.F*!R,"Promise",{reject:function(t){var e=T(this);return(0,e.reject)(t),e.promise}}),l(l.S+l.F*(a||!R),"Promise",{resolve:function(t){return w(a&&this===u?P:this,t)}}),l(l.S+l.F*!(R&&n(136)((function(t){P.all(t).catch(k)}))),"Promise",{all:function(t){var e=this,n=T(e),r=n.resolve,o=n.reject,i=_((function(){var n=[],i=0,u=1;v(t,!1,(function(t){var a=i++,c=!1;n.push(void 0),u++,e.resolve(t).then((function(t){c||(c=!0,n[a]=t,--u||r(n))}),o)})),--u||r(n)}));return i.e&&o(i.v),n.promise},race:function(t){var e=this,n=T(e),r=n.reject,o=_((function(){v(t,!1,(function(t){e.resolve(t).then(n.resolve,r)}))}));return o.e&&r(o.v),n.promise}})},function(t,e){t.exports=function(t,e,n,r){if(!(t instanceof e)||void 0!==r&&r in t)throw TypeError(n+": incorrect invocation!");return t}},function(t,e,n){var r=n(38),o=n(134),i=n(135),u=n(17),a=n(82),c=n(109),s={},f={};(e=t.exports=function(t,e,n,l,p){var d,h,v,y,b=p?function(){return t}:c(t),g=r(n,l,e?2:1),m=0;if("function"!=typeof b)throw TypeError(t+" is not iterable!");if(i(b)){for(d=a(t.length);d>m;m++)if((y=e?g(u(h=t[m])[0],h[1]):g(t[m]))===s||y===f)return y}else for(v=b.call(t);!(h=v.next()).done;)if((y=o(v,g,h.value,e))===s||y===f)return y}).BREAK=s,e.RETURN=f},function(t,e){t.exports=function(t,e,n){var r=void 0===n;switch(e.length){case 0:return r?t():t.call(n);case 1:return r?t(e[0]):t.call(n,e[0]);case 2:return r?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return r?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return r?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},function(t,e,n){var r=n(9),o=n(146).set,i=r.MutationObserver||r.WebKitMutationObserver,u=r.process,a=r.Promise,c="process"==n(48)(u);t.exports=function(){var t,e,n,s=function(){var r,o;for(c&&(r=u.domain)&&r.exit();t;){o=t.fn,t=t.next;try{o()}catch(r){throw t?n():e=void 0,r}}e=void 0,r&&r.enter()};if(c)n=function(){u.nextTick(s)};else if(!i||r.navigator&&r.navigator.standalone)if(a&&a.resolve){var f=a.resolve(void 0);n=function(){f.then(s)}}else n=function(){o.call(r,s)};else{var l=!0,p=document.createTextNode("");new i(s).observe(p,{characterData:!0}),n=function(){p.data=l=!l}}return function(r){var o={fn:r,next:void 0};e&&(e.next=o),t||(t=o,n()),e=o}}},function(t,e,n){var r=n(9).navigator;t.exports=r&&r.userAgent||""},function(t,e,n){var r=n(26);t.exports=function(t,e,n){for(var o in e)n&&t[o]?t[o]=e[o]:r(t,o,e[o]);return t}},function(t,e,n){"use strict";var r=n(9),o=n(10),i=n(21),u=n(19),a=n(12)("species");t.exports=function(t){var e="function"==typeof o[t]?o[t]:r[t];u&&e&&!e[a]&&i.f(e,a,{configurable:!0,get:function(){return this}})}},function(t,e,n){"use strict";var r=n(18),o=n(10),i=n(9),u=n(145),a=n(148);r(r.P+r.R,"Promise",{finally:function(t){var e=u(this,o.Promise||i.Promise),n="function"==typeof t;return this.then(n?function(n){return a(e,t()).then((function(){return n}))}:t,n?function(n){return a(e,t()).then((function(){throw n}))}:t)}})},function(t,e,n){"use strict";var r=n(18),o=n(93),i=n(147);r(r.S,"Promise",{try:function(t){var e=o.f(this),n=i(t);return(n.e?e.reject:e.resolve)(n.v),e.promise}})},function(t,e,n){var r=n(168),o=n(102).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},,function(t,e,n){"use strict";t.exports=n(394)},function(t,e,n){"use strict";var r=n(15).compose;e.__esModule=!0,e.composeWithDevTools=function(){if(0!==arguments.length)return"object"==typeof arguments[0]?r:r.apply(null,arguments)},e.devToolsEnhancer=function(){return function(t){return t}}},,function(t,e,n){var r=n(92),o=n(51),i=n(45),u=n(112),a=n(31),c=n(166),s=Object.getOwnPropertyDescriptor;e.f=n(19)?s:function(t,e){if(t=i(t),e=u(e,!0),c)try{return s(t,e)}catch(t){}if(a(t,e))return o(!r.f.call(t,e),t[e])}},function(t,e,n){"use strict";n.r(e);var r={};n.r(r),n.d(r,"wpRequest",(function(){return qt.default})),n.d(r,"request",(function(){return qt}));n(373);var o=n(15),i=n(302),u=n(100);function a(t){return function(e){var n=e.dispatch,r=e.getState;return function(e){return function(o){return"function"==typeof o?o(n,r,t):e(o)}}}}var c=a();c.withExtraArgument=a;var s=c,f=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},p=function(t){return"@@redux-saga/"+t},d=p("TASK"),h=p("HELPER"),v=p("MATCH"),y=p("CANCEL_PROMISE"),b=p("SAGA_ACTION"),g=p("SELF_CANCELLATION"),m=function(t){return function(){return t}},_=m(!0),x=function(){},w=function(t){return t};function O(t,e,n){if(!e(t))throw N("error","uncaught at check",n),new Error(n)}var j=Object.prototype.hasOwnProperty;function E(t,e){return S.notUndef(t)&&j.call(t,e)}var S={undef:function(t){return null==t},notUndef:function(t){return null!=t},func:function(t){return"function"==typeof t},number:function(t){return"number"==typeof t},string:function(t){return"string"==typeof t},array:Array.isArray,object:function(t){return t&&!S.array(t)&&"object"===(void 0===t?"undefined":l(t))},promise:function(t){return t&&S.func(t.then)},iterator:function(t){return t&&S.func(t.next)&&S.func(t.throw)},iterable:function(t){return t&&S.func(Symbol)?S.func(t[Symbol.iterator]):S.array(t)},task:function(t){return t&&t[d]},observable:function(t){return t&&S.func(t.subscribe)},buffer:function(t){return t&&S.func(t.isEmpty)&&S.func(t.take)&&S.func(t.put)},pattern:function(t){return t&&(S.string(t)||"symbol"===(void 0===t?"undefined":l(t))||S.func(t)||S.array(t))},channel:function(t){return t&&S.func(t.take)&&S.func(t.close)},helper:function(t){return t&&t[h]},stringableFunc:function(t){return S.func(t)&&E(t,"toString")}},P={assign:function(t,e){for(var n in e)E(e,n)&&(t[n]=e[n])}};function A(t,e){var n=t.indexOf(e);n>=0&&t.splice(n,1)}var k={from:function(t){var e=Array(t.length);for(var n in t)E(t,n)&&(e[n]=t[n]);return e}};function T(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=f({},t),n=new Promise((function(t,n){e.resolve=t,e.reject=n}));return e.promise=n,e}function R(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return function(){return++t}}var C=R(),I=function(t){throw t},M=function(t){return{value:t,done:!0}};function L(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:I,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=arguments[3],o={name:n,next:t,throw:e,return:M};return r&&(o[h]=!0),"undefined"!=typeof Symbol&&(o[Symbol.iterator]=function(){return o}),o}function N(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";"undefined"==typeof window?console.log("redux-saga "+t+": "+e+"\n"+(n&&n.stack||n)):console[t](e,n)}function F(t,e){return function(){return t.apply(void 0,arguments)}}var D=function(t,e){return t+" has been deprecated in favor of "+e+", please update your code"},B=function(t){return new Error("\n redux-saga: Error checking hooks detected an inconsistent state. This is likely a bug\n in redux-saga code and not yours. Thanks for reporting this in the project's github repo.\n Error: "+t+"\n")},W=function(t,e){return(t?t+".":"")+"setContext(props): argument "+e+" is not a plain object"},U=function(t){return function(e){return t(Object.defineProperty(e,b,{value:!0}))}},q="Channel's Buffer overflow!",z=1,G=3,V=4,$={isEmpty:_,put:x,take:x};function H(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,e=arguments[1],n=new Array(t),r=0,o=0,i=0,u=function(e){n[o]=e,o=(o+1)%t,r++},a=function(){if(0!=r){var e=n[i];return n[i]=null,r--,i=(i+1)%t,e}},c=function(){for(var t=[];r;)t.push(a());return t};return{isEmpty:function(){return 0==r},put:function(a){if(r<t)u(a);else{var s=void 0;switch(e){case z:throw new Error(q);case G:n[o]=a,i=o=(o+1)%t;break;case V:s=2*t,n=c(),r=n.length,o=n.length,i=0,n.length=s,t=s,u(a)}}},take:a,flush:c}}var K={none:function(){return $},fixed:function(t){return H(t,z)},dropping:function(t){return H(t,2)},sliding:function(t){return H(t,G)},expanding:function(t){return H(t,V)}},Y=[],J=0;function Q(t){try{Z(),t()}finally{tt()}}function X(t){Y.push(t),J||(Z(),et())}function Z(){J++}function tt(){J--}function et(){tt();for(var t=void 0;!J&&void 0!==(t=Y.shift());)Q(t)}var nt=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},rt={type:"@@redux-saga/CHANNEL_END"},ot=function(t){return t&&"@@redux-saga/CHANNEL_END"===t.type};var it="invalid buffer passed to channel factory function",ut="Saga was provided with an undefined action";function at(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K.none(),n=arguments[2];arguments.length>2&&O(n,S.func,"Invalid match function passed to eventChannel");var r=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:K.fixed(),e=!1,n=[];function r(){if(e&&n.length)throw B("Cannot have a closed channel with pending takers");if(n.length&&!t.isEmpty())throw B("Cannot have pending takers with non empty buffer")}return O(t,S.buffer,it),{take:function(o){r(),O(o,S.func,"channel.take's callback must be a function"),e&&t.isEmpty()?o(rt):t.isEmpty()?(n.push(o),o.cancel=function(){return A(n,o)}):o(t.take())},put:function(o){if(r(),O(o,S.notUndef,ut),!e){if(!n.length)return t.put(o);for(var i=0;i<n.length;i++){var u=n[i];if(!u[v]||u[v](o))return n.splice(i,1),u(o)}}},flush:function(n){r(),O(n,S.func,"channel.flush' callback must be a function"),e&&t.isEmpty()?n(rt):n(t.flush())},close:function(){if(r(),!e&&(e=!0,n.length)){var t=n;n=[];for(var o=0,i=t.length;o<i;o++)t[o](rt)}},get __takers__(){return n},get __closed__(){return e}}}(e),o=function(){r.__closed__||(i&&i(),r.close())},i=t((function(t){ot(t)?o():n&&!n(t)||r.put(t)}));if(r.__closed__&&i(),!S.func(i))throw new Error("in eventChannel: subscribe should return a function to unsubscribe");return{take:r.take,flush:r.flush,close:o}}var ct=p("IO"),st="TAKE",ft="PUT",lt="ALL",pt="RACE",dt="CALL",ht="CPS",vt="FORK",yt="JOIN",bt="CANCEL",gt="SELECT",mt="ACTION_CHANNEL",_t="CANCELLED",xt="FLUSH",wt="GET_CONTEXT",Ot="SET_CONTEXT",jt=function(t,e){var n;return(n={})[ct]=!0,n[t]=e,n};function Et(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"*";if(arguments.length&&O(arguments[0],S.notUndef,"take(patternOrChannel): patternOrChannel is undefined"),S.pattern(t))return jt(st,{pattern:t});if(S.channel(t))return jt(st,{channel:t});throw new Error("take(patternOrChannel): argument "+String(t)+" is not valid channel or a valid pattern")}Et.maybe=function(){var t=Et.apply(void 0,arguments);return t[st].maybe=!0,t};Et.maybe;function St(t,e){return arguments.length>1?(O(t,S.notUndef,"put(channel, action): argument channel is undefined"),O(t,S.channel,"put(channel, action): argument "+t+" is not a valid channel"),O(e,S.notUndef,"put(channel, action): argument action is undefined")):(O(t,S.notUndef,"put(action): argument action is undefined"),e=t,t=null),jt(ft,{channel:t,action:e})}St.resolve=function(){var t=St.apply(void 0,arguments);return t[ft].resolve=!0,t},St.sync=F(St.resolve);var Pt=function(t){return function(e){return e&&e[ct]&&e[t]}},At={take:Pt(st),put:Pt(ft),all:Pt(lt),race:Pt(pt),call:Pt(dt),cps:Pt(ht),fork:Pt(vt),join:Pt(yt),cancel:Pt(bt),select:Pt(gt),actionChannel:Pt(mt),cancelled:Pt(_t),flush:Pt(xt),getContext:Pt(wt),setContext:Pt(Ot)},kt=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},Tt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};var Rt="proc first argument (Saga function result) must be an iterator",Ct={toString:function(){return"@@redux-saga/CHANNEL_END"}},It={toString:function(){return"@@redux-saga/TASK_CANCEL"}},Mt={wildcard:function(){return _},default:function(t){return"symbol"===(void 0===t?"undefined":Tt(t))?function(e){return e.type===t}:function(e){return e.type===String(t)}},array:function(t){return function(e){return t.some((function(t){return Lt(t)(e)}))}},predicate:function(t){return function(e){return t(e)}}};function Lt(t){return("*"===t?Mt.wildcard:S.array(t)?Mt.array:S.stringableFunc(t)?Mt.default:S.func(t)?Mt.predicate:Mt.default)(t)}var Nt=function(t){return{fn:t}};function Ft(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){return x},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:x,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:x,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},u=arguments.length>6&&void 0!==arguments[6]?arguments[6]:0,a=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"anonymous",c=arguments[8];O(t,S.iterator,Rt);var s=F(V,D("[...effects]","all([...effects])")),f=i.sagaMonitor,l=i.logger,p=i.onError,h=l||N,m=function(t){var e=t.sagaStack;!e&&t.stack&&(e=-1!==t.stack.split("\n")[0].indexOf(t.message)?t.stack:"Error: "+t.message+"\n"+t.stack),h("error","uncaught at "+a,e||t.message||t)},_=function(t){var e=at((function(e){return t((function(t){t[b]?e(t):X((function(){return e(t)}))}))}));return nt({},e,{take:function(t,n){arguments.length>1&&(O(n,S.func,"channel.take's matcher argument must be a function"),t[v]=n),e.take(t)}})}(e),w=Object.create(o);M.cancel=x;var j=function(t,e,n,r){var o,i;return n._deferredEnd=null,(o={})[d]=!0,o.id=t,o.name=e,"done",(i={}).done=i.done||{},i.done.get=function(){if(n._deferredEnd)return n._deferredEnd.promise;var t=T();return n._deferredEnd=t,n._isRunning||(n._error?t.reject(n._error):t.resolve(n._result)),t.promise},o.cont=r,o.joiners=[],o.cancel=I,o.isRunning=function(){return n._isRunning},o.isCancelled=function(){return n._isCancelled},o.isAborted=function(){return n._isAborted},o.result=function(){return n._result},o.error=function(){return n._error},o.setContext=function(t){O(t,S.object,W("task",t)),P.assign(w,t)},function(t,e){for(var n in e){var r=e[n];r.configurable=r.enumerable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,n,r)}}(o,i),o}(u,a,t,c),E={name:a,cancel:function(){E.isRunning&&!E.isCancelled&&(E.isCancelled=!0,M(It))},isRunning:!0},R=function(t,e,n){var r=[],o=void 0,i=!1;function u(t){c(),n(t,!0)}function a(t){r.push(t),t.cont=function(a,c){i||(A(r,t),t.cont=x,c?u(a):(t===e&&(o=a),r.length||(i=!0,n(o))))}}function c(){i||(i=!0,r.forEach((function(t){t.cont=x,t.cancel()})),r=[])}return a(e),{addTask:a,cancelAll:c,abort:u,getTasks:function(){return r},taskNames:function(){return r.map((function(t){return t.name}))}}}(0,E,B);function I(){t._isRunning&&!t._isCancelled&&(t._isCancelled=!0,R.cancelAll(),B(It))}return c&&(c.cancel=I),t._isRunning=!0,M(),j;function M(e,n){if(!E.isRunning)throw new Error("Trying to resume an already finished generator");try{var r=void 0;n?r=t.throw(e):e===It?(E.isCancelled=!0,M.cancel(),r=S.func(t.return)?t.return(It):{done:!0,value:It}):r=e===Ct?S.func(t.return)?t.return():{done:!0}:t.next(e),r.done?(E.isMainRunning=!1,E.cont&&E.cont(r.value)):U(r.value,u,"",M)}catch(t){E.isCancelled&&m(t),E.isMainRunning=!1,E.cont(t,!0)}}function B(e,n){t._isRunning=!1,_.close(),n?(e instanceof Error&&Object.defineProperty(e,"sagaStack",{value:"at "+a+" \n "+(e.sagaStack||e.stack),configurable:!0}),j.cont||(e instanceof Error&&p?p(e):m(e)),t._error=e,t._isAborted=!0,t._deferredEnd&&t._deferredEnd.reject(e)):(t._result=e,t._deferredEnd&&t._deferredEnd.resolve(e)),j.cont&&j.cont(e,n),j.joiners.forEach((function(t){return t.cb(e,n)})),j.joiners=null}function U(t,o){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",u=arguments[3],c=C();f&&f.effectTriggered({effectId:c,parentEffectId:o,label:i,effect:t});var l=void 0;function p(t,e){l||(l=!0,u.cancel=x,f&&(e?f.effectRejected(c,t):f.effectResolved(c,t)),u(t,e))}p.cancel=x,u.cancel=function(){if(!l){l=!0;try{p.cancel()}catch(t){m(t)}p.cancel=x,f&&f.effectCancelled(c)}};var d=void 0;return(S.promise(t)?q(t,p):S.helper(t)?G(Nt(t),c,p):S.iterator(t)?z(t,c,a,p):S.array(t)?s(t,c,p):(d=At.take(t))?function(t,e){var n=t.channel,r=t.pattern,o=t.maybe;n=n||_;var i=function(t){return t instanceof Error?e(t,!0):ot(t)&&!o?e(Ct):e(t)};try{n.take(i,Lt(r))}catch(t){return e(t,!0)}e.cancel=i.cancel}(d,p):(d=At.put(t))?function(t,e){var r=t.channel,o=t.action,i=t.resolve;X((function(){var t=void 0;try{t=(r?r.put:n)(o)}catch(t){if(r||i)return e(t,!0);m(t)}if(!i||!S.promise(t))return e(t);q(t,e)}))}(d,p):(d=At.all(t))?V(d,c,p):(d=At.race(t))?function(t,e,n){var r=void 0,o=Object.keys(t),i={};o.forEach((function(e){var u=function(i,u){if(!r)if(u)n.cancel(),n(i,!0);else if(!ot(i)&&i!==Ct&&i!==It){var a;n.cancel(),r=!0;var c=((a={})[e]=i,a);n(S.array(t)?[].slice.call(kt({},c,{length:o.length})):c)}};u.cancel=x,i[e]=u})),n.cancel=function(){r||(r=!0,o.forEach((function(t){return i[t].cancel()})))},o.forEach((function(n){r||U(t[n],e,n,i[n])}))}(d,c,p):(d=At.call(t))?function(t,e,n){var r=t.context,o=t.fn,i=t.args,u=void 0;try{u=o.apply(r,i)}catch(t){return n(t,!0)}return S.promise(u)?q(u,n):S.iterator(u)?z(u,e,o.name,n):n(u)}(d,c,p):(d=At.cps(t))?function(t,e){var n=t.context,r=t.fn,o=t.args;try{var i=function(t,n){return S.undef(t)?e(n):e(t,!0)};r.apply(n,o.concat(i)),i.cancel&&(e.cancel=function(){return i.cancel()})}catch(t){return e(t,!0)}}(d,p):(d=At.fork(t))?G(d,c,p):(d=At.join(t))?function(t,e){if(t.isRunning()){var n={task:j,cb:e};e.cancel=function(){return A(t.joiners,n)},t.joiners.push(n)}else t.isAborted()?e(t.error(),!0):e(t.result())}(d,p):(d=At.cancel(t))?function(t,e){t===g&&(t=j);t.isRunning()&&t.cancel();e()}(d,p):(d=At.select(t))?function(t,e){var n=t.selector,o=t.args;try{var i=n.apply(void 0,[r()].concat(o));e(i)}catch(t){e(t,!0)}}(d,p):(d=At.actionChannel(t))?function(t,n){var r=t.pattern,o=t.buffer,i=Lt(r);i.pattern=r,n(at(e,o||K.fixed(),i))}(d,p):(d=At.flush(t))?function(t,e){t.flush(e)}(d,p):(d=At.cancelled(t))?function(t,e){e(!!E.isCancelled)}(0,p):(d=At.getContext(t))?function(t,e){e(w[t])}(d,p):(d=At.setContext(t))?function(t,e){P.assign(w,t),e()}(d,p):p(t))}function q(t,e){var n=t[y];S.func(n)?e.cancel=n:S.func(t.abort)&&(e.cancel=function(){return t.abort()}),t.then(e,(function(t){return e(t,!0)}))}function z(t,o,u,a){Ft(t,e,n,r,w,i,o,u,a)}function G(t,o,u){var a=t.context,c=t.fn,s=t.args,f=t.detached,l=function(t){var e=t.context,n=t.fn,r=t.args;if(S.iterator(n))return n;var o,i,u=void 0,a=void 0;try{u=n.apply(e,r)}catch(t){a=t}return S.iterator(u)?u:L(a?function(){throw a}:(o=void 0,i={done:!1,value:u},function(t){return o?{done:!0,value:t}:(o=!0,i)}))}({context:a,fn:c,args:s});try{Z();var p=Ft(l,e,n,r,w,i,o,c.name,f?null:x);f?u(p):l._isRunning?(R.addTask(p),u(p)):l._error?R.abort(l._error):u(p)}finally{et()}}function V(t,e,n){var r=Object.keys(t);if(!r.length)return n(S.array(t)?[]:{});var o=0,i=void 0,u={},a={};r.forEach((function(e){var c=function(a,c){i||(c||ot(a)||a===Ct||a===It?(n.cancel(),n(a,c)):(u[e]=a,++o===r.length&&(i=!0,n(S.array(t)?k.from(kt({},u,{length:r.length})):u))))};c.cancel=x,a[e]=c})),n.cancel=function(){i||(i=!0,r.forEach((function(t){return a[t].cancel()})))},r.forEach((function(n){return U(t[n],e,n,a[n])}))}}var Dt="runSaga(storeInterface, saga, ...args): saga argument must be a Generator function!";function Bt(t,e){for(var n=arguments.length,r=Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];var i=void 0;S.iterator(t)?(i=t,t=e):(O(e,S.func,Dt),O(i=e.apply(void 0,r),S.iterator,Dt));var u=t,a=u.subscribe,c=u.dispatch,s=u.getState,f=u.context,l=u.sagaMonitor,p=u.logger,d=u.onError,h=C();l&&(l.effectTriggered=l.effectTriggered||x,l.effectResolved=l.effectResolved||x,l.effectRejected=l.effectRejected||x,l.effectCancelled=l.effectCancelled||x,l.actionDispatched=l.actionDispatched||x,l.effectTriggered({effectId:h,root:!0,parentEffectId:0,effect:{root:!0,saga:e,args:r}}));var v=Ft(i,a,U(c),s,f,{sagaMonitor:l,logger:p,onError:d},h,e.name);return l&&l.effectResolved(h,v),v}var Wt=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.context,n=void 0===e?{}:e,r=function(t,e){var n={};for(var r in t)e.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}(t,["context"]),o=r.sagaMonitor,i=r.logger,u=r.onError;if(S.func(r))throw new Error("Saga middleware no longer accept Generator functions. Use sagaMiddleware.run instead");if(i&&!S.func(i))throw new Error("`options.logger` passed to the Saga middleware is not a function!");if(u&&!S.func(u))throw new Error("`options.onError` passed to the Saga middleware is not a function!");if(r.emitter&&!S.func(r.emitter))throw new Error("`options.emitter` passed to the Saga middleware is not a function!");function a(t){var e,c=t.getState,s=t.dispatch,f=(e=[],{subscribe:function(t){return e.push(t),function(){return A(e,t)}},emit:function(t){for(var n=e.slice(),r=0,o=n.length;r<o;r++)n[r](t)}});return f.emit=(r.emitter||w)(f.emit),a.run=Bt.bind(null,{context:n,subscribe:f.subscribe,dispatch:s,getState:c,sagaMonitor:o,logger:i,onError:u}),function(t){return function(e){o&&o.actionDispatched&&o.actionDispatched(e);var n=t(e);return f.emit(e),n}}}return a.run=function(){throw new Error("Before running a Saga, you must mount the Saga middleware on the Store using applyMiddleware")},a.setContext=function(t){O(t,S.object,W("sagaMiddleware",t)),P.assign(n,t)},a},Ut=n(150),qt=n(33),zt=Wt();n.d(e,"store",(function(){return Gt})),n.d(e,"middlewares",(function(){return r}));var Gt=function(){if(window.__tribe_common_store__)return window.__tribe_common_store__;var t=[s,zt,qt.default],e=Object(i.composeWithDevTools)({name:"tribe/common"}),n=Object(o.createStore)(Object(Ut.default)({}),e(o.applyMiddleware.apply(void 0,t)));return Object(u.a)(Ut.default,n),n.run=zt.run,window.__tribe_common_store__=n,n}()},function(t,e,n){var r=n(77),o=n(107),i=n(412),u=n(6);t.exports=function(t,e){return(u(t)?r:i)(t,o(e,3))}},function(t,e,n){var r=n(413)(n(414));t.exports=r},,function(t,e,n){var r;window,t.exports=(r=n(2),function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:r})},n.r=function(t){Object.defineProperty(t,"__esModule",{value:!0})},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="/",n(n.s=12)}([function(t,e){t.exports=r},function(t,e,n){t.exports=n(11)()},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),o=n(0),i=a(n(1)),u=a(n(7));function a(t){return t&&t.__esModule?t:{default:t}}var c=function(t){function e(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e);var n=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t));return n.scrollArea={},n.handleScroll=n.handleScroll.bind(n),n.handleScrollById=n.handleScrollById.bind(n),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,o.Component),r(e,[{key:"getChildContext",value:function(){var t=this;return{addScrollArea:function(e,n){t.scrollArea[n]=e},removeScrollArea:function(e,n){delete t.scrollArea[n]}}}},{key:"handleScroll",value:function(t,e){var n=this,r=Object.keys(this.scrollArea);0===r.length?(0,u.default)(t,e):r.forEach((function(r){n.scrollArea[r].scrollLeft=t,n.scrollArea[r].scrollTop=e}))}},{key:"handleScrollById",value:function(t,e,n){var r=this.scrollArea[t];r&&(r.scrollLeft=e,r.scrollTop=n)}},{key:"render",value:function(){return this.props.children&&this.props.children(this.handleScroll,this.handleScrollById)}}]),e}();c.childContextTypes={addScrollArea:i.default.func.isRequired,removeScrollArea:i.default.func.isRequired},c.defaultProps={children:function(){}},c.propTypes={children:i.default.func.isRequired},e.default=c},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){var e=t.displayName,n=t.name;return e||n?e||n:"string"==typeof t&&t.length>0?t:"Unknown"}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},o=a(n(0)),i=a(n(3)),u=a(n(2));function a(t){return t&&t.__esModule?t:{default:t}}e.default=function(t){var e=function(e){return o.default.createElement(u.default,null,(function(n,i){return o.default.createElement(t,r({},e,{scroll:n,scrollById:i}))}))};return e.displayName="WithScrollToHOC("+(0,i.default)(t)+")",e}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r,o=(r=0,function(){return"scrollto-"+r++});e.default=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},o=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),i=n(0),u=s(i),a=s(n(1)),c=s(n(5));function s(t){return t&&t.__esModule?t:{default:t}}var f=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,i.Component),o(e,[{key:"componentDidMount",value:function(){this.id=this.node.id||(0,c.default)(),this.context.addScrollArea(this.node,this.id)}},{key:"componentWillUnmount",value:function(){this.context.removeScrollArea(this.node,this.id)}},{key:"render",value:function(){var t=this,e=this.props,n=e.children,o=function(t,e){var n={};for(var r in t)e.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}(e,["children"]);return u.default.createElement("div",r({},o,{ref:function(e){return t.node=e}}),n)}}]),e}();f.contextTypes={addScrollArea:a.default.func.isRequired,removeScrollArea:a.default.func.isRequired},e.default=f},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;window.scroll(t,e)}},function(t,e,n){"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(t,e,n){"use strict";t.exports=function(t,e,n,r,o,i,u,a){if(!t){var c;if(void 0===e)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var s=[n,r,o,i,u,a],f=0;(c=new Error(e.replace(/%s/g,(function(){return s[f++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},function(t,e,n){"use strict";function r(t){return function(){return t}}var o=function(){};o.thatReturns=r,o.thatReturnsFalse=r(!1),o.thatReturnsTrue=r(!0),o.thatReturnsNull=r(null),o.thatReturnsThis=function(){return this},o.thatReturnsArgument=function(t){return t},t.exports=o},function(t,e,n){"use strict";var r=n(10),o=n(9),i=n(8);t.exports=function(){function t(t,e,n,r,u,a){a!==i&&o(!1,"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types")}function e(){return t}t.isRequired=t;var n={array:t,bool:t,func:t,number:t,object:t,string:t,symbol:t,any:t,arrayOf:e,element:t,instanceOf:e,node:t,objectOf:e,oneOf:e,oneOfType:e,shape:e,exact:e};return n.checkPropTypes=r,n.PropTypes=n,n}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(2);Object.defineProperty(e,"ScrollTo",{enumerable:!0,get:function(){return u(r).default}});var o=n(6);Object.defineProperty(e,"ScrollArea",{enumerable:!0,get:function(){return u(o).default}});var i=n(4);function u(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"ScrollToHOC",{enumerable:!0,get:function(){return u(i).default}})}]))},function(t,e,n){"use strict";var r=n(311);function o(){}function i(){}i.resetWarningCache=o,t.exports=function(){function t(t,e,n,o,i,u){if(u!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function e(){return t}t.isRequired=t;var n={array:t,bool:t,func:t,number:t,object:t,string:t,symbol:t,any:t,arrayOf:e,element:t,elementType:t,instanceOf:e,node:t,objectOf:e,oneOf:e,oneOfType:e,shape:e,exact:e,checkPropTypes:i,resetWarningCache:o};return n.PropTypes=n,n}},function(t,e,n){"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(t,e){t.exports=function(t){if(!t.webpackPolyfill){var e=Object.create(t);e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),Object.defineProperty(e,"exports",{enumerable:!0}),e.webpackPolyfill=1}return e}},function(t,e,n){var r=n(151),o=n(174),i=n(314),u=n(152),a=n(315),c=n(103),s=200;t.exports=function(t,e,n){var f=-1,l=o,p=t.length,d=!0,h=[],v=h;if(n)d=!1,l=i;else if(p>=s){var y=e?null:a(t);if(y)return c(y);d=!1,l=u,v=new r}else v=e?[]:h;t:for(;++f<p;){var b=t[f],g=e?e(b):b;if(b=n||0!==b?b:0,d&&g==g){for(var m=v.length;m--;)if(v[m]===g)continue t;e&&v.push(g),h.push(b)}else l(v,g,n)||(v!==h&&v.push(g),h.push(b))}return h}},function(t,e){t.exports=function(t,e,n){for(var r=-1,o=null==t?0:t.length;++r<o;)if(n(e,t[r]))return!0;return!1}},function(t,e,n){var r=n(153),o=n(8),i=n(103),u=r&&1/i(new r([,-0]))[1]==1/0?function(t){return new r(t)}:o;t.exports=u},function(t,e,n){var r=n(317),o=n(319);t.exports=function(t,e,n){return r(o,t,e,n)}},function(t,e,n){var r=n(318),o=n(176),i=Array.prototype.push;function u(t,e){return 2==e?function(e,n){return t(e,n)}:function(e){return t(e)}}function a(t){for(var e=t?t.length:0,n=Array(e);e--;)n[e]=t[e];return n}function c(t,e){return function(){var n=arguments.length;if(n){for(var r=Array(n);n--;)r[n]=arguments[n];var o=r[0]=e.apply(void 0,r);return t.apply(void 0,r),o}}}t.exports=function t(e,n,s,f){var l="function"==typeof n,p=n===Object(n);if(p&&(f=s,s=n,n=void 0),null==s)throw new TypeError;f||(f={});var d={cap:!("cap"in f)||f.cap,curry:!("curry"in f)||f.curry,fixed:!("fixed"in f)||f.fixed,immutable:!("immutable"in f)||f.immutable,rearg:!("rearg"in f)||f.rearg},h=l?s:o,v="curry"in f&&f.curry,y="fixed"in f&&f.fixed,b="rearg"in f&&f.rearg,g=l?s.runInContext():void 0,m=l?s:{ary:e.ary,assign:e.assign,clone:e.clone,curry:e.curry,forEach:e.forEach,isArray:e.isArray,isError:e.isError,isFunction:e.isFunction,isWeakMap:e.isWeakMap,iteratee:e.iteratee,keys:e.keys,rearg:e.rearg,toInteger:e.toInteger,toPath:e.toPath},_=m.ary,x=m.assign,w=m.clone,O=m.curry,j=m.forEach,E=m.isArray,S=m.isError,P=m.isFunction,A=m.isWeakMap,k=m.keys,T=m.rearg,R=m.toInteger,C=m.toPath,I=k(r.aryMethod),M={castArray:function(t){return function(){var e=arguments[0];return E(e)?t(a(e)):t.apply(void 0,arguments)}},iteratee:function(t){return function(){var e=arguments[0],n=arguments[1],r=t(e,n),o=r.length;return d.cap&&"number"==typeof n?(n=n>2?n-2:1,o&&o<=n?r:u(r,n)):r}},mixin:function(t){return function(e){var n=this;if(!P(n))return t(n,Object(e));var r=[];return j(k(e),(function(t){P(e[t])&&r.push([t,n.prototype[t]])})),t(n,Object(e)),j(r,(function(t){var e=t[1];P(e)?n.prototype[t[0]]=e:delete n.prototype[t[0]]})),n}},nthArg:function(t){return function(e){var n=e<0?1:R(e)+1;return O(t(e),n)}},rearg:function(t){return function(e,n){var r=n?n.length:0;return O(t(e,n),r)}},runInContext:function(n){return function(r){return t(e,n(r),f)}}};function L(t,e){if(d.cap){var n=r.iterateeRearg[t];if(n)return function(t,e){return W(t,(function(t){var n=e.length;return function(t,e){return 2==e?function(e,n){return t.apply(void 0,arguments)}:function(e){return t.apply(void 0,arguments)}}(T(u(t,n),e),n)}))}(e,n);var o=!l&&r.iterateeAry[t];if(o)return function(t,e){return W(t,(function(t){return"function"==typeof t?u(t,e):t}))}(e,o)}return e}function N(t,e,n){if(d.fixed&&(y||!r.skipFixed[t])){var o=r.methodSpread[t],u=o&&o.start;return void 0===u?_(e,n):function(t,e){return function(){for(var n=arguments.length,r=n-1,o=Array(n);n--;)o[n]=arguments[n];var u=o[e],a=o.slice(0,e);return u&&i.apply(a,u),e!=r&&i.apply(a,o.slice(e+1)),t.apply(this,a)}}(e,u)}return e}function F(t,e,n){return d.rearg&&n>1&&(b||!r.skipRearg[t])?T(e,r.methodRearg[t]||r.aryRearg[n]):e}function D(t,e){for(var n=-1,r=(e=C(e)).length,o=r-1,i=w(Object(t)),u=i;null!=u&&++n<r;){var a=e[n],c=u[a];null==c||P(c)||S(c)||A(c)||(u[a]=w(n==o?c:Object(c))),u=u[a]}return i}function B(e,n){var o=r.aliasToReal[e]||e,i=r.remap[o]||o,u=f;return function(e){var r=l?g:m,a=l?g[i]:n,c=x(x({},u),e);return t(r,o,a,c)}}function W(t,e){return function(){var n=arguments.length;if(!n)return t();for(var r=Array(n);n--;)r[n]=arguments[n];var o=d.rearg?0:n-1;return r[o]=e(r[o]),t.apply(void 0,r)}}function U(t,e,n){var o,i=r.aliasToReal[t]||t,u=e,s=M[i];return s?u=s(e):d.immutable&&(r.mutate.array[i]?u=c(e,a):r.mutate.object[i]?u=c(e,function(t){return function(e){return t({},e)}}(e)):r.mutate.set[i]&&(u=c(e,D))),j(I,(function(t){return j(r.aryMethod[t],(function(e){if(i==e){var n=r.methodSpread[i],a=n&&n.afterRearg;return o=a?N(i,F(i,u,t),t):F(i,N(i,u,t),t),o=function(t,e,n){return v||d.curry&&n>1?O(e,n):e}(0,o=L(i,o),t),!1}})),!o})),o||(o=u),o==e&&(o=v?O(o,1):function(){return e.apply(this,arguments)}),o.convert=B(i,e),o.placeholder=e.placeholder=n,o}if(!p)return U(n,s,h);var q=s,z=[];return j(I,(function(t){j(r.aryMethod[t],(function(t){var e=q[r.remap[t]||t];e&&z.push([t,U(t,e,q)])}))})),j(k(q),(function(t){var e=q[t];if("function"==typeof e){for(var n=z.length;n--;)if(z[n][0]==t)return;e.convert=B(t,e),z.push([t,e])}})),j(z,(function(t){q[t[0]]=t[1]})),q.convert=function(t){return q.runInContext.convert(t)(void 0)},q.placeholder=q,j(k(q),(function(t){j(r.realToAlias[t]||[],(function(e){q[e]=q[t]}))})),q}},function(t,e){e.aliasToReal={each:"forEach",eachRight:"forEachRight",entries:"toPairs",entriesIn:"toPairsIn",extend:"assignIn",extendAll:"assignInAll",extendAllWith:"assignInAllWith",extendWith:"assignInWith",first:"head",conforms:"conformsTo",matches:"isMatch",property:"get",__:"placeholder",F:"stubFalse",T:"stubTrue",all:"every",allPass:"overEvery",always:"constant",any:"some",anyPass:"overSome",apply:"spread",assoc:"set",assocPath:"set",complement:"negate",compose:"flowRight",contains:"includes",dissoc:"unset",dissocPath:"unset",dropLast:"dropRight",dropLastWhile:"dropRightWhile",equals:"isEqual",identical:"eq",indexBy:"keyBy",init:"initial",invertObj:"invert",juxt:"over",omitAll:"omit",nAry:"ary",path:"get",pathEq:"matchesProperty",pathOr:"getOr",paths:"at",pickAll:"pick",pipe:"flow",pluck:"map",prop:"get",propEq:"matchesProperty",propOr:"getOr",props:"at",symmetricDifference:"xor",symmetricDifferenceBy:"xorBy",symmetricDifferenceWith:"xorWith",takeLast:"takeRight",takeLastWhile:"takeRightWhile",unapply:"rest",unnest:"flatten",useWith:"overArgs",where:"conformsTo",whereEq:"isMatch",zipObj:"zipObject"},e.aryMethod={1:["assignAll","assignInAll","attempt","castArray","ceil","create","curry","curryRight","defaultsAll","defaultsDeepAll","floor","flow","flowRight","fromPairs","invert","iteratee","memoize","method","mergeAll","methodOf","mixin","nthArg","over","overEvery","overSome","rest","reverse","round","runInContext","spread","template","trim","trimEnd","trimStart","uniqueId","words","zipAll"],2:["add","after","ary","assign","assignAllWith","assignIn","assignInAllWith","at","before","bind","bindAll","bindKey","chunk","cloneDeepWith","cloneWith","concat","conformsTo","countBy","curryN","curryRightN","debounce","defaults","defaultsDeep","defaultTo","delay","difference","divide","drop","dropRight","dropRightWhile","dropWhile","endsWith","eq","every","filter","find","findIndex","findKey","findLast","findLastIndex","findLastKey","flatMap","flatMapDeep","flattenDepth","forEach","forEachRight","forIn","forInRight","forOwn","forOwnRight","get","groupBy","gt","gte","has","hasIn","includes","indexOf","intersection","invertBy","invoke","invokeMap","isEqual","isMatch","join","keyBy","lastIndexOf","lt","lte","map","mapKeys","mapValues","matchesProperty","maxBy","meanBy","merge","mergeAllWith","minBy","multiply","nth","omit","omitBy","overArgs","pad","padEnd","padStart","parseInt","partial","partialRight","partition","pick","pickBy","propertyOf","pull","pullAll","pullAt","random","range","rangeRight","rearg","reject","remove","repeat","restFrom","result","sampleSize","some","sortBy","sortedIndex","sortedIndexOf","sortedLastIndex","sortedLastIndexOf","sortedUniqBy","split","spreadFrom","startsWith","subtract","sumBy","take","takeRight","takeRightWhile","takeWhile","tap","throttle","thru","times","trimChars","trimCharsEnd","trimCharsStart","truncate","union","uniqBy","uniqWith","unset","unzipWith","without","wrap","xor","zip","zipObject","zipObjectDeep"],3:["assignInWith","assignWith","clamp","differenceBy","differenceWith","findFrom","findIndexFrom","findLastFrom","findLastIndexFrom","getOr","includesFrom","indexOfFrom","inRange","intersectionBy","intersectionWith","invokeArgs","invokeArgsMap","isEqualWith","isMatchWith","flatMapDepth","lastIndexOfFrom","mergeWith","orderBy","padChars","padCharsEnd","padCharsStart","pullAllBy","pullAllWith","rangeStep","rangeStepRight","reduce","reduceRight","replace","set","slice","sortedIndexBy","sortedLastIndexBy","transform","unionBy","unionWith","update","xorBy","xorWith","zipWith"],4:["fill","setWith","updateWith"]},e.aryRearg={2:[1,0],3:[2,0,1],4:[3,2,0,1]},e.iterateeAry={dropRightWhile:1,dropWhile:1,every:1,filter:1,find:1,findFrom:1,findIndex:1,findIndexFrom:1,findKey:1,findLast:1,findLastFrom:1,findLastIndex:1,findLastIndexFrom:1,findLastKey:1,flatMap:1,flatMapDeep:1,flatMapDepth:1,forEach:1,forEachRight:1,forIn:1,forInRight:1,forOwn:1,forOwnRight:1,map:1,mapKeys:1,mapValues:1,partition:1,reduce:2,reduceRight:2,reject:1,remove:1,some:1,takeRightWhile:1,takeWhile:1,times:1,transform:2},e.iterateeRearg={mapKeys:[1],reduceRight:[1,0]},e.methodRearg={assignInAllWith:[1,0],assignInWith:[1,2,0],assignAllWith:[1,0],assignWith:[1,2,0],differenceBy:[1,2,0],differenceWith:[1,2,0],getOr:[2,1,0],intersectionBy:[1,2,0],intersectionWith:[1,2,0],isEqualWith:[1,2,0],isMatchWith:[2,1,0],mergeAllWith:[1,0],mergeWith:[1,2,0],padChars:[2,1,0],padCharsEnd:[2,1,0],padCharsStart:[2,1,0],pullAllBy:[2,1,0],pullAllWith:[2,1,0],rangeStep:[1,2,0],rangeStepRight:[1,2,0],setWith:[3,1,2,0],sortedIndexBy:[2,1,0],sortedLastIndexBy:[2,1,0],unionBy:[1,2,0],unionWith:[1,2,0],updateWith:[3,1,2,0],xorBy:[1,2,0],xorWith:[1,2,0],zipWith:[1,2,0]},e.methodSpread={assignAll:{start:0},assignAllWith:{start:0},assignInAll:{start:0},assignInAllWith:{start:0},defaultsAll:{start:0},defaultsDeepAll:{start:0},invokeArgs:{start:2},invokeArgsMap:{start:2},mergeAll:{start:0},mergeAllWith:{start:0},partial:{start:1},partialRight:{start:1},without:{start:1},zipAll:{start:0}},e.mutate={array:{fill:!0,pull:!0,pullAll:!0,pullAllBy:!0,pullAllWith:!0,pullAt:!0,remove:!0,reverse:!0},object:{assign:!0,assignAll:!0,assignAllWith:!0,assignIn:!0,assignInAll:!0,assignInAllWith:!0,assignInWith:!0,assignWith:!0,defaults:!0,defaultsAll:!0,defaultsDeep:!0,defaultsDeepAll:!0,merge:!0,mergeAll:!0,mergeAllWith:!0,mergeWith:!0},set:{set:!0,setWith:!0,unset:!0,update:!0,updateWith:!0}},e.realToAlias=function(){var t=Object.prototype.hasOwnProperty,n=e.aliasToReal,r={};for(var o in n){var i=n[o];t.call(r,i)?r[i].push(o):r[i]=[o]}return r}(),e.remap={assignAll:"assign",assignAllWith:"assignWith",assignInAll:"assignIn",assignInAllWith:"assignInWith",curryN:"curry",curryRightN:"curryRight",defaultsAll:"defaults",defaultsDeepAll:"defaultsDeep",findFrom:"find",findIndexFrom:"findIndex",findLastFrom:"findLast",findLastIndexFrom:"findLastIndex",getOr:"get",includesFrom:"includes",indexOfFrom:"indexOf",invokeArgs:"invoke",invokeArgsMap:"invokeMap",lastIndexOfFrom:"lastIndexOf",mergeAll:"merge",mergeAllWith:"mergeWith",padChars:"pad",padCharsEnd:"padEnd",padCharsStart:"padStart",propertyOf:"get",rangeStep:"range",rangeStepRight:"rangeRight",restFrom:"rest",spreadFrom:"spread",trimChars:"trim",trimCharsEnd:"trimEnd",trimCharsStart:"trimStart",zipAll:"zip"},e.skipFixed={castArray:!0,flow:!0,flowRight:!0,iteratee:!0,mixin:!0,rearg:!0,runInContext:!0},e.skipRearg={add:!0,assign:!0,assignIn:!0,bind:!0,bindKey:!0,concat:!0,difference:!0,divide:!0,eq:!0,gt:!0,gte:!0,isEqual:!0,lt:!0,lte:!0,matchesProperty:!0,merge:!0,multiply:!0,overArgs:!0,partial:!0,partialRight:!0,propertyOf:!0,random:!0,range:!0,rangeRight:!0,subtract:!0,zip:!0,zipObject:!0,zipObjectDeep:!0}},function(t,e,n){t.exports={ary:n(320),assign:n(189),clone:n(337),curry:n(195),forEach:n(117),isArray:n(6),isError:n(356),isFunction:n(94),isWeakMap:n(358),iteratee:n(359),keys:n(95),rearg:n(360),toInteger:n(86),toPath:n(362)}},function(t,e,n){var r=n(104),o=128;t.exports=function(t,e,n){return e=n?void 0:e,e=t&&null==e?t.length:e,r(t,o,void 0,void 0,void 0,void 0,e)}},function(t,e,n){var r=n(72),o=n(11),i=1;t.exports=function(t,e,n){var u=e&i,a=r(t);return function e(){return(this&&this!==o&&this instanceof e?a:t).apply(u?n:this,arguments)}}},function(t,e,n){var r=n(114),o=n(72),i=n(179),u=n(182),a=n(156),c=n(105),s=n(11);t.exports=function(t,e,n){var f=o(t);return function o(){for(var l=arguments.length,p=Array(l),d=l,h=a(o);d--;)p[d]=arguments[d];var v=l<3&&p[0]!==h&&p[l-1]!==h?[]:c(p,h);return(l-=v.length)<n?u(t,e,i,o.placeholder,void 0,p,v,void 0,void 0,n-l):r(this&&this!==s&&this instanceof o?f:t,this,p)}}},function(t,e){t.exports=function(t,e){for(var n=t.length,r=0;n--;)t[n]===e&&++r;return r}},function(t,e,n){var r=n(115),o=n(183),i=n(325),u=n(327);t.exports=function(t){var e=i(t),n=u[e];if("function"!=typeof n||!(e in r.prototype))return!1;if(t===n)return!0;var a=o(n);return!!a&&t===a[0]}},function(t,e,n){var r=n(326),o=Object.prototype.hasOwnProperty;t.exports=function(t){for(var e=t.name+"",n=r[e],i=o.call(r,e)?n.length:0;i--;){var u=n[i],a=u.func;if(null==a||a==t)return u.name}return e}},function(t,e){t.exports={}},function(t,e,n){var r=n(115),o=n(184),i=n(116),u=n(6),a=n(14),c=n(328),s=Object.prototype.hasOwnProperty;function f(t){if(a(t)&&!u(t)&&!(t instanceof r)){if(t instanceof o)return t;if(s.call(t,"__wrapped__"))return c(t)}return new o(t)}f.prototype=i.prototype,f.prototype.constructor=f,t.exports=f},function(t,e,n){var r=n(115),o=n(184),i=n(74);t.exports=function(t){if(t instanceof r)return t.clone();var e=new o(t.__wrapped__,t.__chain__);return e.__actions__=i(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}},function(t,e){var n=/\{\n\/\* \[wrapped with (.+)\] \*/,r=/,? & /;t.exports=function(t){var e=t.match(n);return e?e[1].split(r):[]}},function(t,e){var n=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;t.exports=function(t,e){var r=e.length;if(!r)return t;var o=r-1;return e[o]=(r>1?"& ":"")+e[o],e=e.join(r>2?", ":" "),t.replace(n,"{\n/* [wrapped with "+e+"] */\n")}},function(t,e,n){var r=n(332),o=n(188),i=n(52),u=o?function(t,e){return o(t,"toString",{configurable:!0,enumerable:!1,value:r(e),writable:!0})}:i;t.exports=u},function(t,e){t.exports=function(t){return function(){return t}}},function(t,e,n){var r=n(117),o=n(174),i=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]];t.exports=function(t,e){return r(i,(function(n){var r="_."+n[0];e&n[1]&&!o(t,r)&&t.push(r)})),t.sort()}},function(t,e,n){var r=n(74),o=n(75),i=Math.min;t.exports=function(t,e){for(var n=t.length,u=i(e.length,n),a=r(t);u--;){var c=e[u];t[u]=o(c,n)?a[c]:void 0}return t}},function(t,e,n){var r=n(114),o=n(72),i=n(11),u=1;t.exports=function(t,e,n,a){var c=e&u,s=o(t);return function e(){for(var o=-1,u=arguments.length,f=-1,l=a.length,p=Array(l+u),d=this&&this!==i&&this instanceof e?s:t;++f<l;)p[f]=a[f];for(;u--;)p[f++]=arguments[++o];return r(d,c?n:this,p)}}},function(t,e,n){var r=n(180),o=n(181),i=n(105),u="__lodash_placeholder__",a=1,c=2,s=4,f=8,l=128,p=256,d=Math.min;t.exports=function(t,e){var n=t[1],h=e[1],v=n|h,y=v<(a|c|l),b=h==l&&n==f||h==l&&n==p&&t[7].length<=e[8]||h==(l|p)&&e[7].length<=e[8]&&n==f;if(!y&&!b)return t;h&a&&(t[2]=e[2],v|=n&a?0:s);var g=e[3];if(g){var m=t[3];t[3]=m?r(m,g,e[4]):g,t[4]=m?i(t[3],u):e[4]}return(g=e[5])&&(m=t[5],t[5]=m?o(m,g,e[6]):g,t[6]=m?i(t[5],u):e[6]),(g=e[7])&&(t[7]=g),h&l&&(t[8]=null==t[8]?e[8]:d(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=v,t}},function(t,e,n){var r=n(192),o=4;t.exports=function(t){return r(t,o)}},function(t,e,n){var r=n(76),o=n(193);t.exports=function(t,e){return t&&r(e,o(e),t)}},function(t,e,n){var r=n(22),o=n(64),i=n(340),u=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return i(t);var e=o(t),n=[];for(var a in t)("constructor"!=a||!e&&u.call(t,a))&&n.push(a);return n}},function(t,e){t.exports=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}},function(t,e,n){(function(t){var r=n(11),o=e&&!e.nodeType&&e,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,u=i&&i.exports===o?r.Buffer:void 0,a=u?u.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,r=a?a(n):new t.constructor(n);return t.copy(r),r}}).call(this,n(66)(t))},function(t,e,n){var r=n(76),o=n(106);t.exports=function(t,e){return r(t,o(t),e)}},function(t,e,n){var r=n(76),o=n(194);t.exports=function(t,e){return r(t,o(t),e)}},function(t,e,n){var r=n(163),o=n(194),i=n(193);t.exports=function(t){return r(t,i,o)}},function(t,e){var n=Object.prototype.hasOwnProperty;t.exports=function(t){var e=t.length,r=new t.constructor(e);return e&&"string"==typeof t[0]&&n.call(t,"index")&&(r.index=t.index,r.input=t.input),r}},function(t,e,n){var r=n(119),o=n(347),i=n(348),u=n(349),a=n(350),c="[object Boolean]",s="[object Date]",f="[object Map]",l="[object Number]",p="[object RegExp]",d="[object Set]",h="[object String]",v="[object Symbol]",y="[object ArrayBuffer]",b="[object DataView]",g="[object Float32Array]",m="[object Float64Array]",_="[object Int8Array]",x="[object Int16Array]",w="[object Int32Array]",O="[object Uint8Array]",j="[object Uint8ClampedArray]",E="[object Uint16Array]",S="[object Uint32Array]";t.exports=function(t,e,n){var P=t.constructor;switch(e){case y:return r(t);case c:case s:return new P(+t);case b:return o(t,n);case g:case m:case _:case x:case w:case O:case j:case E:case S:return a(t,n);case f:return new P;case l:case h:return new P(t);case p:return i(t);case d:return new P;case v:return u(t)}}},function(t,e,n){var r=n(119);t.exports=function(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}},function(t,e){var n=/\w*$/;t.exports=function(t){var e=new t.constructor(t.source,n.exec(t));return e.lastIndex=t.lastIndex,e}},function(t,e,n){var r=n(32),o=r?r.prototype:void 0,i=o?o.valueOf:void 0;t.exports=function(t){return i?Object(i.call(t)):{}}},function(t,e,n){var r=n(119);t.exports=function(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}},function(t,e,n){var r=n(73),o=n(118),i=n(64);t.exports=function(t){return"function"!=typeof t.constructor||i(t)?{}:r(o(t))}},function(t,e,n){var r=n(353),o=n(89),i=n(90),u=i&&i.isMap,a=u?o(u):r;t.exports=a},function(t,e,n){var r=n(43),o=n(14),i="[object Map]";t.exports=function(t){return o(t)&&r(t)==i}},function(t,e,n){var r=n(355),o=n(89),i=n(90),u=i&&i.isSet,a=u?o(u):r;t.exports=a},function(t,e,n){var r=n(43),o=n(14),i="[object Set]";t.exports=function(t){return o(t)&&r(t)==i}},function(t,e,n){var r=n(20),o=n(14),i=n(357),u="[object DOMException]",a="[object Error]";t.exports=function(t){if(!o(t))return!1;var e=r(t);return e==a||e==u||"string"==typeof t.message&&"string"==typeof t.name&&!i(t)}},function(t,e,n){var r=n(20),o=n(118),i=n(14),u="[object Object]",a=Function.prototype,c=Object.prototype,s=a.toString,f=c.hasOwnProperty,l=s.call(Object);t.exports=function(t){if(!i(t)||r(t)!=u)return!1;var e=o(t);if(null===e)return!0;var n=f.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&s.call(n)==l}},function(t,e,n){var r=n(43),o=n(14),i="[object WeakMap]";t.exports=function(t){return o(t)&&r(t)==i}},function(t,e,n){var r=n(192),o=n(107),i=1;t.exports=function(t){return o("function"==typeof t?t:r(t,i))}},function(t,e,n){var r=n(104),o=n(361),i=o((function(t,e){return r(t,256,void 0,void 0,void 0,e)}));t.exports=i},function(t,e,n){var r=n(196),o=n(277),i=n(155);t.exports=function(t){return i(o(t,void 0,r),t+"")}},function(t,e,n){var r=n(77),o=n(74),i=n(6),u=n(46),a=n(165),c=n(47),s=n(98);t.exports=function(t){return i(t)?r(t,c):u(t)?[t]:o(a(s(t)))}},function(t,e,n){var r=n(364),o=n(40);t.exports=function(t){return null==t?[]:r(t,o(t))}},function(t,e,n){var r=n(77);t.exports=function(t,e){return r(e,(function(e){return t[e]}))}},function(t,e,n){n(366);var r=n(10).Object;t.exports=function(t,e,n){return r.defineProperty(t,e,n)}},function(t,e,n){var r=n(18);r(r.S+r.F*!n(19),"Object",{defineProperty:n(21).f})},function(t,e){var n=Math.max,r=Math.min;t.exports=function(t,e,o){return t>=r(e,o)&&t<n(e,o)}},,,,,function(t,e,n){"use strict";var r=n(301),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},i={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},u={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},a={};function c(t){return r.isMemo(t)?u:a[t.$$typeof]||o}a[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0};var s=Object.defineProperty,f=Object.getOwnPropertyNames,l=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,d=Object.getPrototypeOf,h=Object.prototype;t.exports=function t(e,n,r){if("string"!=typeof n){if(h){var o=d(n);o&&o!==h&&t(e,o,r)}var u=f(n);l&&(u=u.concat(l(n)));for(var a=c(e),v=c(n),y=0;y<u.length;++y){var b=u[y];if(!(i[b]||r&&r[b]||v&&v[b]||a&&a[b])){var g=p(n,b);try{s(e,b,g)}catch(t){}}}}return e}},function(t,e){!function(e){"use strict";var n,r=Object.prototype,o=r.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag",s="object"==typeof t,f=e.regeneratorRuntime;if(f)s&&(t.exports=f);else{(f=e.regeneratorRuntime=s?t.exports:{}).wrap=_;var l="suspendedStart",p="suspendedYield",d="executing",h="completed",v={},y={};y[u]=function(){return this};var b=Object.getPrototypeOf,g=b&&b(b(R([])));g&&g!==r&&o.call(g,u)&&(y=g);var m=j.prototype=w.prototype=Object.create(y);O.prototype=m.constructor=j,j.constructor=O,j[c]=O.displayName="GeneratorFunction",f.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===O||"GeneratorFunction"===(e.displayName||e.name))},f.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,j):(t.__proto__=j,c in t||(t[c]="GeneratorFunction")),t.prototype=Object.create(m),t},f.awrap=function(t){return{__await:t}},E(S.prototype),S.prototype[a]=function(){return this},f.AsyncIterator=S,f.async=function(t,e,n,r){var o=new S(_(t,e,n,r));return f.isGeneratorFunction(e)?o:o.next().then((function(t){return t.done?t.value:o.next()}))},E(m),m[c]="Generator",m[u]=function(){return this},m.toString=function(){return"[object Generator]"},f.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var r=e.pop();if(r in t)return n.value=r,n.done=!1,n}return n.done=!0,n}},f.values=R,T.prototype={constructor:T,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=n,this.done=!1,this.delegate=null,this.method="next",this.arg=n,this.tryEntries.forEach(k),!t)for(var e in this)"t"===e.charAt(0)&&o.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=n)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(r,o){return a.type="throw",a.arg=t,e.next=r,o&&(e.method="next",e.arg=n),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var u=this.tryEntries[i],a=u.completion;if("root"===u.tryLoc)return r("end");if(u.tryLoc<=this.prev){var c=o.call(u,"catchLoc"),s=o.call(u,"finallyLoc");if(c&&s){if(this.prev<u.catchLoc)return r(u.catchLoc,!0);if(this.prev<u.finallyLoc)return r(u.finallyLoc)}else if(c){if(this.prev<u.catchLoc)return r(u.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<u.finallyLoc)return r(u.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&o.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var u=i?i.completion:{};return u.type=t,u.arg=e,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(u)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),v},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),k(n),v}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;k(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:R(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=n),v}}}function _(t,e,n,r){var o=e&&e.prototype instanceof w?e:w,i=Object.create(o.prototype),u=new T(r||[]);return i._invoke=function(t,e,n){var r=l;return function(o,i){if(r===d)throw new Error("Generator is already running");if(r===h){if("throw"===o)throw i;return C()}for(n.method=o,n.arg=i;;){var u=n.delegate;if(u){var a=P(u,n);if(a){if(a===v)continue;return a}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===l)throw r=h,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=d;var c=x(t,e,n);if("normal"===c.type){if(r=n.done?h:p,c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r=h,n.method="throw",n.arg=c.arg)}}}(t,n,u),i}function x(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}function w(){}function O(){}function j(){}function E(t){["next","throw","return"].forEach((function(e){t[e]=function(t){return this._invoke(e,t)}}))}function S(t){var e;this._invoke=function(n,r){function i(){return new Promise((function(e,i){!function e(n,r,i,u){var a=x(t[n],t,r);if("throw"!==a.type){var c=a.arg,s=c.value;return s&&"object"==typeof s&&o.call(s,"__await")?Promise.resolve(s.__await).then((function(t){e("next",t,i,u)}),(function(t){e("throw",t,i,u)})):Promise.resolve(s).then((function(t){c.value=t,i(c)}),(function(t){return e("throw",t,i,u)}))}u(a.arg)}(n,r,e,i)}))}return e=e?e.then(i,i):i()}}function P(t,e){var r=t.iterator[e.method];if(r===n){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=n,P(t,e),"throw"===e.method))return v;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return v}var o=x(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,v;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=n),e.delegate=null,v):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,v)}function A(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(A,this),this.reset(!0)}function R(t){if(t){var e=t[u];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,i=function e(){for(;++r<t.length;)if(o.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=n,e.done=!0,e};return i.next=i}}return{next:C}}function C(){return{value:n,done:!0}}}(function(){return this||"object"==typeof self&&self}()||Function("return this")())},function(t,e,n){t.exports={default:n(375),__esModule:!0}},function(t,e,n){n(61),n(108),t.exports=n(171).f("iterator")},function(t,e,n){t.exports={default:n(377),__esModule:!0}},function(t,e,n){n(378),n(170),n(383),n(384),t.exports=n(10).Symbol},function(t,e,n){"use strict";var r=n(9),o=n(31),i=n(19),u=n(18),a=n(167),c=n(379).KEY,s=n(50),f=n(101),l=n(62),p=n(70),d=n(12),h=n(171),v=n(172),y=n(380),b=n(381),g=n(17),m=n(23),_=n(63),x=n(45),w=n(112),O=n(51),j=n(126),E=n(382),S=n(304),P=n(120),A=n(21),k=n(69),T=S.f,R=A.f,C=E.f,I=r.Symbol,M=r.JSON,L=M&&M.stringify,N=d("_hidden"),F=d("toPrimitive"),D={}.propertyIsEnumerable,B=f("symbol-registry"),W=f("symbols"),U=f("op-symbols"),q=Object.prototype,z="function"==typeof I&&!!P.f,G=r.QObject,V=!G||!G.prototype||!G.prototype.findChild,$=i&&s((function(){return 7!=j(R({},"a",{get:function(){return R(this,"a",{value:7}).a}})).a}))?function(t,e,n){var r=T(q,e);r&&delete q[e],R(t,e,n),r&&t!==q&&R(q,e,r)}:R,H=function(t){var e=W[t]=j(I.prototype);return e._k=t,e},K=z&&"symbol"==typeof I.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof I},Y=function(t,e,n){return t===q&&Y(U,e,n),g(t),e=w(e,!0),g(n),o(W,e)?(n.enumerable?(o(t,N)&&t[N][e]&&(t[N][e]=!1),n=j(n,{enumerable:O(0,!1)})):(o(t,N)||R(t,N,O(1,{})),t[N][e]=!0),$(t,e,n)):R(t,e,n)},J=function(t,e){g(t);for(var n,r=y(e=x(e)),o=0,i=r.length;i>o;)Y(t,n=r[o++],e[n]);return t},Q=function(t){var e=D.call(this,t=w(t,!0));return!(this===q&&o(W,t)&&!o(U,t))&&(!(e||!o(this,t)||!o(W,t)||o(this,N)&&this[N][t])||e)},X=function(t,e){if(t=x(t),e=w(e,!0),t!==q||!o(W,e)||o(U,e)){var n=T(t,e);return!n||!o(W,e)||o(t,N)&&t[N][e]||(n.enumerable=!0),n}},Z=function(t){for(var e,n=C(x(t)),r=[],i=0;n.length>i;)o(W,e=n[i++])||e==N||e==c||r.push(e);return r},tt=function(t){for(var e,n=t===q,r=C(n?U:x(t)),i=[],u=0;r.length>u;)!o(W,e=r[u++])||n&&!o(q,e)||i.push(W[e]);return i};z||(a((I=function(){if(this instanceof I)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),e=function(n){this===q&&e.call(U,n),o(this,N)&&o(this[N],t)&&(this[N][t]=!1),$(this,t,O(1,n))};return i&&V&&$(q,t,{configurable:!0,set:e}),H(t)}).prototype,"toString",(function(){return this._k})),S.f=X,A.f=Y,n(299).f=E.f=Z,n(92).f=Q,P.f=tt,i&&!n(49)&&a(q,"propertyIsEnumerable",Q,!0),h.f=function(t){return H(d(t))}),u(u.G+u.W+u.F*!z,{Symbol:I});for(var et="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),nt=0;et.length>nt;)d(et[nt++]);for(var rt=k(d.store),ot=0;rt.length>ot;)v(rt[ot++]);u(u.S+u.F*!z,"Symbol",{for:function(t){return o(B,t+="")?B[t]:B[t]=I(t)},keyFor:function(t){if(!K(t))throw TypeError(t+" is not a symbol!");for(var e in B)if(B[e]===t)return e},useSetter:function(){V=!0},useSimple:function(){V=!1}}),u(u.S+u.F*!z,"Object",{create:function(t,e){return void 0===e?j(t):J(j(t),e)},defineProperty:Y,defineProperties:J,getOwnPropertyDescriptor:X,getOwnPropertyNames:Z,getOwnPropertySymbols:tt});var it=s((function(){P.f(1)}));u(u.S+u.F*it,"Object",{getOwnPropertySymbols:function(t){return P.f(_(t))}}),M&&u(u.S+u.F*(!z||s((function(){var t=I();return"[null]"!=L([t])||"{}"!=L({a:t})||"{}"!=L(Object(t))}))),"JSON",{stringify:function(t){for(var e,n,r=[t],o=1;arguments.length>o;)r.push(arguments[o++]);if(n=e=r[1],(m(e)||void 0!==t)&&!K(t))return b(e)||(e=function(t,e){if("function"==typeof n&&(e=n.call(this,t,e)),!K(e))return e}),r[1]=e,L.apply(M,r)}}),I.prototype[F]||n(26)(I.prototype,F,I.prototype.valueOf),l(I,"Symbol"),l(Math,"Math",!0),l(r.JSON,"JSON",!0)},function(t,e,n){var r=n(70)("meta"),o=n(23),i=n(31),u=n(21).f,a=0,c=Object.isExtensible||function(){return!0},s=!n(50)((function(){return c(Object.preventExtensions({}))})),f=function(t){u(t,r,{value:{i:"O"+ ++a,w:{}}})},l=t.exports={KEY:r,NEED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,r)){if(!c(t))return"F";if(!e)return"E";f(t)}return t[r].i},getWeak:function(t,e){if(!i(t,r)){if(!c(t))return!0;if(!e)return!1;f(t)}return t[r].w},onFreeze:function(t){return s&&l.NEED&&c(t)&&!i(t,r)&&f(t),t}}},function(t,e,n){var r=n(69),o=n(120),i=n(92);t.exports=function(t){var e=r(t),n=o.f;if(n)for(var u,a=n(t),c=i.f,s=0;a.length>s;)c.call(t,u=a[s++])&&e.push(u);return e}},function(t,e,n){var r=n(48);t.exports=Array.isArray||function(t){return"Array"==r(t)}},function(t,e,n){var r=n(45),o=n(299).f,i={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return u&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return u.slice()}}(t):o(r(t))}},function(t,e,n){n(172)("asyncIterator")},function(t,e,n){n(172)("observable")},function(t,e,n){var r=n(408),o=n(411)(r);t.exports=o},,,,,function(t,e,n){"use strict";n.r(e);var r=n(4),o=n.n(r),i=n(2),u=n(305),a=function(){return u.store},c=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(e){return function(n){var r=o()({},t,{store:a()});return wp.element.createElement(e,o()({},n,r))}}},s=n(34),f=n.n(s),l=n(35),p=n.n(l),d=n(27),h=n.n(d),v=n(36),y=n.n(v),b=n(8),g=n.n(b),m=n(1),_=n.n(m),x=n(15),w=n(207),O=n(29),j=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g.a;return function(e){var n=function(n){function r(){return f()(this,r),h()(this,(r.__proto__||Object.getPrototypeOf(r)).apply(this,arguments))}return y()(r,n),p()(r,[{key:"componentDidMount",value:function(){var e=t(this.props),n=this.props;(0,n.registerForm)(e,n.postType)}},{key:"render",value:function(){return wp.element.createElement(e,o()({},this.props,this.additionalProps()))}},{key:"additionalProps",value:function(){var e=this.props,n=e.createDraft,r=e.sendForm,o=e.setSubmit,i=e.editEntry,u=e.maybeRemoveEntry,a=t(this.props);return{createDraft:function(t){return n(a,t)},editEntry:function(t){return i(a,t)},sendForm:function(t,e){return r(a,t,e)},setSubmit:function(){return o(a)},maybeRemoveEntry:function(t){return u(a,t)}}}}]),r}(i.Component);n.propTypes={registerForm:_.a.func,postType:_.a.string};return Object(w.a)((function(e,n){var r={name:t(n)};return{edit:O.selectors.getFormEdit(e,r),create:O.selectors.getFormCreate(e,r),fields:O.selectors.getFormFields(e,r),submit:O.selectors.getFormSubmit(e,r)}}),(function(t){return Object(x.bindActionCreators)(O.actions,t)}))(n)}},E=n(128),S=function(){return function(t){var e=function(e){function n(){return f()(this,n),h()(this,(n.__proto__||Object.getPrototypeOf(n)).apply(this,arguments))}return y()(n,e),p()(n,[{key:"componentDidMount",value:function(){var t=this.props,e=t.isSelected,n=t.onBlockFocus,r=t.onBlockBlur;e?n():r()}},{key:"componentDidUpdate",value:function(t){var e=this.props,n=e.isSelected,r=e.onBlockFocus,o=e.onBlockBlur;t.isSelected!==n&&(n?r():o())}},{key:"render",value:function(){return wp.element.createElement(t,this.props)}}]),n}(i.Component);return e.defaultProps={isSelected:!1,onBlockFocus:g.a,onBlockBlur:g.a},e.propTypes={onBlockFocus:_.a.func,onBlockBlur:_.a.func,isSelected:_.a.bool},e.displayName="WithIsSelected( "+(t.displayName||t.name||"Component "),e}};n.d(e,"withStore",(function(){return c})),n.d(e,"withForm",(function(){return j})),n.d(e,"withBlockCloser",(function(){return E.b})),n.d(e,"withSelected",(function(){return S}))},function(t,e){t.exports=wp.editor},,,function(t,e,n){"use strict";
|
7 |
Â
/** @license React v16.12.0
|
8 |
Â
* react-is.production.min.js
|
9 |
Â
*
|
11 |
Â
*
|
12 |
Â
* This source code is licensed under the MIT license found in the
|
13 |
Â
* LICENSE file in the root directory of this source tree.
|
14 |
+
*/Object.defineProperty(e,"__esModule",{value:!0});var r="function"==typeof Symbol&&Symbol.for,o=r?Symbol.for("react.element"):60103,i=r?Symbol.for("react.portal"):60106,u=r?Symbol.for("react.fragment"):60107,a=r?Symbol.for("react.strict_mode"):60108,c=r?Symbol.for("react.profiler"):60114,s=r?Symbol.for("react.provider"):60109,f=r?Symbol.for("react.context"):60110,l=r?Symbol.for("react.async_mode"):60111,p=r?Symbol.for("react.concurrent_mode"):60111,d=r?Symbol.for("react.forward_ref"):60112,h=r?Symbol.for("react.suspense"):60113,v=r?Symbol.for("react.suspense_list"):60120,y=r?Symbol.for("react.memo"):60115,b=r?Symbol.for("react.lazy"):60116,g=r?Symbol.for("react.fundamental"):60117,m=r?Symbol.for("react.responder"):60118,_=r?Symbol.for("react.scope"):60119;function x(t){if("object"==typeof t&&null!==t){var e=t.$$typeof;switch(e){case o:switch(t=t.type){case l:case p:case u:case c:case a:case h:return t;default:switch(t=t&&t.$$typeof){case f:case d:case b:case y:case s:return t;default:return e}}case i:return e}}}function w(t){return x(t)===p}e.typeOf=x,e.AsyncMode=l,e.ConcurrentMode=p,e.ContextConsumer=f,e.ContextProvider=s,e.Element=o,e.ForwardRef=d,e.Fragment=u,e.Lazy=b,e.Memo=y,e.Portal=i,e.Profiler=c,e.StrictMode=a,e.Suspense=h,e.isValidElementType=function(t){return"string"==typeof t||"function"==typeof t||t===u||t===p||t===c||t===a||t===h||t===v||"object"==typeof t&&null!==t&&(t.$$typeof===b||t.$$typeof===y||t.$$typeof===s||t.$$typeof===f||t.$$typeof===d||t.$$typeof===g||t.$$typeof===m||t.$$typeof===_)},e.isAsyncMode=function(t){return w(t)||x(t)===l},e.isConcurrentMode=w,e.isContextConsumer=function(t){return x(t)===f},e.isContextProvider=function(t){return x(t)===s},e.isElement=function(t){return"object"==typeof t&&null!==t&&t.$$typeof===o},e.isForwardRef=function(t){return x(t)===d},e.isFragment=function(t){return x(t)===u},e.isLazy=function(t){return x(t)===b},e.isMemo=function(t){return x(t)===y},e.isPortal=function(t){return x(t)===i},e.isProfiler=function(t){return x(t)===c},e.isStrictMode=function(t){return x(t)===a},e.isSuspense=function(t){return x(t)===h}},function(t,e,n){t.exports={default:n(396),__esModule:!0}},function(t,e,n){n(397),t.exports=n(10).Object.setPrototypeOf},function(t,e,n){var r=n(18);r(r.S,"Object",{setPrototypeOf:n(398).set})},function(t,e,n){var r=n(23),o=n(17),i=function(t,e){if(o(t),!r(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,r){try{(r=n(38)(Function.call,n(304).f(Object.prototype,"__proto__").set,2))(t,[]),e=!(t instanceof Array)}catch(t){e=!0}return function(t,n){return i(t,n),e?t.__proto__=n:r(t,n),t}}({},!1):void 0),check:i}},function(t,e,n){t.exports={default:n(400),__esModule:!0}},function(t,e,n){n(401);var r=n(10).Object;t.exports=function(t,e){return r.create(t,e)}},function(t,e,n){var r=n(18);r(r.S,"Object",{create:n(126)})},function(t,e,n){t.exports={default:n(403),__esModule:!0}},function(t,e,n){n(108),n(61),t.exports=n(404)},function(t,e,n){var r=n(110),o=n(12)("iterator"),i=n(39);t.exports=n(10).isIterable=function(t){var e=Object(t);return void 0!==e[o]||"@@iterator"in e||i.hasOwnProperty(r(e))}},function(t,e,n){t.exports={default:n(406),__esModule:!0}},function(t,e,n){n(108),n(61),t.exports=n(407)},function(t,e,n){var r=n(17),o=n(109);t.exports=n(10).getIterator=function(t){var e=o(t);if("function"!=typeof e)throw TypeError(t+" is not iterable!");return r(e.call(t))}},function(t,e,n){var r=n(409),o=n(40);t.exports=function(t,e){return t&&r(t,e,o)}},function(t,e,n){var r=n(410)();t.exports=r},function(t,e){t.exports=function(t){return function(e,n,r){for(var o=-1,i=Object(e),u=r(e),a=u.length;a--;){var c=u[t?a:++o];if(!1===n(i[c],c,i))break}return e}}},function(t,e,n){var r=n(41);t.exports=function(t,e){return function(n,o){if(null==n)return n;if(!r(n))return t(n,o);for(var i=n.length,u=e?i:-1,a=Object(n);(e?u--:++u<i)&&!1!==o(a[u],u,a););return n}}},function(t,e,n){var r=n(385),o=n(41);t.exports=function(t,e){var n=-1,i=o(t)?Array(t.length):[];return r(t,(function(t,r,o){i[++n]=e(t,r,o)})),i}},function(t,e,n){var r=n(107),o=n(41),i=n(40);t.exports=function(t){return function(e,n,u){var a=Object(e);if(!o(e)){var c=r(n,3);e=i(e),n=function(t){return c(a[t],t,a)}}var s=t(e,n,u);return s>-1?a[c?e[s]:s]:void 0}}},function(t,e,n){var r=n(175),o=n(107),i=n(86),u=Math.max;t.exports=function(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var c=null==n?0:i(n);return c<0&&(c=u(a+c,0)),r(t,o(e,3),c)}},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,e,n){var r=n(669),o=n(385),i=n(107),u=n(670),a=n(6);t.exports=function(t,e,n){var c=a(t)?r:u,s=arguments.length<3;return c(t,i(e,4),n,s,o)}},function(t,e){t.exports=wp.data},function(t,e,n){var r=n(672),o=n(104),i=n(156),u=n(105),a=r((function(t,e){var n=u(e,i(a));return o(t,32,void 0,e,n)}));a.placeholder={},t.exports=a},,,,,,function(t,e,n){"use strict";n.r(e);var r=n(207),o=n(15),i=n(60),u=n(390),a=n(28),c=n.n(a),s=n(129),f=n.n(s),l=n(34),p=n.n(l),d=n(35),h=n.n(d),v=n(27),y=n.n(v),b=n(36),g=n.n(b),m=n(6),_=n.n(m),x=n(127),w=n.n(x),O=n(658),j=n.n(O),E=n(306),S=n.n(E),P=n(2),A=n.n(P),k=n(1),T=n.n(k),R=n(391),C=n(659),I=(n(671),function(t){function e(){return p()(this,e),y()(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return g()(e,t),h()(e,[{key:"filterPluginTemplates",value:function(t,e){var n=this;return j()(e,(function(e,r){var o=f()(r,3),i=o[0],u=o[1],a=o[2];if(w()(t,i)){var s=_()(a)?[i,u,n.filterPluginTemplates(t,a)]:[i,u];return[].concat(c()(e),[s])}return e}),[])}},{key:"render",value:function(){return wp.element.createElement("div",{className:"tribe-common__plugin-block-hook"},wp.element.createElement(R.InnerBlocks,{allowedBlocks:this.props.allowedBlocks,layouts:this.props.layouts,template:this.template,templateInsertUpdatesSelection:this.props.templateInsertUpdatesSelection,templateLock:this.props.templateLock}))}},{key:"registeredBlockNames",get:function(){var t=Object(C.select)("core/blocks").getBlockTypes();return S()(t,(function(t){return t.name}))}},{key:"template",get:function(){var t=this,e=this.registeredBlockNames;return this.props.plugins.reduce((function(n,r){var o=t.props.pluginTemplates[r];if(o){var i=t.filterPluginTemplates(e,o);return[].concat(c()(n),c()(i))}return n}),[])}}]),e}(P.PureComponent));I.propTypes={allowedBlocks:T.a.arrayOf(T.a.string),layouts:T.a.oneOfType([T.a.object,T.a.arrayOf(T.a.object)]),plugins:T.a.arrayOf(T.a.string).isRequired,pluginTemplates:T.a.objectOf(T.a.arrayOf(T.a.array)),templateInsertUpdatesSelection:T.a.bool.isRequired,templateLock:T.a.oneOf(["all","insert",!1])},I.defaultProps={templateInsertUpdatesSelection:!1};var M=I,L=Object(o.compose)(Object(u.withStore)(),Object(r.a)((function(t,e){return{plugins:i.selectors.getPlugins(t)}})))(M),N=n(128),F=function(t){function e(){var t,n,r,o;p()(this,e);for(var i=arguments.length,u=Array(i),a=0;a<i;a++)u[a]=arguments[a];return n=r=y()(this,(t=e.__proto__||Object.getPrototypeOf(e)).call.apply(t,[this].concat(u))),r.nodeRef=A.a.createRef(),o=n,y()(r,o)}return g()(e,t),h()(e,[{key:"componentDidMount",value:function(){this.node.addEventListener(N.a,N.c)}},{key:"componentWillUnmount",value:function(){this.node.removeEventListener(N.a,N.c)}},{key:"render",value:function(){return wp.element.createElement("div",{ref:this.nodeRef},this.props.children)}},{key:"node",get:function(){return this.nodeRef.current}}]),e}(P.PureComponent);F.propTypes={children:T.a.node.isRequired};var D=F,B=n(307),W=n.n(B),U=n(660),q=n.n(U),z=n(8),G=n.n(z),V=n(16),$=n.n(V),H=n(130),K=n(309),Y=(n(673),function(t){function e(){var t,n,r,o;p()(this,e);for(var i=arguments.length,u=Array(i),a=0;a<i;a++)u[a]=arguments[a];return n=r=y()(this,(t=e.__proto__||Object.getPrototypeOf(e)).call.apply(t,[this].concat(u))),r._onOptionClick=function(t,e,n){r.props.onOptionClick(e,n),t()},r.renderOptions=function(t){return r.props.options.map((function(e){return wp.element.createElement("button",{className:$()("tribe-common-form-select__options__option",r.props.optionClassName),key:e.value,onClick:q()(r._onOptionClick,t,e.value),role:"menuitem",type:"button",value:e.value},e.label)}))},r.renderToggle=function(t){var e=t.onToggle,n=t.isOpen;return wp.element.createElement("div",{className:"tribe-common-form-select__toggle"},wp.element.createElement("button",{type:"button","aria-expanded":n,onClick:e},wp.element.createElement("span",null,r.label),wp.element.createElement(H.Dashicon,{className:"btn--icon",icon:n?"arrow-up":"arrow-down"})))},r.renderContent=function(t){var e=t.onClose;return wp.element.createElement(K.ScrollTo,null,(function(){return wp.element.createElement(D,null,wp.element.createElement(K.ScrollArea,{role:"menu",className:$()("tribe-common-form-select__options")},r.renderOptions(e)))}))},o=n,y()(r,o)}return g()(e,t),h()(e,[{key:"render",value:function(){return wp.element.createElement(H.Dropdown,{className:$()("tribe-common-form-select",this.props.className),position:"bottom center",contentClassName:"tribe-common-form-select__content",renderToggle:this.renderToggle,renderContent:this.renderContent})}},{key:"selected",get:function(){var t=this;return W()(this.props.options,(function(e){return e.value===t.props.value}))}},{key:"label",get:function(){var t=this.selected;return t&&t.label}}]),e}(P.PureComponent));Y.propTypes={options:T.a.shape({label:T.a.string,value:T.a.any}),onOptionClick:T.a.func.isRequired,optionClassName:T.a.string,isOpen:T.a.bool.isRequired,value:T.a.any,className:T.a.string},Y.defaultProps={onOptionClick:G.a,isOpen:!0,optionClassName:""};var J=Y;n.d(e,"PluginBlockHooks",(function(){return L})),n.d(e,"PreventBlockClose",(function(){return D})),n.d(e,"Select",(function(){return J}))},,,function(t,e){t.exports=function(t,e,n,r){var o=-1,i=null==t?0:t.length;for(r&&i&&(n=t[++o]);++o<i;)n=e(n,t[o],o,t);return n}},function(t,e){t.exports=function(t,e,n,r,o){return o(t,(function(t,o,i){n=r?(r=!1,t):e(n,t,o,i)})),n}},function(t,e,n){},function(t,e,n){var r=n(52),o=n(277),i=n(155);t.exports=function(t,e){return i(o(t,e,r),t+"")}},function(t,e,n){}]);
|
common/src/resources/js/app/data.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
var tribe="object"==typeof tribe?tribe:{};tribe.common=tribe.common||{},tribe.common.data=function(t){var r={};function e(n){if(r[n])return r[n].exports;var o=r[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,e),o.l=!0,o.exports}return e.m=t,e.c=r,e.d=function(t,r,n){e.o(t,r)||Object.defineProperty(t,r,{enumerable:!0,get:n})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.t=function(t,r){if(1&r&&(t=e(t)),8&r)return t;if(4&r&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(e.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&r&&"string"!=typeof t)for(var o in t)e.d(n,o,function(r){return t[r]}.bind(null,o));return n},e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,"a",r),r},e.o=function(t,r){return Object.prototype.hasOwnProperty.call(t,r)},e.p="",e(e.s=150)}([,function(t,r,e){t.exports=e(310)()},,,function(t,r,e){"use strict";r.__esModule=!0;var n,o=e(278),i=(n=o)&&n.__esModule?n:{default:n};r.default=i.default||function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t}},,function(t,r){var e=Array.isArray;t.exports=e},,function(t,r){t.exports=function(){}},function(t,r){var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},function(t,r){var e=t.exports={version:"2.6.10"};"number"==typeof __e&&(__e=e)},function(t,r,e){var n=e(137),o="object"==typeof self&&self&&self.Object===Object&&self,i=n||o||Function("return this")();t.exports=i},function(t,r,e){var n=e(101)("wks"),o=e(70),i=e(9).Symbol,u="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=u&&i[t]||(u?i:o)("Symbol."+t))}).store=n},function(t,r,e){"use strict";e.d(r,"a",(function(){return n}));var n="@@MT/COMMON"},function(t,r){t.exports=function(t){return null!=t&&"object"==typeof t}},function(t,r,e){"use strict";e.r(r),e.d(r,"__DO_NOT_USE__ActionTypes",(function(){return i})),e.d(r,"applyMiddleware",(function(){return y})),e.d(r,"bindActionCreators",(function(){return l})),e.d(r,"combineReducers",(function(){return s})),e.d(r,"compose",(function(){return v})),e.d(r,"createStore",(function(){return a}));var n=e(123),o=function(){return Math.random().toString(36).substring(7).split("").join(".")},i={INIT:"@@redux/INIT"+o(),REPLACE:"@@redux/REPLACE"+o(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+o()}};function u(t){if("object"!=typeof t||null===t)return!1;for(var r=t;null!==Object.getPrototypeOf(r);)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(t)===r}function a(t,r,e){var o;if("function"==typeof r&&"function"==typeof e||"function"==typeof e&&"function"==typeof arguments[3])throw new Error("It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function.");if("function"==typeof r&&void 0===e&&(e=r,r=void 0),void 0!==e){if("function"!=typeof e)throw new Error("Expected the enhancer to be a function.");return e(a)(t,r)}if("function"!=typeof t)throw new Error("Expected the reducer to be a function.");var c=t,s=r,f=[],l=f,p=!1;function d(){l===f&&(l=f.slice())}function h(){if(p)throw new Error("You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.");return s}function v(t){if("function"!=typeof t)throw new Error("Expected the listener to be a function.");if(p)throw new Error("You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.");var r=!0;return d(),l.push(t),function(){if(r){if(p)throw new Error("You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.");r=!1,d();var e=l.indexOf(t);l.splice(e,1)}}}function y(t){if(!u(t))throw new Error("Actions must be plain objects. Use custom middleware for async actions.");if(void 0===t.type)throw new Error('Actions may not have an undefined "type" property. Have you misspelled a constant?');if(p)throw new Error("Reducers may not dispatch actions.");try{p=!0,s=c(s,t)}finally{p=!1}for(var r=f=l,e=0;e<r.length;e++){(0,r[e])()}return t}return y({type:i.INIT}),(o={dispatch:y,subscribe:v,getState:h,replaceReducer:function(t){if("function"!=typeof t)throw new Error("Expected the nextReducer to be a function.");c=t,y({type:i.REPLACE})}})[n.a]=function(){var t,r=v;return(t={subscribe:function(t){if("object"!=typeof t||null===t)throw new TypeError("Expected the observer to be an object.");function e(){t.next&&t.next(h())}return e(),{unsubscribe:r(e)}}})[n.a]=function(){return this},t},o}function c(t,r){var e=r&&r.type;return"Given "+(e&&'action "'+String(e)+'"'||"an action")+', reducer "'+t+'" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'}function s(t){for(var r=Object.keys(t),e={},n=0;n<r.length;n++){var o=r[n];0,"function"==typeof t[o]&&(e[o]=t[o])}var u,a=Object.keys(e);try{!function(t){Object.keys(t).forEach((function(r){var e=t[r];if(void 0===e(void 0,{type:i.INIT}))throw new Error('Reducer "'+r+"\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.");if(void 0===e(void 0,{type:i.PROBE_UNKNOWN_ACTION()}))throw new Error('Reducer "'+r+"\" returned undefined when probed with a random type. Don't try to handle "+i.INIT+' or other actions in "redux/*" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.')}))}(e)}catch(t){u=t}return function(t,r){if(void 0===t&&(t={}),u)throw u;for(var n=!1,o={},i=0;i<a.length;i++){var s=a[i],f=e[s],l=t[s],p=f(l,r);if(void 0===p){var d=c(s,r);throw new Error(d)}o[s]=p,n=n||p!==l}return n?o:t}}function f(t,r){return function(){return r(t.apply(this,arguments))}}function l(t,r){if("function"==typeof t)return f(t,r);if("object"!=typeof t||null===t)throw new Error("bindActionCreators expected an object or a function, instead received "+(null===t?"null":typeof t)+'. Did you write "import ActionCreators from" instead of "import * as ActionCreators from"?');var e={};for(var n in t){var o=t[n];"function"==typeof o&&(e[n]=f(o,r))}return e}function p(t,r,e){return r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}function d(t,r){var e=Object.keys(t);return Object.getOwnPropertySymbols&&e.push.apply(e,Object.getOwnPropertySymbols(t)),r&&(e=e.filter((function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable}))),e}function h(t){for(var r=1;r<arguments.length;r++){var e=null!=arguments[r]?arguments[r]:{};r%2?d(e,!0).forEach((function(r){p(t,r,e[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):d(e).forEach((function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}))}return t}function v(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return 0===r.length?function(t){return t}:1===r.length?r[0]:r.reduce((function(t,r){return function(){return t(r.apply(void 0,arguments))}}))}function y(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return function(t){return function(){var e=t.apply(void 0,arguments),n=function(){throw new Error("Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.")},o={getState:e.getState,dispatch:function(){return n.apply(void 0,arguments)}},i=r.map((function(t){return t(o)}));return h({},e,{dispatch:n=v.apply(void 0,i)(e.dispatch)})}}}},,function(t,r,e){var n=e(23);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},function(t,r,e){var n=e(9),o=e(10),i=e(38),u=e(26),a=e(31),c=function(t,r,e){var s,f,l,p=t&c.F,d=t&c.G,h=t&c.S,v=t&c.P,y=t&c.B,g=t&c.W,b=d?o:o[r]||(o[r]={}),m=b.prototype,x=d?n:h?n[r]:(n[r]||{}).prototype;for(s in d&&(e=r),e)(f=!p&&x&&void 0!==x[s])&&a(b,s)||(l=f?x[s]:e[s],b[s]=d&&"function"!=typeof x[s]?e[s]:y&&f?i(l,n):g&&x[s]==l?function(t){var r=function(r,e,n){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(r);case 2:return new t(r,e)}return new t(r,e,n)}return t.apply(this,arguments)};return r.prototype=t.prototype,r}(l):v&&"function"==typeof l?i(Function.call,l):l,v&&((b.virtual||(b.virtual={}))[s]=l,t&c.R&&m&&!m[s]&&u(m,s,l)))};c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,t.exports=c},function(t,r,e){t.exports=!e(50)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(t,r,e){var n=e(32),o=e(222),i=e(223),u="[object Null]",a="[object Undefined]",c=n?n.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?a:u:c&&c in Object(t)?o(t):i(t)}},function(t,r,e){var n=e(17),o=e(166),i=e(112),u=Object.defineProperty;r.f=e(19)?Object.defineProperty:function(t,r,e){if(n(t),r=i(r,!0),n(e),o)try{return u(t,r,e)}catch(t){}if("get"in e||"set"in e)throw TypeError("Accessors not supported!");return"value"in e&&(t[r]=e.value),t}},function(t,r){t.exports=function(t){var r=typeof t;return null!=t&&("object"==r||"function"==r)}},function(t,r){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,r,e){var n=e(221),o=e(226);t.exports=function(t,r){var e=o(t,r);return n(e)?e:void 0}},function(t,r,e){"use strict";e.r(r),e.d(r,"get",(function(){return n})),e.d(r,"google",(function(){return o})),e.d(r,"wpApi",(function(){return i})),e.d(r,"wpApiRequest",(function(){return u})),e.d(r,"wpData",(function(){return a})),e.d(r,"wpHooks",(function(){return c})),e.d(r,"config",(function(){return s})),e.d(r,"common",(function(){return f})),e.d(r,"adminUrl",(function(){return l})),e.d(r,"rest",(function(){return p})),e.d(r,"restNonce",(function(){return d})),e.d(r,"dateSettings",(function(){return h})),e.d(r,"editorConstants",(function(){return v})),e.d(r,"list",(function(){return y})),e.d(r,"tec",(function(){return g})),e.d(r,"editor",(function(){return b})),e.d(r,"settings",(function(){return m})),e.d(r,"mapsAPI",(function(){return x})),e.d(r,"priceSettings",(function(){return _})),e.d(r,"tecDateSettings",(function(){return w})),e.d(r,"timezoneHtml",(function(){return j})),e.d(r,"defaultTimes",(function(){return O})),e.d(r,"timezone",(function(){return A})),e.d(r,"pro",(function(){return E})),e.d(r,"editorDefaults",(function(){return S})),e.d(r,"tickets",(function(){return P})),e.d(r,"postObjects",(function(){return I})),e.d(r,"blocks",(function(){return R}));var n=function(t,r){return window[t]||r},o=function(){return n("google")},i=wp.api,u=wp.apiRequest,a=wp.data,c=wp.hooks,s=function(){return n("tribe_editor_config",{})},f=function(){return s().common||{}},l=function(){return f().adminUrl||""},p=function(){return f().rest||{}},d=function(){return p().nonce||{}},h=function(){return f().dateSettings||{}},v=function(){return f().constants||{}},y=function(){return{countries:f().countries||{},us_states:f().usStates||{}}},g=function(){return s().events||{}},b=function(){return g().editor||{}},m=function(){return g().settings||{}},x=function(){return g().googleMap||{}},_=function(){return g().priceSettings||{}},w=function(){return g().dateSettings||{}},j=function(){return g().timezoneHTML||""},O=function(){return g().defaultTimes||{}},A=function(){return g().timeZone||{}},E=function(){return s().eventsPRO||{}},S=function(){return E().defaults||{}},P=function(){return s().tickets||{}},I=function(){return s().post_objects||{}},R=function(){return s().blocks||{}}},function(t,r,e){var n=e(21),o=e(51);t.exports=e(19)?function(t,r,e){return n.f(t,r,o(1,e))}:function(t,r,e){return t[r]=e,t}},,function(t,r,e){"use strict";r.__esModule=!0;var n,o=e(208),i=(n=o)&&n.__esModule?n:{default:n};r.default=function(t){if(Array.isArray(t)){for(var r=0,e=Array(t.length);r<t.length;r++)e[r]=t[r];return e}return(0,i.default)(t)}},function(t,r,e){"use strict";e.r(r);var n={};e.r(n),e.d(n,"ADD_FORM",(function(){return p})),e.d(n,"SET_FORM_FIELDS",(function(){return d})),e.d(n,"CREATE_FORM_DRAFT",(function(){return h})),e.d(n,"EDIT_FORM_ENTRY",(function(){return v})),e.d(n,"SUBMIT_FORM",(function(){return y})),e.d(n,"CLEAR_FORM",(function(){return g})),e.d(n,"SET_SAVING_FORM",(function(){return b})),e.d(n,"ADD_VOLATILE_ID",(function(){return m})),e.d(n,"REMOVE_VOLATILE_ID",(function(){return x}));var o={};e.r(o),e.d(o,"formSelector",(function(){return M})),e.d(o,"getFormType",(function(){return L})),e.d(o,"getFormEdit",(function(){return k})),e.d(o,"getFormCreate",(function(){return F})),e.d(o,"getFormSubmit",(function(){return W})),e.d(o,"getFormFields",(function(){return D})),e.d(o,"getFormSaving",(function(){return B})),e.d(o,"getVolatile",(function(){return C}));var i={};e.r(i),e.d(i,"registerForm",(function(){return N})),e.d(i,"clearForm",(function(){return U})),e.d(i,"createDraft",(function(){return z})),e.d(i,"editEntry",(function(){return V})),e.d(i,"setSubmit",(function(){return q})),e.d(i,"setSaving",(function(){return G})),e.d(i,"addVolatile",(function(){return K})),e.d(i,"removeVolatile",(function(){return $})),e.d(i,"sendForm",(function(){return H})),e.d(i,"maybeRemoveEntry",(function(){return Q}));var u=e(200),a=e.n(u),c=e(4),s=e.n(c),f=e(15),l=e(13),p=l.a+"/ADD_FORM",d=l.a+"/SET_FORM_FIELDS",h=l.a+"/CREATE_FORM_DRAFT",v=l.a+"/EDIT_FORM_ENTRY",y=l.a+"/SUBMIT_FORM",g=l.a+"/CLEAR_FORM",b=l.a+"/SET_SAVING_FORM",m=l.a+"/ADD_VOLATILE_ID",x=l.a+"/REMOVE_VOLATILE_ID",_={edit:!1,create:!1,submit:!1,saving:!1,fields:{},type:e(78).EVENT},w=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:_,r=arguments[1];switch(r.type){case p:return s()({},t,{type:r.payload.type});case g:return s()({},t,_,{type:t.type});case h:return s()({},t,{submit:!1,edit:!1,create:!0,fields:r.payload.fields});case b:return s()({},t,{saving:r.payload.saving});case v:return s()({},t,{create:!1,submit:!1,edit:!0,fields:r.payload.fields});case y:return s()({},t,{submit:!0});default:return t}},j=e(28),O=e.n(j),A=Object(f.combineReducers)({byId:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments[1];switch(r.type){case p:case g:case d:case h:case v:case y:case b:return s()({},t,a()({},r.payload.id,w(t[r.payload.id],r)));default:return t}},volatile:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],r=arguments[1];switch(r.type){case m:return[].concat(O()(t),[r.payload.id]);case x:return t.filter((function(t){return t!==r.payload.id}));default:return t}}}),E=e(44),S=e.n(E),P=e(42),I=e.n(P),R=e(33),T=e(37),M=function(t,r){return t.forms.byId[r.name]},L=Object(T.createSelector)([M],(function(t){return t?t.type:_.type})),k=Object(T.createSelector)([M],(function(t){return t?t.edit:_.edit})),F=Object(T.createSelector)([M],(function(t){return t?t.create:_.create})),W=Object(T.createSelector)([M],(function(t){return t?t.submit:_.submit})),D=Object(T.createSelector)([M],(function(t){return t?t.fields:_.fields})),B=Object(T.createSelector)([M],(function(t){return t?t.saving:_.saving})),C=function(t){return t.forms.volatile},N=function(t,r){return{type:p,payload:{id:t,type:r}}},U=function(t){return{type:g,payload:{id:t}}},z=function(t,r){return{type:h,payload:{id:t,fields:r}}},V=function(t,r){return{type:v,payload:{id:t,fields:r}}},q=function(t){return{type:y,payload:{id:t}}},G=function(t,r){return{type:b,payload:{id:t,saving:r}}},K=function(t){return{type:m,payload:{id:t}}},$=function(t){return{type:x,payload:{id:t}}},H=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=arguments[2];return function(n,o){var i=o(),u={name:t},a=L(i,u),c=F(i,u),s=D(i,u);if(!B(i,u)){var f={path:c?""+a:a+"/"+s.id,params:{method:c?"POST":"PUT",body:JSON.stringify(r)},actions:{start:function(){return n(G(t,!0))},success:function(r){var o=r.body,i=S()(o,"id","");c&&i&&n(K(i)),e(o),n(U(t)),n(G(t,!1))},error:function(){n(U(t)),n(G(t,!1))}}};n(R.actions.wpRequest(f))}}},Y=function(t){return function(r){return function(e){var n=e.body,o=n.id;if("draft"===n.status){var i={path:r,params:{method:"DELETE"},actions:{success:function(){return t($(o))}}};t(R.actions.wpRequest(i))}else t($(o))}}},Q=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(e,n){var o=n(),i=L(o,{name:t});if(!I()(r)){var u=i+"/"+r.id,a={path:u,actions:{success:Y(e)(u)}};e(R.actions.wpRequest(a))}}};e.d(r,"types",(function(){return n})),e.d(r,"actions",(function(){return i})),e.d(r,"selectors",(function(){return o}));r.default=A},,function(t,r){var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},function(t,r,e){var n=e(11).Symbol;t.exports=n},function(t,r,e){"use strict";e.r(r);var n={};e.r(n),e.d(n,"WP_REQUEST",(function(){return u}));var o={};e.r(o),e.d(o,"wpRequest",(function(){return a}));var i={};e.r(i),e.d(i,"toWpParams",(function(){return v})),e.d(i,"toWPQuery",(function(){return y})),e.d(i,"getTotalPages",(function(){return g}));var u=e(13).a+"/WP_REQUEST",a=function(t){return{type:u,meta:t}},c=e(4),s=e.n(c),f=e(121),l=e.n(f),p=e(42),d=e.n(p),h=e(201),v=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=s()({orderby:"title",status:["draft","publish"],order:"asc",page:1},t);return l()(r.search)||d()(r.search)||(r.orderby="relevance"),d()(r.exclude)&&delete r.exclude,r},y=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object(h.stringify)(v(t))},g=function(t){var r=parseInt(t.get("x-wp-totalpages"),10);return isNaN(r)?0:r},b=e(68),m=e.n(b),x=e(122),_=e.n(x),w=e(202),j=e.n(w),O=e(44),A=e.n(O),E=e(8),S=e.n(E),P=(e(206),e(25)),I=function(){return function(t){return r=_()(m.a.mark((function r(e){var o,i,u,a,c,f,l,p,d,h,v,y,g,b,x,_,w,O,E,I;return m.a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(e.type===n.WP_REQUEST){r.next=2;break}return r.abrupt("return",t(e));case 2:if(o=e.meta,u=(i=void 0===o?{}:o).path,a=void 0===u?"":u,c=i.params,f=void 0===c?{}:c,t(e),l=Object(P.rest)(),p=l.url,d=void 0===p?"":p,h=l.nonce,v=(void 0===h?{}:h).wp_rest||"",y=P.rest.namespaces||{},g=y.core||"wp/v2",b=""+d+g,x=s()({start:S.a,success:S.a,error:S.a,none:S.a},A()(i,"actions",{})),""!==a){r.next=14;break}return x.none(a),r.abrupt("return");case 14:return _=b+"/"+a,x.start(_,f),w=s()({Accept:"application/json","Content-Type":"application/json"},A()(f,"headers",{}),{"X-WP-Nonce":v}),r.prev=17,r.next=20,fetch(_,s()({},f,{credentials:"include",headers:w}));case 20:if(O=r.sent,E=O.status,j()(E,200,300)){r.next=24;break}throw O;case 24:return r.next=26,O.json();case 26:return I=r.sent,x.success({body:I,headers:O.headers}),r.abrupt("return",[O,I]);case 31:return r.prev=31,r.t0=r.catch(17),x.error(r.t0),r.abrupt("return",r.t0);case 35:case"end":return r.stop()}}),r,void 0,[[17,31]])}))),function(t){return r.apply(this,arguments)};var r}};e.d(r,"default",(function(){return I})),e.d(r,"types",(function(){return n})),e.d(r,"actions",(function(){return o})),e.d(r,"utils",(function(){return i}))},,,,function(t,r,e){"use strict";function n(t,r){return t===r}function o(t,r,e){if(null===r||null===e||r.length!==e.length)return!1;for(var n=r.length,o=0;o<n;o++)if(!t(r[o],e[o]))return!1;return!0}function i(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n,e=null,i=null;return function(){return o(r,e,arguments)||(i=t.apply(null,arguments)),e=arguments,i}}function u(t){var r=Array.isArray(t[0])?t[0]:t;if(!r.every((function(t){return"function"==typeof t}))){var e=r.map((function(t){return typeof t})).join(", ");throw new Error("Selector creators expect all input-selectors to be functions, instead received the following types: ["+e+"]")}return r}function a(t){for(var r=arguments.length,e=Array(r>1?r-1:0),n=1;n<r;n++)e[n-1]=arguments[n];return function(){for(var r=arguments.length,n=Array(r),o=0;o<r;o++)n[o]=arguments[o];var a=0,c=n.pop(),s=u(n),f=t.apply(void 0,[function(){return a++,c.apply(null,arguments)}].concat(e)),l=i((function(){for(var t=[],r=s.length,e=0;e<r;e++)t.push(s[e].apply(null,arguments));return f.apply(null,t)}));return l.resultFunc=c,l.recomputations=function(){return a},l.resetRecomputations=function(){return a=0},l}}r.__esModule=!0,r.defaultMemoize=i,r.createSelectorCreator=a,r.createStructuredSelector=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:c;if("object"!=typeof t)throw new Error("createStructuredSelector expects first argument to be an object where each property is a selector, instead received a "+typeof t);var e=Object.keys(t);return r(e.map((function(r){return t[r]})),(function(){for(var t=arguments.length,r=Array(t),n=0;n<t;n++)r[n]=arguments[n];return r.reduce((function(t,r,n){return t[e[n]]=r,t}),{})}))};var c=r.createSelector=a(i)},function(t,r,e){var n=e(53);t.exports=function(t,r,e){if(n(t),void 0===r)return t;switch(e){case 1:return function(e){return t.call(r,e)};case 2:return function(e,n){return t.call(r,e,n)};case 3:return function(e,n,o){return t.call(r,e,n,o)}}return function(){return t.apply(r,arguments)}}},function(t,r){t.exports={}},function(t,r,e){var n=e(159),o=e(95),i=e(41);t.exports=function(t){return i(t)?n(t):o(t)}},function(t,r,e){var n=e(94),o=e(88);t.exports=function(t){return null!=t&&o(t.length)&&!n(t)}},function(t,r,e){var n=e(95),o=e(43),i=e(58),u=e(6),a=e(41),c=e(59),s=e(64),f=e(87),l="[object Map]",p="[object Set]",d=Object.prototype.hasOwnProperty;t.exports=function(t){if(null==t)return!0;if(a(t)&&(u(t)||"string"==typeof t||"function"==typeof t.splice||c(t)||f(t)||i(t)))return!t.length;var r=o(t);if(r==l||r==p)return!t.size;if(s(t))return!n(t).length;for(var e in t)if(d.call(t,e))return!1;return!0}},function(t,r,e){var n=e(256),o=e(85),i=e(257),u=e(153),a=e(154),c=e(20),s=e(138),f=s(n),l=s(o),p=s(i),d=s(u),h=s(a),v=c;(n&&"[object DataView]"!=v(new n(new ArrayBuffer(1)))||o&&"[object Map]"!=v(new o)||i&&"[object Promise]"!=v(i.resolve())||u&&"[object Set]"!=v(new u)||a&&"[object WeakMap]"!=v(new a))&&(v=function(t){var r=c(t),e="[object Object]"==r?t.constructor:void 0,n=e?s(e):"";if(n)switch(n){case f:return"[object DataView]";case l:return"[object Map]";case p:return"[object Promise]";case d:return"[object Set]";case h:return"[object WeakMap]"}return r}),t.exports=v},function(t,r,e){var n=e(143);t.exports=function(t,r,e){var o=null==t?void 0:n(t,r);return void 0===o?e:o}},function(t,r,e){var n=e(132),o=e(80);t.exports=function(t){return n(o(t))}},function(t,r,e){var n=e(20),o=e(14),i="[object Symbol]";t.exports=function(t){return"symbol"==typeof t||o(t)&&n(t)==i}},function(t,r,e){var n=e(46),o=1/0;t.exports=function(t){if("string"==typeof t||n(t))return t;var r=t+"";return"0"==r&&1/t==-o?"-0":r}},function(t,r){var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},function(t,r){t.exports=!0},function(t,r){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,r){t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},function(t,r){t.exports=function(t){return t}},function(t,r){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,r,e){var n=e(24)(Object,"create");t.exports=n},function(t,r,e){var n=e(231),o=e(232),i=e(233),u=e(234),a=e(235);function c(t){var r=-1,e=null==t?0:t.length;for(this.clear();++r<e;){var n=t[r];this.set(n[0],n[1])}}c.prototype.clear=n,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,r,e){var n=e(71);t.exports=function(t,r){for(var e=t.length;e--;)if(n(t[e][0],r))return e;return-1}},function(t,r,e){var n=e(237);t.exports=function(t,r){var e=t.__data__;return n(r)?e["string"==typeof r?"string":"hash"]:e.map}},function(t,r,e){var n=e(246),o=e(14),i=Object.prototype,u=i.hasOwnProperty,a=i.propertyIsEnumerable,c=n(function(){return arguments}())?n:function(t){return o(t)&&u.call(t,"callee")&&!a.call(t,"callee")};t.exports=c},function(t,r,e){(function(t){var n=e(11),o=e(247),i=r&&!r.nodeType&&r,u=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=u&&u.exports===i?n.Buffer:void 0,c=(a?a.isBuffer:void 0)||o;t.exports=c}).call(this,e(66)(t))},function(t,r,e){"use strict";e.r(r);var n={};e.r(n),e.d(n,"ADD_PLUGIN",(function(){return d})),e.d(n,"REMOVE_PLUGIN",(function(){return h}));var o={};e.r(o),e.d(o,"addPlugin",(function(){return v})),e.d(o,"removePlugin",(function(){return y}));var i={};e.r(i),e.d(i,"getPlugins",(function(){return _})),e.d(i,"hasPlugin",(function(){return w}));var u={};e.r(u),e.d(u,"EVENTS_PLUGIN",(function(){return j})),e.d(u,"EVENTS_PRO_PLUGIN",(function(){return O})),e.d(u,"EVENTS_VIRTUAL_PLUGIN",(function(){return A})),e.d(u,"TICKETS",(function(){return E})),e.d(u,"TICKETS_PLUS",(function(){return S}));var a={};e.r(a),e.d(a,"ReactSelectOption",(function(){return R})),e.d(a,"ReactSelectOptions",(function(){return T}));var c=e(28),s=e.n(c),f=e(198),l=e.n(f),p=e(13),d=p.a+"/ADD_PLUGIN",h=p.a+"/REMOVE_PLUGIN",v=function(t){return{type:d,payload:{name:t}}},y=function(t){return{type:h,payload:{name:t}}},g=e(199),b=e.n(g),m=e(127),x=e.n(m),_=function(t){return t.plugins},w=b()((function(t,r){return x()(_(t),r)})),j="events",O="events-pro",A="events-virtual",E="tickets",S="tickets-plus",P=e(1),I=e.n(P),R=I.a.shape({label:I.a.string.isRequired,value:I.a.any.isRequired}),T=I.a.arrayOf(R);e.d(r,"types",(function(){return n})),e.d(r,"actions",(function(){return o})),e.d(r,"selectors",(function(){return i})),e.d(r,"constants",(function(){return u})),e.d(r,"proptypes",(function(){return a}));r.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],r=arguments[1];switch(r.type){case n.ADD_PLUGIN:return l()([].concat(s()(t),[r.payload.name]));case n.REMOVE_PLUGIN:return[].concat(s()(t)).filter((function(t){return t!==r.payload.name}));default:return t}}},function(t,r,e){"use strict";var n=e(210)(!0);e(131)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,r=this._t,e=this._i;return e>=r.length?{value:void 0,done:!0}:(t=n(r,e),this._i+=t.length,{value:t,done:!1})}))},function(t,r,e){var n=e(21).f,o=e(31),i=e(12)("toStringTag");t.exports=function(t,r,e){t&&!o(t=e?t:t.prototype,i)&&n(t,i,{configurable:!0,value:r})}},function(t,r,e){var n=e(80);t.exports=function(t){return Object(n(t))}},function(t,r){var e=Object.prototype;t.exports=function(t){var r=t&&t.constructor;return t===("function"==typeof r&&r.prototype||e)}},,function(t,r){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},,function(t,r,e){t.exports=e(282)},function(t,r,e){var n=e(168),o=e(102);t.exports=Object.keys||function(t){return n(t,o)}},function(t,r){var e=0,n=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+n).toString(36))}},function(t,r){t.exports=function(t,r){return t===r||t!=t&&r!=r}},function(t,r,e){var n=e(73),o=e(22);t.exports=function(t){return function(){var r=arguments;switch(r.length){case 0:return new t;case 1:return new t(r[0]);case 2:return new t(r[0],r[1]);case 3:return new t(r[0],r[1],r[2]);case 4:return new t(r[0],r[1],r[2],r[3]);case 5:return new t(r[0],r[1],r[2],r[3],r[4]);case 6:return new t(r[0],r[1],r[2],r[3],r[4],r[5]);case 7:return new t(r[0],r[1],r[2],r[3],r[4],r[5],r[6])}var e=n(t.prototype),i=t.apply(e,r);return o(i)?i:e}}},function(t,r,e){var n=e(22),o=Object.create,i=function(){function t(){}return function(r){if(!n(r))return{};if(o)return o(r);t.prototype=r;var e=new t;return t.prototype=void 0,e}}();t.exports=i},function(t,r){t.exports=function(t,r){var e=-1,n=t.length;for(r||(r=Array(n));++e<n;)r[e]=t[e];return r}},function(t,r){var e=9007199254740991,n=/^(?:0|[1-9]\d*)$/;t.exports=function(t,r){var o=typeof t;return!!(r=null==r?e:r)&&("number"==o||"symbol"!=o&&n.test(t))&&t>-1&&t%1==0&&t<r}},function(t,r,e){var n=e(190),o=e(191);t.exports=function(t,r,e,i){var u=!e;e||(e={});for(var a=-1,c=r.length;++a<c;){var s=r[a],f=i?i(e[s],t[s],s,e,t):void 0;void 0===f&&(f=t[s]),u?o(e,s,f):n(e,s,f)}return e}},function(t,r){t.exports=function(t,r){for(var e=-1,n=null==t?0:t.length,o=Array(n);++e<n;)o[e]=r(t[e],e,t);return o}},function(t,r,e){"use strict";e.r(r),e.d(r,"EVENT",(function(){return n})),e.d(r,"VENUE",(function(){return o})),e.d(r,"ORGANIZER",(function(){return i}));var n="tribe_events",o="tribe_venue",i="tribe_organizer"},function(t,r){var e=Math.ceil,n=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?n:e)(t)}},function(t,r){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,r,e){var n=e(23),o=e(9).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,r,e){var n=e(79),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},function(t,r,e){var n=e(101)("keys"),o=e(70);t.exports=function(t){return n[t]||(n[t]=o(t))}},function(t,r,e){var n=e(218),o=e(236),i=e(238),u=e(239),a=e(240);function c(t){var r=-1,e=null==t?0:t.length;for(this.clear();++r<e;){var n=t[r];this.set(n[0],n[1])}}c.prototype.clear=n,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,r,e){var n=e(24)(e(11),"Map");t.exports=n},function(t,r,e){var n=e(157);t.exports=function(t){var r=n(t),e=r%1;return r==r?e?r-e:r:0}},function(t,r,e){var n=e(248),o=e(89),i=e(90),u=i&&i.isTypedArray,a=u?o(u):n;t.exports=a},function(t,r){var e=9007199254740991;t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=e}},function(t,r){t.exports=function(t){return function(r){return t(r)}}},function(t,r,e){(function(t){var n=e(137),o=r&&!r.nodeType&&r,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,u=i&&i.exports===o&&n.process,a=function(){try{var t=i&&i.require&&i.require("util").types;return t||u&&u.binding&&u.binding("util")}catch(t){}}();t.exports=a}).call(this,e(66)(t))},function(t,r,e){var n=e(6),o=e(46),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,u=/^\w*$/;t.exports=function(t,r){if(n(t))return!1;var e=typeof t;return!("number"!=e&&"symbol"!=e&&"boolean"!=e&&null!=t&&!o(t))||(u.test(t)||!i.test(t)||null!=r&&t in Object(r))}},function(t,r){r.f={}.propertyIsEnumerable},function(t,r,e){"use strict";var n=e(53);function o(t){var r,e;this.promise=new t((function(t,n){if(void 0!==r||void 0!==e)throw TypeError("Bad Promise constructor");r=t,e=n})),this.resolve=n(r),this.reject=n(e)}t.exports.f=function(t){return new o(t)}},function(t,r,e){var n=e(20),o=e(22),i="[object AsyncFunction]",u="[object Function]",a="[object GeneratorFunction]",c="[object Proxy]";t.exports=function(t){if(!o(t))return!1;var r=n(t);return r==u||r==a||r==i||r==c}},function(t,r,e){var n=e(64),o=e(249),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!n(t))return o(t);var r=[];for(var e in Object(t))i.call(t,e)&&"constructor"!=e&&r.push(e);return r}},function(t,r,e){var n=e(55),o=e(250),i=e(251),u=e(252),a=e(253),c=e(254);function s(t){var r=this.__data__=new n(t);this.size=r.size}s.prototype.clear=o,s.prototype.delete=i,s.prototype.get=u,s.prototype.has=a,s.prototype.set=c,t.exports=s},function(t,r){t.exports=function(t,r){for(var e=-1,n=r.length,o=t.length;++e<n;)t[o+e]=r[e];return t}},function(t,r,e){var n=e(169);t.exports=function(t){return null==t?"":n(t)}},function(t,r,e){var n=e(20),o=e(6),i=e(14),u="[object String]";t.exports=function(t){return"string"==typeof t||!o(t)&&i(t)&&n(t)==u}},function(t,r,e){"use strict";var n=e(15),o=function(t){return function(t){return!!t&&"object"==typeof t}(t)&&!function(t){var r=Object.prototype.toString.call(t);return"[object RegExp]"===r||"[object Date]"===r||function(t){return t.$$typeof===i}(t)}(t)};var i="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function u(t,r){return!1!==r.clone&&r.isMergeableObject(t)?c((e=t,Array.isArray(e)?[]:{}),t,r):t;var e}function a(t,r,e){return t.concat(r).map((function(t){return u(t,e)}))}function c(t,r,e){(e=e||{}).arrayMerge=e.arrayMerge||a,e.isMergeableObject=e.isMergeableObject||o;var n=Array.isArray(r);return n===Array.isArray(t)?n?e.arrayMerge(t,r,e):function(t,r,e){var n={};return e.isMergeableObject(t)&&Object.keys(t).forEach((function(r){n[r]=u(t[r],e)})),Object.keys(r).forEach((function(o){e.isMergeableObject(r[o])&&t[o]?n[o]=c(t[o],r[o],e):n[o]=u(r[o],e)})),n}(t,r,e):u(r,e)}c.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce((function(t,e){return c(t,e,r)}),{})};var s=c;function f(t){if(Array.isArray(t)){for(var r=0,e=Array(t.length);r<t.length;r++)e[r]=t[r];return e}return Array.from(t)}var l=function t(r){for(var e=arguments.length,n=Array(e>1?e-1:0),o=1;o<e;o++)n[o-1]=arguments[o];return r.length<=n.length?r.apply(void 0,n):function(){for(var e=arguments.length,o=Array(e),i=0;i<e;i++)o[i]=arguments[i];return t.apply(void 0,[r].concat(n,o))}},p=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t},d=function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,r){var e=[],n=!0,o=!1,i=void 0;try{for(var u,a=t[Symbol.iterator]();!(n=(u=a.next()).done)&&(e.push(u.value),!r||e.length!==r);n=!0);}catch(t){o=!0,i=t}finally{try{!n&&a.return&&a.return()}finally{if(o)throw i}}return e}(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")},h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function v(t,r,e){return r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}var y=function(t){return null!==t&&"object"===(void 0===t?"undefined":h(t))},g=function(t){return"function"==typeof t},b=function(t){return(g(t)||y(t))&&function(t){return Object.values(t).some(g)}(t)},m=function(){for(var t=arguments.length,r=Array(t),e=0;e<t;e++)r[e]=arguments[e];return n.compose.apply(void 0,f(r.reverse()))}((function(t){return Object.entries(t).map((function(t){var r=d(t,2),e=r[0],o=r[1];return b(o)?v({},e,Object(n.combineReducers)(m(o))):g(o)?v({},e,o):void 0}))}),(function(t){return t.filter(y)}),(function(t){return t.reduce((function(t,r){return s(t,r)}),{})}));var x=l((function(t,r){return Object(n.combineReducers)(p({},t,m(r)))}));function _(t){return x(t)}var w=e(124),j=function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,r){var e=[],n=!0,o=!1,i=void 0;try{for(var u,a=t[Symbol.iterator]();!(n=(u=a.next()).done)&&(e.push(u.value),!r||e.length!==r);n=!0);}catch(t){o=!0,i=t}finally{try{!n&&a.return&&a.return()}finally{if(o)throw i}}return e}(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")};var O=l((function(t,r){return r.injectedReducers={},r.injectReducers=function(e){Object.entries(e).forEach((function(e){var n=j(e,2),o=n[0],i=n[1];Object(w.has)(r.injectedReducers,o)||(Object(w.set)(r.injectedReducers,o,i),r.replaceReducer(t(r.injectedReducers)))}))},r}));e.d(r,"b",(function(){return _})),e.d(r,"a",(function(){return O}))},function(t,r,e){var n=e(10),o=e(9),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,r){return i[t]||(i[t]=void 0!==r?r:{})})("versions",[]).push({version:n.version,mode:e(49)?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},function(t,r){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,r){t.exports=function(t){var r=-1,e=Array(t.size);return t.forEach((function(t){e[++r]=t})),e}},function(t,r,e){var n=e(177),o=e(321),i=e(322),u=e(179),a=e(335),c=e(183),s=e(336),f=e(185),l=e(187),p=e(86),d="Expected a function",h=1,v=2,y=8,g=16,b=32,m=64,x=Math.max;t.exports=function(t,r,e,_,w,j,O,A){var E=r&v;if(!E&&"function"!=typeof t)throw new TypeError(d);var S=_?_.length:0;if(S||(r&=~(b|m),_=w=void 0),O=void 0===O?O:x(p(O),0),A=void 0===A?A:p(A),S-=w?w.length:0,r&m){var P=_,I=w;_=w=void 0}var R=E?void 0:c(t),T=[t,r,e,_,w,P,I,j,O,A];if(R&&s(T,R),t=T[0],r=T[1],e=T[2],_=T[3],w=T[4],!(A=T[9]=void 0===T[9]?E?0:t.length:x(T[9]-S,0))&&r&(y|g)&&(r&=~(y|g)),r&&r!=h)M=r==y||r==g?i(t,r,A):r!=b&&r!=(h|b)||w.length?u.apply(void 0,T):a(t,r,e,_);else var M=o(t,r,e);return l((R?n:f)(M,T),t,r)}},function(t,r){var e="__lodash_placeholder__";t.exports=function(t,r){for(var n=-1,o=t.length,i=0,u=[];++n<o;){var a=t[n];a!==r&&a!==e||(t[n]=e,u[i++]=n)}return u}},function(t,r,e){var n=e(255),o=e(161),i=Object.prototype.propertyIsEnumerable,u=Object.getOwnPropertySymbols,a=u?function(t){return null==t?[]:(t=Object(t),n(u(t),(function(r){return i.call(t,r)})))}:o;t.exports=a},function(t,r,e){var n=e(258),o=e(266),i=e(52),u=e(6),a=e(272);t.exports=function(t){return"function"==typeof t?t:null==t?i:"object"==typeof t?u(t)?o(t[0],t[1]):n(t):a(t)}},function(t,r,e){e(286);for(var n=e(9),o=e(26),i=e(39),u=e(12)("toStringTag"),a="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),c=0;c<a.length;c++){var s=a[c],f=n[s],l=f&&f.prototype;l&&!l[u]&&o(l,u,s),i[s]=i.Array}},function(t,r,e){var n=e(110),o=e(12)("iterator"),i=e(39);t.exports=e(10).getIteratorMethod=function(t){if(null!=t)return t[o]||t["@@iterator"]||i[n(t)]}},function(t,r,e){var n=e(48),o=e(12)("toStringTag"),i="Arguments"==n(function(){return arguments}());t.exports=function(t){var r,e,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(e=function(t,r){try{return t[r]}catch(t){}}(r=Object(t),o))?e:i?n(r):"Object"==(u=n(r))&&"function"==typeof r.callee?"Arguments":u}},,function(t,r,e){var n=e(23);t.exports=function(t,r){if(!n(t))return t;var e,o;if(r&&"function"==typeof(e=t.toString)&&!n(o=e.call(t)))return o;if("function"==typeof(e=t.valueOf)&&!n(o=e.call(t)))return o;if(!r&&"function"==typeof(e=t.toString)&&!n(o=e.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,r,e){var n=e(175),o=e(243),i=e(244);t.exports=function(t,r,e){return r==r?i(t,r,e):n(t,o,e)}},function(t,r){t.exports=function(t,r,e){switch(e.length){case 0:return t.call(r);case 1:return t.call(r,e[0]);case 2:return t.call(r,e[0],e[1]);case 3:return t.call(r,e[0],e[1],e[2])}return t.apply(r,e)}},function(t,r,e){var n=e(73),o=e(116),i=4294967295;function u(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=i,this.__views__=[]}u.prototype=n(o.prototype),u.prototype.constructor=u,t.exports=u},function(t,r){t.exports=function(){}},function(t,r){t.exports=function(t,r){for(var e=-1,n=null==t?0:t.length;++e<n&&!1!==r(t[e],e,t););return t}},function(t,r,e){var n=e(160)(Object.getPrototypeOf,Object);t.exports=n},function(t,r,e){var n=e(164);t.exports=function(t){var r=new t.constructor(t.byteLength);return new n(r).set(new n(t)),r}},function(t,r){r.f=Object.getOwnPropertySymbols},function(t,r){t.exports=function(t){return void 0===t}},function(t,r,e){"use strict";r.__esModule=!0;var n,o=e(284),i=(n=o)&&n.__esModule?n:{default:n};r.default=function(t){return function(){var r=t.apply(this,arguments);return new i.default((function(t,e){return function n(o,u){try{var a=r[o](u),c=a.value}catch(t){return void e(t)}if(!a.done)return i.default.resolve(c).then((function(t){n("next",t)}),(function(t){n("throw",t)}));t(c)}("next")}))}}},function(t,r,e){"use strict";(function(t,n){var o,i=e(197);o="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:n;var u=Object(i.a)(o);r.a=u}).call(this,e(125),e(312)(t))},function(t,r,e){var n,o,i;!function(e,u){"use strict";"object"==typeof t.exports?t.exports=u():(o=[],void 0===(i="function"==typeof(n=u)?n.apply(r,o):n)||(t.exports=i))}(0,(function(){"use strict";var t=Object.prototype.toString;function r(t,r){return null!=t&&Object.prototype.hasOwnProperty.call(t,r)}function e(t){if(!t)return!0;if(o(t)&&0===t.length)return!0;if("string"!=typeof t){for(var e in t)if(r(t,e))return!1;return!0}return!1}function n(r){return t.call(r)}var o=Array.isArray||function(r){return"[object Array]"===t.call(r)};function i(t){var r=parseInt(t);return r.toString()===t?r:t}function u(t){t=t||{};var u=function(t){return Object.keys(u).reduce((function(r,e){return"create"===e?r:("function"==typeof u[e]&&(r[e]=u[e].bind(u,t)),r)}),{})};function a(e,n){return t.includeInheritedProps||"number"==typeof n&&Array.isArray(e)||r(e,n)}function c(t,r){if(a(t,r))return t[r]}function s(t,r,e,n){if("number"==typeof r&&(r=[r]),!r||0===r.length)return t;if("string"==typeof r)return s(t,r.split(".").map(i),e,n);var o=r[0],u=c(t,o);return 1===r.length?(void 0!==u&&n||(t[o]=e),u):(void 0===u&&("number"==typeof r[1]?t[o]=[]:t[o]={}),s(t[o],r.slice(1),e,n))}return u.has=function(e,n){if("number"==typeof n?n=[n]:"string"==typeof n&&(n=n.split(".")),!n||0===n.length)return!!e;for(var u=0;u<n.length;u++){var a=i(n[u]);if(!("number"==typeof a&&o(e)&&a<e.length||(t.includeInheritedProps?a in Object(e):r(e,a))))return!1;e=e[a]}return!0},u.ensureExists=function(t,r,e){return s(t,r,e,!0)},u.set=function(t,r,e,n){return s(t,r,e,n)},u.insert=function(t,r,e,n){var i=u.get(t,r);n=~~n,o(i)||(i=[],u.set(t,r,i)),i.splice(n,0,e)},u.empty=function(t,r){var i,c;if(!e(r)&&(null!=t&&(i=u.get(t,r)))){if("string"==typeof i)return u.set(t,r,"");if(function(t){return"boolean"==typeof t||"[object Boolean]"===n(t)}(i))return u.set(t,r,!1);if("number"==typeof i)return u.set(t,r,0);if(o(i))i.length=0;else{if(!function(t){return"object"==typeof t&&"[object Object]"===n(t)}(i))return u.set(t,r,null);for(c in i)a(i,c)&&delete i[c]}}},u.push=function(t,r){var e=u.get(t,r);o(e)||(e=[],u.set(t,r,e)),e.push.apply(e,Array.prototype.slice.call(arguments,2))},u.coalesce=function(t,r,e){for(var n,o=0,i=r.length;o<i;o++)if(void 0!==(n=u.get(t,r[o])))return n;return e},u.get=function(t,r,e){if("number"==typeof r&&(r=[r]),!r||0===r.length)return t;if(null==t)return e;if("string"==typeof r)return u.get(t,r.split("."),e);var n=i(r[0]),o=c(t,n);return void 0===o?e:1===r.length?o:u.get(t[n],r.slice(1),e)},u.del=function(t,r){if("number"==typeof r&&(r=[r]),null==t)return t;if(e(r))return t;if("string"==typeof r)return u.del(t,r.split("."));var n=i(r[0]);return a(t,n)?1!==r.length?u.del(t[n],r.slice(1)):(o(t)?t.splice(n,1):delete t[n],t):t},u}var a=u();return a.create=u,a.withInheritedProps=u({includeInheritedProps:!0}),a}))},function(t,r){var e;e=function(){return this}();try{e=e||new Function("return this")()}catch(t){"object"==typeof window&&(e=window)}t.exports=e},function(t,r,e){var n=e(17),o=e(212),i=e(102),u=e(83)("IE_PROTO"),a=function(){},c=function(){var t,r=e(81)("iframe"),n=i.length;for(r.style.display="none",e(133).appendChild(r),r.src="javascript:",(t=r.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),c=t.F;n--;)delete c.prototype[i[n]];return c()};t.exports=Object.create||function(t,r){var e;return null!==t?(a.prototype=n(t),e=new a,a.prototype=null,e[u]=t):e=c(),void 0===r?e:o(e,r)}},function(t,r,e){var n=e(113),o=e(41),i=e(99),u=e(86),a=e(363),c=Math.max;t.exports=function(t,r,e,s){t=o(t)?t:a(t),e=e&&!s?u(e):0;var f=t.length;return e<0&&(e=c(f+e,0)),i(t)?e<=f&&t.indexOf(r,e)>-1:!!f&&n(t,r,e)>-1}},,,,function(t,r,e){"use strict";var n=e(49),o=e(18),i=e(167),u=e(26),a=e(39),c=e(211),s=e(62),f=e(215),l=e(12)("iterator"),p=!([].keys&&"next"in[].keys()),d=function(){return this};t.exports=function(t,r,e,h,v,y,g){c(e,r,h);var b,m,x,_=function(t){if(!p&&t in A)return A[t];switch(t){case"keys":case"values":return function(){return new e(this,t)}}return function(){return new e(this,t)}},w=r+" Iterator",j="values"==v,O=!1,A=t.prototype,E=A[l]||A["@@iterator"]||v&&A[v],S=E||_(v),P=v?j?_("entries"):S:void 0,I="Array"==r&&A.entries||E;if(I&&(x=f(I.call(new t)))!==Object.prototype&&x.next&&(s(x,w,!0),n||"function"==typeof x[l]||u(x,l,d)),j&&E&&"values"!==E.name&&(O=!0,S=function(){return E.call(this)}),n&&!g||!p&&!O&&A[l]||u(A,l,S),a[r]=S,a[w]=d,v)if(b={values:j?S:_("values"),keys:y?S:_("keys"),entries:P},g)for(m in b)m in A||i(A,m,b[m]);else o(o.P+o.F*(p||O),r,b);return b}},function(t,r,e){var n=e(48);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},function(t,r,e){var n=e(9).document;t.exports=n&&n.documentElement},function(t,r,e){var n=e(17);t.exports=function(t,r,e,o){try{return o?r(n(e)[0],e[1]):r(e)}catch(r){var i=t.return;throw void 0!==i&&n(i.call(t)),r}}},function(t,r,e){var n=e(39),o=e(12)("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(n.Array===t||i[o]===t)}},function(t,r,e){var n=e(12)("iterator"),o=!1;try{var i=[7][n]();i.return=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(t){}t.exports=function(t,r){if(!r&&!o)return!1;var e=!1;try{var i=[7],u=i[n]();u.next=function(){return{done:e=!0}},i[n]=function(){return u},t(i)}catch(t){}return e}},function(t,r,e){(function(r){var e="object"==typeof r&&r&&r.Object===Object&&r;t.exports=e}).call(this,e(125))},function(t,r){var e=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return e.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},function(t,r,e){var n=e(260),o=e(14);t.exports=function t(r,e,i,u,a){return r===e||(null==r||null==e||!o(r)&&!o(e)?r!=r&&e!=e:n(r,e,i,u,t,a))}},function(t,r,e){var n=e(151),o=e(261),i=e(152),u=1,a=2;t.exports=function(t,r,e,c,s,f){var l=e&u,p=t.length,d=r.length;if(p!=d&&!(l&&d>p))return!1;var h=f.get(t);if(h&&f.get(r))return h==r;var v=-1,y=!0,g=e&a?new n:void 0;for(f.set(t,r),f.set(r,t);++v<p;){var b=t[v],m=r[v];if(c)var x=l?c(m,b,v,r,t,f):c(b,m,v,t,r,f);if(void 0!==x){if(x)continue;y=!1;break}if(g){if(!o(r,(function(t,r){if(!i(g,r)&&(b===t||s(b,t,e,c,f)))return g.push(r)}))){y=!1;break}}else if(b!==m&&!s(b,m,e,c,f)){y=!1;break}}return f.delete(t),f.delete(r),y}},function(t,r,e){var n=e(22);t.exports=function(t){return t==t&&!n(t)}},function(t,r){t.exports=function(t,r){return function(e){return null!=e&&(e[t]===r&&(void 0!==r||t in Object(e)))}}},function(t,r,e){var n=e(144),o=e(47);t.exports=function(t,r){for(var e=0,i=(r=n(r,t)).length;null!=t&&e<i;)t=t[o(r[e++])];return e&&e==i?t:void 0}},function(t,r,e){var n=e(6),o=e(91),i=e(165),u=e(98);t.exports=function(t,r){return n(t)?t:o(t,r)?[t]:i(u(t))}},function(t,r,e){var n=e(17),o=e(53),i=e(12)("species");t.exports=function(t,r){var e,u=n(t).constructor;return void 0===u||null==(e=n(u)[i])?r:o(e)}},function(t,r,e){var n,o,i,u=e(38),a=e(292),c=e(133),s=e(81),f=e(9),l=f.process,p=f.setImmediate,d=f.clearImmediate,h=f.MessageChannel,v=f.Dispatch,y=0,g={},b=function(){var t=+this;if(g.hasOwnProperty(t)){var r=g[t];delete g[t],r()}},m=function(t){b.call(t.data)};p&&d||(p=function(t){for(var r=[],e=1;arguments.length>e;)r.push(arguments[e++]);return g[++y]=function(){a("function"==typeof t?t:Function(t),r)},n(y),y},d=function(t){delete g[t]},"process"==e(48)(l)?n=function(t){l.nextTick(u(b,t,1))}:v&&v.now?n=function(t){v.now(u(b,t,1))}:h?(i=(o=new h).port2,o.port1.onmessage=m,n=u(i.postMessage,i,1)):f.addEventListener&&"function"==typeof postMessage&&!f.importScripts?(n=function(t){f.postMessage(t+"","*")},f.addEventListener("message",m,!1)):n="onreadystatechange"in s("script")?function(t){c.appendChild(s("script")).onreadystatechange=function(){c.removeChild(this),b.call(t)}}:function(t){setTimeout(u(b,t,1),0)}),t.exports={set:p,clear:d}},function(t,r){t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},function(t,r,e){var n=e(17),o=e(23),i=e(93);t.exports=function(t,r){if(n(t),o(r)&&r.constructor===t)return r;var e=i.f(t);return(0,e.resolve)(r),e.promise}},,function(t,r,e){"use strict";e.r(r);var n=e(78),o=e(29),i=e(60),u=e(100),a=Object(u.b)({plugins:i.default,forms:o.default});e.d(r,"default",(function(){return a})),e.d(r,"editor",(function(){return n})),e.d(r,"forms",(function(){return o})),e.d(r,"plugins",(function(){return i}))},function(t,r,e){var n=e(84),o=e(241),i=e(242);function u(t){var r=-1,e=null==t?0:t.length;for(this.__data__=new n;++r<e;)this.add(t[r])}u.prototype.add=u.prototype.push=o,u.prototype.has=i,t.exports=u},function(t,r){t.exports=function(t,r){return t.has(r)}},function(t,r,e){var n=e(24)(e(11),"Set");t.exports=n},function(t,r,e){var n=e(24)(e(11),"WeakMap");t.exports=n},function(t,r,e){var n=e(331),o=e(186)(n);t.exports=o},function(t,r){t.exports=function(t){return t.placeholder}},function(t,r,e){var n=e(158),o=1/0,i=17976931348623157e292;t.exports=function(t){return t?(t=n(t))===o||t===-o?(t<0?-1:1)*i:t==t?t:0:0===t?t:0}},function(t,r,e){var n=e(22),o=e(46),i=NaN,u=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,s=/^0o[0-7]+$/i,f=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(o(t))return i;if(n(t)){var r="function"==typeof t.valueOf?t.valueOf():t;t=n(r)?r+"":r}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(u,"");var e=c.test(t);return e||s.test(t)?f(t.slice(2),e?2:8):a.test(t)?i:+t}},function(t,r,e){var n=e(245),o=e(58),i=e(6),u=e(59),a=e(75),c=e(87),s=Object.prototype.hasOwnProperty;t.exports=function(t,r){var e=i(t),f=!e&&o(t),l=!e&&!f&&u(t),p=!e&&!f&&!l&&c(t),d=e||f||l||p,h=d?n(t.length,String):[],v=h.length;for(var y in t)!r&&!s.call(t,y)||d&&("length"==y||l&&("offset"==y||"parent"==y)||p&&("buffer"==y||"byteLength"==y||"byteOffset"==y)||a(y,v))||h.push(y);return h}},function(t,r){t.exports=function(t,r){return function(e){return t(r(e))}}},function(t,r){t.exports=function(){return[]}},function(t,r,e){var n=e(163),o=e(106),i=e(40);t.exports=function(t){return n(t,i,o)}},function(t,r,e){var n=e(97),o=e(6);t.exports=function(t,r,e){var i=r(t);return o(t)?i:n(i,e(t))}},function(t,r,e){var n=e(11).Uint8Array;t.exports=n},function(t,r,e){var n=e(267),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,u=n((function(t){var r=[];return 46===t.charCodeAt(0)&&r.push(""),t.replace(o,(function(t,e,n,o){r.push(n?o.replace(i,"$1"):e||t)})),r}));t.exports=u},function(t,r,e){t.exports=!e(19)&&!e(50)((function(){return 7!=Object.defineProperty(e(81)("div"),"a",{get:function(){return 7}}).a}))},function(t,r,e){t.exports=e(26)},function(t,r,e){var n=e(31),o=e(45),i=e(213)(!1),u=e(83)("IE_PROTO");t.exports=function(t,r){var e,a=o(t),c=0,s=[];for(e in a)e!=u&&n(a,e)&&s.push(e);for(;r.length>c;)n(a,e=r[c++])&&(~i(s,e)||s.push(e));return s}},function(t,r,e){var n=e(32),o=e(77),i=e(6),u=e(46),a=1/0,c=n?n.prototype:void 0,s=c?c.toString:void 0;t.exports=function t(r){if("string"==typeof r)return r;if(i(r))return o(r,t)+"";if(u(r))return s?s.call(r):"";var e=r+"";return"0"==e&&1/r==-a?"-0":e}},function(t,r){},,,,function(t,r,e){var n=e(113);t.exports=function(t,r){return!!(null==t?0:t.length)&&n(t,r,0)>-1}},function(t,r){t.exports=function(t,r,e,n){for(var o=t.length,i=e+(n?1:-1);n?i--:++i<o;)if(r(t[i],i,t))return i;return-1}},function(t,r){t.exports={}},function(t,r,e){var n=e(52),o=e(178),i=o?function(t,r){return o.set(t,r),t}:n;t.exports=i},function(t,r,e){var n=e(154),o=n&&new n;t.exports=o},function(t,r,e){var n=e(180),o=e(181),i=e(323),u=e(72),a=e(182),c=e(156),s=e(334),f=e(105),l=e(11),p=1,d=2,h=8,v=16,y=128,g=512;t.exports=function t(r,e,b,m,x,_,w,j,O,A){var E=e&y,S=e&p,P=e&d,I=e&(h|v),R=e&g,T=P?void 0:u(r);return function p(){for(var d=arguments.length,h=Array(d),v=d;v--;)h[v]=arguments[v];if(I)var y=c(p),g=i(h,y);if(m&&(h=n(h,m,x,I)),_&&(h=o(h,_,w,I)),d-=g,I&&d<A){var M=f(h,y);return a(r,e,t,p.placeholder,b,h,M,j,O,A-d)}var L=S?b:this,k=P?L[r]:r;return d=h.length,j?h=s(h,j):R&&d>1&&h.reverse(),E&&O<d&&(h.length=O),this&&this!==l&&this instanceof p&&(k=T||u(k)),k.apply(L,h)}}},function(t,r){var e=Math.max;t.exports=function(t,r,n,o){for(var i=-1,u=t.length,a=n.length,c=-1,s=r.length,f=e(u-a,0),l=Array(s+f),p=!o;++c<s;)l[c]=r[c];for(;++i<a;)(p||i<u)&&(l[n[i]]=t[i]);for(;f--;)l[c++]=t[i++];return l}},function(t,r){var e=Math.max;t.exports=function(t,r,n,o){for(var i=-1,u=t.length,a=-1,c=n.length,s=-1,f=r.length,l=e(u-c,0),p=Array(l+f),d=!o;++i<l;)p[i]=t[i];for(var h=i;++s<f;)p[h+s]=r[s];for(;++a<c;)(d||i<u)&&(p[h+n[a]]=t[i++]);return p}},function(t,r,e){var n=e(324),o=e(185),i=e(187),u=1,a=2,c=4,s=8,f=32,l=64;t.exports=function(t,r,e,p,d,h,v,y,g,b){var m=r&s;r|=m?f:l,(r&=~(m?l:f))&c||(r&=~(u|a));var x=[t,r,d,m?h:void 0,m?v:void 0,m?void 0:h,m?void 0:v,y,g,b],_=e.apply(void 0,x);return n(t)&&o(_,x),_.placeholder=p,i(_,t,r)}},function(t,r,e){var n=e(178),o=e(8),i=n?function(t){return n.get(t)}:o;t.exports=i},function(t,r,e){var n=e(73),o=e(116);function i(t,r){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!r,this.__index__=0,this.__values__=void 0}i.prototype=n(o.prototype),i.prototype.constructor=i,t.exports=i},function(t,r,e){var n=e(177),o=e(186)(n);t.exports=o},function(t,r){var e=800,n=16,o=Date.now;t.exports=function(t){var r=0,i=0;return function(){var u=o(),a=n-(u-i);if(i=u,a>0){if(++r>=e)return arguments[0]}else r=0;return t.apply(void 0,arguments)}}},function(t,r,e){var n=e(329),o=e(330),i=e(155),u=e(333);t.exports=function(t,r,e){var a=r+"";return i(t,o(a,u(n(a),e)))}},function(t,r,e){var n=e(24),o=function(){try{var t=n(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();t.exports=o},function(t,r,e){var n=e(76),o=e(40);t.exports=function(t,r){return t&&n(r,o(r),t)}},function(t,r,e){var n=e(191),o=e(71),i=Object.prototype.hasOwnProperty;t.exports=function(t,r,e){var u=t[r];i.call(t,r)&&o(u,e)&&(void 0!==e||r in t)||n(t,r,e)}},function(t,r,e){var n=e(188);t.exports=function(t,r,e){"__proto__"==r&&n?n(t,r,{configurable:!0,enumerable:!0,value:e,writable:!0}):t[r]=e}},function(t,r,e){var n=e(96),o=e(117),i=e(190),u=e(189),a=e(338),c=e(341),s=e(74),f=e(342),l=e(343),p=e(162),d=e(344),h=e(43),v=e(345),y=e(346),g=e(351),b=e(6),m=e(59),x=e(352),_=e(22),w=e(354),j=e(40),O=1,A=2,E=4,S="[object Arguments]",P="[object Function]",I="[object GeneratorFunction]",R="[object Object]",T={};T[S]=T["[object Array]"]=T["[object ArrayBuffer]"]=T["[object DataView]"]=T["[object Boolean]"]=T["[object Date]"]=T["[object Float32Array]"]=T["[object Float64Array]"]=T["[object Int8Array]"]=T["[object Int16Array]"]=T["[object Int32Array]"]=T["[object Map]"]=T["[object Number]"]=T[R]=T["[object RegExp]"]=T["[object Set]"]=T["[object String]"]=T["[object Symbol]"]=T["[object Uint8Array]"]=T["[object Uint8ClampedArray]"]=T["[object Uint16Array]"]=T["[object Uint32Array]"]=!0,T["[object Error]"]=T[P]=T["[object WeakMap]"]=!1,t.exports=function t(r,e,M,L,k,F){var W,D=e&O,B=e&A,C=e&E;if(M&&(W=k?M(r,L,k,F):M(r)),void 0!==W)return W;if(!_(r))return r;var N=b(r);if(N){if(W=v(r),!D)return s(r,W)}else{var U=h(r),z=U==P||U==I;if(m(r))return c(r,D);if(U==R||U==S||z&&!k){if(W=B||z?{}:g(r),!D)return B?l(r,a(W,r)):f(r,u(W,r))}else{if(!T[U])return k?r:{};W=y(r,U,D)}}F||(F=new n);var V=F.get(r);if(V)return V;F.set(r,W),w(r)?r.forEach((function(n){W.add(t(n,e,M,n,r,F))})):x(r)&&r.forEach((function(n,o){W.set(o,t(n,e,M,o,r,F))}));var q=C?B?d:p:B?keysIn:j,G=N?void 0:q(r);return o(G||r,(function(n,o){G&&(n=r[o=n]),i(W,o,t(n,e,M,o,r,F))})),W}},function(t,r,e){var n=e(159),o=e(339),i=e(41);t.exports=function(t){return i(t)?n(t,!0):o(t)}},function(t,r,e){var n=e(97),o=e(118),i=e(106),u=e(161),a=Object.getOwnPropertySymbols?function(t){for(var r=[];t;)n(r,i(t)),t=o(t);return r}:u;t.exports=a},function(t,r,e){var n=e(104),o=8;function i(t,r,e){var u=n(t,o,void 0,void 0,void 0,void 0,void 0,r=e?void 0:r);return u.placeholder=i.placeholder,u}i.placeholder={},t.exports=i},function(t,r,e){var n=e(275);t.exports=function(t){return(null==t?0:t.length)?n(t,1):[]}},function(t,r,e){"use strict";function n(t){var r,e=t.Symbol;return"function"==typeof e?e.observable?r=e.observable:(r=e("observable"),e.observable=r):r="@@observable",r}e.d(r,"a",(function(){return n}))},function(t,r,e){var n=e(313);t.exports=function(t){return t&&t.length?n(t):[]}},function(t,r,e){var n=e(316)("curry",e(195));n.placeholder=e(176),t.exports=n},function(t,r,e){"use strict";r.__esModule=!0;var n,o=e(205),i=(n=o)&&n.__esModule?n:{default:n};r.default=function(t,r,e){return r in t?(0,i.default)(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}},function(t,r,e){"use strict";var n=Object.prototype.hasOwnProperty;function o(t){return decodeURIComponent(t.replace(/\+/g," "))}r.stringify=function(t,r){r=r||"";var e=[];for(var o in"string"!=typeof r&&(r="?"),t)n.call(t,o)&&e.push(encodeURIComponent(o)+"="+encodeURIComponent(t[o]));return e.length?r+e.join("&"):""},r.parse=function(t){for(var r,e=/([^=?&]+)=?([^&]*)/g,n={};r=e.exec(t);){var i=o(r[1]),u=o(r[2]);i in n||(n[i]=u)}return n}},function(t,r,e){var n=e(367),o=e(157),i=e(158);t.exports=function(t,r,e){return r=o(r),void 0===e?(e=r,r=0):e=o(e),t=i(t),n(t,r,e)}},,,function(t,r,e){t.exports={default:e(365),__esModule:!0}},function(t,r){!function(t){"use strict";if(!t.fetch){var r={searchParams:"URLSearchParams"in t,iterable:"Symbol"in t&&"iterator"in Symbol,blob:"FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),formData:"FormData"in t,arrayBuffer:"ArrayBuffer"in t};if(r.arrayBuffer)var e=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],n=function(t){return t&&DataView.prototype.isPrototypeOf(t)},o=ArrayBuffer.isView||function(t){return t&&e.indexOf(Object.prototype.toString.call(t))>-1};f.prototype.append=function(t,r){t=a(t),r=c(r);var e=this.map[t];this.map[t]=e?e+","+r:r},f.prototype.delete=function(t){delete this.map[a(t)]},f.prototype.get=function(t){return t=a(t),this.has(t)?this.map[t]:null},f.prototype.has=function(t){return this.map.hasOwnProperty(a(t))},f.prototype.set=function(t,r){this.map[a(t)]=c(r)},f.prototype.forEach=function(t,r){for(var e in this.map)this.map.hasOwnProperty(e)&&t.call(r,this.map[e],e,this)},f.prototype.keys=function(){var t=[];return this.forEach((function(r,e){t.push(e)})),s(t)},f.prototype.values=function(){var t=[];return this.forEach((function(r){t.push(r)})),s(t)},f.prototype.entries=function(){var t=[];return this.forEach((function(r,e){t.push([e,r])})),s(t)},r.iterable&&(f.prototype[Symbol.iterator]=f.prototype.entries);var i=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];y.prototype.clone=function(){return new y(this,{body:this._bodyInit})},v.call(y.prototype),v.call(b.prototype),b.prototype.clone=function(){return new b(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new f(this.headers),url:this.url})},b.error=function(){var t=new b(null,{status:0,statusText:""});return t.type="error",t};var u=[301,302,303,307,308];b.redirect=function(t,r){if(-1===u.indexOf(r))throw new RangeError("Invalid status code");return new b(null,{status:r,headers:{location:t}})},t.Headers=f,t.Request=y,t.Response=b,t.fetch=function(t,e){return new Promise((function(n,o){var i=new y(t,e),u=new XMLHttpRequest;u.onload=function(){var t,r,e={status:u.status,statusText:u.statusText,headers:(t=u.getAllResponseHeaders()||"",r=new f,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(t){var e=t.split(":"),n=e.shift().trim();if(n){var o=e.join(":").trim();r.append(n,o)}})),r)};e.url="responseURL"in u?u.responseURL:e.headers.get("X-Request-URL");var o="response"in u?u.response:u.responseText;n(new b(o,e))},u.onerror=function(){o(new TypeError("Network request failed"))},u.ontimeout=function(){o(new TypeError("Network request failed"))},u.open(i.method,i.url,!0),"include"===i.credentials?u.withCredentials=!0:"omit"===i.credentials&&(u.withCredentials=!1),"responseType"in u&&r.blob&&(u.responseType="blob"),i.headers.forEach((function(t,r){u.setRequestHeader(r,t)})),u.send(void 0===i._bodyInit?null:i._bodyInit)}))},t.fetch.polyfill=!0}function a(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function c(t){return"string"!=typeof t&&(t=String(t)),t}function s(t){var e={next:function(){var r=t.shift();return{done:void 0===r,value:r}}};return r.iterable&&(e[Symbol.iterator]=function(){return e}),e}function f(t){this.map={},t instanceof f?t.forEach((function(t,r){this.append(r,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(r){this.append(r,t[r])}),this)}function l(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function p(t){return new Promise((function(r,e){t.onload=function(){r(t.result)},t.onerror=function(){e(t.error)}}))}function d(t){var r=new FileReader,e=p(r);return r.readAsArrayBuffer(t),e}function h(t){if(t.slice)return t.slice(0);var r=new Uint8Array(t.byteLength);return r.set(new Uint8Array(t)),r.buffer}function v(){return this.bodyUsed=!1,this._initBody=function(t){if(this._bodyInit=t,t)if("string"==typeof t)this._bodyText=t;else if(r.blob&&Blob.prototype.isPrototypeOf(t))this._bodyBlob=t;else if(r.formData&&FormData.prototype.isPrototypeOf(t))this._bodyFormData=t;else if(r.searchParams&&URLSearchParams.prototype.isPrototypeOf(t))this._bodyText=t.toString();else if(r.arrayBuffer&&r.blob&&n(t))this._bodyArrayBuffer=h(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer]);else{if(!r.arrayBuffer||!ArrayBuffer.prototype.isPrototypeOf(t)&&!o(t))throw new Error("unsupported BodyInit type");this._bodyArrayBuffer=h(t)}else this._bodyText="";this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},r.blob&&(this.blob=function(){var t=l(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?l(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(d)}),this.text=function(){var t,r,e,n=l(this);if(n)return n;if(this._bodyBlob)return t=this._bodyBlob,r=new FileReader,e=p(r),r.readAsText(t),e;if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var r=new Uint8Array(t),e=new Array(r.length),n=0;n<r.length;n++)e[n]=String.fromCharCode(r[n]);return e.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},r.formData&&(this.formData=function(){return this.text().then(g)}),this.json=function(){return this.text().then(JSON.parse)},this}function y(t,r){var e,n,o=(r=r||{}).body;if(t instanceof y){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,r.headers||(this.headers=new f(t.headers)),this.method=t.method,this.mode=t.mode,o||null==t._bodyInit||(o=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=r.credentials||this.credentials||"omit",!r.headers&&this.headers||(this.headers=new f(r.headers)),this.method=(e=r.method||this.method||"GET",n=e.toUpperCase(),i.indexOf(n)>-1?n:e),this.mode=r.mode||this.mode||null,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(o)}function g(t){var r=new FormData;return t.trim().split("&").forEach((function(t){if(t){var e=t.split("="),n=e.shift().replace(/\+/g," "),o=e.join("=").replace(/\+/g," ");r.append(decodeURIComponent(n),decodeURIComponent(o))}})),r}function b(t,r){r||(r={}),this.type="default",this.status=void 0===r.status?200:r.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in r?r.statusText:"OK",this.headers=new f(r.headers),this.url=r.url||"",this._initBody(t)}}("undefined"!=typeof self?self:this)},,function(t,r,e){t.exports={default:e(209),__esModule:!0}},function(t,r,e){e(61),e(216),t.exports=e(10).Array.from},function(t,r,e){var n=e(79),o=e(80);t.exports=function(t){return function(r,e){var i,u,a=String(o(r)),c=n(e),s=a.length;return c<0||c>=s?t?"":void 0:(i=a.charCodeAt(c))<55296||i>56319||c+1===s||(u=a.charCodeAt(c+1))<56320||u>57343?t?a.charAt(c):i:t?a.slice(c,c+2):u-56320+(i-55296<<10)+65536}}},function(t,r,e){"use strict";var n=e(126),o=e(51),i=e(62),u={};e(26)(u,e(12)("iterator"),(function(){return this})),t.exports=function(t,r,e){t.prototype=n(u,{next:o(1,e)}),i(t,r+" Iterator")}},function(t,r,e){var n=e(21),o=e(17),i=e(69);t.exports=e(19)?Object.defineProperties:function(t,r){o(t);for(var e,u=i(r),a=u.length,c=0;a>c;)n.f(t,e=u[c++],r[e]);return t}},function(t,r,e){var n=e(45),o=e(82),i=e(214);t.exports=function(t){return function(r,e,u){var a,c=n(r),s=o(c.length),f=i(u,s);if(t&&e!=e){for(;s>f;)if((a=c[f++])!=a)return!0}else for(;s>f;f++)if((t||f in c)&&c[f]===e)return t||f||0;return!t&&-1}}},function(t,r,e){var n=e(79),o=Math.max,i=Math.min;t.exports=function(t,r){return(t=n(t))<0?o(t+r,0):i(t,r)}},function(t,r,e){var n=e(31),o=e(63),i=e(83)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),n(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},function(t,r,e){"use strict";var n=e(38),o=e(18),i=e(63),u=e(134),a=e(135),c=e(82),s=e(217),f=e(109);o(o.S+o.F*!e(136)((function(t){Array.from(t)})),"Array",{from:function(t){var r,e,o,l,p=i(t),d="function"==typeof this?this:Array,h=arguments.length,v=h>1?arguments[1]:void 0,y=void 0!==v,g=0,b=f(p);if(y&&(v=n(v,h>2?arguments[2]:void 0,2)),null==b||d==Array&&a(b))for(e=new d(r=c(p.length));r>g;g++)s(e,g,y?v(p[g],g):p[g]);else for(l=b.call(p),e=new d;!(o=l.next()).done;g++)s(e,g,y?u(l,v,[o.value,g],!0):o.value);return e.length=g,e}})},function(t,r,e){"use strict";var n=e(21),o=e(51);t.exports=function(t,r,e){r in t?n.f(t,r,o(0,e)):t[r]=e}},function(t,r,e){var n=e(219),o=e(55),i=e(85);t.exports=function(){this.size=0,this.__data__={hash:new n,map:new(i||o),string:new n}}},function(t,r,e){var n=e(220),o=e(227),i=e(228),u=e(229),a=e(230);function c(t){var r=-1,e=null==t?0:t.length;for(this.clear();++r<e;){var n=t[r];this.set(n[0],n[1])}}c.prototype.clear=n,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,r,e){var n=e(54);t.exports=function(){this.__data__=n?n(null):{},this.size=0}},function(t,r,e){var n=e(94),o=e(224),i=e(22),u=e(138),a=/^\[object .+?Constructor\]$/,c=Function.prototype,s=Object.prototype,f=c.toString,l=s.hasOwnProperty,p=RegExp("^"+f.call(l).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||o(t))&&(n(t)?p:a).test(u(t))}},function(t,r,e){var n=e(32),o=Object.prototype,i=o.hasOwnProperty,u=o.toString,a=n?n.toStringTag:void 0;t.exports=function(t){var r=i.call(t,a),e=t[a];try{t[a]=void 0;var n=!0}catch(t){}var o=u.call(t);return n&&(r?t[a]=e:delete t[a]),o}},function(t,r){var e=Object.prototype.toString;t.exports=function(t){return e.call(t)}},function(t,r,e){var n,o=e(225),i=(n=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"";t.exports=function(t){return!!i&&i in t}},function(t,r,e){var n=e(11)["__core-js_shared__"];t.exports=n},function(t,r){t.exports=function(t,r){return null==t?void 0:t[r]}},function(t,r){t.exports=function(t){var r=this.has(t)&&delete this.__data__[t];return this.size-=r?1:0,r}},function(t,r,e){var n=e(54),o="__lodash_hash_undefined__",i=Object.prototype.hasOwnProperty;t.exports=function(t){var r=this.__data__;if(n){var e=r[t];return e===o?void 0:e}return i.call(r,t)?r[t]:void 0}},function(t,r,e){var n=e(54),o=Object.prototype.hasOwnProperty;t.exports=function(t){var r=this.__data__;return n?void 0!==r[t]:o.call(r,t)}},function(t,r,e){var n=e(54),o="__lodash_hash_undefined__";t.exports=function(t,r){var e=this.__data__;return this.size+=this.has(t)?0:1,e[t]=n&&void 0===r?o:r,this}},function(t,r){t.exports=function(){this.__data__=[],this.size=0}},function(t,r,e){var n=e(56),o=Array.prototype.splice;t.exports=function(t){var r=this.__data__,e=n(r,t);return!(e<0)&&(e==r.length-1?r.pop():o.call(r,e,1),--this.size,!0)}},function(t,r,e){var n=e(56);t.exports=function(t){var r=this.__data__,e=n(r,t);return e<0?void 0:r[e][1]}},function(t,r,e){var n=e(56);t.exports=function(t){return n(this.__data__,t)>-1}},function(t,r,e){var n=e(56);t.exports=function(t,r){var e=this.__data__,o=n(e,t);return o<0?(++this.size,e.push([t,r])):e[o][1]=r,this}},function(t,r,e){var n=e(57);t.exports=function(t){var r=n(this,t).delete(t);return this.size-=r?1:0,r}},function(t,r){t.exports=function(t){var r=typeof t;return"string"==r||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==t:null===t}},function(t,r,e){var n=e(57);t.exports=function(t){return n(this,t).get(t)}},function(t,r,e){var n=e(57);t.exports=function(t){return n(this,t).has(t)}},function(t,r,e){var n=e(57);t.exports=function(t,r){var e=n(this,t),o=e.size;return e.set(t,r),this.size+=e.size==o?0:1,this}},function(t,r){var e="__lodash_hash_undefined__";t.exports=function(t){return this.__data__.set(t,e),this}},function(t,r){t.exports=function(t){return this.__data__.has(t)}},function(t,r){t.exports=function(t){return t!=t}},function(t,r){t.exports=function(t,r,e){for(var n=e-1,o=t.length;++n<o;)if(t[n]===r)return n;return-1}},function(t,r){t.exports=function(t,r){for(var e=-1,n=Array(t);++e<t;)n[e]=r(e);return n}},function(t,r,e){var n=e(20),o=e(14),i="[object Arguments]";t.exports=function(t){return o(t)&&n(t)==i}},function(t,r){t.exports=function(){return!1}},function(t,r,e){var n=e(20),o=e(88),i=e(14),u={};u["[object Float32Array]"]=u["[object Float64Array]"]=u["[object Int8Array]"]=u["[object Int16Array]"]=u["[object Int32Array]"]=u["[object Uint8Array]"]=u["[object Uint8ClampedArray]"]=u["[object Uint16Array]"]=u["[object Uint32Array]"]=!0,u["[object Arguments]"]=u["[object Array]"]=u["[object ArrayBuffer]"]=u["[object Boolean]"]=u["[object DataView]"]=u["[object Date]"]=u["[object Error]"]=u["[object Function]"]=u["[object Map]"]=u["[object Number]"]=u["[object Object]"]=u["[object RegExp]"]=u["[object Set]"]=u["[object String]"]=u["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&o(t.length)&&!!u[n(t)]}},function(t,r,e){var n=e(160)(Object.keys,Object);t.exports=n},function(t,r,e){var n=e(55);t.exports=function(){this.__data__=new n,this.size=0}},function(t,r){t.exports=function(t){var r=this.__data__,e=r.delete(t);return this.size=r.size,e}},function(t,r){t.exports=function(t){return this.__data__.get(t)}},function(t,r){t.exports=function(t){return this.__data__.has(t)}},function(t,r,e){var n=e(55),o=e(85),i=e(84),u=200;t.exports=function(t,r){var e=this.__data__;if(e instanceof n){var a=e.__data__;if(!o||a.length<u-1)return a.push([t,r]),this.size=++e.size,this;e=this.__data__=new i(a)}return e.set(t,r),this.size=e.size,this}},function(t,r){t.exports=function(t,r){for(var e=-1,n=null==t?0:t.length,o=0,i=[];++e<n;){var u=t[e];r(u,e,t)&&(i[o++]=u)}return i}},function(t,r,e){var n=e(24)(e(11),"DataView");t.exports=n},function(t,r,e){var n=e(24)(e(11),"Promise");t.exports=n},function(t,r,e){var n=e(259),o=e(265),i=e(142);t.exports=function(t){var r=o(t);return 1==r.length&&r[0][2]?i(r[0][0],r[0][1]):function(e){return e===t||n(e,t,r)}}},function(t,r,e){var n=e(96),o=e(139),i=1,u=2;t.exports=function(t,r,e,a){var c=e.length,s=c,f=!a;if(null==t)return!s;for(t=Object(t);c--;){var l=e[c];if(f&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++c<s;){var p=(l=e[c])[0],d=t[p],h=l[1];if(f&&l[2]){if(void 0===d&&!(p in t))return!1}else{var v=new n;if(a)var y=a(d,h,p,t,r,v);if(!(void 0===y?o(h,d,i|u,a,v):y))return!1}}return!0}},function(t,r,e){var n=e(96),o=e(140),i=e(262),u=e(264),a=e(43),c=e(6),s=e(59),f=e(87),l=1,p="[object Arguments]",d="[object Array]",h="[object Object]",v=Object.prototype.hasOwnProperty;t.exports=function(t,r,e,y,g,b){var m=c(t),x=c(r),_=m?d:a(t),w=x?d:a(r),j=(_=_==p?h:_)==h,O=(w=w==p?h:w)==h,A=_==w;if(A&&s(t)){if(!s(r))return!1;m=!0,j=!1}if(A&&!j)return b||(b=new n),m||f(t)?o(t,r,e,y,g,b):i(t,r,_,e,y,g,b);if(!(e&l)){var E=j&&v.call(t,"__wrapped__"),S=O&&v.call(r,"__wrapped__");if(E||S){var P=E?t.value():t,I=S?r.value():r;return b||(b=new n),g(P,I,e,y,b)}}return!!A&&(b||(b=new n),u(t,r,e,y,g,b))}},function(t,r){t.exports=function(t,r){for(var e=-1,n=null==t?0:t.length;++e<n;)if(r(t[e],e,t))return!0;return!1}},function(t,r,e){var n=e(32),o=e(164),i=e(71),u=e(140),a=e(263),c=e(103),s=1,f=2,l="[object Boolean]",p="[object Date]",d="[object Error]",h="[object Map]",v="[object Number]",y="[object RegExp]",g="[object Set]",b="[object String]",m="[object Symbol]",x="[object ArrayBuffer]",_="[object DataView]",w=n?n.prototype:void 0,j=w?w.valueOf:void 0;t.exports=function(t,r,e,n,w,O,A){switch(e){case _:if(t.byteLength!=r.byteLength||t.byteOffset!=r.byteOffset)return!1;t=t.buffer,r=r.buffer;case x:return!(t.byteLength!=r.byteLength||!O(new o(t),new o(r)));case l:case p:case v:return i(+t,+r);case d:return t.name==r.name&&t.message==r.message;case y:case b:return t==r+"";case h:var E=a;case g:var S=n&s;if(E||(E=c),t.size!=r.size&&!S)return!1;var P=A.get(t);if(P)return P==r;n|=f,A.set(t,r);var I=u(E(t),E(r),n,w,O,A);return A.delete(t),I;case m:if(j)return j.call(t)==j.call(r)}return!1}},function(t,r){t.exports=function(t){var r=-1,e=Array(t.size);return t.forEach((function(t,n){e[++r]=[n,t]})),e}},function(t,r,e){var n=e(162),o=1,i=Object.prototype.hasOwnProperty;t.exports=function(t,r,e,u,a,c){var s=e&o,f=n(t),l=f.length;if(l!=n(r).length&&!s)return!1;for(var p=l;p--;){var d=f[p];if(!(s?d in r:i.call(r,d)))return!1}var h=c.get(t);if(h&&c.get(r))return h==r;var v=!0;c.set(t,r),c.set(r,t);for(var y=s;++p<l;){var g=t[d=f[p]],b=r[d];if(u)var m=s?u(b,g,d,r,t,c):u(g,b,d,t,r,c);if(!(void 0===m?g===b||a(g,b,e,u,c):m)){v=!1;break}y||(y="constructor"==d)}if(v&&!y){var x=t.constructor,_=r.constructor;x!=_&&"constructor"in t&&"constructor"in r&&!("function"==typeof x&&x instanceof x&&"function"==typeof _&&_ instanceof _)&&(v=!1)}return c.delete(t),c.delete(r),v}},function(t,r,e){var n=e(141),o=e(40);t.exports=function(t){for(var r=o(t),e=r.length;e--;){var i=r[e],u=t[i];r[e]=[i,u,n(u)]}return r}},function(t,r,e){var n=e(139),o=e(44),i=e(269),u=e(91),a=e(141),c=e(142),s=e(47),f=1,l=2;t.exports=function(t,r){return u(t)&&a(r)?c(s(t),r):function(e){var u=o(e,t);return void 0===u&&u===r?i(e,t):n(r,u,f|l)}}},function(t,r,e){var n=e(268),o=500;t.exports=function(t){var r=n(t,(function(t){return e.size===o&&e.clear(),t})),e=r.cache;return r}},function(t,r,e){var n=e(84),o="Expected a function";function i(t,r){if("function"!=typeof t||null!=r&&"function"!=typeof r)throw new TypeError(o);var e=function(){var n=arguments,o=r?r.apply(this,n):n[0],i=e.cache;if(i.has(o))return i.get(o);var u=t.apply(this,n);return e.cache=i.set(o,u)||i,u};return e.cache=new(i.Cache||n),e}i.Cache=n,t.exports=i},function(t,r,e){var n=e(270),o=e(271);t.exports=function(t,r){return null!=t&&o(t,r,n)}},function(t,r){t.exports=function(t,r){return null!=t&&r in Object(t)}},function(t,r,e){var n=e(144),o=e(58),i=e(6),u=e(75),a=e(88),c=e(47);t.exports=function(t,r,e){for(var s=-1,f=(r=n(r,t)).length,l=!1;++s<f;){var p=c(r[s]);if(!(l=null!=t&&e(t,p)))break;t=t[p]}return l||++s!=f?l:!!(f=null==t?0:t.length)&&a(f)&&u(p,f)&&(i(t)||o(t))}},function(t,r,e){var n=e(273),o=e(274),i=e(91),u=e(47);t.exports=function(t){return i(t)?n(u(t)):o(t)}},function(t,r){t.exports=function(t){return function(r){return null==r?void 0:r[t]}}},function(t,r,e){var n=e(143);t.exports=function(t){return function(r){return n(r,t)}}},function(t,r,e){var n=e(97),o=e(276);t.exports=function t(r,e,i,u,a){var c=-1,s=r.length;for(i||(i=o),a||(a=[]);++c<s;){var f=r[c];e>0&&i(f)?e>1?t(f,e-1,i,u,a):n(a,f):u||(a[a.length]=f)}return a}},function(t,r,e){var n=e(32),o=e(58),i=e(6),u=n?n.isConcatSpreadable:void 0;t.exports=function(t){return i(t)||o(t)||!!(u&&t&&t[u])}},function(t,r,e){var n=e(114),o=Math.max;t.exports=function(t,r,e){return r=o(void 0===r?t.length-1:r,0),function(){for(var i=arguments,u=-1,a=o(i.length-r,0),c=Array(a);++u<a;)c[u]=i[r+u];u=-1;for(var s=Array(r+1);++u<r;)s[u]=i[u];return s[r]=e(c),n(t,this,s)}}},function(t,r,e){t.exports={default:e(279),__esModule:!0}},function(t,r,e){e(280),t.exports=e(10).Object.assign},function(t,r,e){var n=e(18);n(n.S+n.F,"Object",{assign:e(281)})},function(t,r,e){"use strict";var n=e(19),o=e(69),i=e(120),u=e(92),a=e(63),c=e(132),s=Object.assign;t.exports=!s||e(50)((function(){var t={},r={},e=Symbol(),n="abcdefghijklmnopqrst";return t[e]=7,n.split("").forEach((function(t){r[t]=t})),7!=s({},t)[e]||Object.keys(s({},r)).join("")!=n}))?function(t,r){for(var e=a(t),s=arguments.length,f=1,l=i.f,p=u.f;s>f;)for(var d,h=c(arguments[f++]),v=l?o(h).concat(l(h)):o(h),y=v.length,g=0;y>g;)d=v[g++],n&&!p.call(h,d)||(e[d]=h[d]);return e}:s},function(t,r,e){var n=function(){return this}()||Function("return this")(),o=n.regeneratorRuntime&&Object.getOwnPropertyNames(n).indexOf("regeneratorRuntime")>=0,i=o&&n.regeneratorRuntime;if(n.regeneratorRuntime=void 0,t.exports=e(283),o)n.regeneratorRuntime=i;else try{delete n.regeneratorRuntime}catch(t){n.regeneratorRuntime=void 0}},function(t,r){!function(r){"use strict";var e,n=Object.prototype,o=n.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag",s="object"==typeof t,f=r.regeneratorRuntime;if(f)s&&(t.exports=f);else{(f=r.regeneratorRuntime=s?t.exports:{}).wrap=x;var l="suspendedStart",p="suspendedYield",d="executing",h="completed",v={},y={};y[u]=function(){return this};var g=Object.getPrototypeOf,b=g&&g(g(T([])));b&&b!==n&&o.call(b,u)&&(y=b);var m=O.prototype=w.prototype=Object.create(y);j.prototype=m.constructor=O,O.constructor=j,O[c]=j.displayName="GeneratorFunction",f.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===j||"GeneratorFunction"===(r.displayName||r.name))},f.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,O):(t.__proto__=O,c in t||(t[c]="GeneratorFunction")),t.prototype=Object.create(m),t},f.awrap=function(t){return{__await:t}},A(E.prototype),E.prototype[a]=function(){return this},f.AsyncIterator=E,f.async=function(t,r,e,n){var o=new E(x(t,r,e,n));return f.isGeneratorFunction(r)?o:o.next().then((function(t){return t.done?t.value:o.next()}))},A(m),m[c]="Generator",m[u]=function(){return this},m.toString=function(){return"[object Generator]"},f.keys=function(t){var r=[];for(var e in t)r.push(e);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},f.values=T,R.prototype={constructor:R,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(I),!t)for(var r in this)"t"===r.charAt(0)&&o.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function n(n,o){return a.type="throw",a.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var u=this.tryEntries[i],a=u.completion;if("root"===u.tryLoc)return n("end");if(u.tryLoc<=this.prev){var c=o.call(u,"catchLoc"),s=o.call(u,"finallyLoc");if(c&&s){if(this.prev<u.catchLoc)return n(u.catchLoc,!0);if(this.prev<u.finallyLoc)return n(u.finallyLoc)}else if(c){if(this.prev<u.catchLoc)return n(u.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<u.finallyLoc)return n(u.finallyLoc)}}}},abrupt:function(t,r){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var i=n;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var u=i?i.completion:{};return u.type=t,u.arg=r,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(u)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),v},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.finallyLoc===t)return this.complete(e.completion,e.afterLoc),I(e),v}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc===t){var n=e.completion;if("throw"===n.type){var o=n.arg;I(e)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),v}}}function x(t,r,e,n){var o=r&&r.prototype instanceof w?r:w,i=Object.create(o.prototype),u=new R(n||[]);return i._invoke=function(t,r,e){var n=l;return function(o,i){if(n===d)throw new Error("Generator is already running");if(n===h){if("throw"===o)throw i;return M()}for(e.method=o,e.arg=i;;){var u=e.delegate;if(u){var a=S(u,e);if(a){if(a===v)continue;return a}}if("next"===e.method)e.sent=e._sent=e.arg;else if("throw"===e.method){if(n===l)throw n=h,e.arg;e.dispatchException(e.arg)}else"return"===e.method&&e.abrupt("return",e.arg);n=d;var c=_(t,r,e);if("normal"===c.type){if(n=e.done?h:p,c.arg===v)continue;return{value:c.arg,done:e.done}}"throw"===c.type&&(n=h,e.method="throw",e.arg=c.arg)}}}(t,e,u),i}function _(t,r,e){try{return{type:"normal",arg:t.call(r,e)}}catch(t){return{type:"throw",arg:t}}}function w(){}function j(){}function O(){}function A(t){["next","throw","return"].forEach((function(r){t[r]=function(t){return this._invoke(r,t)}}))}function E(t){var r;this._invoke=function(e,n){function i(){return new Promise((function(r,i){!function r(e,n,i,u){var a=_(t[e],t,n);if("throw"!==a.type){var c=a.arg,s=c.value;return s&&"object"==typeof s&&o.call(s,"__await")?Promise.resolve(s.__await).then((function(t){r("next",t,i,u)}),(function(t){r("throw",t,i,u)})):Promise.resolve(s).then((function(t){c.value=t,i(c)}),u)}u(a.arg)}(e,n,r,i)}))}return r=r?r.then(i,i):i()}}function S(t,r){var n=t.iterator[r.method];if(n===e){if(r.delegate=null,"throw"===r.method){if(t.iterator.return&&(r.method="return",r.arg=e,S(t,r),"throw"===r.method))return v;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return v}var o=_(n,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,v;var i=o.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,v):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,v)}function P(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function I(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function R(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function T(t){if(t){var r=t[u];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function r(){for(;++n<t.length;)if(o.call(t,n))return r.value=t[n],r.done=!1,r;return r.value=e,r.done=!0,r};return i.next=i}}return{next:M}}function M(){return{value:e,done:!0}}}(function(){return this}()||Function("return this")())},function(t,r,e){t.exports={default:e(285),__esModule:!0}},function(t,r,e){e(170),e(61),e(108),e(289),e(297),e(298),t.exports=e(10).Promise},function(t,r,e){"use strict";var n=e(287),o=e(288),i=e(39),u=e(45);t.exports=e(131)(Array,"Array",(function(t,r){this._t=u(t),this._i=0,this._k=r}),(function(){var t=this._t,r=this._k,e=this._i++;return!t||e>=t.length?(this._t=void 0,o(1)):o(0,"keys"==r?e:"values"==r?t[e]:[e,t[e]])}),"values"),i.Arguments=i.Array,n("keys"),n("values"),n("entries")},function(t,r){t.exports=function(){}},function(t,r){t.exports=function(t,r){return{value:r,done:!!t}}},function(t,r,e){"use strict";var n,o,i,u,a=e(49),c=e(9),s=e(38),f=e(110),l=e(18),p=e(23),d=e(53),h=e(290),v=e(291),y=e(145),g=e(146).set,b=e(293)(),m=e(93),x=e(147),_=e(294),w=e(148),j=c.TypeError,O=c.process,A=O&&O.versions,E=A&&A.v8||"",S=c.Promise,P="process"==f(O),I=function(){},R=o=m.f,T=!!function(){try{var t=S.resolve(1),r=(t.constructor={})[e(12)("species")]=function(t){t(I,I)};return(P||"function"==typeof PromiseRejectionEvent)&&t.then(I)instanceof r&&0!==E.indexOf("6.6")&&-1===_.indexOf("Chrome/66")}catch(t){}}(),M=function(t){var r;return!(!p(t)||"function"!=typeof(r=t.then))&&r},L=function(t,r){if(!t._n){t._n=!0;var e=t._c;b((function(){for(var n=t._v,o=1==t._s,i=0,u=function(r){var e,i,u,a=o?r.ok:r.fail,c=r.resolve,s=r.reject,f=r.domain;try{a?(o||(2==t._h&&W(t),t._h=1),!0===a?e=n:(f&&f.enter(),e=a(n),f&&(f.exit(),u=!0)),e===r.promise?s(j("Promise-chain cycle")):(i=M(e))?i.call(e,c,s):c(e)):s(n)}catch(t){f&&!u&&f.exit(),s(t)}};e.length>i;)u(e[i++]);t._c=[],t._n=!1,r&&!t._h&&k(t)}))}},k=function(t){g.call(c,(function(){var r,e,n,o=t._v,i=F(t);if(i&&(r=x((function(){P?O.emit("unhandledRejection",o,t):(e=c.onunhandledrejection)?e({promise:t,reason:o}):(n=c.console)&&n.error&&n.error("Unhandled promise rejection",o)})),t._h=P||F(t)?2:1),t._a=void 0,i&&r.e)throw r.v}))},F=function(t){return 1!==t._h&&0===(t._a||t._c).length},W=function(t){g.call(c,(function(){var r;P?O.emit("rejectionHandled",t):(r=c.onrejectionhandled)&&r({promise:t,reason:t._v})}))},D=function(t){var r=this;r._d||(r._d=!0,(r=r._w||r)._v=t,r._s=2,r._a||(r._a=r._c.slice()),L(r,!0))},B=function(t){var r,e=this;if(!e._d){e._d=!0,e=e._w||e;try{if(e===t)throw j("Promise can't be resolved itself");(r=M(t))?b((function(){var n={_w:e,_d:!1};try{r.call(t,s(B,n,1),s(D,n,1))}catch(t){D.call(n,t)}})):(e._v=t,e._s=1,L(e,!1))}catch(t){D.call({_w:e,_d:!1},t)}}};T||(S=function(t){h(this,S,"Promise","_h"),d(t),n.call(this);try{t(s(B,this,1),s(D,this,1))}catch(t){D.call(this,t)}},(n=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=e(295)(S.prototype,{then:function(t,r){var e=R(y(this,S));return e.ok="function"!=typeof t||t,e.fail="function"==typeof r&&r,e.domain=P?O.domain:void 0,this._c.push(e),this._a&&this._a.push(e),this._s&&L(this,!1),e.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new n;this.promise=t,this.resolve=s(B,t,1),this.reject=s(D,t,1)},m.f=R=function(t){return t===S||t===u?new i(t):o(t)}),l(l.G+l.W+l.F*!T,{Promise:S}),e(62)(S,"Promise"),e(296)("Promise"),u=e(10).Promise,l(l.S+l.F*!T,"Promise",{reject:function(t){var r=R(this);return(0,r.reject)(t),r.promise}}),l(l.S+l.F*(a||!T),"Promise",{resolve:function(t){return w(a&&this===u?S:this,t)}}),l(l.S+l.F*!(T&&e(136)((function(t){S.all(t).catch(I)}))),"Promise",{all:function(t){var r=this,e=R(r),n=e.resolve,o=e.reject,i=x((function(){var e=[],i=0,u=1;v(t,!1,(function(t){var a=i++,c=!1;e.push(void 0),u++,r.resolve(t).then((function(t){c||(c=!0,e[a]=t,--u||n(e))}),o)})),--u||n(e)}));return i.e&&o(i.v),e.promise},race:function(t){var r=this,e=R(r),n=e.reject,o=x((function(){v(t,!1,(function(t){r.resolve(t).then(e.resolve,n)}))}));return o.e&&n(o.v),e.promise}})},function(t,r){t.exports=function(t,r,e,n){if(!(t instanceof r)||void 0!==n&&n in t)throw TypeError(e+": incorrect invocation!");return t}},function(t,r,e){var n=e(38),o=e(134),i=e(135),u=e(17),a=e(82),c=e(109),s={},f={};(r=t.exports=function(t,r,e,l,p){var d,h,v,y,g=p?function(){return t}:c(t),b=n(e,l,r?2:1),m=0;if("function"!=typeof g)throw TypeError(t+" is not iterable!");if(i(g)){for(d=a(t.length);d>m;m++)if((y=r?b(u(h=t[m])[0],h[1]):b(t[m]))===s||y===f)return y}else for(v=g.call(t);!(h=v.next()).done;)if((y=o(v,b,h.value,r))===s||y===f)return y}).BREAK=s,r.RETURN=f},function(t,r){t.exports=function(t,r,e){var n=void 0===e;switch(r.length){case 0:return n?t():t.call(e);case 1:return n?t(r[0]):t.call(e,r[0]);case 2:return n?t(r[0],r[1]):t.call(e,r[0],r[1]);case 3:return n?t(r[0],r[1],r[2]):t.call(e,r[0],r[1],r[2]);case 4:return n?t(r[0],r[1],r[2],r[3]):t.call(e,r[0],r[1],r[2],r[3])}return t.apply(e,r)}},function(t,r,e){var n=e(9),o=e(146).set,i=n.MutationObserver||n.WebKitMutationObserver,u=n.process,a=n.Promise,c="process"==e(48)(u);t.exports=function(){var t,r,e,s=function(){var n,o;for(c&&(n=u.domain)&&n.exit();t;){o=t.fn,t=t.next;try{o()}catch(n){throw t?e():r=void 0,n}}r=void 0,n&&n.enter()};if(c)e=function(){u.nextTick(s)};else if(!i||n.navigator&&n.navigator.standalone)if(a&&a.resolve){var f=a.resolve(void 0);e=function(){f.then(s)}}else e=function(){o.call(n,s)};else{var l=!0,p=document.createTextNode("");new i(s).observe(p,{characterData:!0}),e=function(){p.data=l=!l}}return function(n){var o={fn:n,next:void 0};r&&(r.next=o),t||(t=o,e()),r=o}}},function(t,r,e){var n=e(9).navigator;t.exports=n&&n.userAgent||""},function(t,r,e){var n=e(26);t.exports=function(t,r,e){for(var o in r)e&&t[o]?t[o]=r[o]:n(t,o,r[o]);return t}},function(t,r,e){"use strict";var n=e(9),o=e(10),i=e(21),u=e(19),a=e(12)("species");t.exports=function(t){var r="function"==typeof o[t]?o[t]:n[t];u&&r&&!r[a]&&i.f(r,a,{configurable:!0,get:function(){return this}})}},function(t,r,e){"use strict";var n=e(18),o=e(10),i=e(9),u=e(145),a=e(148);n(n.P+n.R,"Promise",{finally:function(t){var r=u(this,o.Promise||i.Promise),e="function"==typeof t;return this.then(e?function(e){return a(r,t()).then((function(){return e}))}:t,e?function(e){return a(r,t()).then((function(){throw e}))}:t)}})},function(t,r,e){"use strict";var n=e(18),o=e(93),i=e(147);n(n.S,"Promise",{try:function(t){var r=o.f(this),e=i(t);return(e.e?r.reject:r.resolve)(e.v),r.promise}})},,,,,,,,,,,,function(t,r,e){"use strict";var n=e(311);function o(){}function i(){}i.resetWarningCache=o,t.exports=function(){function t(t,r,e,o,i,u){if(u!==n){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function r(){return t}t.isRequired=t;var e={array:t,bool:t,func:t,number:t,object:t,string:t,symbol:t,any:t,arrayOf:r,element:t,elementType:t,instanceOf:r,node:t,objectOf:r,oneOf:r,oneOfType:r,shape:r,exact:r,checkPropTypes:i,resetWarningCache:o};return e.PropTypes=e,e}},function(t,r,e){"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(t,r){t.exports=function(t){if(!t.webpackPolyfill){var r=Object.create(t);r.children||(r.children=[]),Object.defineProperty(r,"loaded",{enumerable:!0,get:function(){return r.l}}),Object.defineProperty(r,"id",{enumerable:!0,get:function(){return r.i}}),Object.defineProperty(r,"exports",{enumerable:!0}),r.webpackPolyfill=1}return r}},function(t,r,e){var n=e(151),o=e(174),i=e(314),u=e(152),a=e(315),c=e(103),s=200;t.exports=function(t,r,e){var f=-1,l=o,p=t.length,d=!0,h=[],v=h;if(e)d=!1,l=i;else if(p>=s){var y=r?null:a(t);if(y)return c(y);d=!1,l=u,v=new n}else v=r?[]:h;t:for(;++f<p;){var g=t[f],b=r?r(g):g;if(g=e||0!==g?g:0,d&&b==b){for(var m=v.length;m--;)if(v[m]===b)continue t;r&&v.push(b),h.push(g)}else l(v,b,e)||(v!==h&&v.push(b),h.push(g))}return h}},function(t,r){t.exports=function(t,r,e){for(var n=-1,o=null==t?0:t.length;++n<o;)if(e(r,t[n]))return!0;return!1}},function(t,r,e){var n=e(153),o=e(8),i=e(103),u=n&&1/i(new n([,-0]))[1]==1/0?function(t){return new n(t)}:o;t.exports=u},function(t,r,e){var n=e(317),o=e(319);t.exports=function(t,r,e){return n(o,t,r,e)}},function(t,r,e){var n=e(318),o=e(176),i=Array.prototype.push;function u(t,r){return 2==r?function(r,e){return t(r,e)}:function(r){return t(r)}}function a(t){for(var r=t?t.length:0,e=Array(r);r--;)e[r]=t[r];return e}function c(t,r){return function(){var e=arguments.length;if(e){for(var n=Array(e);e--;)n[e]=arguments[e];var o=n[0]=r.apply(void 0,n);return t.apply(void 0,n),o}}}t.exports=function t(r,e,s,f){var l="function"==typeof e,p=e===Object(e);if(p&&(f=s,s=e,e=void 0),null==s)throw new TypeError;f||(f={});var d={cap:!("cap"in f)||f.cap,curry:!("curry"in f)||f.curry,fixed:!("fixed"in f)||f.fixed,immutable:!("immutable"in f)||f.immutable,rearg:!("rearg"in f)||f.rearg},h=l?s:o,v="curry"in f&&f.curry,y="fixed"in f&&f.fixed,g="rearg"in f&&f.rearg,b=l?s.runInContext():void 0,m=l?s:{ary:r.ary,assign:r.assign,clone:r.clone,curry:r.curry,forEach:r.forEach,isArray:r.isArray,isError:r.isError,isFunction:r.isFunction,isWeakMap:r.isWeakMap,iteratee:r.iteratee,keys:r.keys,rearg:r.rearg,toInteger:r.toInteger,toPath:r.toPath},x=m.ary,_=m.assign,w=m.clone,j=m.curry,O=m.forEach,A=m.isArray,E=m.isError,S=m.isFunction,P=m.isWeakMap,I=m.keys,R=m.rearg,T=m.toInteger,M=m.toPath,L=I(n.aryMethod),k={castArray:function(t){return function(){var r=arguments[0];return A(r)?t(a(r)):t.apply(void 0,arguments)}},iteratee:function(t){return function(){var r=arguments[0],e=arguments[1],n=t(r,e),o=n.length;return d.cap&&"number"==typeof e?(e=e>2?e-2:1,o&&o<=e?n:u(n,e)):n}},mixin:function(t){return function(r){var e=this;if(!S(e))return t(e,Object(r));var n=[];return O(I(r),(function(t){S(r[t])&&n.push([t,e.prototype[t]])})),t(e,Object(r)),O(n,(function(t){var r=t[1];S(r)?e.prototype[t[0]]=r:delete e.prototype[t[0]]})),e}},nthArg:function(t){return function(r){var e=r<0?1:T(r)+1;return j(t(r),e)}},rearg:function(t){return function(r,e){var n=e?e.length:0;return j(t(r,e),n)}},runInContext:function(e){return function(n){return t(r,e(n),f)}}};function F(t,r){if(d.cap){var e=n.iterateeRearg[t];if(e)return function(t,r){return N(t,(function(t){var e=r.length;return function(t,r){return 2==r?function(r,e){return t.apply(void 0,arguments)}:function(r){return t.apply(void 0,arguments)}}(R(u(t,e),r),e)}))}(r,e);var o=!l&&n.iterateeAry[t];if(o)return function(t,r){return N(t,(function(t){return"function"==typeof t?u(t,r):t}))}(r,o)}return r}function W(t,r,e){if(d.fixed&&(y||!n.skipFixed[t])){var o=n.methodSpread[t],u=o&&o.start;return void 0===u?x(r,e):function(t,r){return function(){for(var e=arguments.length,n=e-1,o=Array(e);e--;)o[e]=arguments[e];var u=o[r],a=o.slice(0,r);return u&&i.apply(a,u),r!=n&&i.apply(a,o.slice(r+1)),t.apply(this,a)}}(r,u)}return r}function D(t,r,e){return d.rearg&&e>1&&(g||!n.skipRearg[t])?R(r,n.methodRearg[t]||n.aryRearg[e]):r}function B(t,r){for(var e=-1,n=(r=M(r)).length,o=n-1,i=w(Object(t)),u=i;null!=u&&++e<n;){var a=r[e],c=u[a];null==c||S(c)||E(c)||P(c)||(u[a]=w(e==o?c:Object(c))),u=u[a]}return i}function C(r,e){var o=n.aliasToReal[r]||r,i=n.remap[o]||o,u=f;return function(r){var n=l?b:m,a=l?b[i]:e,c=_(_({},u),r);return t(n,o,a,c)}}function N(t,r){return function(){var e=arguments.length;if(!e)return t();for(var n=Array(e);e--;)n[e]=arguments[e];var o=d.rearg?0:e-1;return n[o]=r(n[o]),t.apply(void 0,n)}}function U(t,r,e){var o,i=n.aliasToReal[t]||t,u=r,s=k[i];return s?u=s(r):d.immutable&&(n.mutate.array[i]?u=c(r,a):n.mutate.object[i]?u=c(r,function(t){return function(r){return t({},r)}}(r)):n.mutate.set[i]&&(u=c(r,B))),O(L,(function(t){return O(n.aryMethod[t],(function(r){if(i==r){var e=n.methodSpread[i],a=e&&e.afterRearg;return o=a?W(i,D(i,u,t),t):D(i,W(i,u,t),t),o=function(t,r,e){return v||d.curry&&e>1?j(r,e):r}(0,o=F(i,o),t),!1}})),!o})),o||(o=u),o==r&&(o=v?j(o,1):function(){return r.apply(this,arguments)}),o.convert=C(i,r),o.placeholder=r.placeholder=e,o}if(!p)return U(e,s,h);var z=s,V=[];return O(L,(function(t){O(n.aryMethod[t],(function(t){var r=z[n.remap[t]||t];r&&V.push([t,U(t,r,z)])}))})),O(I(z),(function(t){var r=z[t];if("function"==typeof r){for(var e=V.length;e--;)if(V[e][0]==t)return;r.convert=C(t,r),V.push([t,r])}})),O(V,(function(t){z[t[0]]=t[1]})),z.convert=function(t){return z.runInContext.convert(t)(void 0)},z.placeholder=z,O(I(z),(function(t){O(n.realToAlias[t]||[],(function(r){z[r]=z[t]}))})),z}},function(t,r){r.aliasToReal={each:"forEach",eachRight:"forEachRight",entries:"toPairs",entriesIn:"toPairsIn",extend:"assignIn",extendAll:"assignInAll",extendAllWith:"assignInAllWith",extendWith:"assignInWith",first:"head",conforms:"conformsTo",matches:"isMatch",property:"get",__:"placeholder",F:"stubFalse",T:"stubTrue",all:"every",allPass:"overEvery",always:"constant",any:"some",anyPass:"overSome",apply:"spread",assoc:"set",assocPath:"set",complement:"negate",compose:"flowRight",contains:"includes",dissoc:"unset",dissocPath:"unset",dropLast:"dropRight",dropLastWhile:"dropRightWhile",equals:"isEqual",identical:"eq",indexBy:"keyBy",init:"initial",invertObj:"invert",juxt:"over",omitAll:"omit",nAry:"ary",path:"get",pathEq:"matchesProperty",pathOr:"getOr",paths:"at",pickAll:"pick",pipe:"flow",pluck:"map",prop:"get",propEq:"matchesProperty",propOr:"getOr",props:"at",symmetricDifference:"xor",symmetricDifferenceBy:"xorBy",symmetricDifferenceWith:"xorWith",takeLast:"takeRight",takeLastWhile:"takeRightWhile",unapply:"rest",unnest:"flatten",useWith:"overArgs",where:"conformsTo",whereEq:"isMatch",zipObj:"zipObject"},r.aryMethod={1:["assignAll","assignInAll","attempt","castArray","ceil","create","curry","curryRight","defaultsAll","defaultsDeepAll","floor","flow","flowRight","fromPairs","invert","iteratee","memoize","method","mergeAll","methodOf","mixin","nthArg","over","overEvery","overSome","rest","reverse","round","runInContext","spread","template","trim","trimEnd","trimStart","uniqueId","words","zipAll"],2:["add","after","ary","assign","assignAllWith","assignIn","assignInAllWith","at","before","bind","bindAll","bindKey","chunk","cloneDeepWith","cloneWith","concat","conformsTo","countBy","curryN","curryRightN","debounce","defaults","defaultsDeep","defaultTo","delay","difference","divide","drop","dropRight","dropRightWhile","dropWhile","endsWith","eq","every","filter","find","findIndex","findKey","findLast","findLastIndex","findLastKey","flatMap","flatMapDeep","flattenDepth","forEach","forEachRight","forIn","forInRight","forOwn","forOwnRight","get","groupBy","gt","gte","has","hasIn","includes","indexOf","intersection","invertBy","invoke","invokeMap","isEqual","isMatch","join","keyBy","lastIndexOf","lt","lte","map","mapKeys","mapValues","matchesProperty","maxBy","meanBy","merge","mergeAllWith","minBy","multiply","nth","omit","omitBy","overArgs","pad","padEnd","padStart","parseInt","partial","partialRight","partition","pick","pickBy","propertyOf","pull","pullAll","pullAt","random","range","rangeRight","rearg","reject","remove","repeat","restFrom","result","sampleSize","some","sortBy","sortedIndex","sortedIndexOf","sortedLastIndex","sortedLastIndexOf","sortedUniqBy","split","spreadFrom","startsWith","subtract","sumBy","take","takeRight","takeRightWhile","takeWhile","tap","throttle","thru","times","trimChars","trimCharsEnd","trimCharsStart","truncate","union","uniqBy","uniqWith","unset","unzipWith","without","wrap","xor","zip","zipObject","zipObjectDeep"],3:["assignInWith","assignWith","clamp","differenceBy","differenceWith","findFrom","findIndexFrom","findLastFrom","findLastIndexFrom","getOr","includesFrom","indexOfFrom","inRange","intersectionBy","intersectionWith","invokeArgs","invokeArgsMap","isEqualWith","isMatchWith","flatMapDepth","lastIndexOfFrom","mergeWith","orderBy","padChars","padCharsEnd","padCharsStart","pullAllBy","pullAllWith","rangeStep","rangeStepRight","reduce","reduceRight","replace","set","slice","sortedIndexBy","sortedLastIndexBy","transform","unionBy","unionWith","update","xorBy","xorWith","zipWith"],4:["fill","setWith","updateWith"]},r.aryRearg={2:[1,0],3:[2,0,1],4:[3,2,0,1]},r.iterateeAry={dropRightWhile:1,dropWhile:1,every:1,filter:1,find:1,findFrom:1,findIndex:1,findIndexFrom:1,findKey:1,findLast:1,findLastFrom:1,findLastIndex:1,findLastIndexFrom:1,findLastKey:1,flatMap:1,flatMapDeep:1,flatMapDepth:1,forEach:1,forEachRight:1,forIn:1,forInRight:1,forOwn:1,forOwnRight:1,map:1,mapKeys:1,mapValues:1,partition:1,reduce:2,reduceRight:2,reject:1,remove:1,some:1,takeRightWhile:1,takeWhile:1,times:1,transform:2},r.iterateeRearg={mapKeys:[1],reduceRight:[1,0]},r.methodRearg={assignInAllWith:[1,0],assignInWith:[1,2,0],assignAllWith:[1,0],assignWith:[1,2,0],differenceBy:[1,2,0],differenceWith:[1,2,0],getOr:[2,1,0],intersectionBy:[1,2,0],intersectionWith:[1,2,0],isEqualWith:[1,2,0],isMatchWith:[2,1,0],mergeAllWith:[1,0],mergeWith:[1,2,0],padChars:[2,1,0],padCharsEnd:[2,1,0],padCharsStart:[2,1,0],pullAllBy:[2,1,0],pullAllWith:[2,1,0],rangeStep:[1,2,0],rangeStepRight:[1,2,0],setWith:[3,1,2,0],sortedIndexBy:[2,1,0],sortedLastIndexBy:[2,1,0],unionBy:[1,2,0],unionWith:[1,2,0],updateWith:[3,1,2,0],xorBy:[1,2,0],xorWith:[1,2,0],zipWith:[1,2,0]},r.methodSpread={assignAll:{start:0},assignAllWith:{start:0},assignInAll:{start:0},assignInAllWith:{start:0},defaultsAll:{start:0},defaultsDeepAll:{start:0},invokeArgs:{start:2},invokeArgsMap:{start:2},mergeAll:{start:0},mergeAllWith:{start:0},partial:{start:1},partialRight:{start:1},without:{start:1},zipAll:{start:0}},r.mutate={array:{fill:!0,pull:!0,pullAll:!0,pullAllBy:!0,pullAllWith:!0,pullAt:!0,remove:!0,reverse:!0},object:{assign:!0,assignAll:!0,assignAllWith:!0,assignIn:!0,assignInAll:!0,assignInAllWith:!0,assignInWith:!0,assignWith:!0,defaults:!0,defaultsAll:!0,defaultsDeep:!0,defaultsDeepAll:!0,merge:!0,mergeAll:!0,mergeAllWith:!0,mergeWith:!0},set:{set:!0,setWith:!0,unset:!0,update:!0,updateWith:!0}},r.realToAlias=function(){var t=Object.prototype.hasOwnProperty,e=r.aliasToReal,n={};for(var o in e){var i=e[o];t.call(n,i)?n[i].push(o):n[i]=[o]}return n}(),r.remap={assignAll:"assign",assignAllWith:"assignWith",assignInAll:"assignIn",assignInAllWith:"assignInWith",curryN:"curry",curryRightN:"curryRight",defaultsAll:"defaults",defaultsDeepAll:"defaultsDeep",findFrom:"find",findIndexFrom:"findIndex",findLastFrom:"findLast",findLastIndexFrom:"findLastIndex",getOr:"get",includesFrom:"includes",indexOfFrom:"indexOf",invokeArgs:"invoke",invokeArgsMap:"invokeMap",lastIndexOfFrom:"lastIndexOf",mergeAll:"merge",mergeAllWith:"mergeWith",padChars:"pad",padCharsEnd:"padEnd",padCharsStart:"padStart",propertyOf:"get",rangeStep:"range",rangeStepRight:"rangeRight",restFrom:"rest",spreadFrom:"spread",trimChars:"trim",trimCharsEnd:"trimEnd",trimCharsStart:"trimStart",zipAll:"zip"},r.skipFixed={castArray:!0,flow:!0,flowRight:!0,iteratee:!0,mixin:!0,rearg:!0,runInContext:!0},r.skipRearg={add:!0,assign:!0,assignIn:!0,bind:!0,bindKey:!0,concat:!0,difference:!0,divide:!0,eq:!0,gt:!0,gte:!0,isEqual:!0,lt:!0,lte:!0,matchesProperty:!0,merge:!0,multiply:!0,overArgs:!0,partial:!0,partialRight:!0,propertyOf:!0,random:!0,range:!0,rangeRight:!0,subtract:!0,zip:!0,zipObject:!0,zipObjectDeep:!0}},function(t,r,e){t.exports={ary:e(320),assign:e(189),clone:e(337),curry:e(195),forEach:e(117),isArray:e(6),isError:e(356),isFunction:e(94),isWeakMap:e(358),iteratee:e(359),keys:e(95),rearg:e(360),toInteger:e(86),toPath:e(362)}},function(t,r,e){var n=e(104),o=128;t.exports=function(t,r,e){return r=e?void 0:r,r=t&&null==r?t.length:r,n(t,o,void 0,void 0,void 0,void 0,r)}},function(t,r,e){var n=e(72),o=e(11),i=1;t.exports=function(t,r,e){var u=r&i,a=n(t);return function r(){return(this&&this!==o&&this instanceof r?a:t).apply(u?e:this,arguments)}}},function(t,r,e){var n=e(114),o=e(72),i=e(179),u=e(182),a=e(156),c=e(105),s=e(11);t.exports=function(t,r,e){var f=o(t);return function o(){for(var l=arguments.length,p=Array(l),d=l,h=a(o);d--;)p[d]=arguments[d];var v=l<3&&p[0]!==h&&p[l-1]!==h?[]:c(p,h);return(l-=v.length)<e?u(t,r,i,o.placeholder,void 0,p,v,void 0,void 0,e-l):n(this&&this!==s&&this instanceof o?f:t,this,p)}}},function(t,r){t.exports=function(t,r){for(var e=t.length,n=0;e--;)t[e]===r&&++n;return n}},function(t,r,e){var n=e(115),o=e(183),i=e(325),u=e(327);t.exports=function(t){var r=i(t),e=u[r];if("function"!=typeof e||!(r in n.prototype))return!1;if(t===e)return!0;var a=o(e);return!!a&&t===a[0]}},function(t,r,e){var n=e(326),o=Object.prototype.hasOwnProperty;t.exports=function(t){for(var r=t.name+"",e=n[r],i=o.call(n,r)?e.length:0;i--;){var u=e[i],a=u.func;if(null==a||a==t)return u.name}return r}},function(t,r){t.exports={}},function(t,r,e){var n=e(115),o=e(184),i=e(116),u=e(6),a=e(14),c=e(328),s=Object.prototype.hasOwnProperty;function f(t){if(a(t)&&!u(t)&&!(t instanceof n)){if(t instanceof o)return t;if(s.call(t,"__wrapped__"))return c(t)}return new o(t)}f.prototype=i.prototype,f.prototype.constructor=f,t.exports=f},function(t,r,e){var n=e(115),o=e(184),i=e(74);t.exports=function(t){if(t instanceof n)return t.clone();var r=new o(t.__wrapped__,t.__chain__);return r.__actions__=i(t.__actions__),r.__index__=t.__index__,r.__values__=t.__values__,r}},function(t,r){var e=/\{\n\/\* \[wrapped with (.+)\] \*/,n=/,? & /;t.exports=function(t){var r=t.match(e);return r?r[1].split(n):[]}},function(t,r){var e=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;t.exports=function(t,r){var n=r.length;if(!n)return t;var o=n-1;return r[o]=(n>1?"& ":"")+r[o],r=r.join(n>2?", ":" "),t.replace(e,"{\n/* [wrapped with "+r+"] */\n")}},function(t,r,e){var n=e(332),o=e(188),i=e(52),u=o?function(t,r){return o(t,"toString",{configurable:!0,enumerable:!1,value:n(r),writable:!0})}:i;t.exports=u},function(t,r){t.exports=function(t){return function(){return t}}},function(t,r,e){var n=e(117),o=e(174),i=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]];t.exports=function(t,r){return n(i,(function(e){var n="_."+e[0];r&e[1]&&!o(t,n)&&t.push(n)})),t.sort()}},function(t,r,e){var n=e(74),o=e(75),i=Math.min;t.exports=function(t,r){for(var e=t.length,u=i(r.length,e),a=n(t);u--;){var c=r[u];t[u]=o(c,e)?a[c]:void 0}return t}},function(t,r,e){var n=e(114),o=e(72),i=e(11),u=1;t.exports=function(t,r,e,a){var c=r&u,s=o(t);return function r(){for(var o=-1,u=arguments.length,f=-1,l=a.length,p=Array(l+u),d=this&&this!==i&&this instanceof r?s:t;++f<l;)p[f]=a[f];for(;u--;)p[f++]=arguments[++o];return n(d,c?e:this,p)}}},function(t,r,e){var n=e(180),o=e(181),i=e(105),u="__lodash_placeholder__",a=1,c=2,s=4,f=8,l=128,p=256,d=Math.min;t.exports=function(t,r){var e=t[1],h=r[1],v=e|h,y=v<(a|c|l),g=h==l&&e==f||h==l&&e==p&&t[7].length<=r[8]||h==(l|p)&&r[7].length<=r[8]&&e==f;if(!y&&!g)return t;h&a&&(t[2]=r[2],v|=e&a?0:s);var b=r[3];if(b){var m=t[3];t[3]=m?n(m,b,r[4]):b,t[4]=m?i(t[3],u):r[4]}return(b=r[5])&&(m=t[5],t[5]=m?o(m,b,r[6]):b,t[6]=m?i(t[5],u):r[6]),(b=r[7])&&(t[7]=b),h&l&&(t[8]=null==t[8]?r[8]:d(t[8],r[8])),null==t[9]&&(t[9]=r[9]),t[0]=r[0],t[1]=v,t}},function(t,r,e){var n=e(192),o=4;t.exports=function(t){return n(t,o)}},function(t,r,e){var n=e(76),o=e(193);t.exports=function(t,r){return t&&n(r,o(r),t)}},function(t,r,e){var n=e(22),o=e(64),i=e(340),u=Object.prototype.hasOwnProperty;t.exports=function(t){if(!n(t))return i(t);var r=o(t),e=[];for(var a in t)("constructor"!=a||!r&&u.call(t,a))&&e.push(a);return e}},function(t,r){t.exports=function(t){var r=[];if(null!=t)for(var e in Object(t))r.push(e);return r}},function(t,r,e){(function(t){var n=e(11),o=r&&!r.nodeType&&r,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,u=i&&i.exports===o?n.Buffer:void 0,a=u?u.allocUnsafe:void 0;t.exports=function(t,r){if(r)return t.slice();var e=t.length,n=a?a(e):new t.constructor(e);return t.copy(n),n}}).call(this,e(66)(t))},function(t,r,e){var n=e(76),o=e(106);t.exports=function(t,r){return n(t,o(t),r)}},function(t,r,e){var n=e(76),o=e(194);t.exports=function(t,r){return n(t,o(t),r)}},function(t,r,e){var n=e(163),o=e(194),i=e(193);t.exports=function(t){return n(t,i,o)}},function(t,r){var e=Object.prototype.hasOwnProperty;t.exports=function(t){var r=t.length,n=new t.constructor(r);return r&&"string"==typeof t[0]&&e.call(t,"index")&&(n.index=t.index,n.input=t.input),n}},function(t,r,e){var n=e(119),o=e(347),i=e(348),u=e(349),a=e(350),c="[object Boolean]",s="[object Date]",f="[object Map]",l="[object Number]",p="[object RegExp]",d="[object Set]",h="[object String]",v="[object Symbol]",y="[object ArrayBuffer]",g="[object DataView]",b="[object Float32Array]",m="[object Float64Array]",x="[object Int8Array]",_="[object Int16Array]",w="[object Int32Array]",j="[object Uint8Array]",O="[object Uint8ClampedArray]",A="[object Uint16Array]",E="[object Uint32Array]";t.exports=function(t,r,e){var S=t.constructor;switch(r){case y:return n(t);case c:case s:return new S(+t);case g:return o(t,e);case b:case m:case x:case _:case w:case j:case O:case A:case E:return a(t,e);case f:return new S;case l:case h:return new S(t);case p:return i(t);case d:return new S;case v:return u(t)}}},function(t,r,e){var n=e(119);t.exports=function(t,r){var e=r?n(t.buffer):t.buffer;return new t.constructor(e,t.byteOffset,t.byteLength)}},function(t,r){var e=/\w*$/;t.exports=function(t){var r=new t.constructor(t.source,e.exec(t));return r.lastIndex=t.lastIndex,r}},function(t,r,e){var n=e(32),o=n?n.prototype:void 0,i=o?o.valueOf:void 0;t.exports=function(t){return i?Object(i.call(t)):{}}},function(t,r,e){var n=e(119);t.exports=function(t,r){var e=r?n(t.buffer):t.buffer;return new t.constructor(e,t.byteOffset,t.length)}},function(t,r,e){var n=e(73),o=e(118),i=e(64);t.exports=function(t){return"function"!=typeof t.constructor||i(t)?{}:n(o(t))}},function(t,r,e){var n=e(353),o=e(89),i=e(90),u=i&&i.isMap,a=u?o(u):n;t.exports=a},function(t,r,e){var n=e(43),o=e(14),i="[object Map]";t.exports=function(t){return o(t)&&n(t)==i}},function(t,r,e){var n=e(355),o=e(89),i=e(90),u=i&&i.isSet,a=u?o(u):n;t.exports=a},function(t,r,e){var n=e(43),o=e(14),i="[object Set]";t.exports=function(t){return o(t)&&n(t)==i}},function(t,r,e){var n=e(20),o=e(14),i=e(357),u="[object DOMException]",a="[object Error]";t.exports=function(t){if(!o(t))return!1;var r=n(t);return r==a||r==u||"string"==typeof t.message&&"string"==typeof t.name&&!i(t)}},function(t,r,e){var n=e(20),o=e(118),i=e(14),u="[object Object]",a=Function.prototype,c=Object.prototype,s=a.toString,f=c.hasOwnProperty,l=s.call(Object);t.exports=function(t){if(!i(t)||n(t)!=u)return!1;var r=o(t);if(null===r)return!0;var e=f.call(r,"constructor")&&r.constructor;return"function"==typeof e&&e instanceof e&&s.call(e)==l}},function(t,r,e){var n=e(43),o=e(14),i="[object WeakMap]";t.exports=function(t){return o(t)&&n(t)==i}},function(t,r,e){var n=e(192),o=e(107),i=1;t.exports=function(t){return o("function"==typeof t?t:n(t,i))}},function(t,r,e){var n=e(104),o=e(361),i=o((function(t,r){return n(t,256,void 0,void 0,void 0,r)}));t.exports=i},function(t,r,e){var n=e(196),o=e(277),i=e(155);t.exports=function(t){return i(o(t,void 0,n),t+"")}},function(t,r,e){var n=e(77),o=e(74),i=e(6),u=e(46),a=e(165),c=e(47),s=e(98);t.exports=function(t){return i(t)?n(t,c):u(t)?[t]:o(a(s(t)))}},function(t,r,e){var n=e(364),o=e(40);t.exports=function(t){return null==t?[]:n(t,o(t))}},function(t,r,e){var n=e(77);t.exports=function(t,r){return n(r,(function(r){return t[r]}))}},function(t,r,e){e(366);var n=e(10).Object;t.exports=function(t,r,e){return n.defineProperty(t,r,e)}},function(t,r,e){var n=e(18);n(n.S+n.F*!e(19),"Object",{defineProperty:e(21).f})},function(t,r){var e=Math.max,n=Math.min;t.exports=function(t,r,o){return t>=n(r,o)&&t<e(r,o)}}]);
|
1 |
+
var tribe="object"==typeof tribe?tribe:{};tribe.common=tribe.common||{},tribe.common.data=function(t){var r={};function e(n){if(r[n])return r[n].exports;var o=r[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,e),o.l=!0,o.exports}return e.m=t,e.c=r,e.d=function(t,r,n){e.o(t,r)||Object.defineProperty(t,r,{enumerable:!0,get:n})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.t=function(t,r){if(1&r&&(t=e(t)),8&r)return t;if(4&r&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(e.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&r&&"string"!=typeof t)for(var o in t)e.d(n,o,function(r){return t[r]}.bind(null,o));return n},e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,"a",r),r},e.o=function(t,r){return Object.prototype.hasOwnProperty.call(t,r)},e.p="",e(e.s=150)}([,function(t,r,e){t.exports=e(310)()},,,function(t,r,e){"use strict";r.__esModule=!0;var n,o=e(278),i=(n=o)&&n.__esModule?n:{default:n};r.default=i.default||function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t}},,function(t,r){var e=Array.isArray;t.exports=e},,function(t,r){t.exports=function(){}},function(t,r){var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},function(t,r){var e=t.exports={version:"2.6.10"};"number"==typeof __e&&(__e=e)},function(t,r,e){var n=e(137),o="object"==typeof self&&self&&self.Object===Object&&self,i=n||o||Function("return this")();t.exports=i},function(t,r,e){var n=e(101)("wks"),o=e(70),i=e(9).Symbol,u="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=u&&i[t]||(u?i:o)("Symbol."+t))}).store=n},function(t,r,e){"use strict";e.d(r,"a",(function(){return n}));var n="@@MT/COMMON"},function(t,r){t.exports=function(t){return null!=t&&"object"==typeof t}},function(t,r,e){"use strict";e.r(r),e.d(r,"__DO_NOT_USE__ActionTypes",(function(){return i})),e.d(r,"applyMiddleware",(function(){return y})),e.d(r,"bindActionCreators",(function(){return l})),e.d(r,"combineReducers",(function(){return s})),e.d(r,"compose",(function(){return v})),e.d(r,"createStore",(function(){return a}));var n=e(123),o=function(){return Math.random().toString(36).substring(7).split("").join(".")},i={INIT:"@@redux/INIT"+o(),REPLACE:"@@redux/REPLACE"+o(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+o()}};function u(t){if("object"!=typeof t||null===t)return!1;for(var r=t;null!==Object.getPrototypeOf(r);)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(t)===r}function a(t,r,e){var o;if("function"==typeof r&&"function"==typeof e||"function"==typeof e&&"function"==typeof arguments[3])throw new Error("It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function.");if("function"==typeof r&&void 0===e&&(e=r,r=void 0),void 0!==e){if("function"!=typeof e)throw new Error("Expected the enhancer to be a function.");return e(a)(t,r)}if("function"!=typeof t)throw new Error("Expected the reducer to be a function.");var c=t,s=r,f=[],l=f,p=!1;function d(){l===f&&(l=f.slice())}function h(){if(p)throw new Error("You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.");return s}function v(t){if("function"!=typeof t)throw new Error("Expected the listener to be a function.");if(p)throw new Error("You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.");var r=!0;return d(),l.push(t),function(){if(r){if(p)throw new Error("You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.");r=!1,d();var e=l.indexOf(t);l.splice(e,1)}}}function y(t){if(!u(t))throw new Error("Actions must be plain objects. Use custom middleware for async actions.");if(void 0===t.type)throw new Error('Actions may not have an undefined "type" property. Have you misspelled a constant?');if(p)throw new Error("Reducers may not dispatch actions.");try{p=!0,s=c(s,t)}finally{p=!1}for(var r=f=l,e=0;e<r.length;e++){(0,r[e])()}return t}return y({type:i.INIT}),(o={dispatch:y,subscribe:v,getState:h,replaceReducer:function(t){if("function"!=typeof t)throw new Error("Expected the nextReducer to be a function.");c=t,y({type:i.REPLACE})}})[n.a]=function(){var t,r=v;return(t={subscribe:function(t){if("object"!=typeof t||null===t)throw new TypeError("Expected the observer to be an object.");function e(){t.next&&t.next(h())}return e(),{unsubscribe:r(e)}}})[n.a]=function(){return this},t},o}function c(t,r){var e=r&&r.type;return"Given "+(e&&'action "'+String(e)+'"'||"an action")+', reducer "'+t+'" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'}function s(t){for(var r=Object.keys(t),e={},n=0;n<r.length;n++){var o=r[n];0,"function"==typeof t[o]&&(e[o]=t[o])}var u,a=Object.keys(e);try{!function(t){Object.keys(t).forEach((function(r){var e=t[r];if(void 0===e(void 0,{type:i.INIT}))throw new Error('Reducer "'+r+"\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.");if(void 0===e(void 0,{type:i.PROBE_UNKNOWN_ACTION()}))throw new Error('Reducer "'+r+"\" returned undefined when probed with a random type. Don't try to handle "+i.INIT+' or other actions in "redux/*" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.')}))}(e)}catch(t){u=t}return function(t,r){if(void 0===t&&(t={}),u)throw u;for(var n=!1,o={},i=0;i<a.length;i++){var s=a[i],f=e[s],l=t[s],p=f(l,r);if(void 0===p){var d=c(s,r);throw new Error(d)}o[s]=p,n=n||p!==l}return n?o:t}}function f(t,r){return function(){return r(t.apply(this,arguments))}}function l(t,r){if("function"==typeof t)return f(t,r);if("object"!=typeof t||null===t)throw new Error("bindActionCreators expected an object or a function, instead received "+(null===t?"null":typeof t)+'. Did you write "import ActionCreators from" instead of "import * as ActionCreators from"?');var e={};for(var n in t){var o=t[n];"function"==typeof o&&(e[n]=f(o,r))}return e}function p(t,r,e){return r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}function d(t,r){var e=Object.keys(t);return Object.getOwnPropertySymbols&&e.push.apply(e,Object.getOwnPropertySymbols(t)),r&&(e=e.filter((function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable}))),e}function h(t){for(var r=1;r<arguments.length;r++){var e=null!=arguments[r]?arguments[r]:{};r%2?d(e,!0).forEach((function(r){p(t,r,e[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):d(e).forEach((function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}))}return t}function v(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return 0===r.length?function(t){return t}:1===r.length?r[0]:r.reduce((function(t,r){return function(){return t(r.apply(void 0,arguments))}}))}function y(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return function(t){return function(){var e=t.apply(void 0,arguments),n=function(){throw new Error("Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.")},o={getState:e.getState,dispatch:function(){return n.apply(void 0,arguments)}},i=r.map((function(t){return t(o)}));return h({},e,{dispatch:n=v.apply(void 0,i)(e.dispatch)})}}}},,function(t,r,e){var n=e(23);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},function(t,r,e){var n=e(9),o=e(10),i=e(38),u=e(26),a=e(31),c=function(t,r,e){var s,f,l,p=t&c.F,d=t&c.G,h=t&c.S,v=t&c.P,y=t&c.B,g=t&c.W,b=d?o:o[r]||(o[r]={}),m=b.prototype,x=d?n:h?n[r]:(n[r]||{}).prototype;for(s in d&&(e=r),e)(f=!p&&x&&void 0!==x[s])&&a(b,s)||(l=f?x[s]:e[s],b[s]=d&&"function"!=typeof x[s]?e[s]:y&&f?i(l,n):g&&x[s]==l?function(t){var r=function(r,e,n){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(r);case 2:return new t(r,e)}return new t(r,e,n)}return t.apply(this,arguments)};return r.prototype=t.prototype,r}(l):v&&"function"==typeof l?i(Function.call,l):l,v&&((b.virtual||(b.virtual={}))[s]=l,t&c.R&&m&&!m[s]&&u(m,s,l)))};c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,t.exports=c},function(t,r,e){t.exports=!e(50)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(t,r,e){var n=e(32),o=e(222),i=e(223),u="[object Null]",a="[object Undefined]",c=n?n.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?a:u:c&&c in Object(t)?o(t):i(t)}},function(t,r,e){var n=e(17),o=e(166),i=e(112),u=Object.defineProperty;r.f=e(19)?Object.defineProperty:function(t,r,e){if(n(t),r=i(r,!0),n(e),o)try{return u(t,r,e)}catch(t){}if("get"in e||"set"in e)throw TypeError("Accessors not supported!");return"value"in e&&(t[r]=e.value),t}},function(t,r){t.exports=function(t){var r=typeof t;return null!=t&&("object"==r||"function"==r)}},function(t,r){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,r,e){var n=e(221),o=e(226);t.exports=function(t,r){var e=o(t,r);return n(e)?e:void 0}},function(t,r,e){"use strict";e.r(r),e.d(r,"get",(function(){return n})),e.d(r,"google",(function(){return o})),e.d(r,"wpApi",(function(){return i})),e.d(r,"wpApiRequest",(function(){return u})),e.d(r,"wpData",(function(){return a})),e.d(r,"wpHooks",(function(){return c})),e.d(r,"config",(function(){return s})),e.d(r,"common",(function(){return f})),e.d(r,"adminUrl",(function(){return l})),e.d(r,"rest",(function(){return p})),e.d(r,"restNonce",(function(){return d})),e.d(r,"dateSettings",(function(){return h})),e.d(r,"editorConstants",(function(){return v})),e.d(r,"list",(function(){return y})),e.d(r,"tec",(function(){return g})),e.d(r,"editor",(function(){return b})),e.d(r,"settings",(function(){return m})),e.d(r,"mapsAPI",(function(){return x})),e.d(r,"priceSettings",(function(){return _})),e.d(r,"tecDateSettings",(function(){return w})),e.d(r,"timezoneHtml",(function(){return j})),e.d(r,"defaultTimes",(function(){return O})),e.d(r,"timezone",(function(){return A})),e.d(r,"pro",(function(){return E})),e.d(r,"editorDefaults",(function(){return S})),e.d(r,"tickets",(function(){return P})),e.d(r,"ticketsPlus",(function(){return I})),e.d(r,"iacVars",(function(){return R})),e.d(r,"postObjects",(function(){return T})),e.d(r,"blocks",(function(){return M}));var n=function(t,r){return window[t]||r},o=function(){return n("google")},i=wp.api,u=wp.apiRequest,a=wp.data,c=wp.hooks,s=function(){return n("tribe_editor_config",{})},f=function(){return s().common||{}},l=function(){return f().adminUrl||""},p=function(){return f().rest||{}},d=function(){return p().nonce||{}},h=function(){return f().dateSettings||{}},v=function(){return f().constants||{}},y=function(){return{countries:f().countries||{},us_states:f().usStates||{}}},g=function(){return s().events||{}},b=function(){return g().editor||{}},m=function(){return g().settings||{}},x=function(){return g().googleMap||{}},_=function(){return g().priceSettings||{}},w=function(){return g().dateSettings||{}},j=function(){return g().timezoneHTML||""},O=function(){return g().defaultTimes||{}},A=function(){return g().timeZone||{}},E=function(){return s().eventsPRO||{}},S=function(){return E().defaults||{}},P=function(){return s().tickets||{}},I=function(){return s().ticketsPlus||{}},R=function(){return I().iacVars||{}},T=function(){return s().post_objects||{}},M=function(){return s().blocks||{}}},function(t,r,e){var n=e(21),o=e(51);t.exports=e(19)?function(t,r,e){return n.f(t,r,o(1,e))}:function(t,r,e){return t[r]=e,t}},,function(t,r,e){"use strict";r.__esModule=!0;var n,o=e(208),i=(n=o)&&n.__esModule?n:{default:n};r.default=function(t){if(Array.isArray(t)){for(var r=0,e=Array(t.length);r<t.length;r++)e[r]=t[r];return e}return(0,i.default)(t)}},function(t,r,e){"use strict";e.r(r);var n={};e.r(n),e.d(n,"ADD_FORM",(function(){return p})),e.d(n,"SET_FORM_FIELDS",(function(){return d})),e.d(n,"CREATE_FORM_DRAFT",(function(){return h})),e.d(n,"EDIT_FORM_ENTRY",(function(){return v})),e.d(n,"SUBMIT_FORM",(function(){return y})),e.d(n,"CLEAR_FORM",(function(){return g})),e.d(n,"SET_SAVING_FORM",(function(){return b})),e.d(n,"ADD_VOLATILE_ID",(function(){return m})),e.d(n,"REMOVE_VOLATILE_ID",(function(){return x}));var o={};e.r(o),e.d(o,"formSelector",(function(){return M})),e.d(o,"getFormType",(function(){return k})),e.d(o,"getFormEdit",(function(){return L})),e.d(o,"getFormCreate",(function(){return F})),e.d(o,"getFormSubmit",(function(){return W})),e.d(o,"getFormFields",(function(){return D})),e.d(o,"getFormSaving",(function(){return B})),e.d(o,"getVolatile",(function(){return C}));var i={};e.r(i),e.d(i,"registerForm",(function(){return N})),e.d(i,"clearForm",(function(){return U})),e.d(i,"createDraft",(function(){return z})),e.d(i,"editEntry",(function(){return V})),e.d(i,"setSubmit",(function(){return q})),e.d(i,"setSaving",(function(){return G})),e.d(i,"addVolatile",(function(){return K})),e.d(i,"removeVolatile",(function(){return $})),e.d(i,"sendForm",(function(){return H})),e.d(i,"maybeRemoveEntry",(function(){return Q}));var u=e(200),a=e.n(u),c=e(4),s=e.n(c),f=e(15),l=e(13),p=l.a+"/ADD_FORM",d=l.a+"/SET_FORM_FIELDS",h=l.a+"/CREATE_FORM_DRAFT",v=l.a+"/EDIT_FORM_ENTRY",y=l.a+"/SUBMIT_FORM",g=l.a+"/CLEAR_FORM",b=l.a+"/SET_SAVING_FORM",m=l.a+"/ADD_VOLATILE_ID",x=l.a+"/REMOVE_VOLATILE_ID",_={edit:!1,create:!1,submit:!1,saving:!1,fields:{},type:e(78).EVENT},w=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:_,r=arguments[1];switch(r.type){case p:return s()({},t,{type:r.payload.type});case g:return s()({},t,_,{type:t.type});case h:return s()({},t,{submit:!1,edit:!1,create:!0,fields:r.payload.fields});case b:return s()({},t,{saving:r.payload.saving});case v:return s()({},t,{create:!1,submit:!1,edit:!0,fields:r.payload.fields});case y:return s()({},t,{submit:!0});default:return t}},j=e(28),O=e.n(j),A=Object(f.combineReducers)({byId:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments[1];switch(r.type){case p:case g:case d:case h:case v:case y:case b:return s()({},t,a()({},r.payload.id,w(t[r.payload.id],r)));default:return t}},volatile:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],r=arguments[1];switch(r.type){case m:return[].concat(O()(t),[r.payload.id]);case x:return t.filter((function(t){return t!==r.payload.id}));default:return t}}}),E=e(44),S=e.n(E),P=e(42),I=e.n(P),R=e(33),T=e(37),M=function(t,r){return t.forms.byId[r.name]},k=Object(T.createSelector)([M],(function(t){return t?t.type:_.type})),L=Object(T.createSelector)([M],(function(t){return t?t.edit:_.edit})),F=Object(T.createSelector)([M],(function(t){return t?t.create:_.create})),W=Object(T.createSelector)([M],(function(t){return t?t.submit:_.submit})),D=Object(T.createSelector)([M],(function(t){return t?t.fields:_.fields})),B=Object(T.createSelector)([M],(function(t){return t?t.saving:_.saving})),C=function(t){return t.forms.volatile},N=function(t,r){return{type:p,payload:{id:t,type:r}}},U=function(t){return{type:g,payload:{id:t}}},z=function(t,r){return{type:h,payload:{id:t,fields:r}}},V=function(t,r){return{type:v,payload:{id:t,fields:r}}},q=function(t){return{type:y,payload:{id:t}}},G=function(t,r){return{type:b,payload:{id:t,saving:r}}},K=function(t){return{type:m,payload:{id:t}}},$=function(t){return{type:x,payload:{id:t}}},H=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=arguments[2];return function(n,o){var i=o(),u={name:t},a=k(i,u),c=F(i,u),s=D(i,u);if(!B(i,u)){var f={path:c?""+a:a+"/"+s.id,params:{method:c?"POST":"PUT",body:JSON.stringify(r)},actions:{start:function(){return n(G(t,!0))},success:function(r){var o=r.body,i=S()(o,"id","");c&&i&&n(K(i)),e(o),n(U(t)),n(G(t,!1))},error:function(){n(U(t)),n(G(t,!1))}}};n(R.actions.wpRequest(f))}}},Y=function(t){return function(r){return function(e){var n=e.body,o=n.id;if("draft"===n.status){var i={path:r,params:{method:"DELETE"},actions:{success:function(){return t($(o))}}};t(R.actions.wpRequest(i))}else t($(o))}}},Q=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(e,n){var o=n(),i=k(o,{name:t});if(!I()(r)){var u=i+"/"+r.id,a={path:u,actions:{success:Y(e)(u)}};e(R.actions.wpRequest(a))}}};e.d(r,"types",(function(){return n})),e.d(r,"actions",(function(){return i})),e.d(r,"selectors",(function(){return o}));r.default=A},,function(t,r){var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},function(t,r,e){var n=e(11).Symbol;t.exports=n},function(t,r,e){"use strict";e.r(r);var n={};e.r(n),e.d(n,"WP_REQUEST",(function(){return u}));var o={};e.r(o),e.d(o,"wpRequest",(function(){return a}));var i={};e.r(i),e.d(i,"toWpParams",(function(){return v})),e.d(i,"toWPQuery",(function(){return y})),e.d(i,"getTotalPages",(function(){return g}));var u=e(13).a+"/WP_REQUEST",a=function(t){return{type:u,meta:t}},c=e(4),s=e.n(c),f=e(121),l=e.n(f),p=e(42),d=e.n(p),h=e(201),v=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=s()({orderby:"title",status:["draft","publish"],order:"asc",page:1},t);return l()(r.search)||d()(r.search)||(r.orderby="relevance"),d()(r.exclude)&&delete r.exclude,r},y=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object(h.stringify)(v(t))},g=function(t){var r=parseInt(t.get("x-wp-totalpages"),10);return isNaN(r)?0:r},b=e(68),m=e.n(b),x=e(122),_=e.n(x),w=e(202),j=e.n(w),O=e(44),A=e.n(O),E=e(8),S=e.n(E),P=(e(206),e(25)),I=function(){return function(t){return r=_()(m.a.mark((function r(e){var o,i,u,a,c,f,l,p,d,h,v,y,g,b,x,_,w,O,E,I;return m.a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(e.type===n.WP_REQUEST){r.next=2;break}return r.abrupt("return",t(e));case 2:if(o=e.meta,u=(i=void 0===o?{}:o).path,a=void 0===u?"":u,c=i.params,f=void 0===c?{}:c,t(e),l=Object(P.rest)(),p=l.url,d=void 0===p?"":p,h=l.nonce,v=(void 0===h?{}:h).wp_rest||"",y=P.rest.namespaces||{},g=y.core||"wp/v2",b=""+d+g,x=s()({start:S.a,success:S.a,error:S.a,none:S.a},A()(i,"actions",{})),""!==a){r.next=14;break}return x.none(a),r.abrupt("return");case 14:return _=b+"/"+a,x.start(_,f),w=s()({Accept:"application/json","Content-Type":"application/json"},A()(f,"headers",{}),{"X-WP-Nonce":v}),r.prev=17,r.next=20,fetch(_,s()({},f,{credentials:"include",headers:w}));case 20:if(O=r.sent,E=O.status,j()(E,200,300)){r.next=24;break}throw O;case 24:return r.next=26,O.json();case 26:return I=r.sent,x.success({body:I,headers:O.headers}),r.abrupt("return",[O,I]);case 31:return r.prev=31,r.t0=r.catch(17),x.error(r.t0),r.abrupt("return",r.t0);case 35:case"end":return r.stop()}}),r,void 0,[[17,31]])}))),function(t){return r.apply(this,arguments)};var r}};e.d(r,"default",(function(){return I})),e.d(r,"types",(function(){return n})),e.d(r,"actions",(function(){return o})),e.d(r,"utils",(function(){return i}))},,,,function(t,r,e){"use strict";function n(t,r){return t===r}function o(t,r,e){if(null===r||null===e||r.length!==e.length)return!1;for(var n=r.length,o=0;o<n;o++)if(!t(r[o],e[o]))return!1;return!0}function i(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n,e=null,i=null;return function(){return o(r,e,arguments)||(i=t.apply(null,arguments)),e=arguments,i}}function u(t){var r=Array.isArray(t[0])?t[0]:t;if(!r.every((function(t){return"function"==typeof t}))){var e=r.map((function(t){return typeof t})).join(", ");throw new Error("Selector creators expect all input-selectors to be functions, instead received the following types: ["+e+"]")}return r}function a(t){for(var r=arguments.length,e=Array(r>1?r-1:0),n=1;n<r;n++)e[n-1]=arguments[n];return function(){for(var r=arguments.length,n=Array(r),o=0;o<r;o++)n[o]=arguments[o];var a=0,c=n.pop(),s=u(n),f=t.apply(void 0,[function(){return a++,c.apply(null,arguments)}].concat(e)),l=i((function(){for(var t=[],r=s.length,e=0;e<r;e++)t.push(s[e].apply(null,arguments));return f.apply(null,t)}));return l.resultFunc=c,l.recomputations=function(){return a},l.resetRecomputations=function(){return a=0},l}}r.__esModule=!0,r.defaultMemoize=i,r.createSelectorCreator=a,r.createStructuredSelector=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:c;if("object"!=typeof t)throw new Error("createStructuredSelector expects first argument to be an object where each property is a selector, instead received a "+typeof t);var e=Object.keys(t);return r(e.map((function(r){return t[r]})),(function(){for(var t=arguments.length,r=Array(t),n=0;n<t;n++)r[n]=arguments[n];return r.reduce((function(t,r,n){return t[e[n]]=r,t}),{})}))};var c=r.createSelector=a(i)},function(t,r,e){var n=e(53);t.exports=function(t,r,e){if(n(t),void 0===r)return t;switch(e){case 1:return function(e){return t.call(r,e)};case 2:return function(e,n){return t.call(r,e,n)};case 3:return function(e,n,o){return t.call(r,e,n,o)}}return function(){return t.apply(r,arguments)}}},function(t,r){t.exports={}},function(t,r,e){var n=e(159),o=e(95),i=e(41);t.exports=function(t){return i(t)?n(t):o(t)}},function(t,r,e){var n=e(94),o=e(88);t.exports=function(t){return null!=t&&o(t.length)&&!n(t)}},function(t,r,e){var n=e(95),o=e(43),i=e(58),u=e(6),a=e(41),c=e(59),s=e(64),f=e(87),l="[object Map]",p="[object Set]",d=Object.prototype.hasOwnProperty;t.exports=function(t){if(null==t)return!0;if(a(t)&&(u(t)||"string"==typeof t||"function"==typeof t.splice||c(t)||f(t)||i(t)))return!t.length;var r=o(t);if(r==l||r==p)return!t.size;if(s(t))return!n(t).length;for(var e in t)if(d.call(t,e))return!1;return!0}},function(t,r,e){var n=e(256),o=e(85),i=e(257),u=e(153),a=e(154),c=e(20),s=e(138),f=s(n),l=s(o),p=s(i),d=s(u),h=s(a),v=c;(n&&"[object DataView]"!=v(new n(new ArrayBuffer(1)))||o&&"[object Map]"!=v(new o)||i&&"[object Promise]"!=v(i.resolve())||u&&"[object Set]"!=v(new u)||a&&"[object WeakMap]"!=v(new a))&&(v=function(t){var r=c(t),e="[object Object]"==r?t.constructor:void 0,n=e?s(e):"";if(n)switch(n){case f:return"[object DataView]";case l:return"[object Map]";case p:return"[object Promise]";case d:return"[object Set]";case h:return"[object WeakMap]"}return r}),t.exports=v},function(t,r,e){var n=e(143);t.exports=function(t,r,e){var o=null==t?void 0:n(t,r);return void 0===o?e:o}},function(t,r,e){var n=e(132),o=e(80);t.exports=function(t){return n(o(t))}},function(t,r,e){var n=e(20),o=e(14),i="[object Symbol]";t.exports=function(t){return"symbol"==typeof t||o(t)&&n(t)==i}},function(t,r,e){var n=e(46),o=1/0;t.exports=function(t){if("string"==typeof t||n(t))return t;var r=t+"";return"0"==r&&1/t==-o?"-0":r}},function(t,r){var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},function(t,r){t.exports=!0},function(t,r){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,r){t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},function(t,r){t.exports=function(t){return t}},function(t,r){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,r,e){var n=e(24)(Object,"create");t.exports=n},function(t,r,e){var n=e(231),o=e(232),i=e(233),u=e(234),a=e(235);function c(t){var r=-1,e=null==t?0:t.length;for(this.clear();++r<e;){var n=t[r];this.set(n[0],n[1])}}c.prototype.clear=n,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,r,e){var n=e(71);t.exports=function(t,r){for(var e=t.length;e--;)if(n(t[e][0],r))return e;return-1}},function(t,r,e){var n=e(237);t.exports=function(t,r){var e=t.__data__;return n(r)?e["string"==typeof r?"string":"hash"]:e.map}},function(t,r,e){var n=e(246),o=e(14),i=Object.prototype,u=i.hasOwnProperty,a=i.propertyIsEnumerable,c=n(function(){return arguments}())?n:function(t){return o(t)&&u.call(t,"callee")&&!a.call(t,"callee")};t.exports=c},function(t,r,e){(function(t){var n=e(11),o=e(247),i=r&&!r.nodeType&&r,u=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=u&&u.exports===i?n.Buffer:void 0,c=(a?a.isBuffer:void 0)||o;t.exports=c}).call(this,e(66)(t))},function(t,r,e){"use strict";e.r(r);var n={};e.r(n),e.d(n,"ADD_PLUGIN",(function(){return d})),e.d(n,"REMOVE_PLUGIN",(function(){return h}));var o={};e.r(o),e.d(o,"addPlugin",(function(){return v})),e.d(o,"removePlugin",(function(){return y}));var i={};e.r(i),e.d(i,"getPlugins",(function(){return _})),e.d(i,"hasPlugin",(function(){return w}));var u={};e.r(u),e.d(u,"EVENTS_PLUGIN",(function(){return j})),e.d(u,"EVENTS_PRO_PLUGIN",(function(){return O})),e.d(u,"EVENTS_VIRTUAL_PLUGIN",(function(){return A})),e.d(u,"TICKETS",(function(){return E})),e.d(u,"TICKETS_PLUS",(function(){return S}));var a={};e.r(a),e.d(a,"ReactSelectOption",(function(){return R})),e.d(a,"ReactSelectOptions",(function(){return T}));var c=e(28),s=e.n(c),f=e(198),l=e.n(f),p=e(13),d=p.a+"/ADD_PLUGIN",h=p.a+"/REMOVE_PLUGIN",v=function(t){return{type:d,payload:{name:t}}},y=function(t){return{type:h,payload:{name:t}}},g=e(199),b=e.n(g),m=e(127),x=e.n(m),_=function(t){return t.plugins},w=b()((function(t,r){return x()(_(t),r)})),j="events",O="events-pro",A="events-virtual",E="tickets",S="tickets-plus",P=e(1),I=e.n(P),R=I.a.shape({label:I.a.string.isRequired,value:I.a.any.isRequired}),T=I.a.arrayOf(R);e.d(r,"types",(function(){return n})),e.d(r,"actions",(function(){return o})),e.d(r,"selectors",(function(){return i})),e.d(r,"constants",(function(){return u})),e.d(r,"proptypes",(function(){return a}));r.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],r=arguments[1];switch(r.type){case n.ADD_PLUGIN:return l()([].concat(s()(t),[r.payload.name]));case n.REMOVE_PLUGIN:return[].concat(s()(t)).filter((function(t){return t!==r.payload.name}));default:return t}}},function(t,r,e){"use strict";var n=e(210)(!0);e(131)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,r=this._t,e=this._i;return e>=r.length?{value:void 0,done:!0}:(t=n(r,e),this._i+=t.length,{value:t,done:!1})}))},function(t,r,e){var n=e(21).f,o=e(31),i=e(12)("toStringTag");t.exports=function(t,r,e){t&&!o(t=e?t:t.prototype,i)&&n(t,i,{configurable:!0,value:r})}},function(t,r,e){var n=e(80);t.exports=function(t){return Object(n(t))}},function(t,r){var e=Object.prototype;t.exports=function(t){var r=t&&t.constructor;return t===("function"==typeof r&&r.prototype||e)}},,function(t,r){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},,function(t,r,e){t.exports=e(282)},function(t,r,e){var n=e(168),o=e(102);t.exports=Object.keys||function(t){return n(t,o)}},function(t,r){var e=0,n=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+n).toString(36))}},function(t,r){t.exports=function(t,r){return t===r||t!=t&&r!=r}},function(t,r,e){var n=e(73),o=e(22);t.exports=function(t){return function(){var r=arguments;switch(r.length){case 0:return new t;case 1:return new t(r[0]);case 2:return new t(r[0],r[1]);case 3:return new t(r[0],r[1],r[2]);case 4:return new t(r[0],r[1],r[2],r[3]);case 5:return new t(r[0],r[1],r[2],r[3],r[4]);case 6:return new t(r[0],r[1],r[2],r[3],r[4],r[5]);case 7:return new t(r[0],r[1],r[2],r[3],r[4],r[5],r[6])}var e=n(t.prototype),i=t.apply(e,r);return o(i)?i:e}}},function(t,r,e){var n=e(22),o=Object.create,i=function(){function t(){}return function(r){if(!n(r))return{};if(o)return o(r);t.prototype=r;var e=new t;return t.prototype=void 0,e}}();t.exports=i},function(t,r){t.exports=function(t,r){var e=-1,n=t.length;for(r||(r=Array(n));++e<n;)r[e]=t[e];return r}},function(t,r){var e=9007199254740991,n=/^(?:0|[1-9]\d*)$/;t.exports=function(t,r){var o=typeof t;return!!(r=null==r?e:r)&&("number"==o||"symbol"!=o&&n.test(t))&&t>-1&&t%1==0&&t<r}},function(t,r,e){var n=e(190),o=e(191);t.exports=function(t,r,e,i){var u=!e;e||(e={});for(var a=-1,c=r.length;++a<c;){var s=r[a],f=i?i(e[s],t[s],s,e,t):void 0;void 0===f&&(f=t[s]),u?o(e,s,f):n(e,s,f)}return e}},function(t,r){t.exports=function(t,r){for(var e=-1,n=null==t?0:t.length,o=Array(n);++e<n;)o[e]=r(t[e],e,t);return o}},function(t,r,e){"use strict";e.r(r),e.d(r,"EVENT",(function(){return n})),e.d(r,"VENUE",(function(){return o})),e.d(r,"ORGANIZER",(function(){return i}));var n="tribe_events",o="tribe_venue",i="tribe_organizer"},function(t,r){var e=Math.ceil,n=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?n:e)(t)}},function(t,r){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,r,e){var n=e(23),o=e(9).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,r,e){var n=e(79),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},function(t,r,e){var n=e(101)("keys"),o=e(70);t.exports=function(t){return n[t]||(n[t]=o(t))}},function(t,r,e){var n=e(218),o=e(236),i=e(238),u=e(239),a=e(240);function c(t){var r=-1,e=null==t?0:t.length;for(this.clear();++r<e;){var n=t[r];this.set(n[0],n[1])}}c.prototype.clear=n,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,r,e){var n=e(24)(e(11),"Map");t.exports=n},function(t,r,e){var n=e(157);t.exports=function(t){var r=n(t),e=r%1;return r==r?e?r-e:r:0}},function(t,r,e){var n=e(248),o=e(89),i=e(90),u=i&&i.isTypedArray,a=u?o(u):n;t.exports=a},function(t,r){var e=9007199254740991;t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=e}},function(t,r){t.exports=function(t){return function(r){return t(r)}}},function(t,r,e){(function(t){var n=e(137),o=r&&!r.nodeType&&r,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,u=i&&i.exports===o&&n.process,a=function(){try{var t=i&&i.require&&i.require("util").types;return t||u&&u.binding&&u.binding("util")}catch(t){}}();t.exports=a}).call(this,e(66)(t))},function(t,r,e){var n=e(6),o=e(46),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,u=/^\w*$/;t.exports=function(t,r){if(n(t))return!1;var e=typeof t;return!("number"!=e&&"symbol"!=e&&"boolean"!=e&&null!=t&&!o(t))||(u.test(t)||!i.test(t)||null!=r&&t in Object(r))}},function(t,r){r.f={}.propertyIsEnumerable},function(t,r,e){"use strict";var n=e(53);function o(t){var r,e;this.promise=new t((function(t,n){if(void 0!==r||void 0!==e)throw TypeError("Bad Promise constructor");r=t,e=n})),this.resolve=n(r),this.reject=n(e)}t.exports.f=function(t){return new o(t)}},function(t,r,e){var n=e(20),o=e(22),i="[object AsyncFunction]",u="[object Function]",a="[object GeneratorFunction]",c="[object Proxy]";t.exports=function(t){if(!o(t))return!1;var r=n(t);return r==u||r==a||r==i||r==c}},function(t,r,e){var n=e(64),o=e(249),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!n(t))return o(t);var r=[];for(var e in Object(t))i.call(t,e)&&"constructor"!=e&&r.push(e);return r}},function(t,r,e){var n=e(55),o=e(250),i=e(251),u=e(252),a=e(253),c=e(254);function s(t){var r=this.__data__=new n(t);this.size=r.size}s.prototype.clear=o,s.prototype.delete=i,s.prototype.get=u,s.prototype.has=a,s.prototype.set=c,t.exports=s},function(t,r){t.exports=function(t,r){for(var e=-1,n=r.length,o=t.length;++e<n;)t[o+e]=r[e];return t}},function(t,r,e){var n=e(169);t.exports=function(t){return null==t?"":n(t)}},function(t,r,e){var n=e(20),o=e(6),i=e(14),u="[object String]";t.exports=function(t){return"string"==typeof t||!o(t)&&i(t)&&n(t)==u}},function(t,r,e){"use strict";var n=e(15),o=function(t){return function(t){return!!t&&"object"==typeof t}(t)&&!function(t){var r=Object.prototype.toString.call(t);return"[object RegExp]"===r||"[object Date]"===r||function(t){return t.$$typeof===i}(t)}(t)};var i="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function u(t,r){return!1!==r.clone&&r.isMergeableObject(t)?c((e=t,Array.isArray(e)?[]:{}),t,r):t;var e}function a(t,r,e){return t.concat(r).map((function(t){return u(t,e)}))}function c(t,r,e){(e=e||{}).arrayMerge=e.arrayMerge||a,e.isMergeableObject=e.isMergeableObject||o;var n=Array.isArray(r);return n===Array.isArray(t)?n?e.arrayMerge(t,r,e):function(t,r,e){var n={};return e.isMergeableObject(t)&&Object.keys(t).forEach((function(r){n[r]=u(t[r],e)})),Object.keys(r).forEach((function(o){e.isMergeableObject(r[o])&&t[o]?n[o]=c(t[o],r[o],e):n[o]=u(r[o],e)})),n}(t,r,e):u(r,e)}c.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce((function(t,e){return c(t,e,r)}),{})};var s=c;function f(t){if(Array.isArray(t)){for(var r=0,e=Array(t.length);r<t.length;r++)e[r]=t[r];return e}return Array.from(t)}var l=function t(r){for(var e=arguments.length,n=Array(e>1?e-1:0),o=1;o<e;o++)n[o-1]=arguments[o];return r.length<=n.length?r.apply(void 0,n):function(){for(var e=arguments.length,o=Array(e),i=0;i<e;i++)o[i]=arguments[i];return t.apply(void 0,[r].concat(n,o))}},p=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t},d=function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,r){var e=[],n=!0,o=!1,i=void 0;try{for(var u,a=t[Symbol.iterator]();!(n=(u=a.next()).done)&&(e.push(u.value),!r||e.length!==r);n=!0);}catch(t){o=!0,i=t}finally{try{!n&&a.return&&a.return()}finally{if(o)throw i}}return e}(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")},h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function v(t,r,e){return r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}var y=function(t){return null!==t&&"object"===(void 0===t?"undefined":h(t))},g=function(t){return"function"==typeof t},b=function(t){return(g(t)||y(t))&&function(t){return Object.values(t).some(g)}(t)},m=function(){for(var t=arguments.length,r=Array(t),e=0;e<t;e++)r[e]=arguments[e];return n.compose.apply(void 0,f(r.reverse()))}((function(t){return Object.entries(t).map((function(t){var r=d(t,2),e=r[0],o=r[1];return b(o)?v({},e,Object(n.combineReducers)(m(o))):g(o)?v({},e,o):void 0}))}),(function(t){return t.filter(y)}),(function(t){return t.reduce((function(t,r){return s(t,r)}),{})}));var x=l((function(t,r){return Object(n.combineReducers)(p({},t,m(r)))}));function _(t){return x(t)}var w=e(124),j=function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,r){var e=[],n=!0,o=!1,i=void 0;try{for(var u,a=t[Symbol.iterator]();!(n=(u=a.next()).done)&&(e.push(u.value),!r||e.length!==r);n=!0);}catch(t){o=!0,i=t}finally{try{!n&&a.return&&a.return()}finally{if(o)throw i}}return e}(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")};var O=l((function(t,r){return r.injectedReducers={},r.injectReducers=function(e){Object.entries(e).forEach((function(e){var n=j(e,2),o=n[0],i=n[1];Object(w.has)(r.injectedReducers,o)||(Object(w.set)(r.injectedReducers,o,i),r.replaceReducer(t(r.injectedReducers)))}))},r}));e.d(r,"b",(function(){return _})),e.d(r,"a",(function(){return O}))},function(t,r,e){var n=e(10),o=e(9),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,r){return i[t]||(i[t]=void 0!==r?r:{})})("versions",[]).push({version:n.version,mode:e(49)?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},function(t,r){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,r){t.exports=function(t){var r=-1,e=Array(t.size);return t.forEach((function(t){e[++r]=t})),e}},function(t,r,e){var n=e(177),o=e(321),i=e(322),u=e(179),a=e(335),c=e(183),s=e(336),f=e(185),l=e(187),p=e(86),d="Expected a function",h=1,v=2,y=8,g=16,b=32,m=64,x=Math.max;t.exports=function(t,r,e,_,w,j,O,A){var E=r&v;if(!E&&"function"!=typeof t)throw new TypeError(d);var S=_?_.length:0;if(S||(r&=~(b|m),_=w=void 0),O=void 0===O?O:x(p(O),0),A=void 0===A?A:p(A),S-=w?w.length:0,r&m){var P=_,I=w;_=w=void 0}var R=E?void 0:c(t),T=[t,r,e,_,w,P,I,j,O,A];if(R&&s(T,R),t=T[0],r=T[1],e=T[2],_=T[3],w=T[4],!(A=T[9]=void 0===T[9]?E?0:t.length:x(T[9]-S,0))&&r&(y|g)&&(r&=~(y|g)),r&&r!=h)M=r==y||r==g?i(t,r,A):r!=b&&r!=(h|b)||w.length?u.apply(void 0,T):a(t,r,e,_);else var M=o(t,r,e);return l((R?n:f)(M,T),t,r)}},function(t,r){var e="__lodash_placeholder__";t.exports=function(t,r){for(var n=-1,o=t.length,i=0,u=[];++n<o;){var a=t[n];a!==r&&a!==e||(t[n]=e,u[i++]=n)}return u}},function(t,r,e){var n=e(255),o=e(161),i=Object.prototype.propertyIsEnumerable,u=Object.getOwnPropertySymbols,a=u?function(t){return null==t?[]:(t=Object(t),n(u(t),(function(r){return i.call(t,r)})))}:o;t.exports=a},function(t,r,e){var n=e(258),o=e(266),i=e(52),u=e(6),a=e(272);t.exports=function(t){return"function"==typeof t?t:null==t?i:"object"==typeof t?u(t)?o(t[0],t[1]):n(t):a(t)}},function(t,r,e){e(286);for(var n=e(9),o=e(26),i=e(39),u=e(12)("toStringTag"),a="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),c=0;c<a.length;c++){var s=a[c],f=n[s],l=f&&f.prototype;l&&!l[u]&&o(l,u,s),i[s]=i.Array}},function(t,r,e){var n=e(110),o=e(12)("iterator"),i=e(39);t.exports=e(10).getIteratorMethod=function(t){if(null!=t)return t[o]||t["@@iterator"]||i[n(t)]}},function(t,r,e){var n=e(48),o=e(12)("toStringTag"),i="Arguments"==n(function(){return arguments}());t.exports=function(t){var r,e,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(e=function(t,r){try{return t[r]}catch(t){}}(r=Object(t),o))?e:i?n(r):"Object"==(u=n(r))&&"function"==typeof r.callee?"Arguments":u}},,function(t,r,e){var n=e(23);t.exports=function(t,r){if(!n(t))return t;var e,o;if(r&&"function"==typeof(e=t.toString)&&!n(o=e.call(t)))return o;if("function"==typeof(e=t.valueOf)&&!n(o=e.call(t)))return o;if(!r&&"function"==typeof(e=t.toString)&&!n(o=e.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,r,e){var n=e(175),o=e(243),i=e(244);t.exports=function(t,r,e){return r==r?i(t,r,e):n(t,o,e)}},function(t,r){t.exports=function(t,r,e){switch(e.length){case 0:return t.call(r);case 1:return t.call(r,e[0]);case 2:return t.call(r,e[0],e[1]);case 3:return t.call(r,e[0],e[1],e[2])}return t.apply(r,e)}},function(t,r,e){var n=e(73),o=e(116),i=4294967295;function u(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=i,this.__views__=[]}u.prototype=n(o.prototype),u.prototype.constructor=u,t.exports=u},function(t,r){t.exports=function(){}},function(t,r){t.exports=function(t,r){for(var e=-1,n=null==t?0:t.length;++e<n&&!1!==r(t[e],e,t););return t}},function(t,r,e){var n=e(160)(Object.getPrototypeOf,Object);t.exports=n},function(t,r,e){var n=e(164);t.exports=function(t){var r=new t.constructor(t.byteLength);return new n(r).set(new n(t)),r}},function(t,r){r.f=Object.getOwnPropertySymbols},function(t,r){t.exports=function(t){return void 0===t}},function(t,r,e){"use strict";r.__esModule=!0;var n,o=e(284),i=(n=o)&&n.__esModule?n:{default:n};r.default=function(t){return function(){var r=t.apply(this,arguments);return new i.default((function(t,e){return function n(o,u){try{var a=r[o](u),c=a.value}catch(t){return void e(t)}if(!a.done)return i.default.resolve(c).then((function(t){n("next",t)}),(function(t){n("throw",t)}));t(c)}("next")}))}}},function(t,r,e){"use strict";(function(t,n){var o,i=e(197);o="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:n;var u=Object(i.a)(o);r.a=u}).call(this,e(125),e(312)(t))},function(t,r,e){var n,o,i;!function(e,u){"use strict";"object"==typeof t.exports?t.exports=u():(o=[],void 0===(i="function"==typeof(n=u)?n.apply(r,o):n)||(t.exports=i))}(0,(function(){"use strict";var t=Object.prototype.toString;function r(t,r){return null!=t&&Object.prototype.hasOwnProperty.call(t,r)}function e(t){if(!t)return!0;if(o(t)&&0===t.length)return!0;if("string"!=typeof t){for(var e in t)if(r(t,e))return!1;return!0}return!1}function n(r){return t.call(r)}var o=Array.isArray||function(r){return"[object Array]"===t.call(r)};function i(t){var r=parseInt(t);return r.toString()===t?r:t}function u(t){t=t||{};var u=function(t){return Object.keys(u).reduce((function(r,e){return"create"===e?r:("function"==typeof u[e]&&(r[e]=u[e].bind(u,t)),r)}),{})};function a(e,n){return t.includeInheritedProps||"number"==typeof n&&Array.isArray(e)||r(e,n)}function c(t,r){if(a(t,r))return t[r]}function s(t,r,e,n){if("number"==typeof r&&(r=[r]),!r||0===r.length)return t;if("string"==typeof r)return s(t,r.split(".").map(i),e,n);var o=r[0],u=c(t,o);return 1===r.length?(void 0!==u&&n||(t[o]=e),u):(void 0===u&&("number"==typeof r[1]?t[o]=[]:t[o]={}),s(t[o],r.slice(1),e,n))}return u.has=function(e,n){if("number"==typeof n?n=[n]:"string"==typeof n&&(n=n.split(".")),!n||0===n.length)return!!e;for(var u=0;u<n.length;u++){var a=i(n[u]);if(!("number"==typeof a&&o(e)&&a<e.length||(t.includeInheritedProps?a in Object(e):r(e,a))))return!1;e=e[a]}return!0},u.ensureExists=function(t,r,e){return s(t,r,e,!0)},u.set=function(t,r,e,n){return s(t,r,e,n)},u.insert=function(t,r,e,n){var i=u.get(t,r);n=~~n,o(i)||(i=[],u.set(t,r,i)),i.splice(n,0,e)},u.empty=function(t,r){var i,c;if(!e(r)&&(null!=t&&(i=u.get(t,r)))){if("string"==typeof i)return u.set(t,r,"");if(function(t){return"boolean"==typeof t||"[object Boolean]"===n(t)}(i))return u.set(t,r,!1);if("number"==typeof i)return u.set(t,r,0);if(o(i))i.length=0;else{if(!function(t){return"object"==typeof t&&"[object Object]"===n(t)}(i))return u.set(t,r,null);for(c in i)a(i,c)&&delete i[c]}}},u.push=function(t,r){var e=u.get(t,r);o(e)||(e=[],u.set(t,r,e)),e.push.apply(e,Array.prototype.slice.call(arguments,2))},u.coalesce=function(t,r,e){for(var n,o=0,i=r.length;o<i;o++)if(void 0!==(n=u.get(t,r[o])))return n;return e},u.get=function(t,r,e){if("number"==typeof r&&(r=[r]),!r||0===r.length)return t;if(null==t)return e;if("string"==typeof r)return u.get(t,r.split("."),e);var n=i(r[0]),o=c(t,n);return void 0===o?e:1===r.length?o:u.get(t[n],r.slice(1),e)},u.del=function(t,r){if("number"==typeof r&&(r=[r]),null==t)return t;if(e(r))return t;if("string"==typeof r)return u.del(t,r.split("."));var n=i(r[0]);return a(t,n)?1!==r.length?u.del(t[n],r.slice(1)):(o(t)?t.splice(n,1):delete t[n],t):t},u}var a=u();return a.create=u,a.withInheritedProps=u({includeInheritedProps:!0}),a}))},function(t,r){var e;e=function(){return this}();try{e=e||new Function("return this")()}catch(t){"object"==typeof window&&(e=window)}t.exports=e},function(t,r,e){var n=e(17),o=e(212),i=e(102),u=e(83)("IE_PROTO"),a=function(){},c=function(){var t,r=e(81)("iframe"),n=i.length;for(r.style.display="none",e(133).appendChild(r),r.src="javascript:",(t=r.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),c=t.F;n--;)delete c.prototype[i[n]];return c()};t.exports=Object.create||function(t,r){var e;return null!==t?(a.prototype=n(t),e=new a,a.prototype=null,e[u]=t):e=c(),void 0===r?e:o(e,r)}},function(t,r,e){var n=e(113),o=e(41),i=e(99),u=e(86),a=e(363),c=Math.max;t.exports=function(t,r,e,s){t=o(t)?t:a(t),e=e&&!s?u(e):0;var f=t.length;return e<0&&(e=c(f+e,0)),i(t)?e<=f&&t.indexOf(r,e)>-1:!!f&&n(t,r,e)>-1}},,,,function(t,r,e){"use strict";var n=e(49),o=e(18),i=e(167),u=e(26),a=e(39),c=e(211),s=e(62),f=e(215),l=e(12)("iterator"),p=!([].keys&&"next"in[].keys()),d=function(){return this};t.exports=function(t,r,e,h,v,y,g){c(e,r,h);var b,m,x,_=function(t){if(!p&&t in A)return A[t];switch(t){case"keys":case"values":return function(){return new e(this,t)}}return function(){return new e(this,t)}},w=r+" Iterator",j="values"==v,O=!1,A=t.prototype,E=A[l]||A["@@iterator"]||v&&A[v],S=E||_(v),P=v?j?_("entries"):S:void 0,I="Array"==r&&A.entries||E;if(I&&(x=f(I.call(new t)))!==Object.prototype&&x.next&&(s(x,w,!0),n||"function"==typeof x[l]||u(x,l,d)),j&&E&&"values"!==E.name&&(O=!0,S=function(){return E.call(this)}),n&&!g||!p&&!O&&A[l]||u(A,l,S),a[r]=S,a[w]=d,v)if(b={values:j?S:_("values"),keys:y?S:_("keys"),entries:P},g)for(m in b)m in A||i(A,m,b[m]);else o(o.P+o.F*(p||O),r,b);return b}},function(t,r,e){var n=e(48);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},function(t,r,e){var n=e(9).document;t.exports=n&&n.documentElement},function(t,r,e){var n=e(17);t.exports=function(t,r,e,o){try{return o?r(n(e)[0],e[1]):r(e)}catch(r){var i=t.return;throw void 0!==i&&n(i.call(t)),r}}},function(t,r,e){var n=e(39),o=e(12)("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(n.Array===t||i[o]===t)}},function(t,r,e){var n=e(12)("iterator"),o=!1;try{var i=[7][n]();i.return=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(t){}t.exports=function(t,r){if(!r&&!o)return!1;var e=!1;try{var i=[7],u=i[n]();u.next=function(){return{done:e=!0}},i[n]=function(){return u},t(i)}catch(t){}return e}},function(t,r,e){(function(r){var e="object"==typeof r&&r&&r.Object===Object&&r;t.exports=e}).call(this,e(125))},function(t,r){var e=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return e.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},function(t,r,e){var n=e(260),o=e(14);t.exports=function t(r,e,i,u,a){return r===e||(null==r||null==e||!o(r)&&!o(e)?r!=r&&e!=e:n(r,e,i,u,t,a))}},function(t,r,e){var n=e(151),o=e(261),i=e(152),u=1,a=2;t.exports=function(t,r,e,c,s,f){var l=e&u,p=t.length,d=r.length;if(p!=d&&!(l&&d>p))return!1;var h=f.get(t);if(h&&f.get(r))return h==r;var v=-1,y=!0,g=e&a?new n:void 0;for(f.set(t,r),f.set(r,t);++v<p;){var b=t[v],m=r[v];if(c)var x=l?c(m,b,v,r,t,f):c(b,m,v,t,r,f);if(void 0!==x){if(x)continue;y=!1;break}if(g){if(!o(r,(function(t,r){if(!i(g,r)&&(b===t||s(b,t,e,c,f)))return g.push(r)}))){y=!1;break}}else if(b!==m&&!s(b,m,e,c,f)){y=!1;break}}return f.delete(t),f.delete(r),y}},function(t,r,e){var n=e(22);t.exports=function(t){return t==t&&!n(t)}},function(t,r){t.exports=function(t,r){return function(e){return null!=e&&(e[t]===r&&(void 0!==r||t in Object(e)))}}},function(t,r,e){var n=e(144),o=e(47);t.exports=function(t,r){for(var e=0,i=(r=n(r,t)).length;null!=t&&e<i;)t=t[o(r[e++])];return e&&e==i?t:void 0}},function(t,r,e){var n=e(6),o=e(91),i=e(165),u=e(98);t.exports=function(t,r){return n(t)?t:o(t,r)?[t]:i(u(t))}},function(t,r,e){var n=e(17),o=e(53),i=e(12)("species");t.exports=function(t,r){var e,u=n(t).constructor;return void 0===u||null==(e=n(u)[i])?r:o(e)}},function(t,r,e){var n,o,i,u=e(38),a=e(292),c=e(133),s=e(81),f=e(9),l=f.process,p=f.setImmediate,d=f.clearImmediate,h=f.MessageChannel,v=f.Dispatch,y=0,g={},b=function(){var t=+this;if(g.hasOwnProperty(t)){var r=g[t];delete g[t],r()}},m=function(t){b.call(t.data)};p&&d||(p=function(t){for(var r=[],e=1;arguments.length>e;)r.push(arguments[e++]);return g[++y]=function(){a("function"==typeof t?t:Function(t),r)},n(y),y},d=function(t){delete g[t]},"process"==e(48)(l)?n=function(t){l.nextTick(u(b,t,1))}:v&&v.now?n=function(t){v.now(u(b,t,1))}:h?(i=(o=new h).port2,o.port1.onmessage=m,n=u(i.postMessage,i,1)):f.addEventListener&&"function"==typeof postMessage&&!f.importScripts?(n=function(t){f.postMessage(t+"","*")},f.addEventListener("message",m,!1)):n="onreadystatechange"in s("script")?function(t){c.appendChild(s("script")).onreadystatechange=function(){c.removeChild(this),b.call(t)}}:function(t){setTimeout(u(b,t,1),0)}),t.exports={set:p,clear:d}},function(t,r){t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},function(t,r,e){var n=e(17),o=e(23),i=e(93);t.exports=function(t,r){if(n(t),o(r)&&r.constructor===t)return r;var e=i.f(t);return(0,e.resolve)(r),e.promise}},,function(t,r,e){"use strict";e.r(r);var n=e(78),o=e(29),i=e(60),u=e(100),a=Object(u.b)({plugins:i.default,forms:o.default});e.d(r,"default",(function(){return a})),e.d(r,"editor",(function(){return n})),e.d(r,"forms",(function(){return o})),e.d(r,"plugins",(function(){return i}))},function(t,r,e){var n=e(84),o=e(241),i=e(242);function u(t){var r=-1,e=null==t?0:t.length;for(this.__data__=new n;++r<e;)this.add(t[r])}u.prototype.add=u.prototype.push=o,u.prototype.has=i,t.exports=u},function(t,r){t.exports=function(t,r){return t.has(r)}},function(t,r,e){var n=e(24)(e(11),"Set");t.exports=n},function(t,r,e){var n=e(24)(e(11),"WeakMap");t.exports=n},function(t,r,e){var n=e(331),o=e(186)(n);t.exports=o},function(t,r){t.exports=function(t){return t.placeholder}},function(t,r,e){var n=e(158),o=1/0,i=17976931348623157e292;t.exports=function(t){return t?(t=n(t))===o||t===-o?(t<0?-1:1)*i:t==t?t:0:0===t?t:0}},function(t,r,e){var n=e(22),o=e(46),i=NaN,u=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,s=/^0o[0-7]+$/i,f=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(o(t))return i;if(n(t)){var r="function"==typeof t.valueOf?t.valueOf():t;t=n(r)?r+"":r}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(u,"");var e=c.test(t);return e||s.test(t)?f(t.slice(2),e?2:8):a.test(t)?i:+t}},function(t,r,e){var n=e(245),o=e(58),i=e(6),u=e(59),a=e(75),c=e(87),s=Object.prototype.hasOwnProperty;t.exports=function(t,r){var e=i(t),f=!e&&o(t),l=!e&&!f&&u(t),p=!e&&!f&&!l&&c(t),d=e||f||l||p,h=d?n(t.length,String):[],v=h.length;for(var y in t)!r&&!s.call(t,y)||d&&("length"==y||l&&("offset"==y||"parent"==y)||p&&("buffer"==y||"byteLength"==y||"byteOffset"==y)||a(y,v))||h.push(y);return h}},function(t,r){t.exports=function(t,r){return function(e){return t(r(e))}}},function(t,r){t.exports=function(){return[]}},function(t,r,e){var n=e(163),o=e(106),i=e(40);t.exports=function(t){return n(t,i,o)}},function(t,r,e){var n=e(97),o=e(6);t.exports=function(t,r,e){var i=r(t);return o(t)?i:n(i,e(t))}},function(t,r,e){var n=e(11).Uint8Array;t.exports=n},function(t,r,e){var n=e(267),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,u=n((function(t){var r=[];return 46===t.charCodeAt(0)&&r.push(""),t.replace(o,(function(t,e,n,o){r.push(n?o.replace(i,"$1"):e||t)})),r}));t.exports=u},function(t,r,e){t.exports=!e(19)&&!e(50)((function(){return 7!=Object.defineProperty(e(81)("div"),"a",{get:function(){return 7}}).a}))},function(t,r,e){t.exports=e(26)},function(t,r,e){var n=e(31),o=e(45),i=e(213)(!1),u=e(83)("IE_PROTO");t.exports=function(t,r){var e,a=o(t),c=0,s=[];for(e in a)e!=u&&n(a,e)&&s.push(e);for(;r.length>c;)n(a,e=r[c++])&&(~i(s,e)||s.push(e));return s}},function(t,r,e){var n=e(32),o=e(77),i=e(6),u=e(46),a=1/0,c=n?n.prototype:void 0,s=c?c.toString:void 0;t.exports=function t(r){if("string"==typeof r)return r;if(i(r))return o(r,t)+"";if(u(r))return s?s.call(r):"";var e=r+"";return"0"==e&&1/r==-a?"-0":e}},function(t,r){},,,,function(t,r,e){var n=e(113);t.exports=function(t,r){return!!(null==t?0:t.length)&&n(t,r,0)>-1}},function(t,r){t.exports=function(t,r,e,n){for(var o=t.length,i=e+(n?1:-1);n?i--:++i<o;)if(r(t[i],i,t))return i;return-1}},function(t,r){t.exports={}},function(t,r,e){var n=e(52),o=e(178),i=o?function(t,r){return o.set(t,r),t}:n;t.exports=i},function(t,r,e){var n=e(154),o=n&&new n;t.exports=o},function(t,r,e){var n=e(180),o=e(181),i=e(323),u=e(72),a=e(182),c=e(156),s=e(334),f=e(105),l=e(11),p=1,d=2,h=8,v=16,y=128,g=512;t.exports=function t(r,e,b,m,x,_,w,j,O,A){var E=e&y,S=e&p,P=e&d,I=e&(h|v),R=e&g,T=P?void 0:u(r);return function p(){for(var d=arguments.length,h=Array(d),v=d;v--;)h[v]=arguments[v];if(I)var y=c(p),g=i(h,y);if(m&&(h=n(h,m,x,I)),_&&(h=o(h,_,w,I)),d-=g,I&&d<A){var M=f(h,y);return a(r,e,t,p.placeholder,b,h,M,j,O,A-d)}var k=S?b:this,L=P?k[r]:r;return d=h.length,j?h=s(h,j):R&&d>1&&h.reverse(),E&&O<d&&(h.length=O),this&&this!==l&&this instanceof p&&(L=T||u(L)),L.apply(k,h)}}},function(t,r){var e=Math.max;t.exports=function(t,r,n,o){for(var i=-1,u=t.length,a=n.length,c=-1,s=r.length,f=e(u-a,0),l=Array(s+f),p=!o;++c<s;)l[c]=r[c];for(;++i<a;)(p||i<u)&&(l[n[i]]=t[i]);for(;f--;)l[c++]=t[i++];return l}},function(t,r){var e=Math.max;t.exports=function(t,r,n,o){for(var i=-1,u=t.length,a=-1,c=n.length,s=-1,f=r.length,l=e(u-c,0),p=Array(l+f),d=!o;++i<l;)p[i]=t[i];for(var h=i;++s<f;)p[h+s]=r[s];for(;++a<c;)(d||i<u)&&(p[h+n[a]]=t[i++]);return p}},function(t,r,e){var n=e(324),o=e(185),i=e(187),u=1,a=2,c=4,s=8,f=32,l=64;t.exports=function(t,r,e,p,d,h,v,y,g,b){var m=r&s;r|=m?f:l,(r&=~(m?l:f))&c||(r&=~(u|a));var x=[t,r,d,m?h:void 0,m?v:void 0,m?void 0:h,m?void 0:v,y,g,b],_=e.apply(void 0,x);return n(t)&&o(_,x),_.placeholder=p,i(_,t,r)}},function(t,r,e){var n=e(178),o=e(8),i=n?function(t){return n.get(t)}:o;t.exports=i},function(t,r,e){var n=e(73),o=e(116);function i(t,r){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!r,this.__index__=0,this.__values__=void 0}i.prototype=n(o.prototype),i.prototype.constructor=i,t.exports=i},function(t,r,e){var n=e(177),o=e(186)(n);t.exports=o},function(t,r){var e=800,n=16,o=Date.now;t.exports=function(t){var r=0,i=0;return function(){var u=o(),a=n-(u-i);if(i=u,a>0){if(++r>=e)return arguments[0]}else r=0;return t.apply(void 0,arguments)}}},function(t,r,e){var n=e(329),o=e(330),i=e(155),u=e(333);t.exports=function(t,r,e){var a=r+"";return i(t,o(a,u(n(a),e)))}},function(t,r,e){var n=e(24),o=function(){try{var t=n(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();t.exports=o},function(t,r,e){var n=e(76),o=e(40);t.exports=function(t,r){return t&&n(r,o(r),t)}},function(t,r,e){var n=e(191),o=e(71),i=Object.prototype.hasOwnProperty;t.exports=function(t,r,e){var u=t[r];i.call(t,r)&&o(u,e)&&(void 0!==e||r in t)||n(t,r,e)}},function(t,r,e){var n=e(188);t.exports=function(t,r,e){"__proto__"==r&&n?n(t,r,{configurable:!0,enumerable:!0,value:e,writable:!0}):t[r]=e}},function(t,r,e){var n=e(96),o=e(117),i=e(190),u=e(189),a=e(338),c=e(341),s=e(74),f=e(342),l=e(343),p=e(162),d=e(344),h=e(43),v=e(345),y=e(346),g=e(351),b=e(6),m=e(59),x=e(352),_=e(22),w=e(354),j=e(40),O=1,A=2,E=4,S="[object Arguments]",P="[object Function]",I="[object GeneratorFunction]",R="[object Object]",T={};T[S]=T["[object Array]"]=T["[object ArrayBuffer]"]=T["[object DataView]"]=T["[object Boolean]"]=T["[object Date]"]=T["[object Float32Array]"]=T["[object Float64Array]"]=T["[object Int8Array]"]=T["[object Int16Array]"]=T["[object Int32Array]"]=T["[object Map]"]=T["[object Number]"]=T[R]=T["[object RegExp]"]=T["[object Set]"]=T["[object String]"]=T["[object Symbol]"]=T["[object Uint8Array]"]=T["[object Uint8ClampedArray]"]=T["[object Uint16Array]"]=T["[object Uint32Array]"]=!0,T["[object Error]"]=T[P]=T["[object WeakMap]"]=!1,t.exports=function t(r,e,M,k,L,F){var W,D=e&O,B=e&A,C=e&E;if(M&&(W=L?M(r,k,L,F):M(r)),void 0!==W)return W;if(!_(r))return r;var N=b(r);if(N){if(W=v(r),!D)return s(r,W)}else{var U=h(r),z=U==P||U==I;if(m(r))return c(r,D);if(U==R||U==S||z&&!L){if(W=B||z?{}:g(r),!D)return B?l(r,a(W,r)):f(r,u(W,r))}else{if(!T[U])return L?r:{};W=y(r,U,D)}}F||(F=new n);var V=F.get(r);if(V)return V;F.set(r,W),w(r)?r.forEach((function(n){W.add(t(n,e,M,n,r,F))})):x(r)&&r.forEach((function(n,o){W.set(o,t(n,e,M,o,r,F))}));var q=C?B?d:p:B?keysIn:j,G=N?void 0:q(r);return o(G||r,(function(n,o){G&&(n=r[o=n]),i(W,o,t(n,e,M,o,r,F))})),W}},function(t,r,e){var n=e(159),o=e(339),i=e(41);t.exports=function(t){return i(t)?n(t,!0):o(t)}},function(t,r,e){var n=e(97),o=e(118),i=e(106),u=e(161),a=Object.getOwnPropertySymbols?function(t){for(var r=[];t;)n(r,i(t)),t=o(t);return r}:u;t.exports=a},function(t,r,e){var n=e(104),o=8;function i(t,r,e){var u=n(t,o,void 0,void 0,void 0,void 0,void 0,r=e?void 0:r);return u.placeholder=i.placeholder,u}i.placeholder={},t.exports=i},function(t,r,e){var n=e(275);t.exports=function(t){return(null==t?0:t.length)?n(t,1):[]}},function(t,r,e){"use strict";function n(t){var r,e=t.Symbol;return"function"==typeof e?e.observable?r=e.observable:(r=e("observable"),e.observable=r):r="@@observable",r}e.d(r,"a",(function(){return n}))},function(t,r,e){var n=e(313);t.exports=function(t){return t&&t.length?n(t):[]}},function(t,r,e){var n=e(316)("curry",e(195));n.placeholder=e(176),t.exports=n},function(t,r,e){"use strict";r.__esModule=!0;var n,o=e(205),i=(n=o)&&n.__esModule?n:{default:n};r.default=function(t,r,e){return r in t?(0,i.default)(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}},function(t,r,e){"use strict";var n=Object.prototype.hasOwnProperty;function o(t){return decodeURIComponent(t.replace(/\+/g," "))}r.stringify=function(t,r){r=r||"";var e=[];for(var o in"string"!=typeof r&&(r="?"),t)n.call(t,o)&&e.push(encodeURIComponent(o)+"="+encodeURIComponent(t[o]));return e.length?r+e.join("&"):""},r.parse=function(t){for(var r,e=/([^=?&]+)=?([^&]*)/g,n={};r=e.exec(t);){var i=o(r[1]),u=o(r[2]);i in n||(n[i]=u)}return n}},function(t,r,e){var n=e(367),o=e(157),i=e(158);t.exports=function(t,r,e){return r=o(r),void 0===e?(e=r,r=0):e=o(e),t=i(t),n(t,r,e)}},,,function(t,r,e){t.exports={default:e(365),__esModule:!0}},function(t,r){!function(t){"use strict";if(!t.fetch){var r={searchParams:"URLSearchParams"in t,iterable:"Symbol"in t&&"iterator"in Symbol,blob:"FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),formData:"FormData"in t,arrayBuffer:"ArrayBuffer"in t};if(r.arrayBuffer)var e=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],n=function(t){return t&&DataView.prototype.isPrototypeOf(t)},o=ArrayBuffer.isView||function(t){return t&&e.indexOf(Object.prototype.toString.call(t))>-1};f.prototype.append=function(t,r){t=a(t),r=c(r);var e=this.map[t];this.map[t]=e?e+","+r:r},f.prototype.delete=function(t){delete this.map[a(t)]},f.prototype.get=function(t){return t=a(t),this.has(t)?this.map[t]:null},f.prototype.has=function(t){return this.map.hasOwnProperty(a(t))},f.prototype.set=function(t,r){this.map[a(t)]=c(r)},f.prototype.forEach=function(t,r){for(var e in this.map)this.map.hasOwnProperty(e)&&t.call(r,this.map[e],e,this)},f.prototype.keys=function(){var t=[];return this.forEach((function(r,e){t.push(e)})),s(t)},f.prototype.values=function(){var t=[];return this.forEach((function(r){t.push(r)})),s(t)},f.prototype.entries=function(){var t=[];return this.forEach((function(r,e){t.push([e,r])})),s(t)},r.iterable&&(f.prototype[Symbol.iterator]=f.prototype.entries);var i=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];y.prototype.clone=function(){return new y(this,{body:this._bodyInit})},v.call(y.prototype),v.call(b.prototype),b.prototype.clone=function(){return new b(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new f(this.headers),url:this.url})},b.error=function(){var t=new b(null,{status:0,statusText:""});return t.type="error",t};var u=[301,302,303,307,308];b.redirect=function(t,r){if(-1===u.indexOf(r))throw new RangeError("Invalid status code");return new b(null,{status:r,headers:{location:t}})},t.Headers=f,t.Request=y,t.Response=b,t.fetch=function(t,e){return new Promise((function(n,o){var i=new y(t,e),u=new XMLHttpRequest;u.onload=function(){var t,r,e={status:u.status,statusText:u.statusText,headers:(t=u.getAllResponseHeaders()||"",r=new f,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(t){var e=t.split(":"),n=e.shift().trim();if(n){var o=e.join(":").trim();r.append(n,o)}})),r)};e.url="responseURL"in u?u.responseURL:e.headers.get("X-Request-URL");var o="response"in u?u.response:u.responseText;n(new b(o,e))},u.onerror=function(){o(new TypeError("Network request failed"))},u.ontimeout=function(){o(new TypeError("Network request failed"))},u.open(i.method,i.url,!0),"include"===i.credentials?u.withCredentials=!0:"omit"===i.credentials&&(u.withCredentials=!1),"responseType"in u&&r.blob&&(u.responseType="blob"),i.headers.forEach((function(t,r){u.setRequestHeader(r,t)})),u.send(void 0===i._bodyInit?null:i._bodyInit)}))},t.fetch.polyfill=!0}function a(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function c(t){return"string"!=typeof t&&(t=String(t)),t}function s(t){var e={next:function(){var r=t.shift();return{done:void 0===r,value:r}}};return r.iterable&&(e[Symbol.iterator]=function(){return e}),e}function f(t){this.map={},t instanceof f?t.forEach((function(t,r){this.append(r,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(r){this.append(r,t[r])}),this)}function l(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function p(t){return new Promise((function(r,e){t.onload=function(){r(t.result)},t.onerror=function(){e(t.error)}}))}function d(t){var r=new FileReader,e=p(r);return r.readAsArrayBuffer(t),e}function h(t){if(t.slice)return t.slice(0);var r=new Uint8Array(t.byteLength);return r.set(new Uint8Array(t)),r.buffer}function v(){return this.bodyUsed=!1,this._initBody=function(t){if(this._bodyInit=t,t)if("string"==typeof t)this._bodyText=t;else if(r.blob&&Blob.prototype.isPrototypeOf(t))this._bodyBlob=t;else if(r.formData&&FormData.prototype.isPrototypeOf(t))this._bodyFormData=t;else if(r.searchParams&&URLSearchParams.prototype.isPrototypeOf(t))this._bodyText=t.toString();else if(r.arrayBuffer&&r.blob&&n(t))this._bodyArrayBuffer=h(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer]);else{if(!r.arrayBuffer||!ArrayBuffer.prototype.isPrototypeOf(t)&&!o(t))throw new Error("unsupported BodyInit type");this._bodyArrayBuffer=h(t)}else this._bodyText="";this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},r.blob&&(this.blob=function(){var t=l(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?l(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(d)}),this.text=function(){var t,r,e,n=l(this);if(n)return n;if(this._bodyBlob)return t=this._bodyBlob,r=new FileReader,e=p(r),r.readAsText(t),e;if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var r=new Uint8Array(t),e=new Array(r.length),n=0;n<r.length;n++)e[n]=String.fromCharCode(r[n]);return e.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},r.formData&&(this.formData=function(){return this.text().then(g)}),this.json=function(){return this.text().then(JSON.parse)},this}function y(t,r){var e,n,o=(r=r||{}).body;if(t instanceof y){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,r.headers||(this.headers=new f(t.headers)),this.method=t.method,this.mode=t.mode,o||null==t._bodyInit||(o=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=r.credentials||this.credentials||"omit",!r.headers&&this.headers||(this.headers=new f(r.headers)),this.method=(e=r.method||this.method||"GET",n=e.toUpperCase(),i.indexOf(n)>-1?n:e),this.mode=r.mode||this.mode||null,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(o)}function g(t){var r=new FormData;return t.trim().split("&").forEach((function(t){if(t){var e=t.split("="),n=e.shift().replace(/\+/g," "),o=e.join("=").replace(/\+/g," ");r.append(decodeURIComponent(n),decodeURIComponent(o))}})),r}function b(t,r){r||(r={}),this.type="default",this.status=void 0===r.status?200:r.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in r?r.statusText:"OK",this.headers=new f(r.headers),this.url=r.url||"",this._initBody(t)}}("undefined"!=typeof self?self:this)},,function(t,r,e){t.exports={default:e(209),__esModule:!0}},function(t,r,e){e(61),e(216),t.exports=e(10).Array.from},function(t,r,e){var n=e(79),o=e(80);t.exports=function(t){return function(r,e){var i,u,a=String(o(r)),c=n(e),s=a.length;return c<0||c>=s?t?"":void 0:(i=a.charCodeAt(c))<55296||i>56319||c+1===s||(u=a.charCodeAt(c+1))<56320||u>57343?t?a.charAt(c):i:t?a.slice(c,c+2):u-56320+(i-55296<<10)+65536}}},function(t,r,e){"use strict";var n=e(126),o=e(51),i=e(62),u={};e(26)(u,e(12)("iterator"),(function(){return this})),t.exports=function(t,r,e){t.prototype=n(u,{next:o(1,e)}),i(t,r+" Iterator")}},function(t,r,e){var n=e(21),o=e(17),i=e(69);t.exports=e(19)?Object.defineProperties:function(t,r){o(t);for(var e,u=i(r),a=u.length,c=0;a>c;)n.f(t,e=u[c++],r[e]);return t}},function(t,r,e){var n=e(45),o=e(82),i=e(214);t.exports=function(t){return function(r,e,u){var a,c=n(r),s=o(c.length),f=i(u,s);if(t&&e!=e){for(;s>f;)if((a=c[f++])!=a)return!0}else for(;s>f;f++)if((t||f in c)&&c[f]===e)return t||f||0;return!t&&-1}}},function(t,r,e){var n=e(79),o=Math.max,i=Math.min;t.exports=function(t,r){return(t=n(t))<0?o(t+r,0):i(t,r)}},function(t,r,e){var n=e(31),o=e(63),i=e(83)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),n(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},function(t,r,e){"use strict";var n=e(38),o=e(18),i=e(63),u=e(134),a=e(135),c=e(82),s=e(217),f=e(109);o(o.S+o.F*!e(136)((function(t){Array.from(t)})),"Array",{from:function(t){var r,e,o,l,p=i(t),d="function"==typeof this?this:Array,h=arguments.length,v=h>1?arguments[1]:void 0,y=void 0!==v,g=0,b=f(p);if(y&&(v=n(v,h>2?arguments[2]:void 0,2)),null==b||d==Array&&a(b))for(e=new d(r=c(p.length));r>g;g++)s(e,g,y?v(p[g],g):p[g]);else for(l=b.call(p),e=new d;!(o=l.next()).done;g++)s(e,g,y?u(l,v,[o.value,g],!0):o.value);return e.length=g,e}})},function(t,r,e){"use strict";var n=e(21),o=e(51);t.exports=function(t,r,e){r in t?n.f(t,r,o(0,e)):t[r]=e}},function(t,r,e){var n=e(219),o=e(55),i=e(85);t.exports=function(){this.size=0,this.__data__={hash:new n,map:new(i||o),string:new n}}},function(t,r,e){var n=e(220),o=e(227),i=e(228),u=e(229),a=e(230);function c(t){var r=-1,e=null==t?0:t.length;for(this.clear();++r<e;){var n=t[r];this.set(n[0],n[1])}}c.prototype.clear=n,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,t.exports=c},function(t,r,e){var n=e(54);t.exports=function(){this.__data__=n?n(null):{},this.size=0}},function(t,r,e){var n=e(94),o=e(224),i=e(22),u=e(138),a=/^\[object .+?Constructor\]$/,c=Function.prototype,s=Object.prototype,f=c.toString,l=s.hasOwnProperty,p=RegExp("^"+f.call(l).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||o(t))&&(n(t)?p:a).test(u(t))}},function(t,r,e){var n=e(32),o=Object.prototype,i=o.hasOwnProperty,u=o.toString,a=n?n.toStringTag:void 0;t.exports=function(t){var r=i.call(t,a),e=t[a];try{t[a]=void 0;var n=!0}catch(t){}var o=u.call(t);return n&&(r?t[a]=e:delete t[a]),o}},function(t,r){var e=Object.prototype.toString;t.exports=function(t){return e.call(t)}},function(t,r,e){var n,o=e(225),i=(n=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"";t.exports=function(t){return!!i&&i in t}},function(t,r,e){var n=e(11)["__core-js_shared__"];t.exports=n},function(t,r){t.exports=function(t,r){return null==t?void 0:t[r]}},function(t,r){t.exports=function(t){var r=this.has(t)&&delete this.__data__[t];return this.size-=r?1:0,r}},function(t,r,e){var n=e(54),o="__lodash_hash_undefined__",i=Object.prototype.hasOwnProperty;t.exports=function(t){var r=this.__data__;if(n){var e=r[t];return e===o?void 0:e}return i.call(r,t)?r[t]:void 0}},function(t,r,e){var n=e(54),o=Object.prototype.hasOwnProperty;t.exports=function(t){var r=this.__data__;return n?void 0!==r[t]:o.call(r,t)}},function(t,r,e){var n=e(54),o="__lodash_hash_undefined__";t.exports=function(t,r){var e=this.__data__;return this.size+=this.has(t)?0:1,e[t]=n&&void 0===r?o:r,this}},function(t,r){t.exports=function(){this.__data__=[],this.size=0}},function(t,r,e){var n=e(56),o=Array.prototype.splice;t.exports=function(t){var r=this.__data__,e=n(r,t);return!(e<0)&&(e==r.length-1?r.pop():o.call(r,e,1),--this.size,!0)}},function(t,r,e){var n=e(56);t.exports=function(t){var r=this.__data__,e=n(r,t);return e<0?void 0:r[e][1]}},function(t,r,e){var n=e(56);t.exports=function(t){return n(this.__data__,t)>-1}},function(t,r,e){var n=e(56);t.exports=function(t,r){var e=this.__data__,o=n(e,t);return o<0?(++this.size,e.push([t,r])):e[o][1]=r,this}},function(t,r,e){var n=e(57);t.exports=function(t){var r=n(this,t).delete(t);return this.size-=r?1:0,r}},function(t,r){t.exports=function(t){var r=typeof t;return"string"==r||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==t:null===t}},function(t,r,e){var n=e(57);t.exports=function(t){return n(this,t).get(t)}},function(t,r,e){var n=e(57);t.exports=function(t){return n(this,t).has(t)}},function(t,r,e){var n=e(57);t.exports=function(t,r){var e=n(this,t),o=e.size;return e.set(t,r),this.size+=e.size==o?0:1,this}},function(t,r){var e="__lodash_hash_undefined__";t.exports=function(t){return this.__data__.set(t,e),this}},function(t,r){t.exports=function(t){return this.__data__.has(t)}},function(t,r){t.exports=function(t){return t!=t}},function(t,r){t.exports=function(t,r,e){for(var n=e-1,o=t.length;++n<o;)if(t[n]===r)return n;return-1}},function(t,r){t.exports=function(t,r){for(var e=-1,n=Array(t);++e<t;)n[e]=r(e);return n}},function(t,r,e){var n=e(20),o=e(14),i="[object Arguments]";t.exports=function(t){return o(t)&&n(t)==i}},function(t,r){t.exports=function(){return!1}},function(t,r,e){var n=e(20),o=e(88),i=e(14),u={};u["[object Float32Array]"]=u["[object Float64Array]"]=u["[object Int8Array]"]=u["[object Int16Array]"]=u["[object Int32Array]"]=u["[object Uint8Array]"]=u["[object Uint8ClampedArray]"]=u["[object Uint16Array]"]=u["[object Uint32Array]"]=!0,u["[object Arguments]"]=u["[object Array]"]=u["[object ArrayBuffer]"]=u["[object Boolean]"]=u["[object DataView]"]=u["[object Date]"]=u["[object Error]"]=u["[object Function]"]=u["[object Map]"]=u["[object Number]"]=u["[object Object]"]=u["[object RegExp]"]=u["[object Set]"]=u["[object String]"]=u["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&o(t.length)&&!!u[n(t)]}},function(t,r,e){var n=e(160)(Object.keys,Object);t.exports=n},function(t,r,e){var n=e(55);t.exports=function(){this.__data__=new n,this.size=0}},function(t,r){t.exports=function(t){var r=this.__data__,e=r.delete(t);return this.size=r.size,e}},function(t,r){t.exports=function(t){return this.__data__.get(t)}},function(t,r){t.exports=function(t){return this.__data__.has(t)}},function(t,r,e){var n=e(55),o=e(85),i=e(84),u=200;t.exports=function(t,r){var e=this.__data__;if(e instanceof n){var a=e.__data__;if(!o||a.length<u-1)return a.push([t,r]),this.size=++e.size,this;e=this.__data__=new i(a)}return e.set(t,r),this.size=e.size,this}},function(t,r){t.exports=function(t,r){for(var e=-1,n=null==t?0:t.length,o=0,i=[];++e<n;){var u=t[e];r(u,e,t)&&(i[o++]=u)}return i}},function(t,r,e){var n=e(24)(e(11),"DataView");t.exports=n},function(t,r,e){var n=e(24)(e(11),"Promise");t.exports=n},function(t,r,e){var n=e(259),o=e(265),i=e(142);t.exports=function(t){var r=o(t);return 1==r.length&&r[0][2]?i(r[0][0],r[0][1]):function(e){return e===t||n(e,t,r)}}},function(t,r,e){var n=e(96),o=e(139),i=1,u=2;t.exports=function(t,r,e,a){var c=e.length,s=c,f=!a;if(null==t)return!s;for(t=Object(t);c--;){var l=e[c];if(f&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++c<s;){var p=(l=e[c])[0],d=t[p],h=l[1];if(f&&l[2]){if(void 0===d&&!(p in t))return!1}else{var v=new n;if(a)var y=a(d,h,p,t,r,v);if(!(void 0===y?o(h,d,i|u,a,v):y))return!1}}return!0}},function(t,r,e){var n=e(96),o=e(140),i=e(262),u=e(264),a=e(43),c=e(6),s=e(59),f=e(87),l=1,p="[object Arguments]",d="[object Array]",h="[object Object]",v=Object.prototype.hasOwnProperty;t.exports=function(t,r,e,y,g,b){var m=c(t),x=c(r),_=m?d:a(t),w=x?d:a(r),j=(_=_==p?h:_)==h,O=(w=w==p?h:w)==h,A=_==w;if(A&&s(t)){if(!s(r))return!1;m=!0,j=!1}if(A&&!j)return b||(b=new n),m||f(t)?o(t,r,e,y,g,b):i(t,r,_,e,y,g,b);if(!(e&l)){var E=j&&v.call(t,"__wrapped__"),S=O&&v.call(r,"__wrapped__");if(E||S){var P=E?t.value():t,I=S?r.value():r;return b||(b=new n),g(P,I,e,y,b)}}return!!A&&(b||(b=new n),u(t,r,e,y,g,b))}},function(t,r){t.exports=function(t,r){for(var e=-1,n=null==t?0:t.length;++e<n;)if(r(t[e],e,t))return!0;return!1}},function(t,r,e){var n=e(32),o=e(164),i=e(71),u=e(140),a=e(263),c=e(103),s=1,f=2,l="[object Boolean]",p="[object Date]",d="[object Error]",h="[object Map]",v="[object Number]",y="[object RegExp]",g="[object Set]",b="[object String]",m="[object Symbol]",x="[object ArrayBuffer]",_="[object DataView]",w=n?n.prototype:void 0,j=w?w.valueOf:void 0;t.exports=function(t,r,e,n,w,O,A){switch(e){case _:if(t.byteLength!=r.byteLength||t.byteOffset!=r.byteOffset)return!1;t=t.buffer,r=r.buffer;case x:return!(t.byteLength!=r.byteLength||!O(new o(t),new o(r)));case l:case p:case v:return i(+t,+r);case d:return t.name==r.name&&t.message==r.message;case y:case b:return t==r+"";case h:var E=a;case g:var S=n&s;if(E||(E=c),t.size!=r.size&&!S)return!1;var P=A.get(t);if(P)return P==r;n|=f,A.set(t,r);var I=u(E(t),E(r),n,w,O,A);return A.delete(t),I;case m:if(j)return j.call(t)==j.call(r)}return!1}},function(t,r){t.exports=function(t){var r=-1,e=Array(t.size);return t.forEach((function(t,n){e[++r]=[n,t]})),e}},function(t,r,e){var n=e(162),o=1,i=Object.prototype.hasOwnProperty;t.exports=function(t,r,e,u,a,c){var s=e&o,f=n(t),l=f.length;if(l!=n(r).length&&!s)return!1;for(var p=l;p--;){var d=f[p];if(!(s?d in r:i.call(r,d)))return!1}var h=c.get(t);if(h&&c.get(r))return h==r;var v=!0;c.set(t,r),c.set(r,t);for(var y=s;++p<l;){var g=t[d=f[p]],b=r[d];if(u)var m=s?u(b,g,d,r,t,c):u(g,b,d,t,r,c);if(!(void 0===m?g===b||a(g,b,e,u,c):m)){v=!1;break}y||(y="constructor"==d)}if(v&&!y){var x=t.constructor,_=r.constructor;x!=_&&"constructor"in t&&"constructor"in r&&!("function"==typeof x&&x instanceof x&&"function"==typeof _&&_ instanceof _)&&(v=!1)}return c.delete(t),c.delete(r),v}},function(t,r,e){var n=e(141),o=e(40);t.exports=function(t){for(var r=o(t),e=r.length;e--;){var i=r[e],u=t[i];r[e]=[i,u,n(u)]}return r}},function(t,r,e){var n=e(139),o=e(44),i=e(269),u=e(91),a=e(141),c=e(142),s=e(47),f=1,l=2;t.exports=function(t,r){return u(t)&&a(r)?c(s(t),r):function(e){var u=o(e,t);return void 0===u&&u===r?i(e,t):n(r,u,f|l)}}},function(t,r,e){var n=e(268),o=500;t.exports=function(t){var r=n(t,(function(t){return e.size===o&&e.clear(),t})),e=r.cache;return r}},function(t,r,e){var n=e(84),o="Expected a function";function i(t,r){if("function"!=typeof t||null!=r&&"function"!=typeof r)throw new TypeError(o);var e=function(){var n=arguments,o=r?r.apply(this,n):n[0],i=e.cache;if(i.has(o))return i.get(o);var u=t.apply(this,n);return e.cache=i.set(o,u)||i,u};return e.cache=new(i.Cache||n),e}i.Cache=n,t.exports=i},function(t,r,e){var n=e(270),o=e(271);t.exports=function(t,r){return null!=t&&o(t,r,n)}},function(t,r){t.exports=function(t,r){return null!=t&&r in Object(t)}},function(t,r,e){var n=e(144),o=e(58),i=e(6),u=e(75),a=e(88),c=e(47);t.exports=function(t,r,e){for(var s=-1,f=(r=n(r,t)).length,l=!1;++s<f;){var p=c(r[s]);if(!(l=null!=t&&e(t,p)))break;t=t[p]}return l||++s!=f?l:!!(f=null==t?0:t.length)&&a(f)&&u(p,f)&&(i(t)||o(t))}},function(t,r,e){var n=e(273),o=e(274),i=e(91),u=e(47);t.exports=function(t){return i(t)?n(u(t)):o(t)}},function(t,r){t.exports=function(t){return function(r){return null==r?void 0:r[t]}}},function(t,r,e){var n=e(143);t.exports=function(t){return function(r){return n(r,t)}}},function(t,r,e){var n=e(97),o=e(276);t.exports=function t(r,e,i,u,a){var c=-1,s=r.length;for(i||(i=o),a||(a=[]);++c<s;){var f=r[c];e>0&&i(f)?e>1?t(f,e-1,i,u,a):n(a,f):u||(a[a.length]=f)}return a}},function(t,r,e){var n=e(32),o=e(58),i=e(6),u=n?n.isConcatSpreadable:void 0;t.exports=function(t){return i(t)||o(t)||!!(u&&t&&t[u])}},function(t,r,e){var n=e(114),o=Math.max;t.exports=function(t,r,e){return r=o(void 0===r?t.length-1:r,0),function(){for(var i=arguments,u=-1,a=o(i.length-r,0),c=Array(a);++u<a;)c[u]=i[r+u];u=-1;for(var s=Array(r+1);++u<r;)s[u]=i[u];return s[r]=e(c),n(t,this,s)}}},function(t,r,e){t.exports={default:e(279),__esModule:!0}},function(t,r,e){e(280),t.exports=e(10).Object.assign},function(t,r,e){var n=e(18);n(n.S+n.F,"Object",{assign:e(281)})},function(t,r,e){"use strict";var n=e(19),o=e(69),i=e(120),u=e(92),a=e(63),c=e(132),s=Object.assign;t.exports=!s||e(50)((function(){var t={},r={},e=Symbol(),n="abcdefghijklmnopqrst";return t[e]=7,n.split("").forEach((function(t){r[t]=t})),7!=s({},t)[e]||Object.keys(s({},r)).join("")!=n}))?function(t,r){for(var e=a(t),s=arguments.length,f=1,l=i.f,p=u.f;s>f;)for(var d,h=c(arguments[f++]),v=l?o(h).concat(l(h)):o(h),y=v.length,g=0;y>g;)d=v[g++],n&&!p.call(h,d)||(e[d]=h[d]);return e}:s},function(t,r,e){var n=function(){return this}()||Function("return this")(),o=n.regeneratorRuntime&&Object.getOwnPropertyNames(n).indexOf("regeneratorRuntime")>=0,i=o&&n.regeneratorRuntime;if(n.regeneratorRuntime=void 0,t.exports=e(283),o)n.regeneratorRuntime=i;else try{delete n.regeneratorRuntime}catch(t){n.regeneratorRuntime=void 0}},function(t,r){!function(r){"use strict";var e,n=Object.prototype,o=n.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag",s="object"==typeof t,f=r.regeneratorRuntime;if(f)s&&(t.exports=f);else{(f=r.regeneratorRuntime=s?t.exports:{}).wrap=x;var l="suspendedStart",p="suspendedYield",d="executing",h="completed",v={},y={};y[u]=function(){return this};var g=Object.getPrototypeOf,b=g&&g(g(T([])));b&&b!==n&&o.call(b,u)&&(y=b);var m=O.prototype=w.prototype=Object.create(y);j.prototype=m.constructor=O,O.constructor=j,O[c]=j.displayName="GeneratorFunction",f.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===j||"GeneratorFunction"===(r.displayName||r.name))},f.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,O):(t.__proto__=O,c in t||(t[c]="GeneratorFunction")),t.prototype=Object.create(m),t},f.awrap=function(t){return{__await:t}},A(E.prototype),E.prototype[a]=function(){return this},f.AsyncIterator=E,f.async=function(t,r,e,n){var o=new E(x(t,r,e,n));return f.isGeneratorFunction(r)?o:o.next().then((function(t){return t.done?t.value:o.next()}))},A(m),m[c]="Generator",m[u]=function(){return this},m.toString=function(){return"[object Generator]"},f.keys=function(t){var r=[];for(var e in t)r.push(e);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},f.values=T,R.prototype={constructor:R,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(I),!t)for(var r in this)"t"===r.charAt(0)&&o.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function n(n,o){return a.type="throw",a.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var u=this.tryEntries[i],a=u.completion;if("root"===u.tryLoc)return n("end");if(u.tryLoc<=this.prev){var c=o.call(u,"catchLoc"),s=o.call(u,"finallyLoc");if(c&&s){if(this.prev<u.catchLoc)return n(u.catchLoc,!0);if(this.prev<u.finallyLoc)return n(u.finallyLoc)}else if(c){if(this.prev<u.catchLoc)return n(u.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<u.finallyLoc)return n(u.finallyLoc)}}}},abrupt:function(t,r){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var i=n;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var u=i?i.completion:{};return u.type=t,u.arg=r,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(u)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),v},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.finallyLoc===t)return this.complete(e.completion,e.afterLoc),I(e),v}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc===t){var n=e.completion;if("throw"===n.type){var o=n.arg;I(e)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),v}}}function x(t,r,e,n){var o=r&&r.prototype instanceof w?r:w,i=Object.create(o.prototype),u=new R(n||[]);return i._invoke=function(t,r,e){var n=l;return function(o,i){if(n===d)throw new Error("Generator is already running");if(n===h){if("throw"===o)throw i;return M()}for(e.method=o,e.arg=i;;){var u=e.delegate;if(u){var a=S(u,e);if(a){if(a===v)continue;return a}}if("next"===e.method)e.sent=e._sent=e.arg;else if("throw"===e.method){if(n===l)throw n=h,e.arg;e.dispatchException(e.arg)}else"return"===e.method&&e.abrupt("return",e.arg);n=d;var c=_(t,r,e);if("normal"===c.type){if(n=e.done?h:p,c.arg===v)continue;return{value:c.arg,done:e.done}}"throw"===c.type&&(n=h,e.method="throw",e.arg=c.arg)}}}(t,e,u),i}function _(t,r,e){try{return{type:"normal",arg:t.call(r,e)}}catch(t){return{type:"throw",arg:t}}}function w(){}function j(){}function O(){}function A(t){["next","throw","return"].forEach((function(r){t[r]=function(t){return this._invoke(r,t)}}))}function E(t){var r;this._invoke=function(e,n){function i(){return new Promise((function(r,i){!function r(e,n,i,u){var a=_(t[e],t,n);if("throw"!==a.type){var c=a.arg,s=c.value;return s&&"object"==typeof s&&o.call(s,"__await")?Promise.resolve(s.__await).then((function(t){r("next",t,i,u)}),(function(t){r("throw",t,i,u)})):Promise.resolve(s).then((function(t){c.value=t,i(c)}),u)}u(a.arg)}(e,n,r,i)}))}return r=r?r.then(i,i):i()}}function S(t,r){var n=t.iterator[r.method];if(n===e){if(r.delegate=null,"throw"===r.method){if(t.iterator.return&&(r.method="return",r.arg=e,S(t,r),"throw"===r.method))return v;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return v}var o=_(n,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,v;var i=o.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,v):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,v)}function P(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function I(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function R(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function T(t){if(t){var r=t[u];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function r(){for(;++n<t.length;)if(o.call(t,n))return r.value=t[n],r.done=!1,r;return r.value=e,r.done=!0,r};return i.next=i}}return{next:M}}function M(){return{value:e,done:!0}}}(function(){return this}()||Function("return this")())},function(t,r,e){t.exports={default:e(285),__esModule:!0}},function(t,r,e){e(170),e(61),e(108),e(289),e(297),e(298),t.exports=e(10).Promise},function(t,r,e){"use strict";var n=e(287),o=e(288),i=e(39),u=e(45);t.exports=e(131)(Array,"Array",(function(t,r){this._t=u(t),this._i=0,this._k=r}),(function(){var t=this._t,r=this._k,e=this._i++;return!t||e>=t.length?(this._t=void 0,o(1)):o(0,"keys"==r?e:"values"==r?t[e]:[e,t[e]])}),"values"),i.Arguments=i.Array,n("keys"),n("values"),n("entries")},function(t,r){t.exports=function(){}},function(t,r){t.exports=function(t,r){return{value:r,done:!!t}}},function(t,r,e){"use strict";var n,o,i,u,a=e(49),c=e(9),s=e(38),f=e(110),l=e(18),p=e(23),d=e(53),h=e(290),v=e(291),y=e(145),g=e(146).set,b=e(293)(),m=e(93),x=e(147),_=e(294),w=e(148),j=c.TypeError,O=c.process,A=O&&O.versions,E=A&&A.v8||"",S=c.Promise,P="process"==f(O),I=function(){},R=o=m.f,T=!!function(){try{var t=S.resolve(1),r=(t.constructor={})[e(12)("species")]=function(t){t(I,I)};return(P||"function"==typeof PromiseRejectionEvent)&&t.then(I)instanceof r&&0!==E.indexOf("6.6")&&-1===_.indexOf("Chrome/66")}catch(t){}}(),M=function(t){var r;return!(!p(t)||"function"!=typeof(r=t.then))&&r},k=function(t,r){if(!t._n){t._n=!0;var e=t._c;b((function(){for(var n=t._v,o=1==t._s,i=0,u=function(r){var e,i,u,a=o?r.ok:r.fail,c=r.resolve,s=r.reject,f=r.domain;try{a?(o||(2==t._h&&W(t),t._h=1),!0===a?e=n:(f&&f.enter(),e=a(n),f&&(f.exit(),u=!0)),e===r.promise?s(j("Promise-chain cycle")):(i=M(e))?i.call(e,c,s):c(e)):s(n)}catch(t){f&&!u&&f.exit(),s(t)}};e.length>i;)u(e[i++]);t._c=[],t._n=!1,r&&!t._h&&L(t)}))}},L=function(t){g.call(c,(function(){var r,e,n,o=t._v,i=F(t);if(i&&(r=x((function(){P?O.emit("unhandledRejection",o,t):(e=c.onunhandledrejection)?e({promise:t,reason:o}):(n=c.console)&&n.error&&n.error("Unhandled promise rejection",o)})),t._h=P||F(t)?2:1),t._a=void 0,i&&r.e)throw r.v}))},F=function(t){return 1!==t._h&&0===(t._a||t._c).length},W=function(t){g.call(c,(function(){var r;P?O.emit("rejectionHandled",t):(r=c.onrejectionhandled)&&r({promise:t,reason:t._v})}))},D=function(t){var r=this;r._d||(r._d=!0,(r=r._w||r)._v=t,r._s=2,r._a||(r._a=r._c.slice()),k(r,!0))},B=function(t){var r,e=this;if(!e._d){e._d=!0,e=e._w||e;try{if(e===t)throw j("Promise can't be resolved itself");(r=M(t))?b((function(){var n={_w:e,_d:!1};try{r.call(t,s(B,n,1),s(D,n,1))}catch(t){D.call(n,t)}})):(e._v=t,e._s=1,k(e,!1))}catch(t){D.call({_w:e,_d:!1},t)}}};T||(S=function(t){h(this,S,"Promise","_h"),d(t),n.call(this);try{t(s(B,this,1),s(D,this,1))}catch(t){D.call(this,t)}},(n=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=e(295)(S.prototype,{then:function(t,r){var e=R(y(this,S));return e.ok="function"!=typeof t||t,e.fail="function"==typeof r&&r,e.domain=P?O.domain:void 0,this._c.push(e),this._a&&this._a.push(e),this._s&&k(this,!1),e.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new n;this.promise=t,this.resolve=s(B,t,1),this.reject=s(D,t,1)},m.f=R=function(t){return t===S||t===u?new i(t):o(t)}),l(l.G+l.W+l.F*!T,{Promise:S}),e(62)(S,"Promise"),e(296)("Promise"),u=e(10).Promise,l(l.S+l.F*!T,"Promise",{reject:function(t){var r=R(this);return(0,r.reject)(t),r.promise}}),l(l.S+l.F*(a||!T),"Promise",{resolve:function(t){return w(a&&this===u?S:this,t)}}),l(l.S+l.F*!(T&&e(136)((function(t){S.all(t).catch(I)}))),"Promise",{all:function(t){var r=this,e=R(r),n=e.resolve,o=e.reject,i=x((function(){var e=[],i=0,u=1;v(t,!1,(function(t){var a=i++,c=!1;e.push(void 0),u++,r.resolve(t).then((function(t){c||(c=!0,e[a]=t,--u||n(e))}),o)})),--u||n(e)}));return i.e&&o(i.v),e.promise},race:function(t){var r=this,e=R(r),n=e.reject,o=x((function(){v(t,!1,(function(t){r.resolve(t).then(e.resolve,n)}))}));return o.e&&n(o.v),e.promise}})},function(t,r){t.exports=function(t,r,e,n){if(!(t instanceof r)||void 0!==n&&n in t)throw TypeError(e+": incorrect invocation!");return t}},function(t,r,e){var n=e(38),o=e(134),i=e(135),u=e(17),a=e(82),c=e(109),s={},f={};(r=t.exports=function(t,r,e,l,p){var d,h,v,y,g=p?function(){return t}:c(t),b=n(e,l,r?2:1),m=0;if("function"!=typeof g)throw TypeError(t+" is not iterable!");if(i(g)){for(d=a(t.length);d>m;m++)if((y=r?b(u(h=t[m])[0],h[1]):b(t[m]))===s||y===f)return y}else for(v=g.call(t);!(h=v.next()).done;)if((y=o(v,b,h.value,r))===s||y===f)return y}).BREAK=s,r.RETURN=f},function(t,r){t.exports=function(t,r,e){var n=void 0===e;switch(r.length){case 0:return n?t():t.call(e);case 1:return n?t(r[0]):t.call(e,r[0]);case 2:return n?t(r[0],r[1]):t.call(e,r[0],r[1]);case 3:return n?t(r[0],r[1],r[2]):t.call(e,r[0],r[1],r[2]);case 4:return n?t(r[0],r[1],r[2],r[3]):t.call(e,r[0],r[1],r[2],r[3])}return t.apply(e,r)}},function(t,r,e){var n=e(9),o=e(146).set,i=n.MutationObserver||n.WebKitMutationObserver,u=n.process,a=n.Promise,c="process"==e(48)(u);t.exports=function(){var t,r,e,s=function(){var n,o;for(c&&(n=u.domain)&&n.exit();t;){o=t.fn,t=t.next;try{o()}catch(n){throw t?e():r=void 0,n}}r=void 0,n&&n.enter()};if(c)e=function(){u.nextTick(s)};else if(!i||n.navigator&&n.navigator.standalone)if(a&&a.resolve){var f=a.resolve(void 0);e=function(){f.then(s)}}else e=function(){o.call(n,s)};else{var l=!0,p=document.createTextNode("");new i(s).observe(p,{characterData:!0}),e=function(){p.data=l=!l}}return function(n){var o={fn:n,next:void 0};r&&(r.next=o),t||(t=o,e()),r=o}}},function(t,r,e){var n=e(9).navigator;t.exports=n&&n.userAgent||""},function(t,r,e){var n=e(26);t.exports=function(t,r,e){for(var o in r)e&&t[o]?t[o]=r[o]:n(t,o,r[o]);return t}},function(t,r,e){"use strict";var n=e(9),o=e(10),i=e(21),u=e(19),a=e(12)("species");t.exports=function(t){var r="function"==typeof o[t]?o[t]:n[t];u&&r&&!r[a]&&i.f(r,a,{configurable:!0,get:function(){return this}})}},function(t,r,e){"use strict";var n=e(18),o=e(10),i=e(9),u=e(145),a=e(148);n(n.P+n.R,"Promise",{finally:function(t){var r=u(this,o.Promise||i.Promise),e="function"==typeof t;return this.then(e?function(e){return a(r,t()).then((function(){return e}))}:t,e?function(e){return a(r,t()).then((function(){throw e}))}:t)}})},function(t,r,e){"use strict";var n=e(18),o=e(93),i=e(147);n(n.S,"Promise",{try:function(t){var r=o.f(this),e=i(t);return(e.e?r.reject:r.resolve)(e.v),r.promise}})},,,,,,,,,,,,function(t,r,e){"use strict";var n=e(311);function o(){}function i(){}i.resetWarningCache=o,t.exports=function(){function t(t,r,e,o,i,u){if(u!==n){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function r(){return t}t.isRequired=t;var e={array:t,bool:t,func:t,number:t,object:t,string:t,symbol:t,any:t,arrayOf:r,element:t,elementType:t,instanceOf:r,node:t,objectOf:r,oneOf:r,oneOfType:r,shape:r,exact:r,checkPropTypes:i,resetWarningCache:o};return e.PropTypes=e,e}},function(t,r,e){"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(t,r){t.exports=function(t){if(!t.webpackPolyfill){var r=Object.create(t);r.children||(r.children=[]),Object.defineProperty(r,"loaded",{enumerable:!0,get:function(){return r.l}}),Object.defineProperty(r,"id",{enumerable:!0,get:function(){return r.i}}),Object.defineProperty(r,"exports",{enumerable:!0}),r.webpackPolyfill=1}return r}},function(t,r,e){var n=e(151),o=e(174),i=e(314),u=e(152),a=e(315),c=e(103),s=200;t.exports=function(t,r,e){var f=-1,l=o,p=t.length,d=!0,h=[],v=h;if(e)d=!1,l=i;else if(p>=s){var y=r?null:a(t);if(y)return c(y);d=!1,l=u,v=new n}else v=r?[]:h;t:for(;++f<p;){var g=t[f],b=r?r(g):g;if(g=e||0!==g?g:0,d&&b==b){for(var m=v.length;m--;)if(v[m]===b)continue t;r&&v.push(b),h.push(g)}else l(v,b,e)||(v!==h&&v.push(b),h.push(g))}return h}},function(t,r){t.exports=function(t,r,e){for(var n=-1,o=null==t?0:t.length;++n<o;)if(e(r,t[n]))return!0;return!1}},function(t,r,e){var n=e(153),o=e(8),i=e(103),u=n&&1/i(new n([,-0]))[1]==1/0?function(t){return new n(t)}:o;t.exports=u},function(t,r,e){var n=e(317),o=e(319);t.exports=function(t,r,e){return n(o,t,r,e)}},function(t,r,e){var n=e(318),o=e(176),i=Array.prototype.push;function u(t,r){return 2==r?function(r,e){return t(r,e)}:function(r){return t(r)}}function a(t){for(var r=t?t.length:0,e=Array(r);r--;)e[r]=t[r];return e}function c(t,r){return function(){var e=arguments.length;if(e){for(var n=Array(e);e--;)n[e]=arguments[e];var o=n[0]=r.apply(void 0,n);return t.apply(void 0,n),o}}}t.exports=function t(r,e,s,f){var l="function"==typeof e,p=e===Object(e);if(p&&(f=s,s=e,e=void 0),null==s)throw new TypeError;f||(f={});var d={cap:!("cap"in f)||f.cap,curry:!("curry"in f)||f.curry,fixed:!("fixed"in f)||f.fixed,immutable:!("immutable"in f)||f.immutable,rearg:!("rearg"in f)||f.rearg},h=l?s:o,v="curry"in f&&f.curry,y="fixed"in f&&f.fixed,g="rearg"in f&&f.rearg,b=l?s.runInContext():void 0,m=l?s:{ary:r.ary,assign:r.assign,clone:r.clone,curry:r.curry,forEach:r.forEach,isArray:r.isArray,isError:r.isError,isFunction:r.isFunction,isWeakMap:r.isWeakMap,iteratee:r.iteratee,keys:r.keys,rearg:r.rearg,toInteger:r.toInteger,toPath:r.toPath},x=m.ary,_=m.assign,w=m.clone,j=m.curry,O=m.forEach,A=m.isArray,E=m.isError,S=m.isFunction,P=m.isWeakMap,I=m.keys,R=m.rearg,T=m.toInteger,M=m.toPath,k=I(n.aryMethod),L={castArray:function(t){return function(){var r=arguments[0];return A(r)?t(a(r)):t.apply(void 0,arguments)}},iteratee:function(t){return function(){var r=arguments[0],e=arguments[1],n=t(r,e),o=n.length;return d.cap&&"number"==typeof e?(e=e>2?e-2:1,o&&o<=e?n:u(n,e)):n}},mixin:function(t){return function(r){var e=this;if(!S(e))return t(e,Object(r));var n=[];return O(I(r),(function(t){S(r[t])&&n.push([t,e.prototype[t]])})),t(e,Object(r)),O(n,(function(t){var r=t[1];S(r)?e.prototype[t[0]]=r:delete e.prototype[t[0]]})),e}},nthArg:function(t){return function(r){var e=r<0?1:T(r)+1;return j(t(r),e)}},rearg:function(t){return function(r,e){var n=e?e.length:0;return j(t(r,e),n)}},runInContext:function(e){return function(n){return t(r,e(n),f)}}};function F(t,r){if(d.cap){var e=n.iterateeRearg[t];if(e)return function(t,r){return N(t,(function(t){var e=r.length;return function(t,r){return 2==r?function(r,e){return t.apply(void 0,arguments)}:function(r){return t.apply(void 0,arguments)}}(R(u(t,e),r),e)}))}(r,e);var o=!l&&n.iterateeAry[t];if(o)return function(t,r){return N(t,(function(t){return"function"==typeof t?u(t,r):t}))}(r,o)}return r}function W(t,r,e){if(d.fixed&&(y||!n.skipFixed[t])){var o=n.methodSpread[t],u=o&&o.start;return void 0===u?x(r,e):function(t,r){return function(){for(var e=arguments.length,n=e-1,o=Array(e);e--;)o[e]=arguments[e];var u=o[r],a=o.slice(0,r);return u&&i.apply(a,u),r!=n&&i.apply(a,o.slice(r+1)),t.apply(this,a)}}(r,u)}return r}function D(t,r,e){return d.rearg&&e>1&&(g||!n.skipRearg[t])?R(r,n.methodRearg[t]||n.aryRearg[e]):r}function B(t,r){for(var e=-1,n=(r=M(r)).length,o=n-1,i=w(Object(t)),u=i;null!=u&&++e<n;){var a=r[e],c=u[a];null==c||S(c)||E(c)||P(c)||(u[a]=w(e==o?c:Object(c))),u=u[a]}return i}function C(r,e){var o=n.aliasToReal[r]||r,i=n.remap[o]||o,u=f;return function(r){var n=l?b:m,a=l?b[i]:e,c=_(_({},u),r);return t(n,o,a,c)}}function N(t,r){return function(){var e=arguments.length;if(!e)return t();for(var n=Array(e);e--;)n[e]=arguments[e];var o=d.rearg?0:e-1;return n[o]=r(n[o]),t.apply(void 0,n)}}function U(t,r,e){var o,i=n.aliasToReal[t]||t,u=r,s=L[i];return s?u=s(r):d.immutable&&(n.mutate.array[i]?u=c(r,a):n.mutate.object[i]?u=c(r,function(t){return function(r){return t({},r)}}(r)):n.mutate.set[i]&&(u=c(r,B))),O(k,(function(t){return O(n.aryMethod[t],(function(r){if(i==r){var e=n.methodSpread[i],a=e&&e.afterRearg;return o=a?W(i,D(i,u,t),t):D(i,W(i,u,t),t),o=function(t,r,e){return v||d.curry&&e>1?j(r,e):r}(0,o=F(i,o),t),!1}})),!o})),o||(o=u),o==r&&(o=v?j(o,1):function(){return r.apply(this,arguments)}),o.convert=C(i,r),o.placeholder=r.placeholder=e,o}if(!p)return U(e,s,h);var z=s,V=[];return O(k,(function(t){O(n.aryMethod[t],(function(t){var r=z[n.remap[t]||t];r&&V.push([t,U(t,r,z)])}))})),O(I(z),(function(t){var r=z[t];if("function"==typeof r){for(var e=V.length;e--;)if(V[e][0]==t)return;r.convert=C(t,r),V.push([t,r])}})),O(V,(function(t){z[t[0]]=t[1]})),z.convert=function(t){return z.runInContext.convert(t)(void 0)},z.placeholder=z,O(I(z),(function(t){O(n.realToAlias[t]||[],(function(r){z[r]=z[t]}))})),z}},function(t,r){r.aliasToReal={each:"forEach",eachRight:"forEachRight",entries:"toPairs",entriesIn:"toPairsIn",extend:"assignIn",extendAll:"assignInAll",extendAllWith:"assignInAllWith",extendWith:"assignInWith",first:"head",conforms:"conformsTo",matches:"isMatch",property:"get",__:"placeholder",F:"stubFalse",T:"stubTrue",all:"every",allPass:"overEvery",always:"constant",any:"some",anyPass:"overSome",apply:"spread",assoc:"set",assocPath:"set",complement:"negate",compose:"flowRight",contains:"includes",dissoc:"unset",dissocPath:"unset",dropLast:"dropRight",dropLastWhile:"dropRightWhile",equals:"isEqual",identical:"eq",indexBy:"keyBy",init:"initial",invertObj:"invert",juxt:"over",omitAll:"omit",nAry:"ary",path:"get",pathEq:"matchesProperty",pathOr:"getOr",paths:"at",pickAll:"pick",pipe:"flow",pluck:"map",prop:"get",propEq:"matchesProperty",propOr:"getOr",props:"at",symmetricDifference:"xor",symmetricDifferenceBy:"xorBy",symmetricDifferenceWith:"xorWith",takeLast:"takeRight",takeLastWhile:"takeRightWhile",unapply:"rest",unnest:"flatten",useWith:"overArgs",where:"conformsTo",whereEq:"isMatch",zipObj:"zipObject"},r.aryMethod={1:["assignAll","assignInAll","attempt","castArray","ceil","create","curry","curryRight","defaultsAll","defaultsDeepAll","floor","flow","flowRight","fromPairs","invert","iteratee","memoize","method","mergeAll","methodOf","mixin","nthArg","over","overEvery","overSome","rest","reverse","round","runInContext","spread","template","trim","trimEnd","trimStart","uniqueId","words","zipAll"],2:["add","after","ary","assign","assignAllWith","assignIn","assignInAllWith","at","before","bind","bindAll","bindKey","chunk","cloneDeepWith","cloneWith","concat","conformsTo","countBy","curryN","curryRightN","debounce","defaults","defaultsDeep","defaultTo","delay","difference","divide","drop","dropRight","dropRightWhile","dropWhile","endsWith","eq","every","filter","find","findIndex","findKey","findLast","findLastIndex","findLastKey","flatMap","flatMapDeep","flattenDepth","forEach","forEachRight","forIn","forInRight","forOwn","forOwnRight","get","groupBy","gt","gte","has","hasIn","includes","indexOf","intersection","invertBy","invoke","invokeMap","isEqual","isMatch","join","keyBy","lastIndexOf","lt","lte","map","mapKeys","mapValues","matchesProperty","maxBy","meanBy","merge","mergeAllWith","minBy","multiply","nth","omit","omitBy","overArgs","pad","padEnd","padStart","parseInt","partial","partialRight","partition","pick","pickBy","propertyOf","pull","pullAll","pullAt","random","range","rangeRight","rearg","reject","remove","repeat","restFrom","result","sampleSize","some","sortBy","sortedIndex","sortedIndexOf","sortedLastIndex","sortedLastIndexOf","sortedUniqBy","split","spreadFrom","startsWith","subtract","sumBy","take","takeRight","takeRightWhile","takeWhile","tap","throttle","thru","times","trimChars","trimCharsEnd","trimCharsStart","truncate","union","uniqBy","uniqWith","unset","unzipWith","without","wrap","xor","zip","zipObject","zipObjectDeep"],3:["assignInWith","assignWith","clamp","differenceBy","differenceWith","findFrom","findIndexFrom","findLastFrom","findLastIndexFrom","getOr","includesFrom","indexOfFrom","inRange","intersectionBy","intersectionWith","invokeArgs","invokeArgsMap","isEqualWith","isMatchWith","flatMapDepth","lastIndexOfFrom","mergeWith","orderBy","padChars","padCharsEnd","padCharsStart","pullAllBy","pullAllWith","rangeStep","rangeStepRight","reduce","reduceRight","replace","set","slice","sortedIndexBy","sortedLastIndexBy","transform","unionBy","unionWith","update","xorBy","xorWith","zipWith"],4:["fill","setWith","updateWith"]},r.aryRearg={2:[1,0],3:[2,0,1],4:[3,2,0,1]},r.iterateeAry={dropRightWhile:1,dropWhile:1,every:1,filter:1,find:1,findFrom:1,findIndex:1,findIndexFrom:1,findKey:1,findLast:1,findLastFrom:1,findLastIndex:1,findLastIndexFrom:1,findLastKey:1,flatMap:1,flatMapDeep:1,flatMapDepth:1,forEach:1,forEachRight:1,forIn:1,forInRight:1,forOwn:1,forOwnRight:1,map:1,mapKeys:1,mapValues:1,partition:1,reduce:2,reduceRight:2,reject:1,remove:1,some:1,takeRightWhile:1,takeWhile:1,times:1,transform:2},r.iterateeRearg={mapKeys:[1],reduceRight:[1,0]},r.methodRearg={assignInAllWith:[1,0],assignInWith:[1,2,0],assignAllWith:[1,0],assignWith:[1,2,0],differenceBy:[1,2,0],differenceWith:[1,2,0],getOr:[2,1,0],intersectionBy:[1,2,0],intersectionWith:[1,2,0],isEqualWith:[1,2,0],isMatchWith:[2,1,0],mergeAllWith:[1,0],mergeWith:[1,2,0],padChars:[2,1,0],padCharsEnd:[2,1,0],padCharsStart:[2,1,0],pullAllBy:[2,1,0],pullAllWith:[2,1,0],rangeStep:[1,2,0],rangeStepRight:[1,2,0],setWith:[3,1,2,0],sortedIndexBy:[2,1,0],sortedLastIndexBy:[2,1,0],unionBy:[1,2,0],unionWith:[1,2,0],updateWith:[3,1,2,0],xorBy:[1,2,0],xorWith:[1,2,0],zipWith:[1,2,0]},r.methodSpread={assignAll:{start:0},assignAllWith:{start:0},assignInAll:{start:0},assignInAllWith:{start:0},defaultsAll:{start:0},defaultsDeepAll:{start:0},invokeArgs:{start:2},invokeArgsMap:{start:2},mergeAll:{start:0},mergeAllWith:{start:0},partial:{start:1},partialRight:{start:1},without:{start:1},zipAll:{start:0}},r.mutate={array:{fill:!0,pull:!0,pullAll:!0,pullAllBy:!0,pullAllWith:!0,pullAt:!0,remove:!0,reverse:!0},object:{assign:!0,assignAll:!0,assignAllWith:!0,assignIn:!0,assignInAll:!0,assignInAllWith:!0,assignInWith:!0,assignWith:!0,defaults:!0,defaultsAll:!0,defaultsDeep:!0,defaultsDeepAll:!0,merge:!0,mergeAll:!0,mergeAllWith:!0,mergeWith:!0},set:{set:!0,setWith:!0,unset:!0,update:!0,updateWith:!0}},r.realToAlias=function(){var t=Object.prototype.hasOwnProperty,e=r.aliasToReal,n={};for(var o in e){var i=e[o];t.call(n,i)?n[i].push(o):n[i]=[o]}return n}(),r.remap={assignAll:"assign",assignAllWith:"assignWith",assignInAll:"assignIn",assignInAllWith:"assignInWith",curryN:"curry",curryRightN:"curryRight",defaultsAll:"defaults",defaultsDeepAll:"defaultsDeep",findFrom:"find",findIndexFrom:"findIndex",findLastFrom:"findLast",findLastIndexFrom:"findLastIndex",getOr:"get",includesFrom:"includes",indexOfFrom:"indexOf",invokeArgs:"invoke",invokeArgsMap:"invokeMap",lastIndexOfFrom:"lastIndexOf",mergeAll:"merge",mergeAllWith:"mergeWith",padChars:"pad",padCharsEnd:"padEnd",padCharsStart:"padStart",propertyOf:"get",rangeStep:"range",rangeStepRight:"rangeRight",restFrom:"rest",spreadFrom:"spread",trimChars:"trim",trimCharsEnd:"trimEnd",trimCharsStart:"trimStart",zipAll:"zip"},r.skipFixed={castArray:!0,flow:!0,flowRight:!0,iteratee:!0,mixin:!0,rearg:!0,runInContext:!0},r.skipRearg={add:!0,assign:!0,assignIn:!0,bind:!0,bindKey:!0,concat:!0,difference:!0,divide:!0,eq:!0,gt:!0,gte:!0,isEqual:!0,lt:!0,lte:!0,matchesProperty:!0,merge:!0,multiply:!0,overArgs:!0,partial:!0,partialRight:!0,propertyOf:!0,random:!0,range:!0,rangeRight:!0,subtract:!0,zip:!0,zipObject:!0,zipObjectDeep:!0}},function(t,r,e){t.exports={ary:e(320),assign:e(189),clone:e(337),curry:e(195),forEach:e(117),isArray:e(6),isError:e(356),isFunction:e(94),isWeakMap:e(358),iteratee:e(359),keys:e(95),rearg:e(360),toInteger:e(86),toPath:e(362)}},function(t,r,e){var n=e(104),o=128;t.exports=function(t,r,e){return r=e?void 0:r,r=t&&null==r?t.length:r,n(t,o,void 0,void 0,void 0,void 0,r)}},function(t,r,e){var n=e(72),o=e(11),i=1;t.exports=function(t,r,e){var u=r&i,a=n(t);return function r(){return(this&&this!==o&&this instanceof r?a:t).apply(u?e:this,arguments)}}},function(t,r,e){var n=e(114),o=e(72),i=e(179),u=e(182),a=e(156),c=e(105),s=e(11);t.exports=function(t,r,e){var f=o(t);return function o(){for(var l=arguments.length,p=Array(l),d=l,h=a(o);d--;)p[d]=arguments[d];var v=l<3&&p[0]!==h&&p[l-1]!==h?[]:c(p,h);return(l-=v.length)<e?u(t,r,i,o.placeholder,void 0,p,v,void 0,void 0,e-l):n(this&&this!==s&&this instanceof o?f:t,this,p)}}},function(t,r){t.exports=function(t,r){for(var e=t.length,n=0;e--;)t[e]===r&&++n;return n}},function(t,r,e){var n=e(115),o=e(183),i=e(325),u=e(327);t.exports=function(t){var r=i(t),e=u[r];if("function"!=typeof e||!(r in n.prototype))return!1;if(t===e)return!0;var a=o(e);return!!a&&t===a[0]}},function(t,r,e){var n=e(326),o=Object.prototype.hasOwnProperty;t.exports=function(t){for(var r=t.name+"",e=n[r],i=o.call(n,r)?e.length:0;i--;){var u=e[i],a=u.func;if(null==a||a==t)return u.name}return r}},function(t,r){t.exports={}},function(t,r,e){var n=e(115),o=e(184),i=e(116),u=e(6),a=e(14),c=e(328),s=Object.prototype.hasOwnProperty;function f(t){if(a(t)&&!u(t)&&!(t instanceof n)){if(t instanceof o)return t;if(s.call(t,"__wrapped__"))return c(t)}return new o(t)}f.prototype=i.prototype,f.prototype.constructor=f,t.exports=f},function(t,r,e){var n=e(115),o=e(184),i=e(74);t.exports=function(t){if(t instanceof n)return t.clone();var r=new o(t.__wrapped__,t.__chain__);return r.__actions__=i(t.__actions__),r.__index__=t.__index__,r.__values__=t.__values__,r}},function(t,r){var e=/\{\n\/\* \[wrapped with (.+)\] \*/,n=/,? & /;t.exports=function(t){var r=t.match(e);return r?r[1].split(n):[]}},function(t,r){var e=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;t.exports=function(t,r){var n=r.length;if(!n)return t;var o=n-1;return r[o]=(n>1?"& ":"")+r[o],r=r.join(n>2?", ":" "),t.replace(e,"{\n/* [wrapped with "+r+"] */\n")}},function(t,r,e){var n=e(332),o=e(188),i=e(52),u=o?function(t,r){return o(t,"toString",{configurable:!0,enumerable:!1,value:n(r),writable:!0})}:i;t.exports=u},function(t,r){t.exports=function(t){return function(){return t}}},function(t,r,e){var n=e(117),o=e(174),i=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]];t.exports=function(t,r){return n(i,(function(e){var n="_."+e[0];r&e[1]&&!o(t,n)&&t.push(n)})),t.sort()}},function(t,r,e){var n=e(74),o=e(75),i=Math.min;t.exports=function(t,r){for(var e=t.length,u=i(r.length,e),a=n(t);u--;){var c=r[u];t[u]=o(c,e)?a[c]:void 0}return t}},function(t,r,e){var n=e(114),o=e(72),i=e(11),u=1;t.exports=function(t,r,e,a){var c=r&u,s=o(t);return function r(){for(var o=-1,u=arguments.length,f=-1,l=a.length,p=Array(l+u),d=this&&this!==i&&this instanceof r?s:t;++f<l;)p[f]=a[f];for(;u--;)p[f++]=arguments[++o];return n(d,c?e:this,p)}}},function(t,r,e){var n=e(180),o=e(181),i=e(105),u="__lodash_placeholder__",a=1,c=2,s=4,f=8,l=128,p=256,d=Math.min;t.exports=function(t,r){var e=t[1],h=r[1],v=e|h,y=v<(a|c|l),g=h==l&&e==f||h==l&&e==p&&t[7].length<=r[8]||h==(l|p)&&r[7].length<=r[8]&&e==f;if(!y&&!g)return t;h&a&&(t[2]=r[2],v|=e&a?0:s);var b=r[3];if(b){var m=t[3];t[3]=m?n(m,b,r[4]):b,t[4]=m?i(t[3],u):r[4]}return(b=r[5])&&(m=t[5],t[5]=m?o(m,b,r[6]):b,t[6]=m?i(t[5],u):r[6]),(b=r[7])&&(t[7]=b),h&l&&(t[8]=null==t[8]?r[8]:d(t[8],r[8])),null==t[9]&&(t[9]=r[9]),t[0]=r[0],t[1]=v,t}},function(t,r,e){var n=e(192),o=4;t.exports=function(t){return n(t,o)}},function(t,r,e){var n=e(76),o=e(193);t.exports=function(t,r){return t&&n(r,o(r),t)}},function(t,r,e){var n=e(22),o=e(64),i=e(340),u=Object.prototype.hasOwnProperty;t.exports=function(t){if(!n(t))return i(t);var r=o(t),e=[];for(var a in t)("constructor"!=a||!r&&u.call(t,a))&&e.push(a);return e}},function(t,r){t.exports=function(t){var r=[];if(null!=t)for(var e in Object(t))r.push(e);return r}},function(t,r,e){(function(t){var n=e(11),o=r&&!r.nodeType&&r,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,u=i&&i.exports===o?n.Buffer:void 0,a=u?u.allocUnsafe:void 0;t.exports=function(t,r){if(r)return t.slice();var e=t.length,n=a?a(e):new t.constructor(e);return t.copy(n),n}}).call(this,e(66)(t))},function(t,r,e){var n=e(76),o=e(106);t.exports=function(t,r){return n(t,o(t),r)}},function(t,r,e){var n=e(76),o=e(194);t.exports=function(t,r){return n(t,o(t),r)}},function(t,r,e)
|