LiveChat – WP live chat plugin for WordPress - Version 4.5.0

Version Description

  • compatibility with the Elementor plugin
  • bug fixes
Download this release

Release Info

Developer livechat
Plugin Icon 128x128 LiveChat – WP live chat plugin for WordPress
Version 4.5.0
Comparing to
See all releases

Code changes from version 4.4.10 to 4.5.0

Files changed (57) hide show
  1. changelog.txt +4 -0
  2. composer.json +1 -1
  3. composer.lock +15 -14
  4. config.php +1 -0
  5. languages/livechat-elementor.pot +87 -9
  6. languages/livechat-woocommerce.pot +84 -9
  7. languages/wp-live-chat-software-for-wordpress.pot +85 -10
  8. livechat.php +11 -7
  9. plugin_files/LiveChat.class.php +5 -0
  10. plugin_files/Services/ConnectTokenProvider.class.php +3 -3
  11. plugin_files/Services/Elementor/Dependencies/ContactButtonWidgetDependencies.class.php +36 -0
  12. plugin_files/Services/Elementor/Dependencies/QualityBadgeWidgetDependencies.class.php +36 -0
  13. plugin_files/Services/Elementor/Dependencies/Scripts/ContactButtonScriptDependency.class.php +32 -0
  14. plugin_files/Services/Elementor/Dependencies/Scripts/QualityBadgeScriptDependency.class.php +32 -0
  15. plugin_files/Services/Elementor/Dependencies/Scripts/ScriptDependency.class.php +197 -0
  16. plugin_files/Services/Elementor/Dependencies/Styles/ContactButtonStyleDependency.class.php +27 -0
  17. plugin_files/Services/Elementor/Dependencies/Styles/QualityBadgeStyleDependency.class.php +27 -0
  18. plugin_files/Services/Elementor/Dependencies/Styles/StyleDependency.class.php +116 -0
  19. plugin_files/Services/Elementor/Dependencies/WidgetDependencies.class.php +89 -0
  20. plugin_files/Services/Elementor/ElementorWidgetsProvider.class.php +151 -0
  21. plugin_files/Services/Elementor/Factories/ElementorWidgetsFactory.class.php +42 -0
  22. plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php +171 -0
  23. plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php +118 -0
  24. plugin_files/Services/MenuProvider.class.php +6 -6
  25. plugin_files/Services/Options/Elementor/ContactButtonWidgetURL.class.php +27 -0
  26. plugin_files/Services/Options/Elementor/ElementorWidgetsOptions.class.php +39 -0
  27. plugin_files/Services/Options/Elementor/QualityBadgeWidgetURL.class.php +27 -0
  28. plugin_files/Services/Options/SettingsOptions.class.php +8 -6
  29. plugin_files/Services/PlatformProvider.class.php +4 -4
  30. plugin_files/Services/TemplateParser.class.php +2 -2
  31. plugin_files/Services/Templates/ChatWidgetScriptTemplate.class.php +14 -10
  32. plugin_files/Services/Templates/CustomerTrackingTemplate.class.php +7 -4
  33. plugin_files/Services/Templates/NoticeTemplate.class.php +17 -13
  34. plugin_files/Services/Templates/SettingsTemplate.class.php +11 -7
  35. plugin_files/Services/Templates/Template.class.php +12 -3
  36. plugin_files/Services/Templates/TrackingCodeTemplate.class.php +7 -5
  37. plugin_files/Services/Templates/{ContactButtonWidgetTemplate.class.php → Widgets/ContactButtonWidgetTemplate.class.php} +8 -6
  38. plugin_files/Services/Templates/Widgets/Previews/ContactButtonPreviewWidgetTemplate.class.php +39 -0
  39. plugin_files/Services/Templates/Widgets/QualityBadgeWidgetTemplate.class.php +37 -0
  40. plugin_files/Services/TokenValidator.class.php +2 -2
  41. plugin_files/Services/WidgetProvider.class.php +2 -2
  42. plugin_files/Services/WooCommerce/CustomerTrackingProvider.class.php +1 -1
  43. plugin_files/css/livechat-contact-button.css +4 -0
  44. plugin_files/css/livechat-icons.css +27 -0
  45. plugin_files/css/livechat-quality-badge.css +4 -0
  46. plugin_files/fonts/livechat-icons.eot +0 -0
  47. plugin_files/fonts/livechat-icons.ttf +0 -0
  48. plugin_files/fonts/livechat-icons.woff +0 -0
  49. plugin_files/templates/contact_button_widget.html.twig +0 -3
  50. plugin_files/templates/widgets/contact_button_widget.html.twig +1 -0
  51. plugin_files/templates/widgets/previews/contact_button_preview_widget.html +1 -0
  52. plugin_files/templates/widgets/quality_badge_widget.html.twig +1 -0
  53. readme.txt +5 -1
  54. vendor/autoload.php +1 -1
  55. vendor/composer/autoload_classmap.php +19 -47
  56. vendor/composer/autoload_real.php +4 -4
  57. vendor/composer/autoload_static.php +23 -51
changelog.txt CHANGED
@@ -1,5 +1,9 @@
1
  == Changelog ==
2
 
 
 
 
 
3
  = 4.4.10 =
4
  * bug fixes
5
 
1
  == Changelog ==
2
 
3
+ = 4.5.0 =
4
+ * compatibility with the Elementor plugin
5
+ * bug fixes
6
+
7
  = 4.4.10 =
8
  * bug fixes
9
 
composer.json CHANGED
@@ -16,7 +16,7 @@
16
  },
17
  "require-dev": {
18
  "squizlabs/php_codesniffer": "*",
19
- "dealerdirect/phpcodesniffer-composer-installer": "^0.5.0",
20
  "wp-coding-standards/wpcs": "^2.3.0",
21
  "phpunit/phpunit": "~5.7.27",
22
  "brain/monkey": "^2.4.0",
16
  },
17
  "require-dev": {
18
  "squizlabs/php_codesniffer": "*",
19
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7.1",
20
  "wp-coding-standards/wpcs": "^2.3.0",
21
  "phpunit/phpunit": "~5.7.27",
22
  "brain/monkey": "^2.4.0",
composer.lock CHANGED
@@ -4,7 +4,7 @@
4
  "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5
  "This file is @generated automatically"
6
  ],
7
- "content-hash": "5ecd6538430bf3f9c48d4a17fb8a0e74",
8
  "packages": [
9
  {
10
  "name": "firebase/php-jwt",
@@ -173,22 +173,22 @@
173
  },
174
  {
175
  "name": "dealerdirect/phpcodesniffer-composer-installer",
176
- "version": "v0.5.0",
177
  "source": {
178
  "type": "git",
179
  "url": "https://github.com/Dealerdirect/phpcodesniffer-composer-installer.git",
180
- "reference": "e749410375ff6fb7a040a68878c656c2e610b132"
181
  },
182
  "dist": {
183
  "type": "zip",
184
- "url": "https://api.github.com/repos/Dealerdirect/phpcodesniffer-composer-installer/zipball/e749410375ff6fb7a040a68878c656c2e610b132",
185
- "reference": "e749410375ff6fb7a040a68878c656c2e610b132",
186
  "shasum": ""
187
  },
188
  "require": {
189
- "composer-plugin-api": "^1.0",
190
- "php": "^5.3|^7",
191
- "squizlabs/php_codesniffer": "^2|^3"
192
  },
193
  "require-dev": {
194
  "composer/composer": "*",
@@ -235,7 +235,7 @@
235
  "stylecheck",
236
  "tests"
237
  ],
238
- "time": "2018-10-26T13:21:45+00:00"
239
  },
240
  {
241
  "name": "doctrine/instantiator",
@@ -1683,6 +1683,7 @@
1683
  ],
1684
  "description": "Provides a list of PHP built-in functions that operate on resources",
1685
  "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
 
1686
  "time": "2015-07-28T20:34:47+00:00"
1687
  },
1688
  {
@@ -1730,16 +1731,16 @@
1730
  },
1731
  {
1732
  "name": "squizlabs/php_codesniffer",
1733
- "version": "3.6.0",
1734
  "source": {
1735
  "type": "git",
1736
  "url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
1737
- "reference": "ffced0d2c8fa8e6cdc4d695a743271fab6c38625"
1738
  },
1739
  "dist": {
1740
  "type": "zip",
1741
- "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ffced0d2c8fa8e6cdc4d695a743271fab6c38625",
1742
- "reference": "ffced0d2c8fa8e6cdc4d695a743271fab6c38625",
1743
  "shasum": ""
1744
  },
1745
  "require": {
@@ -1777,7 +1778,7 @@
1777
  "phpcs",
1778
  "standards"
1779
  ],
1780
- "time": "2021-04-09T00:54:41+00:00"
1781
  },
1782
  {
1783
  "name": "symfony/polyfill-ctype",
4
  "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5
  "This file is @generated automatically"
6
  ],
7
+ "content-hash": "47ead0e335bfb447fae82e28d758b03c",
8
  "packages": [
9
  {
10
  "name": "firebase/php-jwt",
173
  },
174
  {
175
  "name": "dealerdirect/phpcodesniffer-composer-installer",
176
+ "version": "v0.7.1",
177
  "source": {
178
  "type": "git",
179
  "url": "https://github.com/Dealerdirect/phpcodesniffer-composer-installer.git",
180
+ "reference": "fe390591e0241955f22eb9ba327d137e501c771c"
181
  },
182
  "dist": {
183
  "type": "zip",
184
+ "url": "https://api.github.com/repos/Dealerdirect/phpcodesniffer-composer-installer/zipball/fe390591e0241955f22eb9ba327d137e501c771c",
185
+ "reference": "fe390591e0241955f22eb9ba327d137e501c771c",
186
  "shasum": ""
187
  },
188
  "require": {
189
+ "composer-plugin-api": "^1.0 || ^2.0",
190
+ "php": ">=5.3",
191
+ "squizlabs/php_codesniffer": "^2.0 || ^3.0 || ^4.0"
192
  },
193
  "require-dev": {
194
  "composer/composer": "*",
235
  "stylecheck",
236
  "tests"
237
  ],
238
+ "time": "2020-12-07T18:04:37+00:00"
239
  },
240
  {
241
  "name": "doctrine/instantiator",
1683
  ],
1684
  "description": "Provides a list of PHP built-in functions that operate on resources",
1685
  "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
1686
+ "abandoned": true,
1687
  "time": "2015-07-28T20:34:47+00:00"
1688
  },
1689
  {
1731
  },
1732
  {
1733
  "name": "squizlabs/php_codesniffer",
1734
+ "version": "3.6.1",
1735
  "source": {
1736
  "type": "git",
1737
  "url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
1738
+ "reference": "f268ca40d54617c6e06757f83f699775c9b3ff2e"
1739
  },
1740
  "dist": {
1741
  "type": "zip",
1742
+ "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/f268ca40d54617c6e06757f83f699775c9b3ff2e",
1743
+ "reference": "f268ca40d54617c6e06757f83f699775c9b3ff2e",
1744
  "shasum": ""
1745
  },
1746
  "require": {
1778
  "phpcs",
1779
  "standards"
1780
  ],
1781
+ "time": "2021-10-11T04:00:11+00:00"
1782
  },
1783
  {
1784
  "name": "symfony/polyfill-ctype",
config.php CHANGED
@@ -10,6 +10,7 @@ define( 'LC_RESOURCES_URL', 'https://www.livechat.com/wp-resources-integration/'
10
  define( 'LC_APP_URL_PATTERN', 'https://connect.livechatinc.com/%s/%s%s' );
11
  define( 'LC_API_URL_PATTERN', 'https://%s.livechatinc.com' );
12
  define( 'LC_WIDGET_URL_REGEX', '/^https:\/\/connect(-eu)?\.livechatinc\.com\/api\/v1\/script\/([a-z]|[A-Z]|[0-9]|[-]){36}\/widget\.js(\?lcv=([a-z]|[A-Z]|[0-9]|[-]){36})?$/' );
 
13
  define( 'LC_AA_URL', 'https://my.livechatinc.com' );
14
  define( 'CONNECT_BRIDGE_SCRIPT_URL', 'https://cdn.livechat-static.com/integrations/integrations-connect/connect-bridge.js' );
15
 
10
  define( 'LC_APP_URL_PATTERN', 'https://connect.livechatinc.com/%s/%s%s' );
11
  define( 'LC_API_URL_PATTERN', 'https://%s.livechatinc.com' );
12
  define( 'LC_WIDGET_URL_REGEX', '/^https:\/\/connect(-eu)?\.livechatinc\.com\/api\/v1\/script\/([a-z]|[A-Z]|[0-9]|[-]){36}\/widget\.js(\?lcv=([a-z]|[A-Z]|[0-9]|[-]){36})?$/' );
13
+ define( 'ELEMENTOR_WIDGET_URL_REGEX', '/^https:\/\/connect(-eu)?\.livechatinc\.com\/api\/v1\/script\/([a-z]|[A-Z]|[0-9]|[-]){36}\/%s\.js$/' );
14
  define( 'LC_AA_URL', 'https://my.livechatinc.com' );
15
  define( 'CONNECT_BRIDGE_SCRIPT_URL', 'https://cdn.livechat-static.com/integrations/integrations-connect/connect-bridge.js' );
16
 
languages/livechat-elementor.pot CHANGED
@@ -2,26 +2,105 @@
2
  msgid ""
3
  msgstr ""
4
  "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
5
- "Project-Id-Version: LiveChat\n"
6
- "POT-Creation-Date: 2021-09-26 20:55+0200\n"
7
- "PO-Revision-Date: 2020-07-21 11:47+0200\n"
8
  "Last-Translator: LiveChat, Inc <apps@livechatinc.com>\n"
9
  "Language-Team: LiveChat, Inc <apps@livechatinc.com>\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
- "X-Generator: Poedit 3.0\n"
14
  "X-Poedit-Basepath: ..\n"
15
  "X-Poedit-Flags-xgettext: --add-comments=translators:\n"
16
  "X-Poedit-WPHeader: elementor-livechat.php\n"
17
  "X-Poedit-SourceCharset: UTF-8\n"
18
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
19
- "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;"
20
- "_n_noop:1,2;_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
21
  "X-Poedit-SearchPath-0: .\n"
22
  "X-Poedit-SearchPathExcluded-0: *.min.js\n"
23
  "X-Poedit-SearchPathExcluded-1: vendor\n"
24
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
25
  #: plugin_files/Services/MenuProvider.class.php:155
26
  #: plugin_files/Services/MenuProvider.class.php:156
27
  #: plugin_files/Services/MenuProvider.class.php:222
@@ -123,8 +202,7 @@ msgid "Send feedback"
123
  msgstr ""
124
 
125
  #. Plugin Name of the plugin/theme
126
- #. Author of the plugin/theme
127
- msgid "LiveChat"
128
  msgstr ""
129
 
130
  #. Plugin URI of the plugin/theme
@@ -134,7 +212,7 @@ msgstr ""
134
  #. Description of the plugin/theme
135
  msgid ""
136
  "Live chat software for live help, online sales and customer support. This "
137
- "plugin allows to quickly install LiveChat on any WordPress website."
138
  msgstr ""
139
 
140
  #. Author URI of the plugin/theme
2
  msgid ""
3
  msgstr ""
4
  "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
5
+ "Project-Id-Version: LiveChat Elementor\n"
6
+ "POT-Creation-Date: 2021-10-13 11:57+0200\n"
7
+ "PO-Revision-Date: 2021-10-13 11:57+0200\n"
8
  "Last-Translator: LiveChat, Inc <apps@livechatinc.com>\n"
9
  "Language-Team: LiveChat, Inc <apps@livechatinc.com>\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
+ "X-Generator: Poedit 2.4.3\n"
14
  "X-Poedit-Basepath: ..\n"
15
  "X-Poedit-Flags-xgettext: --add-comments=translators:\n"
16
  "X-Poedit-WPHeader: elementor-livechat.php\n"
17
  "X-Poedit-SourceCharset: UTF-8\n"
18
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
19
+ "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
20
+ "_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
21
  "X-Poedit-SearchPath-0: .\n"
22
  "X-Poedit-SearchPathExcluded-0: *.min.js\n"
23
  "X-Poedit-SearchPathExcluded-1: vendor\n"
24
 
25
+ #. Author of the plugin/theme
26
+ #: plugin_files/Services/Elementor/ElementorWidgetsProvider.class.php:94
27
+ msgid "LiveChat"
28
+ msgstr ""
29
+
30
+ #: plugin_files/Services/Elementor/ElementorWidgetsProvider.class.php:109
31
+ msgid "LiveChat Icons"
32
+ msgstr ""
33
+
34
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:33
35
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:61
36
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:85
37
+ msgid "Contact Button"
38
+ msgstr ""
39
+
40
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:69
41
+ msgid "Text"
42
+ msgstr ""
43
+
44
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:94
45
+ msgid "Typography"
46
+ msgstr ""
47
+
48
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:102
49
+ msgid "Text Shadow"
50
+ msgstr ""
51
+
52
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:110
53
+ msgid "Box Shadow"
54
+ msgstr ""
55
+
56
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:118
57
+ msgid "Border"
58
+ msgstr ""
59
+
60
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:126
61
+ msgid "Background"
62
+ msgstr ""
63
+
64
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:149
65
+ msgid "Contact us"
66
+ msgstr ""
67
+
68
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:33
69
+ msgid "Quality Badge"
70
+ msgstr ""
71
+
72
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:61
73
+ msgid "Badge Settings"
74
+ msgstr ""
75
+
76
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:70
77
+ msgid "Theme"
78
+ msgstr ""
79
+
80
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:73
81
+ msgid "Light"
82
+ msgstr ""
83
+
84
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:74
85
+ msgid "Dark"
86
+ msgstr ""
87
+
88
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:83
89
+ msgid "Size"
90
+ msgstr ""
91
+
92
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:86
93
+ msgid "Small (160x96)"
94
+ msgstr ""
95
+
96
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:87
97
+ msgid "Medium (200x120)"
98
+ msgstr ""
99
+
100
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:88
101
+ msgid "Large (240x144)"
102
+ msgstr ""
103
+
104
  #: plugin_files/Services/MenuProvider.class.php:155
105
  #: plugin_files/Services/MenuProvider.class.php:156
106
  #: plugin_files/Services/MenuProvider.class.php:222
202
  msgstr ""
203
 
204
  #. Plugin Name of the plugin/theme
205
+ msgid "LiveChat Elementor"
 
206
  msgstr ""
207
 
208
  #. Plugin URI of the plugin/theme
212
  #. Description of the plugin/theme
213
  msgid ""
214
  "Live chat software for live help, online sales and customer support. This "
215
+ "plugin allows to quickly install LiveChat on any Elementor website."
216
  msgstr ""
217
 
218
  #. Author URI of the plugin/theme
languages/livechat-woocommerce.pot CHANGED
@@ -3,25 +3,104 @@ msgid ""
3
  msgstr ""
4
  "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
5
  "Project-Id-Version: LiveChat WooCommerce\n"
6
- "POT-Creation-Date: 2021-03-03 13:11+0100\n"
7
- "PO-Revision-Date: 2020-07-21 11:47+0200\n"
8
  "Last-Translator: LiveChat, Inc <apps@livechatinc.com>\n"
9
  "Language-Team: LiveChat, Inc <apps@livechatinc.com>\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
- "X-Generator: Poedit 2.4.2\n"
14
  "X-Poedit-Basepath: ..\n"
15
  "X-Poedit-Flags-xgettext: --add-comments=translators:\n"
16
  "X-Poedit-WPHeader: woocommerce-livechat.php\n"
17
  "X-Poedit-SourceCharset: UTF-8\n"
18
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
19
- "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;"
20
- "_n_noop:1,2;_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
21
  "X-Poedit-SearchPath-0: .\n"
22
  "X-Poedit-SearchPathExcluded-0: *.min.js\n"
23
  "X-Poedit-SearchPathExcluded-1: vendor\n"
24
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
25
  #: plugin_files/Services/MenuProvider.class.php:155
26
  #: plugin_files/Services/MenuProvider.class.php:156
27
  #: plugin_files/Services/MenuProvider.class.php:222
@@ -136,10 +215,6 @@ msgid ""
136
  "plugin allows to quickly install LiveChat on any WooCommerce website."
137
  msgstr ""
138
 
139
- #. Author of the plugin/theme
140
- msgid "LiveChat"
141
- msgstr ""
142
-
143
  #. Author URI of the plugin/theme
144
  msgid "https://www.livechat.com"
145
  msgstr ""
3
  msgstr ""
4
  "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
5
  "Project-Id-Version: LiveChat WooCommerce\n"
6
+ "POT-Creation-Date: 2021-10-13 11:55+0200\n"
7
+ "PO-Revision-Date: 2021-10-13 11:55+0200\n"
8
  "Last-Translator: LiveChat, Inc <apps@livechatinc.com>\n"
9
  "Language-Team: LiveChat, Inc <apps@livechatinc.com>\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
+ "X-Generator: Poedit 2.4.3\n"
14
  "X-Poedit-Basepath: ..\n"
15
  "X-Poedit-Flags-xgettext: --add-comments=translators:\n"
16
  "X-Poedit-WPHeader: woocommerce-livechat.php\n"
17
  "X-Poedit-SourceCharset: UTF-8\n"
18
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
19
+ "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
20
+ "_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
21
  "X-Poedit-SearchPath-0: .\n"
22
  "X-Poedit-SearchPathExcluded-0: *.min.js\n"
23
  "X-Poedit-SearchPathExcluded-1: vendor\n"
24
 
25
+ #. Author of the plugin/theme
26
+ #: plugin_files/Services/Elementor/ElementorWidgetsProvider.class.php:94
27
+ msgid "LiveChat"
28
+ msgstr ""
29
+
30
+ #: plugin_files/Services/Elementor/ElementorWidgetsProvider.class.php:109
31
+ msgid "LiveChat Icons"
32
+ msgstr ""
33
+
34
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:33
35
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:61
36
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:85
37
+ msgid "Contact Button"
38
+ msgstr ""
39
+
40
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:69
41
+ msgid "Text"
42
+ msgstr ""
43
+
44
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:94
45
+ msgid "Typography"
46
+ msgstr ""
47
+
48
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:102
49
+ msgid "Text Shadow"
50
+ msgstr ""
51
+
52
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:110
53
+ msgid "Box Shadow"
54
+ msgstr ""
55
+
56
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:118
57
+ msgid "Border"
58
+ msgstr ""
59
+
60
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:126
61
+ msgid "Background"
62
+ msgstr ""
63
+
64
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:149
65
+ msgid "Contact us"
66
+ msgstr ""
67
+
68
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:33
69
+ msgid "Quality Badge"
70
+ msgstr ""
71
+
72
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:61
73
+ msgid "Badge Settings"
74
+ msgstr ""
75
+
76
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:70
77
+ msgid "Theme"
78
+ msgstr ""
79
+
80
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:73
81
+ msgid "Light"
82
+ msgstr ""
83
+
84
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:74
85
+ msgid "Dark"
86
+ msgstr ""
87
+
88
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:83
89
+ msgid "Size"
90
+ msgstr ""
91
+
92
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:86
93
+ msgid "Small (160x96)"
94
+ msgstr ""
95
+
96
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:87
97
+ msgid "Medium (200x120)"
98
+ msgstr ""
99
+
100
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:88
101
+ msgid "Large (240x144)"
102
+ msgstr ""
103
+
104
  #: plugin_files/Services/MenuProvider.class.php:155
105
  #: plugin_files/Services/MenuProvider.class.php:156
106
  #: plugin_files/Services/MenuProvider.class.php:222
215
  "plugin allows to quickly install LiveChat on any WooCommerce website."
216
  msgstr ""
217
 
 
 
 
 
218
  #. Author URI of the plugin/theme
219
  msgid "https://www.livechat.com"
220
  msgstr ""
languages/wp-live-chat-software-for-wordpress.pot CHANGED
@@ -3,25 +3,105 @@ msgid ""
3
  msgstr ""
4
  "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
5
  "Project-Id-Version: LiveChat\n"
6
- "POT-Creation-Date: 2021-03-03 13:12+0100\n"
7
- "PO-Revision-Date: 2020-07-21 11:47+0200\n"
8
  "Last-Translator: LiveChat, Inc <apps@livechatinc.com>\n"
9
  "Language-Team: LiveChat, Inc <apps@livechatinc.com>\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
- "X-Generator: Poedit 2.4.2\n"
14
  "X-Poedit-Basepath: ..\n"
15
  "X-Poedit-Flags-xgettext: --add-comments=translators:\n"
16
  "X-Poedit-WPHeader: livechat.php\n"
17
  "X-Poedit-SourceCharset: UTF-8\n"
18
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
19
- "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;"
20
- "_n_noop:1,2;_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
21
  "X-Poedit-SearchPath-0: .\n"
22
  "X-Poedit-SearchPathExcluded-0: *.min.js\n"
23
  "X-Poedit-SearchPathExcluded-1: vendor\n"
24
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
25
  #: plugin_files/Services/MenuProvider.class.php:155
26
  #: plugin_files/Services/MenuProvider.class.php:156
27
  #: plugin_files/Services/MenuProvider.class.php:222
@@ -122,11 +202,6 @@ msgstr ""
122
  msgid "Send feedback"
123
  msgstr ""
124
 
125
- #. Plugin Name of the plugin/theme
126
- #. Author of the plugin/theme
127
- msgid "LiveChat"
128
- msgstr ""
129
-
130
  #. Plugin URI of the plugin/theme
131
  msgid "https://www.livechat.com/marketplace/apps/wordpress/"
132
  msgstr ""
3
  msgstr ""
4
  "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
5
  "Project-Id-Version: LiveChat\n"
6
+ "POT-Creation-Date: 2021-10-13 11:54+0200\n"
7
+ "PO-Revision-Date: 2021-10-13 11:54+0200\n"
8
  "Last-Translator: LiveChat, Inc <apps@livechatinc.com>\n"
9
  "Language-Team: LiveChat, Inc <apps@livechatinc.com>\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
+ "X-Generator: Poedit 2.4.3\n"
14
  "X-Poedit-Basepath: ..\n"
15
  "X-Poedit-Flags-xgettext: --add-comments=translators:\n"
16
  "X-Poedit-WPHeader: livechat.php\n"
17
  "X-Poedit-SourceCharset: UTF-8\n"
18
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
19
+ "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
20
+ "_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
21
  "X-Poedit-SearchPath-0: .\n"
22
  "X-Poedit-SearchPathExcluded-0: *.min.js\n"
23
  "X-Poedit-SearchPathExcluded-1: vendor\n"
24
 
25
+ #. Plugin Name of the plugin/theme
26
+ #. Author of the plugin/theme
27
+ #: plugin_files/Services/Elementor/ElementorWidgetsProvider.class.php:94
28
+ msgid "LiveChat"
29
+ msgstr ""
30
+
31
+ #: plugin_files/Services/Elementor/ElementorWidgetsProvider.class.php:109
32
+ msgid "LiveChat Icons"
33
+ msgstr ""
34
+
35
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:33
36
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:61
37
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:85
38
+ msgid "Contact Button"
39
+ msgstr ""
40
+
41
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:69
42
+ msgid "Text"
43
+ msgstr ""
44
+
45
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:94
46
+ msgid "Typography"
47
+ msgstr ""
48
+
49
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:102
50
+ msgid "Text Shadow"
51
+ msgstr ""
52
+
53
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:110
54
+ msgid "Box Shadow"
55
+ msgstr ""
56
+
57
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:118
58
+ msgid "Border"
59
+ msgstr ""
60
+
61
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:126
62
+ msgid "Background"
63
+ msgstr ""
64
+
65
+ #: plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php:149
66
+ msgid "Contact us"
67
+ msgstr ""
68
+
69
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:33
70
+ msgid "Quality Badge"
71
+ msgstr ""
72
+
73
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:61
74
+ msgid "Badge Settings"
75
+ msgstr ""
76
+
77
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:70
78
+ msgid "Theme"
79
+ msgstr ""
80
+
81
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:73
82
+ msgid "Light"
83
+ msgstr ""
84
+
85
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:74
86
+ msgid "Dark"
87
+ msgstr ""
88
+
89
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:83
90
+ msgid "Size"
91
+ msgstr ""
92
+
93
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:86
94
+ msgid "Small (160x96)"
95
+ msgstr ""
96
+
97
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:87
98
+ msgid "Medium (200x120)"
99
+ msgstr ""
100
+
101
+ #: plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php:88
102
+ msgid "Large (240x144)"
103
+ msgstr ""
104
+
105
  #: plugin_files/Services/MenuProvider.class.php:155
106
  #: plugin_files/Services/MenuProvider.class.php:156
107
  #: plugin_files/Services/MenuProvider.class.php:222
202
  msgid "Send feedback"
203
  msgstr ""
204
 
 
 
 
 
 
205
  #. Plugin URI of the plugin/theme
206
  msgid "https://www.livechat.com/marketplace/apps/wordpress/"
207
  msgstr ""
livechat.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: LiveChat
4
  * Plugin URI: https://www.livechat.com/marketplace/apps/wordpress/
5
  * Description: Live chat software for live help, online sales and customer support. This plugin allows to quickly install LiveChat on any WordPress website.
6
- * Version: 4.4.10
7
  * Author: LiveChat
8
  * Author URI: https://www.livechat.com
9
  * Text Domain: wp-live-chat-software-for-wordpress
@@ -39,9 +39,15 @@ if ( ! function_exists( 'livechat_is_elementor_plugin_active' ) ) {
39
  *
40
  * @return bool
41
  */
42
- function livechat_is_elementor_plugin_active()
43
- {
44
- return in_array('elementor/elementor.php', get_option('active_plugins', array()), true);
 
 
 
 
 
 
45
  }
46
  }
47
 
@@ -102,9 +108,7 @@ if ( ! function_exists( 'livechat_is_elementor_preview_mode' ) ) {
102
  * @return bool
103
  */
104
  function livechat_is_elementor_preview_mode() {
105
- return livechat_is_elementor()
106
- && class_exists( '\Elementor\Plugin' )
107
- && \Elementor\Plugin::$instance->preview->is_preview_mode();
108
  }
109
  }
110
 
3
  * Plugin Name: LiveChat
4
  * Plugin URI: https://www.livechat.com/marketplace/apps/wordpress/
5
  * Description: Live chat software for live help, online sales and customer support. This plugin allows to quickly install LiveChat on any WordPress website.
6
+ * Version: 4.5.0
7
  * Author: LiveChat
8
  * Author URI: https://www.livechat.com
9
  * Text Domain: wp-live-chat-software-for-wordpress
39
  *
40
  * @return bool
41
  */
42
+ function livechat_is_elementor_plugin_active() {
43
+ return (
44
+ in_array(
45
+ 'elementor/elementor.php',
46
+ get_option( 'active_plugins', array() ),
47
+ true
48
+ ) &&
49
+ class_exists( '\Elementor\Plugin' )
50
+ );
51
  }
52
  }
53
 
108
  * @return bool
109
  */
110
  function livechat_is_elementor_preview_mode() {
111
+ return livechat_is_elementor_plugin_active() && \Elementor\Plugin::$instance->preview->is_preview_mode();
 
 
112
  }
113
  }
114
 
plugin_files/LiveChat.class.php CHANGED
@@ -12,6 +12,7 @@ use LiveChat\Services\ModuleConfiguration;
12
  use LiveChat\Services\Templates\TrackingCodeTemplate;
13
  use LiveChat\Services\WidgetProvider;
14
  use LiveChat\Services\WooCommerce\CustomerTrackingProvider;
 
15
 
16
  /**
17
  * Class LiveChat
@@ -51,6 +52,10 @@ class LiveChat {
51
  add_action( 'wp_ajax_nopriv_lc-refresh-cart', array( $customer_tracking, 'ajax_get_customer_tracking' ) );
52
  }
53
 
 
 
 
 
54
  $this->init_services();
55
  }
56
  );
12
  use LiveChat\Services\Templates\TrackingCodeTemplate;
13
  use LiveChat\Services\WidgetProvider;
14
  use LiveChat\Services\WooCommerce\CustomerTrackingProvider;
15
+ use LiveChat\Services\Elementor\ElementorWidgetsProvider;
16
 
17
  /**
18
  * Class LiveChat
52
  add_action( 'wp_ajax_nopriv_lc-refresh-cart', array( $customer_tracking, 'ajax_get_customer_tracking' ) );
53
  }
54
 
55
+ if ( livechat_is_elementor_plugin_active() ) {
56
+ ElementorWidgetsProvider::get_instance()->init();
57
+ }
58
+
59
  $this->init_services();
60
  }
61
  );
plugin_files/Services/ConnectTokenProvider.class.php CHANGED
@@ -41,9 +41,9 @@ class ConnectTokenProvider {
41
  /**
42
  * ConnectTokenProvider constructor.
43
  *
44
- * @param CertProvider $cert_provider Instance of CertProvider.
45
- * @param TokenValidator $token_validator Instance of TokenValidator.
46
- * @param ConnectTokenFactory $connect_token_factory Instance of ConnectTokenFactory.
47
  */
48
  public function __construct( $cert_provider, $token_validator, $connect_token_factory ) {
49
  $this->cert_provider = $cert_provider;
41
  /**
42
  * ConnectTokenProvider constructor.
43
  *
44
+ * @param CertProvider $cert_provider Instance of CertProvider.
45
+ * @param TokenValidator $token_validator Instance of TokenValidator.
46
+ * @param ConnectTokenFactory $connect_token_factory Instance of ConnectTokenFactory.
47
  */
48
  public function __construct( $cert_provider, $token_validator, $connect_token_factory ) {
49
  $this->cert_provider = $cert_provider;
plugin_files/Services/Elementor/Dependencies/ContactButtonWidgetDependencies.class.php ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ContactButtonWidgetDependencies class.
4
+ *
5
+ * @package LiveChat\Services\Elementor\Dependencies
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor\Dependencies;
9
+
10
+ use Elementor\LiveChatContactButtonWidget;
11
+ use Elementor\Plugin;
12
+ use Exception;
13
+ use LiveChat\Services\Elementor\Dependencies\Scripts\ContactButtonScriptDependency;
14
+ use LiveChat\Services\Elementor\Dependencies\Styles\ContactButtonStyleDependency;
15
+
16
+ /**
17
+ * ContactButtonWidgetDependencies class.
18
+ *
19
+ * @package LiveChat\Services\Elementor\Dependencies
20
+ */
21
+ class ContactButtonWidgetDependencies extends WidgetDependencies {
22
+ /**
23
+ * Creates new instance of ContactButtonWidgetDependencies.
24
+ *
25
+ * @return ContactButtonWidgetDependencies
26
+ * @throws Exception Can be thrown by parent class create method.
27
+ */
28
+ public static function create() {
29
+ return new static(
30
+ LiveChatContactButtonWidget::create(),
31
+ array( ContactButtonScriptDependency::create() ),
32
+ array( ContactButtonStyleDependency::create() ),
33
+ Plugin::instance()->widgets_manager
34
+ );
35
+ }
36
+ }
plugin_files/Services/Elementor/Dependencies/QualityBadgeWidgetDependencies.class.php ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * QualityBadgeWidgetDependencies class.
4
+ *
5
+ * @package LiveChat\Services\Elementor\Dependencies
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor\Dependencies;
9
+
10
+ use Elementor\LiveChatQualityBadgeWidget;
11
+ use Elementor\Plugin;
12
+ use Exception;
13
+ use LiveChat\Services\Elementor\Dependencies\Scripts\QualityBadgeScriptDependency;
14
+ use LiveChat\Services\Elementor\Dependencies\Styles\QualityBadgeStyleDependency;
15
+
16
+ /**
17
+ * QualityBadgeWidgetDependencies class.
18
+ *
19
+ * @package LiveChat\Services\Elementor\Dependencies
20
+ */
21
+ class QualityBadgeWidgetDependencies extends WidgetDependencies {
22
+ /**
23
+ * Creates new instance of QualityBadgeWidgetDependencies.
24
+ *
25
+ * @return QualityBadgeWidgetDependencies
26
+ * @throws Exception Can be thrown by parent class create method.
27
+ */
28
+ public static function create() {
29
+ return new static(
30
+ LiveChatQualityBadgeWidget::create(),
31
+ array( QualityBadgeScriptDependency::create() ),
32
+ array( QualityBadgeStyleDependency::create() ),
33
+ Plugin::instance()->widgets_manager
34
+ );
35
+ }
36
+ }
plugin_files/Services/Elementor/Dependencies/Scripts/ContactButtonScriptDependency.class.php ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ContactButtonScriptDependency class.
4
+ *
5
+ * @package LiveChat\Services\Elementor\Dependencies\Scripts
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor\Dependencies\Scripts;
9
+
10
+ use Exception;
11
+ use LiveChat\Services\Options\Elementor\ContactButtonWidgetURL;
12
+ use LiveChat\Services\Options\WritableOption;
13
+
14
+ /**
15
+ * ContactButtonScriptDependency class.
16
+ *
17
+ * @package LiveChat\Services\Elementor\Dependencies\Scripts
18
+ */
19
+ class ContactButtonScriptDependency extends ScriptDependency {
20
+ /**
21
+ * Creates a new ContactButtonScriptDependency instance.
22
+ *
23
+ * @param string|null $name Name of the script file.
24
+ * @param WritableOption|null $widget_url_option Widget URL WritableOption instance.
25
+ *
26
+ * @return static
27
+ * @throws Exception Can be thrown by parent create method.
28
+ */
29
+ public static function create( $name = null, $widget_url_option = null ) {
30
+ return parent::create( 'contact-button', ContactButtonWidgetURL::get_instance() );
31
+ }
32
+ }
plugin_files/Services/Elementor/Dependencies/Scripts/QualityBadgeScriptDependency.class.php ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * QualityBadgeScriptDependency class.
4
+ *
5
+ * @package LiveChat\Services\Elementor\Dependencies\Scripts
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor\Dependencies\Scripts;
9
+
10
+ use Exception;
11
+ use LiveChat\Services\Options\Elementor\QualityBadgeWidgetURL;
12
+ use LiveChat\Services\Options\WritableOption;
13
+
14
+ /**
15
+ * QualityBadgeScriptDependency class.
16
+ *
17
+ * @package LiveChat\Services\Elementor\Dependencies\Scripts
18
+ */
19
+ class QualityBadgeScriptDependency extends ScriptDependency {
20
+ /**
21
+ * Creates a new QualityBadgeScriptDependency instance.
22
+ *
23
+ * @param string|null $name Name of the script file.
24
+ * @param WritableOption|null $widget_url_option Widget URL WritableOption instance.
25
+ *
26
+ * @return static
27
+ * @throws Exception Can be thrown by parent create method.
28
+ */
29
+ public static function create( $name = null, $widget_url_option = null ) {
30
+ return parent::create( 'quality-badge', QualityBadgeWidgetURL::get_instance() );
31
+ }
32
+ }
plugin_files/Services/Elementor/Dependencies/Scripts/ScriptDependency.class.php ADDED
@@ -0,0 +1,197 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ScriptDependency class.
4
+ *
5
+ * @package LiveChat\Services\Elementor\Dependencies\Scripts
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor\Dependencies\Scripts;
9
+
10
+ use Exception;
11
+ use LiveChat\Exceptions\ApiClientException;
12
+ use LiveChat\Exceptions\InvalidTokenException;
13
+ use LiveChat\Services\CertProvider;
14
+ use LiveChat\Services\ConnectTokenProvider;
15
+ use LiveChat\Services\Factories\UrlProviderFactory;
16
+ use LiveChat\Services\ModuleConfiguration;
17
+ use LiveChat\Services\Options\WritableOption;
18
+ use LiveChat\Services\Store;
19
+
20
+ /**
21
+ * ScriptDependency class.
22
+ *
23
+ * @package LiveChat\Services\Elementor\Dependencies\Scripts
24
+ */
25
+ class ScriptDependency {
26
+ /**
27
+ * Name of the script file.
28
+ *
29
+ * @var string $name
30
+ */
31
+ private $name;
32
+
33
+ /**
34
+ * Scripts file URL.
35
+ *
36
+ * @var WritableOption $widget_url_option
37
+ */
38
+ private $widget_url_option;
39
+
40
+ /**
41
+ * ModuleConfiguration instance.
42
+ *
43
+ * @var ModuleConfiguration $module_configuration
44
+ */
45
+ private $module_configuration;
46
+
47
+ /**
48
+ * ConnectTokenProvider instance.
49
+ *
50
+ * @var ConnectTokenProvider $module_configuration
51
+ */
52
+ private $connect_token_provider;
53
+
54
+ /**
55
+ * Store instance.
56
+ *
57
+ * @var Store $module_configuration
58
+ */
59
+ private $store;
60
+
61
+ /**
62
+ * UrlProviderFactory instance.
63
+ *
64
+ * @var UrlProviderFactory $module_configuration
65
+ */
66
+ private $url_provider_factory;
67
+
68
+ /**
69
+ * ScriptDependency constructor.
70
+ *
71
+ * @param string $name Name of the script file.
72
+ * @param WritableOption $widget_url_option Widget URL WritableOption instance.
73
+ * @param ModuleConfiguration $module_configuration ModuleConfiguration instance.
74
+ * @param ConnectTokenProvider $connect_token_provider ConnectTokenProvider instance.
75
+ * @param Store $store Store instance.
76
+ * @param UrlProviderFactory $url_provider_factory UrlProviderFactory instance.
77
+ */
78
+ public function __construct(
79
+ $name,
80
+ $widget_url_option,
81
+ $module_configuration,
82
+ $connect_token_provider,
83
+ $store,
84
+ $url_provider_factory
85
+ ) {
86
+ $this->name = $name;
87
+ $this->widget_url_option = $widget_url_option;
88
+ $this->module_configuration = $module_configuration;
89
+ $this->connect_token_provider = $connect_token_provider;
90
+ $this->store = $store;
91
+ $this->url_provider_factory = $url_provider_factory;
92
+ }
93
+
94
+ /**
95
+ * Checks if widget URL matches RegEx. Returns true if URL is valid,
96
+ * otherwise returns false.
97
+ *
98
+ * @param string $widget_url Widget URL to check.
99
+ *
100
+ * @return false|int
101
+ */
102
+ private function is_widget_url_valid( $widget_url ) {
103
+ $pattern = sprintf(
104
+ ELEMENTOR_WIDGET_URL_REGEX,
105
+ $this->name
106
+ );
107
+
108
+ return preg_match( $pattern, $widget_url );
109
+ }
110
+
111
+ /**
112
+ * Returns widget URL build from token data.
113
+ *
114
+ * @throws ApiClientException Can be thrown by ConnectTokenProvider method.
115
+ * @throws InvalidTokenException Can be thrown by ConnectTokenProvider method.
116
+ */
117
+ private function get_widget_url_from_token() {
118
+ $connect_token = $this->connect_token_provider->get(
119
+ $this->store->get_store_token(),
120
+ 'store',
121
+ true
122
+ );
123
+
124
+ $api_url = $this->url_provider_factory->create( $connect_token )->get_api_url();
125
+
126
+ return sprintf(
127
+ '%s/api/v1/script/%s/%s.js',
128
+ $api_url,
129
+ $connect_token->get_store_uuid(),
130
+ $this->name
131
+ );
132
+ }
133
+
134
+ /**
135
+ * Returns handle name for dependency.
136
+ *
137
+ * @return string
138
+ */
139
+ private function get_handle_name() {
140
+ return sprintf(
141
+ 'livechat-%s-script',
142
+ $this->name
143
+ );
144
+ }
145
+
146
+ /**
147
+ * Registers widget scripts sheets.
148
+ *
149
+ * @return bool
150
+ */
151
+ public function register() {
152
+ try {
153
+ $widget_url = $this->widget_url_option->get();
154
+
155
+ if ( ! $widget_url || ! $this->is_widget_url_valid( $widget_url ) ) {
156
+ $widget_url = $this->get_widget_url_from_token();
157
+ $this->widget_url_option->set( $widget_url );
158
+ }
159
+ } catch ( Exception $ex ) {
160
+ return false;
161
+ }
162
+
163
+ $handle_name = $this->get_handle_name();
164
+ $was_registered = wp_register_script(
165
+ $handle_name,
166
+ $widget_url,
167
+ array(),
168
+ $this->module_configuration->get_plugin_version(),
169
+ false
170
+ );
171
+
172
+ if ( $was_registered ) {
173
+ wp_enqueue_script( $handle_name );
174
+ }
175
+
176
+ return $was_registered;
177
+ }
178
+
179
+ /**
180
+ * Creates a new ScriptDependency instance.
181
+ *
182
+ * @param string $name Name of the script file.
183
+ * @param WritableOption $widget_url_option Widget URL WritableOption instance.
184
+ *
185
+ * @return static
186
+ */
187
+ public static function create( $name, $widget_url_option ) {
188
+ return new static(
189
+ $name,
190
+ $widget_url_option,
191
+ ModuleConfiguration::get_instance(),
192
+ ConnectTokenProvider::create( CertProvider::create() ),
193
+ Store::get_instance(),
194
+ UrlProviderFactory::get_instance()
195
+ );
196
+ }
197
+ }
plugin_files/Services/Elementor/Dependencies/Styles/ContactButtonStyleDependency.class.php ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ContactButtonStyleDependency class.
4
+ *
5
+ * @package LiveChat\Services\Elementor\Dependencies\Styles
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor\Dependencies\Styles;
9
+
10
+ /**
11
+ * ContactButtonStyleDependency class.
12
+ *
13
+ * @package LiveChat\Services\Elementor\Dependencies\Styles
14
+ */
15
+ class ContactButtonStyleDependency extends StyleDependency {
16
+ /**
17
+ * Creates a new ContactButtonStyleDependency instance.
18
+ *
19
+ * @param string|null $name Name of the style file.
20
+ * @param string|null $style_file_path Path to the styles file.
21
+ *
22
+ * @return static
23
+ */
24
+ public static function create( $name = null, $style_file_path = null ) {
25
+ return parent::create( 'contact-button', 'css/livechat-contact-button.css' );
26
+ }
27
+ }
plugin_files/Services/Elementor/Dependencies/Styles/QualityBadgeStyleDependency.class.php ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * QualityBadgeStyleDependency class.
4
+ *
5
+ * @package LiveChat\Services\Elementor\Dependencies\Styles
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor\Dependencies\Styles;
9
+
10
+ /**
11
+ * QualityBadgeStyleDependency class.
12
+ *
13
+ * @package LiveChat\Services\Elementor\Dependencies\Styles
14
+ */
15
+ class QualityBadgeStyleDependency extends StyleDependency {
16
+ /**
17
+ * Creates a new QualityBadgeStyleDependency instance.
18
+ *
19
+ * @param string|null $name Name of the style file.
20
+ * @param string|null $style_file_path Path to the styles file.
21
+ *
22
+ * @return static
23
+ */
24
+ public static function create( $name = null, $style_file_path = null ) {
25
+ return parent::create( 'quality-badge', 'css/livechat-quality-badge.css' );
26
+ }
27
+ }
plugin_files/Services/Elementor/Dependencies/Styles/StyleDependency.class.php ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * StyleDependency class.
4
+ *
5
+ * @package LiveChat\Services\Elementor\Dependencies\Scripts
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor\Dependencies\Styles;
9
+
10
+ use LiveChat\Services\ModuleConfiguration;
11
+
12
+ /**
13
+ * StyleDependency class.
14
+ *
15
+ * @package LiveChat\Services\Elementor\Dependencies\Scripts
16
+ */
17
+ class StyleDependency {
18
+ /**
19
+ * Name of the style file.
20
+ *
21
+ * @var string $name
22
+ */
23
+ private $name;
24
+
25
+ /**
26
+ * ModuleConfiguration instance.
27
+ *
28
+ * @var ModuleConfiguration $module_configuration
29
+ */
30
+ private $module_configuration;
31
+
32
+ /**
33
+ * Path to the styles file.
34
+ *
35
+ * @var string $style_file_path
36
+ */
37
+ private $style_file_path;
38
+
39
+ /**
40
+ * StyleDependency constructor.
41
+ *
42
+ * @param string $name Name of the style file.
43
+ * @param ModuleConfiguration $module_configuration ModuleConfiguration instance.
44
+ * @param string $style_file_path Path to the styles file.
45
+ */
46
+ public function __construct( $name, $module_configuration, $style_file_path ) {
47
+ $this->name = $name;
48
+ $this->module_configuration = $module_configuration;
49
+ $this->style_file_path = $style_file_path;
50
+ }
51
+
52
+ /**
53
+ * Returns handle name for dependency.
54
+ *
55
+ * @return string
56
+ */
57
+ private function get_handle_name() {
58
+ return sprintf(
59
+ 'livechat-%s-style',
60
+ $this->name
61
+ );
62
+ }
63
+
64
+ /**
65
+ * Returns file URL based on plugin URL and local path to file.
66
+ *
67
+ * @param string $style_file_path Path to the styles file.
68
+ *
69
+ * @return string
70
+ */
71
+ private function get_file_url( $style_file_path ) {
72
+ return sprintf(
73
+ '%s%s',
74
+ $this->module_configuration->get_plugin_url(),
75
+ $style_file_path
76
+ );
77
+ }
78
+
79
+ /**
80
+ * Registers widget styles sheets.
81
+ *
82
+ * @return bool
83
+ */
84
+ public function register() {
85
+ $handle_name = $this->get_handle_name();
86
+
87
+ $was_registered = wp_register_style(
88
+ $handle_name,
89
+ $this->get_file_url( $this->style_file_path ),
90
+ array(),
91
+ $this->module_configuration->get_plugin_version()
92
+ );
93
+
94
+ if ( $was_registered ) {
95
+ wp_enqueue_style( $handle_name );
96
+ }
97
+
98
+ return $was_registered;
99
+ }
100
+
101
+ /**
102
+ * Creates a new StyleDependency instance.
103
+ *
104
+ * @param string $name Name of the style file.
105
+ * @param string $style_file_path Path to the styles file.
106
+ *
107
+ * @return static
108
+ */
109
+ public static function create( $name, $style_file_path ) {
110
+ return new static(
111
+ $name,
112
+ ModuleConfiguration::get_instance(),
113
+ $style_file_path
114
+ );
115
+ }
116
+ }
plugin_files/Services/Elementor/Dependencies/WidgetDependencies.class.php ADDED
@@ -0,0 +1,89 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WidgetDependencies class.
4
+ *
5
+ * @package LiveChat\Services\Elementor\Scripts
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor\Dependencies;
9
+
10
+ use Elementor\Widget_Base;
11
+ use Elementor\Widgets_Manager;
12
+ use LiveChat\Services\Elementor\Dependencies\Scripts\ScriptDependency;
13
+ use LiveChat\Services\Elementor\Dependencies\Styles\StyleDependency;
14
+
15
+ /**
16
+ * WidgetDependencies class.
17
+ *
18
+ * @package LiveChat\Services\Elementor\Scripts
19
+ */
20
+ class WidgetDependencies {
21
+ /**
22
+ * Instance of Widget_Base.
23
+ *
24
+ * @var Widget_Base $widget
25
+ */
26
+ private $widget;
27
+
28
+ /**
29
+ * Instance of Widgets_Manager.
30
+ *
31
+ * @var Widgets_Manager $widgets_manager
32
+ */
33
+ private $widgets_manager;
34
+
35
+ /**
36
+ * Array of ScriptDependency instances.
37
+ *
38
+ * @var ScriptDependency[] $script_dependencies
39
+ */
40
+ private $script_dependencies;
41
+
42
+ /**
43
+ * Array of StyleDependency instances.
44
+ *
45
+ * @var StyleDependency[] $style_dependencies
46
+ */
47
+ private $style_dependencies;
48
+
49
+ /**
50
+ * ElementorWidgetsProvider constructor.
51
+ *
52
+ * @param Widget_Base $widget Instance of Widget_Base.
53
+ * @param ScriptDependency[] $script_dependencies Array of ScriptDependency instances.
54
+ * @param StyleDependency[] $style_dependencies Array of StyleDependency instances.
55
+ * @param Widgets_Manager $widgets_manager Instance of Widgets_Manager.
56
+ */
57
+ public function __construct( $widget, $script_dependencies, $style_dependencies, $widgets_manager ) {
58
+ $this->widget = $widget;
59
+ $this->script_dependencies = $script_dependencies;
60
+ $this->style_dependencies = $style_dependencies;
61
+ $this->widgets_manager = $widgets_manager;
62
+ }
63
+
64
+ /**
65
+ * Registers all widget required dependencies.
66
+ */
67
+ public function register() {
68
+ $scripts_registered = array_reduce(
69
+ $this->script_dependencies,
70
+ function ( $acc, $dependency ) {
71
+ return $acc && $dependency->register();
72
+ },
73
+ true
74
+ );
75
+ $styles_registered = array_reduce(
76
+ $this->style_dependencies,
77
+ function ( $acc, $dependency ) {
78
+ return $acc && $dependency->register();
79
+ },
80
+ true
81
+ );
82
+
83
+ if ( ! $scripts_registered || ! $styles_registered ) {
84
+ return;
85
+ }
86
+
87
+ $this->widgets_manager->register_widget_type( $this->widget );
88
+ }
89
+ }
plugin_files/Services/Elementor/ElementorWidgetsProvider.class.php ADDED
@@ -0,0 +1,151 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Class ElementorWidgetsProvider
4
+ *
5
+ * @package LiveChat\Services\Elementor
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor;
9
+
10
+ use Elementor\Plugin;
11
+ use Exception;
12
+ use LiveChat\Services\Elementor\Factories\ElementorWidgetsFactory;
13
+ use LiveChat\Services\ModuleConfiguration;
14
+
15
+ /**
16
+ * Class ElementorWidgetsProvider
17
+ *
18
+ * @package LiveChat\Services\Elementor
19
+ */
20
+ class ElementorWidgetsProvider {
21
+ /**
22
+ * Instance of self (singleton pattern)
23
+ *
24
+ * @var ElementorWidgetsProvider|null $instance
25
+ */
26
+ private static $instance = null;
27
+
28
+ /**
29
+ * Plugin instance
30
+ *
31
+ * @var \Elementor\Plugin $plugin
32
+ */
33
+ public $plugin;
34
+
35
+ /**
36
+ * ElementorWidgetsFactory instance.
37
+ *
38
+ * @var ElementorWidgetsFactory
39
+ */
40
+ private $elementor_widgets_factory;
41
+
42
+ /**
43
+ * ModuleConfiguration instance.
44
+ *
45
+ * @var ModuleConfiguration
46
+ */
47
+ private $module_configuration;
48
+
49
+ /**
50
+ * ElementorWidgetsProvider constructor.
51
+ *
52
+ * @param \Elementor\Plugin $plugin Plugin instance.
53
+ * @param ElementorWidgetsFactory $elementor_widgets_factory ElementorWidgetsFactory instance.
54
+ * @param ModuleConfiguration $module_configuration ModuleConfiguration instance.
55
+ */
56
+ public function __construct(
57
+ $plugin,
58
+ $elementor_widgets_factory,
59
+ $module_configuration
60
+ ) {
61
+ $this->plugin = $plugin;
62
+ $this->elementor_widgets_factory = $elementor_widgets_factory;
63
+ $this->module_configuration = $module_configuration;
64
+ }
65
+
66
+ /**
67
+ * Initiates hooks.
68
+ */
69
+ public function init() {
70
+ add_action( 'elementor/init', array( $this, 'register_categories' ) );
71
+ add_filter( 'elementor/icons_manager/additional_tabs', array( $this, 'register_common_icons' ) );
72
+ add_action( 'elementor/widgets/widgets_registered', array( $this, 'register_widgets' ) );
73
+ }
74
+
75
+ /**
76
+ * Registers widgets.
77
+ *
78
+ * @throws Exception Can be thrown by create method.
79
+ */
80
+ public function register_widgets() {
81
+ $widgets = $this->elementor_widgets_factory->create();
82
+ foreach ( $widgets as $widget ) {
83
+ $widget->register();
84
+ }
85
+ }
86
+
87
+ /**
88
+ * Registers categories.
89
+ */
90
+ public function register_categories() {
91
+ $this->plugin->elements_manager->add_category(
92
+ 'livechat',
93
+ array(
94
+ 'title' => __( 'LiveChat', 'wp-live-chat-software-for-wordpress' ),
95
+ 'icon' => 'lc lc-livechat',
96
+ )
97
+ );
98
+ }
99
+
100
+ /**
101
+ * Returns custom LiveChat icons.
102
+ *
103
+ * @return array
104
+ */
105
+ public function register_common_icons() {
106
+ $icons_url = $this->module_configuration->get_plugin_url() . 'css/livechat-icons.css';
107
+ $plugin_version = $this->module_configuration->get_plugin_version();
108
+
109
+ wp_register_style(
110
+ 'livechat-icons-style',
111
+ $icons_url,
112
+ array(),
113
+ $plugin_version
114
+ );
115
+ wp_enqueue_style( 'livechat-icons-style' );
116
+
117
+ return array(
118
+ 'livechat-icons' => array(
119
+ 'name' => 'livechat-icons',
120
+ 'label' => __( 'LiveChat Icons', 'wp-live-chat-software-for-wordpress' ),
121
+ 'labelIcon' => 'lc lc-livechat',
122
+ 'prefix' => 'lc-',
123
+ 'displayPrefix' => 'lc',
124
+ 'url' => $icons_url,
125
+ 'icons' => array(
126
+ 'livechat',
127
+ 'contact-button',
128
+ 'quality-badge',
129
+ ),
130
+ 'ver' => $plugin_version,
131
+ 'native' => true,
132
+ ),
133
+ );
134
+ }
135
+
136
+ /**
137
+ * Returns instance of ElementorWidgetsProvider (singleton pattern).
138
+ *
139
+ * @return ElementorWidgetsProvider
140
+ */
141
+ public static function get_instance() {
142
+ if ( ! self::$instance ) {
143
+ self::$instance = new static(
144
+ Plugin::instance(),
145
+ ElementorWidgetsFactory::get_instance(),
146
+ ModuleConfiguration::get_instance()
147
+ );
148
+ }
149
+ return self::$instance;
150
+ }
151
+ }
plugin_files/Services/Elementor/Factories/ElementorWidgetsFactory.class.php ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ElementorWidgetsFactory class.
4
+ *
5
+ * @package LiveChat\Services\Elementor\Factories
6
+ */
7
+
8
+ namespace LiveChat\Services\Elementor\Factories;
9
+
10
+ use Exception;
11
+ use LiveChat\Services\Elementor\Dependencies\ContactButtonWidgetDependencies;
12
+ use LiveChat\Services\Elementor\Dependencies\QualityBadgeWidgetDependencies;
13
+ use LiveChat\Services\Elementor\Dependencies\WidgetDependencies;
14
+
15
+ /**
16
+ * ElementorWidgetsFactory class.
17
+ *
18
+ * @package LiveChat\Services\Elementor\Factories
19
+ */
20
+ class ElementorWidgetsFactory {
21
+ /**
22
+ * Returns array of Elementor widgets instances.
23
+ *
24
+ * @return WidgetDependencies[]
25
+ * @throws Exception Can be thrown by widget create method.
26
+ */
27
+ public function create() {
28
+ return array(
29
+ ContactButtonWidgetDependencies::create(),
30
+ QualityBadgeWidgetDependencies::create(),
31
+ );
32
+ }
33
+
34
+ /**
35
+ * Returns new instance of ElementorWidgetsFactory.
36
+ *
37
+ * @return ElementorWidgetsFactory
38
+ */
39
+ public static function get_instance() {
40
+ return new static();
41
+ }
42
+ }
plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php ADDED
@@ -0,0 +1,171 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Class LiveChatContactButtonWidget
4
+ *
5
+ * @package Elementor
6
+ */
7
+
8
+ namespace Elementor;
9
+
10
+ use LiveChat\Services\Templates\Widgets\ContactButtonWidgetTemplate;
11
+ use LiveChat\Services\Templates\Widgets\Previews\ContactButtonPreviewWidgetTemplate;
12
+
13
+ /**
14
+ * Class LiveChatContactButtonWidget
15
+ *
16
+ * @package Elementor
17
+ */
18
+ class LiveChatContactButtonWidget extends Widget_Base {
19
+ /**
20
+ * Returns widget name.
21
+ *
22
+ * @return string
23
+ */
24
+ public function get_name() {
25
+ return 'livechat-contact-button';
26
+ }
27
+
28
+ /**
29
+ * Returns widget title.
30
+ *
31
+ * @return string
32
+ */
33
+ public function get_title() {
34
+ return __( 'Contact Button', 'wp-live-chat-software-for-wordpress' );
35
+ }
36
+
37
+ /**
38
+ * Returns widget icon.
39
+ *
40
+ * @return string
41
+ */
42
+ public function get_icon() {
43
+ return 'lc lc-contact-button';
44
+ }
45
+
46
+ /**
47
+ * Returns widget categories.
48
+ *
49
+ * @return array
50
+ */
51
+ public function get_categories() {
52
+ return array( 'livechat' );
53
+ }
54
+
55
+ /**
56
+ * Registers controls for 'Content' tab.
57
+ */
58
+ private function register_content_tab_controls() {
59
+ $this->start_controls_section(
60
+ 'contact_button_content_settings',
61
+ array(
62
+ 'label' => __( 'Contact Button', 'wp-live-chat-software-for-wordpress' ),
63
+ 'tab' => Controls_Manager::TAB_CONTENT,
64
+ )
65
+ );
66
+
67
+ $this->add_control(
68
+ 'label',
69
+ array(
70
+ 'label' => __( 'Text', 'wp-live-chat-software-for-wordpress' ),
71
+ 'type' => Controls_Manager::TEXT,
72
+ 'default' => 'Contact us',
73
+ )
74
+ );
75
+
76
+ $this->end_controls_section();
77
+ }
78
+
79
+ /**
80
+ * Registers 'Style' tab controls.
81
+ */
82
+ private function register_style_tab_controls() {
83
+ $this->start_controls_section(
84
+ 'contact_button_styles_settings',
85
+ array(
86
+ 'label' => __( 'Contact Button', 'wp-live-chat-software-for-wordpress' ),
87
+ 'tab' => Controls_Manager::TAB_STYLE,
88
+ )
89
+ );
90
+
91
+ $this->add_group_control(
92
+ Group_Control_Typography::get_type(),
93
+ array(
94
+ 'name' => 'typography',
95
+ 'label' => __( 'Typography', 'wp-live-chat-software-for-wordpress' ),
96
+ 'selector' => '{{WRAPPER}} .rWzRuLNl84i5nH_IVqYFH-lc-contact-button-container',
97
+ )
98
+ );
99
+ $this->add_group_control(
100
+ Group_Control_Text_Shadow::get_type(),
101
+ array(
102
+ 'name' => 'text_shadow',
103
+ 'label' => __( 'Text Shadow', 'wp-live-chat-software-for-wordpress' ),
104
+ 'selector' => '{{WRAPPER}} .rWzRuLNl84i5nH_IVqYFH-lc-contact-button-container',
105
+ )
106
+ );
107
+ $this->add_group_control(
108
+ Group_Control_Box_Shadow::get_type(),
109
+ array(
110
+ 'name' => 'box_shadow',
111
+ 'label' => __( 'Box Shadow', 'wp-live-chat-software-for-wordpress' ),
112
+ 'selector' => '{{WRAPPER}} .rWzRuLNl84i5nH_IVqYFH-lc-contact-button-container',
113
+ )
114
+ );
115
+ $this->add_group_control(
116
+ Group_Control_Border::get_type(),
117
+ array(
118
+ 'name' => 'border',
119
+ 'label' => __( 'Border', 'wp-live-chat-software-for-wordpress' ),
120
+ 'selector' => '{{WRAPPER}} .rWzRuLNl84i5nH_IVqYFH-lc-contact-button-container',
121
+ )
122
+ );
123
+ $this->add_group_control(
124
+ Group_Control_Background::get_type(),
125
+ array(
126
+ 'name' => 'background',
127
+ 'label' => __( 'Background', 'wp-live-chat-software-for-wordpress' ),
128
+ 'selector' => '{{WRAPPER}} .rWzRuLNl84i5nH_IVqYFH-lc-contact-button-container',
129
+ )
130
+ );
131
+
132
+ $this->end_controls_section();
133
+ }
134
+
135
+ /**
136
+ * Registers controls for widget.
137
+ */
138
+ protected function register_controls() {
139
+ $this->register_content_tab_controls();
140
+ $this->register_style_tab_controls();
141
+ }
142
+
143
+ /**
144
+ * Render widget output on the frontend.
145
+ */
146
+ protected function render() {
147
+ $settings = $this->get_settings_for_display();
148
+
149
+ $context = array(
150
+ 'label' => array_key_exists( 'label', $settings ) ? $settings['label'] : __( 'Contact us', 'wp-live-chat-software-for-wordpress' ),
151
+ );
152
+
153
+ ContactButtonWidgetTemplate::create( $context )->render();
154
+ }
155
+
156
+ /**
157
+ * Generates the live preview.
158
+ */
159
+ public function content_template() {
160
+ ContactButtonPreviewWidgetTemplate::create()->render();
161
+ }
162
+
163
+ /**
164
+ * Creates new instance of LiveChatContactButtonWidget.
165
+ *
166
+ * @return LiveChatContactButtonWidget
167
+ */
168
+ public static function create() {
169
+ return new static();
170
+ }
171
+ }
plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php ADDED
@@ -0,0 +1,118 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Class LiveChatQualityBadgeWidget
4
+ *
5
+ * @package Elementor
6
+ */
7
+
8
+ namespace Elementor;
9
+
10
+ use LiveChat\Services\Templates\Widgets\QualityBadgeWidgetTemplate;
11
+
12
+ /**
13
+ * Class LiveChatQualityBadgeWidget
14
+ *
15
+ * @package Elementor
16
+ */
17
+ class LiveChatQualityBadgeWidget extends Widget_Base {
18
+ /**
19
+ * Returns widget name.
20
+ *
21
+ * @return string
22
+ */
23
+ public function get_name() {
24
+ return 'livechat-quality-badge';
25
+ }
26
+
27
+ /**
28
+ * Returns widget title.
29
+ *
30
+ * @return string
31
+ */
32
+ public function get_title() {
33
+ return __( 'Quality Badge', 'wp-live-chat-software-for-wordpress' );
34
+ }
35
+
36
+ /**
37
+ * Returns widget icon.
38
+ *
39
+ * @return string
40
+ */
41
+ public function get_icon() {
42
+ return 'lc lc-quality-badge';
43
+ }
44
+
45
+ /**
46
+ * Returns widget categories.
47
+ *
48
+ * @return array
49
+ */
50
+ public function get_categories() {
51
+ return array( 'livechat' );
52
+ }
53
+
54
+ /**
55
+ * Registers widget controls.
56
+ */
57
+ protected function register_controls() {
58
+ $this->start_controls_section(
59
+ 'badge_settings',
60
+ array(
61
+ 'label' => __( 'Badge Settings', 'wp-live-chat-software-for-wordpress' ),
62
+ 'tab' => Controls_Manager::TAB_CONTENT,
63
+ )
64
+ );
65
+
66
+ $this->add_control(
67
+ 'theme',
68
+ array(
69
+ 'type' => Controls_Manager::SELECT,
70
+ 'label' => __( 'Theme', 'wp-live-chat-software-for-wordpress' ),
71
+ 'default' => 'light',
72
+ 'options' => array(
73
+ 'light' => __( 'Light', 'wp-live-chat-software-for-wordpress' ),
74
+ 'dark' => __( 'Dark', 'wp-live-chat-software-for-wordpress' ),
75
+ ),
76
+ )
77
+ );
78
+
79
+ $this->add_control(
80
+ 'size',
81
+ array(
82
+ 'type' => Controls_Manager::SELECT,
83
+ 'label' => __( 'Size', 'wp-live-chat-software-for-wordpress' ),
84
+ 'default' => 200,
85
+ 'options' => array(
86
+ 160 => __( 'Small (160x96)', 'wp-live-chat-software-for-wordpress' ),
87
+ 200 => __( 'Medium (200x120)', 'wp-live-chat-software-for-wordpress' ),
88
+ 240 => __( 'Large (240x144)', 'wp-live-chat-software-for-wordpress' ),
89
+ ),
90
+ )
91
+ );
92
+
93
+ $this->end_controls_section();
94
+ }
95
+
96
+ /**
97
+ * Render widget output on the frontend.
98
+ */
99
+ protected function render() {
100
+ $settings = $this->get_settings_for_display();
101
+
102
+ $context = array(
103
+ 'theme' => array_key_exists( 'theme', $settings ) ? $settings['theme'] : 'light',
104
+ 'size' => array_key_exists( 'size', $settings ) ? $settings['size'] : 200,
105
+ );
106
+
107
+ QualityBadgeWidgetTemplate::create( $context )->render();
108
+ }
109
+
110
+ /**
111
+ * Creates new instance of LiveChatContactButtonWidget.
112
+ *
113
+ * @return LiveChatQualityBadgeWidget
114
+ */
115
+ public static function create() {
116
+ return new static();
117
+ }
118
+ }
plugin_files/Services/MenuProvider.class.php CHANGED
@@ -152,8 +152,8 @@ class MenuProvider {
152
 
153
  add_submenu_page(
154
  $this->menu_slug,
155
- __( 'Settings', 'livechat' ),
156
- __( 'Settings', 'livechat' ),
157
  'administrator',
158
  $this->slugged( 'settings' ),
159
  array( $this, 'livechat_settings_page' )
@@ -161,8 +161,8 @@ class MenuProvider {
161
 
162
  add_submenu_page(
163
  $this->menu_slug,
164
- __( 'Resources', 'livechat' ),
165
- __( 'Resources', 'livechat' ),
166
  'administrator',
167
  $this->slugged( 'resources' ),
168
  array( $this, 'livechat_resources_page' )
@@ -179,8 +179,8 @@ class MenuProvider {
179
  if ( $this->has_user_token() ) {
180
  add_submenu_page(
181
  'livechat',
182
- __( 'Go to LiveChat', 'livechat' ),
183
- __( 'Go to LiveChat', 'livechat' ),
184
  'administrator',
185
  $this->slugged( 'link' ),
186
  '__return_false'
152
 
153
  add_submenu_page(
154
  $this->menu_slug,
155
+ __( 'Settings', 'wp-live-chat-software-for-wordpress' ),
156
+ __( 'Settings', 'wp-live-chat-software-for-wordpress' ),
157
  'administrator',
158
  $this->slugged( 'settings' ),
159
  array( $this, 'livechat_settings_page' )
161
 
162
  add_submenu_page(
163
  $this->menu_slug,
164
+ __( 'Resources', 'wp-live-chat-software-for-wordpress' ),
165
+ __( 'Resources', 'wp-live-chat-software-for-wordpress' ),
166
  'administrator',
167
  $this->slugged( 'resources' ),
168
  array( $this, 'livechat_resources_page' )
179
  if ( $this->has_user_token() ) {
180
  add_submenu_page(
181
  'livechat',
182
+ __( 'Go to LiveChat', 'wp-live-chat-software-for-wordpress' ),
183
+ __( 'Go to LiveChat', 'wp-live-chat-software-for-wordpress' ),
184
  'administrator',
185
  $this->slugged( 'link' ),
186
  '__return_false'
plugin_files/Services/Options/Elementor/ContactButtonWidgetURL.class.php ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Class ContactButtonWidgetURL
4
+ *
5
+ * @package LiveChat\Services\Options\Elementor
6
+ */
7
+
8
+ namespace LiveChat\Services\Options\Elementor;
9
+
10
+ use Exception;
11
+ use LiveChat\Services\Options\WritableOption;
12
+
13
+ /**
14
+ * Class ContactButtonWidgetURL
15
+ *
16
+ * @package LiveChat\Services\Options\Elementor
17
+ */
18
+ class ContactButtonWidgetURL extends WritableOption {
19
+ /**
20
+ * ContactButtonWidgetURL constructor.
21
+ *
22
+ * @throws Exception Can be thrown by parent constructor.
23
+ */
24
+ public function __construct() {
25
+ parent::__construct( 'contact_button_widget_url' );
26
+ }
27
+ }
plugin_files/Services/Options/Elementor/ElementorWidgetsOptions.class.php ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Class ElementorWidgetsOptions
4
+ *
5
+ * @package LiveChat\Services\Options\Elementor
6
+ */
7
+
8
+ namespace LiveChat\Services\Options\Elementor;
9
+
10
+ use Exception;
11
+ use LiveChat\Services\Options\OptionsSet;
12
+
13
+ /**
14
+ * Class ElementorWidgetsOptions
15
+ *
16
+ * @package LiveChat\Services\Options\Elementor
17
+ */
18
+ class ElementorWidgetsOptions extends OptionsSet {
19
+ /**
20
+ * Instance of ContactButtonWidgetURL class.
21
+ *
22
+ * @var ContactButtonWidgetURL
23
+ */
24
+ public $contact_button_widget_url;
25
+
26
+ /**
27
+ * ElementorWidgetsOptions constructor.
28
+ *
29
+ * @throws Exception Can be thrown by OptionsSet constructor.
30
+ */
31
+ public function __construct() {
32
+ parent::__construct(
33
+ array(
34
+ 'contact_button_widget_url' => ContactButtonWidgetURL::get_instance(),
35
+ 'quality_badge_widget_url' => QualityBadgeWidgetURL::get_instance(),
36
+ )
37
+ );
38
+ }
39
+ }
plugin_files/Services/Options/Elementor/QualityBadgeWidgetURL.class.php ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Class QualityBadgeWidgetURL
4
+ *
5
+ * @package LiveChat\Services\Options\Elementor
6
+ */
7
+
8
+ namespace LiveChat\Services\Options\Elementor;
9
+
10
+ use Exception;
11
+ use LiveChat\Services\Options\WritableOption;
12
+
13
+ /**
14
+ * Class QualityBadgeWidgetURL
15
+ *
16
+ * @package LiveChat\Services\Options\Elementor
17
+ */
18
+ class QualityBadgeWidgetURL extends WritableOption {
19
+ /**
20
+ * QualityBadgeWidgetURL constructor.
21
+ *
22
+ * @throws Exception Can be thrown by parent constructor.
23
+ */
24
+ public function __construct() {
25
+ parent::__construct( 'quality_badge_widget_url' );
26
+ }
27
+ }
plugin_files/Services/Options/SettingsOptions.class.php CHANGED
@@ -8,6 +8,7 @@
8
  namespace LiveChat\Services\Options;
9
 
10
  use LiveChat\Services\Options\Deprecated\DeprecatedOptions;
 
11
 
12
  /**
13
  * Class SettingsOptions
@@ -42,12 +43,13 @@ class SettingsOptions extends OptionsSet {
42
  public function __construct() {
43
  parent::__construct(
44
  array(
45
- 'review_notice' => ReviewNoticeOptions::get_instance(),
46
- 'deprecated' => DeprecatedOptions::get_instance(),
47
- 'widget_url' => WidgetURL::get_instance(),
48
- 'platform' => Platform::get_instance(),
49
- 'public_key' => PublicKey::get_instance(),
50
- 'synchronized' => Synchronized::get_instance(),
 
51
  )
52
  );
53
  }
8
  namespace LiveChat\Services\Options;
9
 
10
  use LiveChat\Services\Options\Deprecated\DeprecatedOptions;
11
+ use LiveChat\Services\Options\Elementor\ElementorWidgetsOptions;
12
 
13
  /**
14
  * Class SettingsOptions
43
  public function __construct() {
44
  parent::__construct(
45
  array(
46
+ 'review_notice' => ReviewNoticeOptions::get_instance(),
47
+ 'deprecated' => DeprecatedOptions::get_instance(),
48
+ 'elementor_widgets' => ElementorWidgetsOptions::get_instance(),
49
+ 'widget_url' => WidgetURL::get_instance(),
50
+ 'platform' => Platform::get_instance(),
51
+ 'public_key' => PublicKey::get_instance(),
52
+ 'synchronized' => Synchronized::get_instance(),
53
  )
54
  );
55
  }
plugin_files/Services/PlatformProvider.class.php CHANGED
@@ -72,10 +72,10 @@ class PlatformProvider {
72
  /**
73
  * PlatformProvider constructor.
74
  *
75
- * @param ApiClientFactory $api_client_factory Instance of ApiClientFactory.
76
- * @param ConnectTokenProviderFactory $connect_token_provider_factory Instance of ConnectTokenProviderFactory.
77
- * @param StoreToken $store_token Instance of StoreToken.
78
- * @param Platform $platform Instance of Platform.
79
  */
80
  public function __construct(
81
  $api_client_factory,
72
  /**
73
  * PlatformProvider constructor.
74
  *
75
+ * @param ApiClientFactory $api_client_factory Instance of ApiClientFactory.
76
+ * @param ConnectTokenProviderFactory $connect_token_provider_factory Instance of ConnectTokenProviderFactory.
77
+ * @param StoreToken $store_token Instance of StoreToken.
78
+ * @param Platform $platform Instance of Platform.
79
  */
80
  public function __construct(
81
  $api_client_factory,
plugin_files/Services/TemplateParser.class.php CHANGED
@@ -47,7 +47,7 @@ class TemplateParser {
47
  * @param string $template_file_name Name of the template file.
48
  * @return string
49
  */
50
- private function get_template_file_contents( $template_file_name ) {
51
  // phpcs:ignore WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents
52
  $content = file_get_contents( $this->templates_dir . '/' . $template_file_name );
53
  return $content ? $content : '';
@@ -71,7 +71,7 @@ class TemplateParser {
71
  * @param bool $render Flag responsible for printing parsed template file.
72
  * @return string|string[]|null
73
  */
74
- public function parse_template( $template_file_name, $context, $render = true ) {
75
  $this->context = $context;
76
  $template_file_content = $this->get_template_file_contents( $template_file_name );
77
 
47
  * @param string $template_file_name Name of the template file.
48
  * @return string
49
  */
50
+ public function get_template_file_contents( $template_file_name ) {
51
  // phpcs:ignore WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents
52
  $content = file_get_contents( $this->templates_dir . '/' . $template_file_name );
53
  return $content ? $content : '';
71
  * @param bool $render Flag responsible for printing parsed template file.
72
  * @return string|string[]|null
73
  */
74
+ public function parse_template( $template_file_name, $context = array(), $render = true ) {
75
  $this->context = $context;
76
  $template_file_content = $this->get_template_file_contents( $template_file_name );
77
 
plugin_files/Services/Templates/ChatWidgetScriptTemplate.class.php CHANGED
@@ -61,12 +61,13 @@ class ChatWidgetScriptTemplate extends Template {
61
  /**
62
  * WidgetProvider constructor.
63
  *
64
- * @param Store $store Instance of Store.
65
- * @param WidgetURL $widget_url Instance of WidgetURL.
66
- * @param ConnectTokenProvider $connect_token_provider Instance of ConnectTokenProvider.
67
- * @param UrlProviderFactory $url_provider_factory Instance of UrlProviderFactory.
68
- * @param CustomerTrackingTemplate $customer_tracking_template Instance of CustomerTrackingTemplate.
69
- * @param TemplateParser $template_parser Instance of TemplateParser.
 
70
  */
71
  public function __construct(
72
  $store,
@@ -74,9 +75,10 @@ class ChatWidgetScriptTemplate extends Template {
74
  $connect_token_provider,
75
  $url_provider_factory,
76
  $customer_tracking_template,
77
- $template_parser
 
78
  ) {
79
- parent::__construct( $template_parser );
80
  $this->store = $store;
81
  $this->widget_url = $widget_url;
82
  $this->connect_token_provider = $connect_token_provider;
@@ -145,17 +147,19 @@ class ChatWidgetScriptTemplate extends Template {
145
  /**
146
  * Returns instance of ChatWidgetScriptTemplate.
147
  *
 
148
  * @return ChatWidgetScriptTemplate|static
149
  * @throws Exception
150
  */
151
- public static function create() {
152
  return new static(
153
  Store::get_instance(),
154
  WidgetURL::get_instance(),
155
  ConnectTokenProvider::create( CertProvider::create() ),
156
  UrlProviderFactory::get_instance(),
157
  CustomerTrackingTemplate::create(),
158
- TemplateParser::create( '../templates' )
 
159
  );
160
  }
161
  }
61
  /**
62
  * WidgetProvider constructor.
63
  *
64
+ * @param Store $store Instance of Store.
65
+ * @param WidgetURL $widget_url Instance of WidgetURL.
66
+ * @param ConnectTokenProvider $connect_token_provider Instance of ConnectTokenProvider.
67
+ * @param UrlProviderFactory $url_provider_factory Instance of UrlProviderFactory.
68
+ * @param CustomerTrackingTemplate $customer_tracking_template Instance of CustomerTrackingTemplate.
69
+ * @param TemplateParser $template_parser Instance of TemplateParser.
70
+ * @param array $context Template context.
71
  */
72
  public function __construct(
73
  $store,
75
  $connect_token_provider,
76
  $url_provider_factory,
77
  $customer_tracking_template,
78
+ $template_parser,
79
+ $context
80
  ) {
81
+ parent::__construct( $template_parser, $context );
82
  $this->store = $store;
83
  $this->widget_url = $widget_url;
84
  $this->connect_token_provider = $connect_token_provider;
147
  /**
148
  * Returns instance of ChatWidgetScriptTemplate.
149
  *
150
+ * @param array $context
151
  * @return ChatWidgetScriptTemplate|static
152
  * @throws Exception
153
  */
154
+ public static function create( $context = array() ) {
155
  return new static(
156
  Store::get_instance(),
157
  WidgetURL::get_instance(),
158
  ConnectTokenProvider::create( CertProvider::create() ),
159
  UrlProviderFactory::get_instance(),
160
  CustomerTrackingTemplate::create(),
161
+ TemplateParser::create( '../templates' ),
162
+ $context
163
  );
164
  }
165
  }
plugin_files/Services/Templates/CustomerTrackingTemplate.class.php CHANGED
@@ -28,9 +28,10 @@ class CustomerTrackingTemplate extends Template {
28
  *
29
  * @param User $user User instance.
30
  * @param TemplateParser $template_parser TemplateParser instance.
 
31
  */
32
- public function __construct( $user, $template_parser ) {
33
- parent::__construct( $template_parser );
34
  $this->user = $user;
35
  }
36
 
@@ -55,12 +56,14 @@ class CustomerTrackingTemplate extends Template {
55
  /**
56
  * Returns new instance of CustomerTrackingTemplate.
57
  *
 
58
  * @return static
59
  */
60
- public static function create() {
61
  return new static(
62
  User::get_instance(),
63
- TemplateParser::create( '../templates' )
 
64
  );
65
  }
66
  }
28
  *
29
  * @param User $user User instance.
30
  * @param TemplateParser $template_parser TemplateParser instance.
31
+ * @param array $context Template context.
32
  */
33
+ public function __construct( $user, $template_parser, $context ) {
34
+ parent::__construct( $template_parser, $context );
35
  $this->user = $user;
36
  }
37
 
56
  /**
57
  * Returns new instance of CustomerTrackingTemplate.
58
  *
59
+ * @param array $context
60
  * @return static
61
  */
62
+ public static function create( $context = array() ) {
63
  return new static(
64
  User::get_instance(),
65
+ TemplateParser::create( '../templates' ),
66
+ $context
67
  );
68
  }
69
  }
plugin_files/Services/Templates/NoticeTemplate.class.php CHANGED
@@ -63,24 +63,26 @@ class NoticeTemplate extends Template {
63
  /**
64
  * NoticeTemplate constructor.
65
  *
66
- * @param ModuleConfiguration $module ModuleConfiguration class instance.
67
- * @param User $user User class instance.
68
- * @param Store $store Store class instance.
69
- * @param TemplateParser $template_parser Instance of TemplateParser.
70
- * @param UrlProvider $url_provider Instance of UrlProvider.
71
- * @param ReviewNoticeOptions $review_notice ReviewNoticeOptions instance.
72
- * @param string $platform Current platform name.
 
73
  */
74
  public function __construct(
75
  $module,
76
  $user,
77
  $store,
78
- $template_parser,
79
  $url_provider,
80
  $review_notice,
81
- $platform
 
 
82
  ) {
83
- parent::__construct( $template_parser );
84
  $this->module = $module;
85
  $this->user = $user;
86
  $this->store = $store;
@@ -108,17 +110,19 @@ class NoticeTemplate extends Template {
108
  /**
109
  * Returns new instance of NoticeTemplate.
110
  *
 
111
  * @return static
112
  */
113
- public static function create() {
114
  return new static(
115
  ModuleConfiguration::get_instance(),
116
  User::get_instance(),
117
  Store::get_instance(),
118
- TemplateParser::create( '../templates' ),
119
  UrlProvider::create_from_token(),
120
  ReviewNoticeOptions::get_instance(),
121
- PLATFORM
 
 
122
  );
123
  }
124
  }
63
  /**
64
  * NoticeTemplate constructor.
65
  *
66
+ * @param ModuleConfiguration $module ModuleConfiguration class instance.
67
+ * @param User $user User class instance.
68
+ * @param Store $store Store class instance.
69
+ * @param UrlProvider $url_provider Instance of UrlProvider.
70
+ * @param ReviewNoticeOptions $review_notice ReviewNoticeOptions instance.
71
+ * @param string $platform Current platform name.
72
+ * @param TemplateParser $template_parser Instance of TemplateParser.
73
+ * @param array $context Template context.
74
  */
75
  public function __construct(
76
  $module,
77
  $user,
78
  $store,
 
79
  $url_provider,
80
  $review_notice,
81
+ $platform,
82
+ $template_parser,
83
+ $context
84
  ) {
85
+ parent::__construct( $template_parser, $context );
86
  $this->module = $module;
87
  $this->user = $user;
88
  $this->store = $store;
110
  /**
111
  * Returns new instance of NoticeTemplate.
112
  *
113
+ * @param array $context
114
  * @return static
115
  */
116
+ public static function create( $context = array() ) {
117
  return new static(
118
  ModuleConfiguration::get_instance(),
119
  User::get_instance(),
120
  Store::get_instance(),
 
121
  UrlProvider::create_from_token(),
122
  ReviewNoticeOptions::get_instance(),
123
+ PLATFORM,
124
+ TemplateParser::create( '../templates' ),
125
+ $context
126
  );
127
  }
128
  }
plugin_files/Services/Templates/SettingsTemplate.class.php CHANGED
@@ -83,25 +83,27 @@ class SettingsTemplate extends Template {
83
  * @param ModuleConfiguration $module ModuleConfiguration class instance.
84
  * @param User $user User class instance.
85
  * @param Store $store Store class instance.
86
- * @param TemplateParser $template_parser Instance of TemplateParser.
87
  * @param LicenseProvider $license_provider Instance of LicenseProvider.
88
  * @param DeprecatedWidgetSettings $deprecated_widget_settings Instance of DeprecatedWidgetSettings.
89
  * @param DeprecatedReviewNoticeOptions $deprecated_review_notice Instance of DeprecatedReviewNoticeOptions.
90
  * @param ReviewNoticeOptions $review_notice Instance of ReviewNoticeOptions.
91
  * @param UrlProvider $url_provider Instance of UrlProvider.
 
 
92
  */
93
  public function __construct(
94
  $module,
95
  $user,
96
  $store,
97
- $template_parser,
98
  $license_provider,
99
  $deprecated_widget_settings,
100
  $deprecated_review_notice,
101
  $review_notice,
102
- $url_provider
 
 
103
  ) {
104
- parent::__construct( $template_parser );
105
  $this->module = $module;
106
  $this->user = $user;
107
  $this->store = $store;
@@ -152,19 +154,21 @@ class SettingsTemplate extends Template {
152
  /**
153
  * Returns new instance of ConnectServiceTemplate.
154
  *
 
155
  * @return static
156
  */
157
- public static function create() {
158
  return new static(
159
  ModuleConfiguration::get_instance(),
160
  User::get_instance(),
161
  Store::get_instance(),
162
- TemplateParser::create( '../templates' ),
163
  LicenseProvider::create(),
164
  DeprecatedWidgetSettings::get_instance(),
165
  DeprecatedReviewNoticeOptions::get_instance(),
166
  ReviewNoticeOptions::get_instance(),
167
- UrlProvider::create_from_token()
 
 
168
  );
169
  }
170
  }
83
  * @param ModuleConfiguration $module ModuleConfiguration class instance.
84
  * @param User $user User class instance.
85
  * @param Store $store Store class instance.
 
86
  * @param LicenseProvider $license_provider Instance of LicenseProvider.
87
  * @param DeprecatedWidgetSettings $deprecated_widget_settings Instance of DeprecatedWidgetSettings.
88
  * @param DeprecatedReviewNoticeOptions $deprecated_review_notice Instance of DeprecatedReviewNoticeOptions.
89
  * @param ReviewNoticeOptions $review_notice Instance of ReviewNoticeOptions.
90
  * @param UrlProvider $url_provider Instance of UrlProvider.
91
+ * @param TemplateParser $template_parser Instance of TemplateParser.
92
+ * @param array $context Template context.
93
  */
94
  public function __construct(
95
  $module,
96
  $user,
97
  $store,
 
98
  $license_provider,
99
  $deprecated_widget_settings,
100
  $deprecated_review_notice,
101
  $review_notice,
102
+ $url_provider,
103
+ $template_parser,
104
+ $context
105
  ) {
106
+ parent::__construct( $template_parser, $context );
107
  $this->module = $module;
108
  $this->user = $user;
109
  $this->store = $store;
154
  /**
155
  * Returns new instance of ConnectServiceTemplate.
156
  *
157
+ * @param array $context
158
  * @return static
159
  */
160
+ public static function create( $context = array() ) {
161
  return new static(
162
  ModuleConfiguration::get_instance(),
163
  User::get_instance(),
164
  Store::get_instance(),
 
165
  LicenseProvider::create(),
166
  DeprecatedWidgetSettings::get_instance(),
167
  DeprecatedReviewNoticeOptions::get_instance(),
168
  ReviewNoticeOptions::get_instance(),
169
+ UrlProvider::create_from_token(),
170
+ TemplateParser::create( '../templates' ),
171
+ $context
172
  );
173
  }
174
  }
plugin_files/Services/Templates/Template.class.php CHANGED
@@ -22,13 +22,21 @@ abstract class Template {
22
  */
23
  protected $template_parser;
24
 
 
 
 
 
 
 
 
25
  /**
26
  * Template constructor.
27
  *
28
  * @param TemplateParser $template_parser Instance of TemplateParser.
29
  */
30
- public function __construct( $template_parser ) {
31
  $this->template_parser = $template_parser;
 
32
  }
33
 
34
  /**
@@ -41,9 +49,10 @@ abstract class Template {
41
  /**
42
  * Returns new instance of Template.
43
  *
 
44
  * @return static
45
  */
46
- public static function create() {
47
- return new static( TemplateParser::create( '../templates' ) );
48
  }
49
  }
22
  */
23
  protected $template_parser;
24
 
25
+ /**
26
+ * Instance of TemplateParser.
27
+ *
28
+ * @var array
29
+ */
30
+ protected $context;
31
+
32
  /**
33
  * Template constructor.
34
  *
35
  * @param TemplateParser $template_parser Instance of TemplateParser.
36
  */
37
+ public function __construct( $template_parser, $context = array() ) {
38
  $this->template_parser = $template_parser;
39
+ $this->context = $context;
40
  }
41
 
42
  /**
49
  /**
50
  * Returns new instance of Template.
51
  *
52
+ * @param array $context
53
  * @return static
54
  */
55
+ public static function create( $context = array() ) {
56
+ return new static( TemplateParser::create( '../templates' ), $context );
57
  }
58
  }
plugin_files/Services/Templates/TrackingCodeTemplate.class.php CHANGED
@@ -53,11 +53,12 @@ class TrackingCodeTemplate extends Template {
53
  * @param Store $store Instance of Store.
54
  * @param User $user Instance of User.
55
  * @param LicenseProvider $license_provider Instance of LicenseProvider.
56
- * @param TemplateParser $template_parser Instance of TemplateParser.
57
  * @param DeprecatedWidgetSettings $widget_settings Instance of DeprecatedWidgetSettings.
 
 
58
  */
59
- public function __construct( $store, $user, $license_provider, $template_parser, $widget_settings ) {
60
- parent::__construct( $template_parser );
61
  $this->store = $store;
62
  $this->user = $user;
63
  $this->license_provider = $license_provider;
@@ -110,13 +111,14 @@ class TrackingCodeTemplate extends Template {
110
  *
111
  * @return static
112
  */
113
- public static function create() {
114
  return new static(
115
  Store::get_instance(),
116
  User::get_instance(),
117
  LicenseProvider::create(),
 
118
  TemplateParser::create( '../templates' ),
119
- DeprecatedWidgetSettings::get_instance()
120
  );
121
  }
122
  }
53
  * @param Store $store Instance of Store.
54
  * @param User $user Instance of User.
55
  * @param LicenseProvider $license_provider Instance of LicenseProvider.
 
56
  * @param DeprecatedWidgetSettings $widget_settings Instance of DeprecatedWidgetSettings.
57
+ * @param TemplateParser $template_parser Instance of TemplateParser.
58
+ * @param array $context Template context.
59
  */
60
+ public function __construct( $store, $user, $license_provider, $widget_settings, $template_parser, $context ) {
61
+ parent::__construct( $template_parser, $context );
62
  $this->store = $store;
63
  $this->user = $user;
64
  $this->license_provider = $license_provider;
111
  *
112
  * @return static
113
  */
114
+ public static function create( $context = array() ) {
115
  return new static(
116
  Store::get_instance(),
117
  User::get_instance(),
118
  LicenseProvider::create(),
119
+ DeprecatedWidgetSettings::get_instance(),
120
  TemplateParser::create( '../templates' ),
121
+ $context
122
  );
123
  }
124
  }
plugin_files/Services/Templates/{ContactButtonWidgetTemplate.class.php → Widgets/ContactButtonWidgetTemplate.class.php} RENAMED
@@ -2,17 +2,18 @@
2
  /**
3
  * Class ContactButtonWidgetTemplate
4
  *
5
- * @package LiveChat\Services\Templates
6
  */
7
 
8
- namespace LiveChat\Services\Templates;
9
 
 
10
  use LiveChat\Services\TemplateParser;
11
 
12
  /**
13
  * Class ContactButtonWidgetTemplate
14
  *
15
- * @package LiveChat\Services\Templates
16
  */
17
  class ContactButtonWidgetTemplate extends Template {
18
  /**
@@ -21,15 +22,16 @@ class ContactButtonWidgetTemplate extends Template {
21
  * @return string
22
  */
23
  public function render() {
24
- return $this->template_parser->parse_template( 'contact_button_widget.html.twig', array() );
25
  }
26
 
27
  /**
28
  * Returns instance of ContactButtonWidgetTemplate class.
29
  *
 
30
  * @return ContactButtonWidgetTemplate|static
31
  */
32
- public static function create() {
33
- return new static( TemplateParser::create( '../templates' ) );
34
  }
35
  }
2
  /**
3
  * Class ContactButtonWidgetTemplate
4
  *
5
+ * @package LiveChat\Services\Templates\Widgets
6
  */
7
 
8
+ namespace LiveChat\Services\Templates\Widgets;
9
 
10
+ use LiveChat\Services\Templates\Template;
11
  use LiveChat\Services\TemplateParser;
12
 
13
  /**
14
  * Class ContactButtonWidgetTemplate
15
  *
16
+ * @package LiveChat\Services\Templates\Widgets
17
  */
18
  class ContactButtonWidgetTemplate extends Template {
19
  /**
22
  * @return string
23
  */
24
  public function render() {
25
+ return $this->template_parser->parse_template( 'contact_button_widget.html.twig', $this->context );
26
  }
27
 
28
  /**
29
  * Returns instance of ContactButtonWidgetTemplate class.
30
  *
31
+ * @param string $context
32
  * @return ContactButtonWidgetTemplate|static
33
  */
34
+ public static function create( $context = array() ) {
35
+ return new static( TemplateParser::create( '../templates/widgets' ), $context );
36
  }
37
  }
plugin_files/Services/Templates/Widgets/Previews/ContactButtonPreviewWidgetTemplate.class.php ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Class ContactButtonPreviewWidgetTemplate
4
+ *
5
+ * @package LiveChat\Services\Templates\Widgets\Previews
6
+ */
7
+
8
+ namespace LiveChat\Services\Templates\Widgets\Previews;
9
+
10
+ use LiveChat\Services\Templates\Template;
11
+ use LiveChat\Services\TemplateParser;
12
+
13
+ /**
14
+ * Class ContactButtonPreviewWidgetTemplate
15
+ *
16
+ * @package LiveChat\Services\Templates\Widgets\Previews
17
+ */
18
+ class ContactButtonPreviewWidgetTemplate extends Template {
19
+ /**
20
+ * Renders contact button widget for Elementor live preview mode.
21
+ *
22
+ * @return string
23
+ */
24
+ public function render() {
25
+ // Escaping output is skipped because Elementor requires string with valid HTML tags and handles its validation.
26
+ // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
27
+ echo $this->template_parser->get_template_file_contents( 'contact_button_preview_widget.html' );
28
+ }
29
+
30
+ /**
31
+ * Returns instance of ContactButtonPreviewWidgetTemplate class.
32
+ *
33
+ * @param string $context
34
+ * @return ContactButtonPreviewWidgetTemplate|static
35
+ */
36
+ public static function create( $context = array() ) {
37
+ return new static( TemplateParser::create( '../templates/widgets/previews' ), $context );
38
+ }
39
+ }
plugin_files/Services/Templates/Widgets/QualityBadgeWidgetTemplate.class.php ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Class QualityBadgeWidgetTemplate
4
+ *
5
+ * @package LiveChat\Services\Templates
6
+ */
7
+
8
+ namespace LiveChat\Services\Templates\Widgets;
9
+
10
+ use LiveChat\Services\Templates\Template;
11
+ use LiveChat\Services\TemplateParser;
12
+
13
+ /**
14
+ * Class QualityBadgeWidgetTemplate
15
+ *
16
+ * @package LiveChat\Services\Templates
17
+ */
18
+ class QualityBadgeWidgetTemplate extends Template {
19
+ /**
20
+ * Renders quality badge widget for Elementor plugin.
21
+ *
22
+ * @return string
23
+ */
24
+ public function render() {
25
+ return $this->template_parser->parse_template( 'quality_badge_widget.html.twig', $this->context );
26
+ }
27
+
28
+ /**
29
+ * Returns instance of QualityBadgeWidgetTemplate class.
30
+ *
31
+ * @param array $context
32
+ * @return QualityBadgeWidgetTemplate|static
33
+ */
34
+ public static function create( $context = array() ) {
35
+ return new static( TemplateParser::create( '../templates/widgets' ), $context );
36
+ }
37
+ }
plugin_files/Services/TokenValidator.class.php CHANGED
@@ -36,8 +36,8 @@ class TokenValidator {
36
  /**
37
  * ConnectTokenProvider constructor.
38
  *
39
- * @param CertProvider $cert_provider Instance of CertProvider.
40
- * @param ConnectTokenFactory $connect_token_factory Instance of ConnectTokenFactory.
41
  */
42
  public function __construct( $cert_provider, $connect_token_factory ) {
43
  $this->cert_provider = $cert_provider;
36
  /**
37
  * ConnectTokenProvider constructor.
38
  *
39
+ * @param CertProvider $cert_provider Instance of CertProvider.
40
+ * @param ConnectTokenFactory $connect_token_factory Instance of ConnectTokenFactory.
41
  */
42
  public function __construct( $cert_provider, $connect_token_factory ) {
43
  $this->cert_provider = $cert_provider;
plugin_files/Services/WidgetProvider.class.php CHANGED
@@ -41,8 +41,8 @@ class WidgetProvider {
41
  /**
42
  * WidgetProvider constructor.
43
  *
44
- * @param ChatWidgetScriptTemplate $chat_widget_script_template Instance of ChatWidgetScriptTemplate.
45
- * @param TrackingCodeTemplate $tracking_code_template Instance of TrackingCodeTemplate.
46
  */
47
  public function __construct( $chat_widget_script_template, $tracking_code_template ) {
48
  $this->chat_widget_script_template = $chat_widget_script_template;
41
  /**
42
  * WidgetProvider constructor.
43
  *
44
+ * @param ChatWidgetScriptTemplate $chat_widget_script_template Instance of ChatWidgetScriptTemplate.
45
+ * @param TrackingCodeTemplate $tracking_code_template Instance of TrackingCodeTemplate.
46
  */
47
  public function __construct( $chat_widget_script_template, $tracking_code_template ) {
48
  $this->chat_widget_script_template = $chat_widget_script_template;
plugin_files/Services/WooCommerce/CustomerTrackingProvider.class.php CHANGED
@@ -27,7 +27,7 @@ class CustomerTrackingProvider {
27
  /**
28
  * CustomerTrackingProvider constructor.
29
  *
30
- * @param User $user Instance of User.
31
  */
32
  public function __construct( $user ) {
33
  $this->user = $user;
27
  /**
28
  * CustomerTrackingProvider constructor.
29
  *
30
+ * @param User $user Instance of User.
31
  */
32
  public function __construct( $user ) {
33
  $this->user = $user;
plugin_files/css/livechat-contact-button.css ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ .rWzRuLNl84i5nH_IVqYFH-lc-contact-button-container {}
2
+ .rWzRuLNl84i5nH_IVqYFH-lc-element-hidden {
3
+ display: none;
4
+ }
plugin_files/css/livechat-icons.css ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @font-face {
2
+ font-family: "LiveChat Icons";
3
+ src: url("../fonts/livechat-icons.eot");
4
+ src: url("../fonts/livechat-icons.eot") format("embedded-opentype"), url("../fonts/livechat-icons.woff") format("woff2"), url("../fonts/livechat-icons.woff") format("woff"), url("../fonts/livechat-icons.ttf") format("truetype");
5
+ font-weight: normal;
6
+ font-style: normal;
7
+ }
8
+ .lc:before, .lc-set {
9
+ display: inline-block;
10
+ font: normal normal normal 24px/1 "LiveChat Icons";
11
+ font-size: inherit;
12
+ text-rendering: auto;
13
+ line-height: inherit;
14
+ -webkit-font-smoothing: antialiased;
15
+ -moz-osx-font-smoothing: grayscale;
16
+ }
17
+
18
+ .lc-contact-button::before {
19
+ content: "\e900"
20
+ }
21
+
22
+ .lc-livechat::before {
23
+ content: "\e901"
24
+ }
25
+ .lc-quality-badge::before {
26
+ content: "\e902"
27
+ }
plugin_files/css/livechat-quality-badge.css ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ .Eq6BfHWRg1skuOtE40gJT-lc-quality-badge-container {}
2
+ .Eq6BfHWRg1skuOtE40gJT-lc-element-hidden {
3
+ display: none;
4
+ }
plugin_files/fonts/livechat-icons.eot ADDED
Binary file
plugin_files/fonts/livechat-icons.ttf ADDED
Binary file
plugin_files/fonts/livechat-icons.woff ADDED
Binary file
plugin_files/templates/contact_button_widget.html.twig DELETED
@@ -1,3 +0,0 @@
1
- <div class="lc-contact-button-container">
2
- <button>Contact us</button>
3
- </div>
 
 
 
plugin_files/templates/widgets/contact_button_widget.html.twig ADDED
@@ -0,0 +1 @@
 
1
+ <button class="rWzRuLNl84i5nH_IVqYFH-lc-contact-button-container rWzRuLNl84i5nH_IVqYFH-lc-element-hidden">{{ label }}</button>
plugin_files/templates/widgets/previews/contact_button_preview_widget.html ADDED
@@ -0,0 +1 @@
 
1
+ <button class="rWzRuLNl84i5nH_IVqYFH-lc-contact-button-container rWzRuLNl84i5nH_IVqYFH-lc-element-hidden">{{{ settings.label }}}</button>
plugin_files/templates/widgets/quality_badge_widget.html.twig ADDED
@@ -0,0 +1 @@
 
1
+ <div class="Eq6BfHWRg1skuOtE40gJT-lc-quality-badge-container Eq6BfHWRg1skuOtE40gJT-lc-element-hidden" data-theme="{{ theme }}" data-size="{{ size }}"></div>
readme.txt CHANGED
@@ -1,7 +1,7 @@
1
  === LiveChat - WP live chat plugin for WordPress ===
2
  Contributors: LiveChat
3
  Tags: live chat, chat plugin, live chat plugin, wordpress live chat, wordpress chat,
4
- Stable tag: 4.4.10
5
  Requires PHP: 5.6
6
  Tested up to: 5.8
7
  Requires at least: 4.4
@@ -352,6 +352,10 @@ For more detailed instructions, go to the [live chat plugin page](https://www.li
352
 
353
  == Changelog ==
354
 
 
 
 
 
355
  = 4.4.10 =
356
  * bug fixes
357
 
1
  === LiveChat - WP live chat plugin for WordPress ===
2
  Contributors: LiveChat
3
  Tags: live chat, chat plugin, live chat plugin, wordpress live chat, wordpress chat,
4
+ Stable tag: 4.5.0
5
  Requires PHP: 5.6
6
  Tested up to: 5.8
7
  Requires at least: 4.4
352
 
353
  == Changelog ==
354
 
355
+ = 4.5.0 =
356
+ * compatibility with the Elementor plugin
357
+ * bug fixes
358
+
359
  = 4.4.10 =
360
  * bug fixes
361
 
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInitcceae03e413af29d224cad9e623d6194::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInita6493ae008253bbea81586604f62f71e::getLoader();
vendor/composer/autoload_classmap.php CHANGED
@@ -6,9 +6,9 @@ $vendorDir = dirname(dirname(__FILE__));
6
  $baseDir = dirname($vendorDir);
7
 
8
  return array(
 
 
9
  'LiveChat\\Drivers\\HttpClient' => $baseDir . '/plugin_files/Drivers/HttpClient.class.php',
10
- 'LiveChat\\Drivers\\HttpClientTest' => $baseDir . '/plugin_files/tests/drivers/HttpClientTest.class.php',
11
- 'LiveChat\\Drivers\\WP_Error' => $baseDir . '/plugin_files/tests/drivers/HttpClientTest.class.php',
12
  'LiveChat\\Exceptions\\ApiClientException' => $baseDir . '/plugin_files/Exceptions/ApiClientException.class.php',
13
  'LiveChat\\Exceptions\\ErrorCodes' => $baseDir . '/plugin_files/Exceptions/ErrorCode.class.php',
14
  'LiveChat\\Exceptions\\HttpClientException' => $baseDir . '/plugin_files/Exceptions/HttpClientException.class.php',
@@ -16,118 +16,90 @@ return array(
16
  'LiveChat\\LiveChat' => $baseDir . '/plugin_files/LiveChat.class.php',
17
  'LiveChat\\LiveChatAdmin' => $baseDir . '/plugin_files/LiveChatAdmin.class.php',
18
  'LiveChat\\Services\\ApiClient' => $baseDir . '/plugin_files/Services/ApiClient.class.php',
19
- 'LiveChat\\Services\\ApiClientTest' => $baseDir . '/plugin_files/tests/services/ApiClientTest.class.php',
20
  'LiveChat\\Services\\CertProvider' => $baseDir . '/plugin_files/Services/CertProvider.class.php',
21
- 'LiveChat\\Services\\CertProviderTest' => $baseDir . '/plugin_files/tests/services/CertProviderTest.class.php',
22
- 'LiveChat\\Services\\ConfirmIdentityNoticeTest' => $baseDir . '/plugin_files/tests/services/notifications/ConfirmIdentityNoticeTest.class.php',
23
- 'LiveChat\\Services\\ConnectNoticeTest' => $baseDir . '/plugin_files/tests/services/notifications/ConnectNoticeTest.class.php',
24
  'LiveChat\\Services\\ConnectToken' => $baseDir . '/plugin_files/Services/ConnectToken.class.php',
25
  'LiveChat\\Services\\ConnectTokenProvider' => $baseDir . '/plugin_files/Services/ConnectTokenProvider.class.php',
26
- 'LiveChat\\Services\\ConnectTokenProviderTest' => $baseDir . '/plugin_files/tests/services/ConnectTokenProviderTest.class.php',
27
- 'LiveChat\\Services\\ConnectTokenTest' => $baseDir . '/plugin_files/tests/services/ConnectTokenTest.class.php',
28
- 'LiveChat\\Services\\DeactivationModalTest' => $baseDir . '/plugin_files/tests/services/notifications/DeactivationModalTest.class.php',
 
 
 
 
 
 
 
 
29
  'LiveChat\\Services\\Factories\\ApiClientFactory' => $baseDir . '/plugin_files/Services/Factories/ApiClientFactory.class.php',
30
  'LiveChat\\Services\\Factories\\ConnectTokenFactory' => $baseDir . '/plugin_files/Services/Factories/ConnectTokenFactory.class.php',
31
  'LiveChat\\Services\\Factories\\ConnectTokenProviderFactory' => $baseDir . '/plugin_files/Services/Factories/ConnectTokenProviderFactory.class.php',
32
  'LiveChat\\Services\\Factories\\UrlProviderFactory' => $baseDir . '/plugin_files/Services/Factories/UrlProviderFactory.class.php',
33
  'LiveChat\\Services\\LicenseProvider' => $baseDir . '/plugin_files/Services/LicenseProvider.class.php',
34
- 'LiveChat\\Services\\LicenseProviderTest' => $baseDir . '/plugin_files/tests/services/LicenseProviderTest.class.php',
35
  'LiveChat\\Services\\MenuProvider' => $baseDir . '/plugin_files/Services/MenuProvider.class.php',
36
- 'LiveChat\\Services\\MenuProviderTest' => $baseDir . '/plugin_files/tests/services/MenuProviderTest.class.php',
37
- 'LiveChat\\Services\\MockData' => $baseDir . '/plugin_files/tests/services/UserTest.class.php',
38
  'LiveChat\\Services\\ModuleConfiguration' => $baseDir . '/plugin_files/Services/ModuleConfiguration.class.php',
39
- 'LiveChat\\Services\\NoticeTest' => $baseDir . '/plugin_files/tests/services/notifications/NoticeTest.class.php',
40
- 'LiveChat\\Services\\NotificationTest' => $baseDir . '/plugin_files/tests/services/notifications/NotificationTest.class.php',
41
  'LiveChat\\Services\\NotificationsRenderer' => $baseDir . '/plugin_files/Services/NotificationsRenderer.class.php',
42
- 'LiveChat\\Services\\NotificationsRendererTest' => $baseDir . '/plugin_files/tests/services/NotificationsRendererTest.class.php',
43
  'LiveChat\\Services\\Notifications\\ConfirmIdentityNotice' => $baseDir . '/plugin_files/Services/Notifications/ConfirmIdentityNotice.class.php',
44
  'LiveChat\\Services\\Notifications\\ConnectNotice' => $baseDir . '/plugin_files/Services/Notifications/ConnectNotice.class.php',
45
  'LiveChat\\Services\\Notifications\\DeactivationModal' => $baseDir . '/plugin_files/Services/Notifications/DeactivationModal.class.php',
46
  'LiveChat\\Services\\Notifications\\Notice' => $baseDir . '/plugin_files/Services/Notifications/Notice.class.php',
47
  'LiveChat\\Services\\Notifications\\Notification' => $baseDir . '/plugin_files/Services/Notifications/Notification.class.php',
48
  'LiveChat\\Services\\Options\\AuthorizedUsers' => $baseDir . '/plugin_files/Services/Options/AuthorizedUsers.class.php',
49
- 'LiveChat\\Services\\Options\\AuthorizedUsersTest' => $baseDir . '/plugin_files/tests/services/options/AuthorizedUsersTest.class.php',
50
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedLicenseEmail' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedLicenseEmail.class.php',
51
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedLicenseNumber' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedLicenseNumber.class.php',
52
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOption' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedOption.class.php',
53
- 'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOptionTest' => $baseDir . '/plugin_files/tests/services/options/deprecated/DeprecatedOptionTest.class.php',
54
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOptions' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedOptions.class.php',
55
- 'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOptionsTest' => $baseDir . '/plugin_files/tests/services/options/deprecated/DeprecatedOptionsTest.class.php',
56
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeDismissed' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeDismissed.class.php',
57
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeOffset' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeOffset.class.php',
58
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeOptions' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeOptions.class.php',
59
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeTimestamp' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeTimestamp.class.php',
60
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetSettings' => $baseDir . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetSettings.class.php',
61
- 'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetSettingsTest' => $baseDir . '/plugin_files/tests/services/options/deprecated/widget/DeprecatedWidgetSettingsTest.class.php',
62
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWooCommerceSettings' => $baseDir . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWooCommerceSettings.class.php',
63
- 'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWooCommerceSettingsTest' => $baseDir . '/plugin_files/tests/services/options/deprecated/widget/DeprecatedWidgetWooCommerceSettingsTest.class.php',
64
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressDisableGuestsOption' => $baseDir . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressDisableGuestsOption.class.php',
65
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressDisableMobileOption' => $baseDir . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressDisableMobileOption.class.php',
66
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressSettings' => $baseDir . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressSettings.class.php',
67
- 'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressSettingsTest' => $baseDir . '/plugin_files/tests/services/options/deprecated/widget/DeprecatedWidgetWordPressSettingsTest.class.php',
 
 
68
  'LiveChat\\Services\\Options\\Option' => $baseDir . '/plugin_files/Services/Options/Option.class.php',
69
- 'LiveChat\\Services\\Options\\OptionTestCase' => $baseDir . '/plugin_files/tests/services/options/OptionTestCase.php',
70
  'LiveChat\\Services\\Options\\OptionsSet' => $baseDir . '/plugin_files/Services/Options/OptionsSet.class.php',
71
- 'LiveChat\\Services\\Options\\OptionsSetTest' => $baseDir . '/plugin_files/tests/services/options/OptionsSetTest.class.php',
72
  'LiveChat\\Services\\Options\\Platform' => $baseDir . '/plugin_files/Services/Options/Platform.class.php',
73
  'LiveChat\\Services\\Options\\PublicKey' => $baseDir . '/plugin_files/Services/Options/PublicKey.class.php',
74
  'LiveChat\\Services\\Options\\ReadableOption' => $baseDir . '/plugin_files/Services/Options/ReadableOption.class.php',
75
- 'LiveChat\\Services\\Options\\ReadableOptionTest' => $baseDir . '/plugin_files/tests/services/options/ReadableOptionTest.class.php',
76
  'LiveChat\\Services\\Options\\ReviewNoticeDismissed' => $baseDir . '/plugin_files/Services/Options/ReviewNoticeDismissed.class.php',
77
  'LiveChat\\Services\\Options\\ReviewNoticeOffset' => $baseDir . '/plugin_files/Services/Options/ReviewNoticeOffset.class.php',
78
  'LiveChat\\Services\\Options\\ReviewNoticeOptions' => $baseDir . '/plugin_files/Services/Options/ReviewNoticeOptions.class.php',
79
- 'LiveChat\\Services\\Options\\ReviewNoticeOptionsTest' => $baseDir . '/plugin_files/tests/services/options/ReviewNoticeOptionsTest.class.php',
80
  'LiveChat\\Services\\Options\\ReviewNoticeTimestamp' => $baseDir . '/plugin_files/Services/Options/ReviewNoticeTimestamp.class.php',
81
  'LiveChat\\Services\\Options\\SettingsOptions' => $baseDir . '/plugin_files/Services/Options/SettingsOptions.class.php',
82
  'LiveChat\\Services\\Options\\StoreToken' => $baseDir . '/plugin_files/Services/Options/StoreToken.class.php',
83
  'LiveChat\\Services\\Options\\Synchronized' => $baseDir . '/plugin_files/Services/Options/Synchronized.class.php',
84
  'LiveChat\\Services\\Options\\UserAuthOptions' => $baseDir . '/plugin_files/Services/Options/UserAuthOptions.class.php',
85
  'LiveChat\\Services\\Options\\UserOption' => $baseDir . '/plugin_files/Services/Options/UserOption.class.php',
86
- 'LiveChat\\Services\\Options\\UserOptionTest' => $baseDir . '/plugin_files/tests/services/options/UserOptionTest.class.php',
87
  'LiveChat\\Services\\Options\\UserToken' => $baseDir . '/plugin_files/Services/Options/UserToken.class.php',
88
  'LiveChat\\Services\\Options\\WidgetURL' => $baseDir . '/plugin_files/Services/Options/WidgetURL.class.php',
89
  'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceOption' => $baseDir . '/plugin_files/Services/Options/WooCommerce/WooCommerceOption.class.php',
90
- 'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceOptionTest' => $baseDir . '/plugin_files/tests/services/options/woocommerce/WooCommerceOptionTest.class.php',
91
  'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceUserOption' => $baseDir . '/plugin_files/Services/Options/WooCommerce/WooCommerceUserOption.class.php',
92
- 'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceUserOptionTest' => $baseDir . '/plugin_files/tests/services/options/woocommerce/WooCommerceUserOptionTest.class.php',
93
  'LiveChat\\Services\\Options\\WritableOption' => $baseDir . '/plugin_files/Services/Options/WritableOption.class.php',
94
- 'LiveChat\\Services\\Options\\WritableOptionTest' => $baseDir . '/plugin_files/tests/services/options/WritableOptionTest.class.php',
95
  'LiveChat\\Services\\PlatformProvider' => $baseDir . '/plugin_files/Services/PlatformProvider.class.php',
96
- 'LiveChat\\Services\\PlatformProviderTest' => $baseDir . '/plugin_files/tests/services/PlatformProviderTest.class.php',
97
  'LiveChat\\Services\\SettingsProvider' => $baseDir . '/plugin_files/Services/SettingsProvider.class.php',
98
- 'LiveChat\\Services\\SettingsProviderTest' => $baseDir . '/plugin_files/tests/services/SettingsProviderTest.class.php',
99
  'LiveChat\\Services\\SetupProvider' => $baseDir . '/plugin_files/Services/SetupProvider.class.php',
100
- 'LiveChat\\Services\\SetupProviderTest' => $baseDir . '/plugin_files/tests/services/SetupProviderTest.class.php',
101
  'LiveChat\\Services\\Store' => $baseDir . '/plugin_files/Services/Store.class.php',
102
- 'LiveChat\\Services\\StoreTest' => $baseDir . '/plugin_files/tests/services/StoreTest.class.php',
103
  'LiveChat\\Services\\TemplateParser' => $baseDir . '/plugin_files/Services/TemplateParser.class.php',
104
- 'LiveChat\\Services\\TemplateParserTest' => $baseDir . '/plugin_files/tests/services/TemplateParserTest.class.php',
105
  'LiveChat\\Services\\Templates\\ChatWidgetScriptTemplate' => $baseDir . '/plugin_files/Services/Templates/ChatWidgetScriptTemplate.class.php',
106
- 'LiveChat\\Services\\Templates\\ChatWidgetScriptTemplateTest' => $baseDir . '/plugin_files/tests/services/templates/ChatWidgetScriptTemplateTest.class.php',
107
  'LiveChat\\Services\\Templates\\ConfirmIdentityNoticeTemplate' => $baseDir . '/plugin_files/Services/Templates/ConfirmIdentityNoticeTemplate.class.php',
108
  'LiveChat\\Services\\Templates\\ConnectNoticeTemplate' => $baseDir . '/plugin_files/Services/Templates/ConnectNoticeTemplate.class.php',
109
- 'LiveChat\\Services\\Templates\\ContactButtonWidgetTemplate' => $baseDir . '/plugin_files/Services/Templates/ContactButtonWidgetTemplate.class.php',
110
- 'LiveChat\\Services\\Templates\\ContactButtonWidgetTemplateTest' => $baseDir . '/plugin_files/tests/services/templates/ContactButtonWidgetTemplateTest.class.php',
111
  'LiveChat\\Services\\Templates\\CustomerTrackingTemplate' => $baseDir . '/plugin_files/Services/Templates/CustomerTrackingTemplate.class.php',
112
- 'LiveChat\\Services\\Templates\\CustomerTrackingTemplateTest' => $baseDir . '/plugin_files/tests/services/templates/CustomerTrackingTemplateTest.class.php',
113
  'LiveChat\\Services\\Templates\\DeactivationModalTemplate' => $baseDir . '/plugin_files/Services/Templates/DeactivationModalTemplate.class.php',
114
  'LiveChat\\Services\\Templates\\NoticeTemplate' => $baseDir . '/plugin_files/Services/Templates/NoticeTemplate.class.php',
115
- 'LiveChat\\Services\\Templates\\NoticeTemplateTest' => $baseDir . '/plugin_files/tests/services/templates/NoticeTemplateTest.class.php',
116
  'LiveChat\\Services\\Templates\\ResourcesTabTemplate' => $baseDir . '/plugin_files/Services/Templates/ResourcesTabTemplate.class.php',
117
  'LiveChat\\Services\\Templates\\SettingsTemplate' => $baseDir . '/plugin_files/Services/Templates/SettingsTemplate.class.php',
118
- 'LiveChat\\Services\\Templates\\SettingsTemplateTest' => $baseDir . '/plugin_files/tests/services/templates/SettingsTemplateTest.class.php',
119
  'LiveChat\\Services\\Templates\\Template' => $baseDir . '/plugin_files/Services/Templates/Template.class.php',
120
  'LiveChat\\Services\\Templates\\TrackingCodeTemplate' => $baseDir . '/plugin_files/Services/Templates/TrackingCodeTemplate.class.php',
121
- 'LiveChat\\Services\\Templates\\TrackingCodeTemplateTest' => $baseDir . '/plugin_files/tests/services/templates/TrackingCodeTemplateTest.class.php',
 
 
122
  'LiveChat\\Services\\TokenValidator' => $baseDir . '/plugin_files/Services/TokenValidator.class.php',
123
- 'LiveChat\\Services\\TokenValidatorTest' => $baseDir . '/plugin_files/tests/services/TokenValidatorTest.class.php',
124
  'LiveChat\\Services\\UrlProvider' => $baseDir . '/plugin_files/Services/UrlProvider.class.php',
125
- 'LiveChat\\Services\\UrlProviderTest' => $baseDir . '/plugin_files/tests/services/UrlProviderTest.class.php',
126
  'LiveChat\\Services\\User' => $baseDir . '/plugin_files/Services/User.class.php',
127
- 'LiveChat\\Services\\UserTest' => $baseDir . '/plugin_files/tests/services/UserTest.class.php',
128
- 'LiveChat\\Services\\WP_Error' => $baseDir . '/plugin_files/tests/services/ApiClientTest.class.php',
129
  'LiveChat\\Services\\WidgetProvider' => $baseDir . '/plugin_files/Services/WidgetProvider.class.php',
130
- 'LiveChat\\Services\\WidgetProviderTest' => $baseDir . '/plugin_files/tests/services/WidgetProviderTest.class.php',
131
  'LiveChat\\Services\\WooCommerce\\CustomerTrackingProvider' => $baseDir . '/plugin_files/Services/WooCommerce/CustomerTrackingProvider.class.php',
132
- 'LiveChat\\Services\\WooCommerce\\CustomerTrackingProviderTest' => $baseDir . '/plugin_files/tests/services/woocommerce/CustomerTrackingProviderTest.class.php',
133
  );
6
  $baseDir = dirname($vendorDir);
7
 
8
  return array(
9
+ 'Elementor\\LiveChatContactButtonWidget' => $baseDir . '/plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php',
10
+ 'Elementor\\LiveChatQualityBadgeWidget' => $baseDir . '/plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php',
11
  'LiveChat\\Drivers\\HttpClient' => $baseDir . '/plugin_files/Drivers/HttpClient.class.php',
 
 
12
  'LiveChat\\Exceptions\\ApiClientException' => $baseDir . '/plugin_files/Exceptions/ApiClientException.class.php',
13
  'LiveChat\\Exceptions\\ErrorCodes' => $baseDir . '/plugin_files/Exceptions/ErrorCode.class.php',
14
  'LiveChat\\Exceptions\\HttpClientException' => $baseDir . '/plugin_files/Exceptions/HttpClientException.class.php',
16
  'LiveChat\\LiveChat' => $baseDir . '/plugin_files/LiveChat.class.php',
17
  'LiveChat\\LiveChatAdmin' => $baseDir . '/plugin_files/LiveChatAdmin.class.php',
18
  'LiveChat\\Services\\ApiClient' => $baseDir . '/plugin_files/Services/ApiClient.class.php',
 
19
  'LiveChat\\Services\\CertProvider' => $baseDir . '/plugin_files/Services/CertProvider.class.php',
 
 
 
20
  'LiveChat\\Services\\ConnectToken' => $baseDir . '/plugin_files/Services/ConnectToken.class.php',
21
  'LiveChat\\Services\\ConnectTokenProvider' => $baseDir . '/plugin_files/Services/ConnectTokenProvider.class.php',
22
+ 'LiveChat\\Services\\Elementor\\Dependencies\\ContactButtonWidgetDependencies' => $baseDir . '/plugin_files/Services/Elementor/Dependencies/ContactButtonWidgetDependencies.class.php',
23
+ 'LiveChat\\Services\\Elementor\\Dependencies\\QualityBadgeWidgetDependencies' => $baseDir . '/plugin_files/Services/Elementor/Dependencies/QualityBadgeWidgetDependencies.class.php',
24
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Scripts\\ContactButtonScriptDependency' => $baseDir . '/plugin_files/Services/Elementor/Dependencies/Scripts/ContactButtonScriptDependency.class.php',
25
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Scripts\\QualityBadgeScriptDependency' => $baseDir . '/plugin_files/Services/Elementor/Dependencies/Scripts/QualityBadgeScriptDependency.class.php',
26
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Scripts\\ScriptDependency' => $baseDir . '/plugin_files/Services/Elementor/Dependencies/Scripts/ScriptDependency.class.php',
27
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Styles\\ContactButtonStyleDependency' => $baseDir . '/plugin_files/Services/Elementor/Dependencies/Styles/ContactButtonStyleDependency.class.php',
28
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Styles\\QualityBadgeStyleDependency' => $baseDir . '/plugin_files/Services/Elementor/Dependencies/Styles/QualityBadgeStyleDependency.class.php',
29
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Styles\\StyleDependency' => $baseDir . '/plugin_files/Services/Elementor/Dependencies/Styles/StyleDependency.class.php',
30
+ 'LiveChat\\Services\\Elementor\\Dependencies\\WidgetDependencies' => $baseDir . '/plugin_files/Services/Elementor/Dependencies/WidgetDependencies.class.php',
31
+ 'LiveChat\\Services\\Elementor\\ElementorWidgetsProvider' => $baseDir . '/plugin_files/Services/Elementor/ElementorWidgetsProvider.class.php',
32
+ 'LiveChat\\Services\\Elementor\\Factories\\ElementorWidgetsFactory' => $baseDir . '/plugin_files/Services/Elementor/Factories/ElementorWidgetsFactory.class.php',
33
  'LiveChat\\Services\\Factories\\ApiClientFactory' => $baseDir . '/plugin_files/Services/Factories/ApiClientFactory.class.php',
34
  'LiveChat\\Services\\Factories\\ConnectTokenFactory' => $baseDir . '/plugin_files/Services/Factories/ConnectTokenFactory.class.php',
35
  'LiveChat\\Services\\Factories\\ConnectTokenProviderFactory' => $baseDir . '/plugin_files/Services/Factories/ConnectTokenProviderFactory.class.php',
36
  'LiveChat\\Services\\Factories\\UrlProviderFactory' => $baseDir . '/plugin_files/Services/Factories/UrlProviderFactory.class.php',
37
  'LiveChat\\Services\\LicenseProvider' => $baseDir . '/plugin_files/Services/LicenseProvider.class.php',
 
38
  'LiveChat\\Services\\MenuProvider' => $baseDir . '/plugin_files/Services/MenuProvider.class.php',
 
 
39
  'LiveChat\\Services\\ModuleConfiguration' => $baseDir . '/plugin_files/Services/ModuleConfiguration.class.php',
 
 
40
  'LiveChat\\Services\\NotificationsRenderer' => $baseDir . '/plugin_files/Services/NotificationsRenderer.class.php',
 
41
  'LiveChat\\Services\\Notifications\\ConfirmIdentityNotice' => $baseDir . '/plugin_files/Services/Notifications/ConfirmIdentityNotice.class.php',
42
  'LiveChat\\Services\\Notifications\\ConnectNotice' => $baseDir . '/plugin_files/Services/Notifications/ConnectNotice.class.php',
43
  'LiveChat\\Services\\Notifications\\DeactivationModal' => $baseDir . '/plugin_files/Services/Notifications/DeactivationModal.class.php',
44
  'LiveChat\\Services\\Notifications\\Notice' => $baseDir . '/plugin_files/Services/Notifications/Notice.class.php',
45
  'LiveChat\\Services\\Notifications\\Notification' => $baseDir . '/plugin_files/Services/Notifications/Notification.class.php',
46
  'LiveChat\\Services\\Options\\AuthorizedUsers' => $baseDir . '/plugin_files/Services/Options/AuthorizedUsers.class.php',
 
47
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedLicenseEmail' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedLicenseEmail.class.php',
48
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedLicenseNumber' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedLicenseNumber.class.php',
49
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOption' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedOption.class.php',
 
50
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOptions' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedOptions.class.php',
 
51
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeDismissed' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeDismissed.class.php',
52
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeOffset' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeOffset.class.php',
53
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeOptions' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeOptions.class.php',
54
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeTimestamp' => $baseDir . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeTimestamp.class.php',
55
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetSettings' => $baseDir . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetSettings.class.php',
 
56
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWooCommerceSettings' => $baseDir . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWooCommerceSettings.class.php',
 
57
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressDisableGuestsOption' => $baseDir . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressDisableGuestsOption.class.php',
58
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressDisableMobileOption' => $baseDir . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressDisableMobileOption.class.php',
59
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressSettings' => $baseDir . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressSettings.class.php',
60
+ 'LiveChat\\Services\\Options\\Elementor\\ContactButtonWidgetURL' => $baseDir . '/plugin_files/Services/Options/Elementor/ContactButtonWidgetURL.class.php',
61
+ 'LiveChat\\Services\\Options\\Elementor\\ElementorWidgetsOptions' => $baseDir . '/plugin_files/Services/Options/Elementor/ElementorWidgetsOptions.class.php',
62
+ 'LiveChat\\Services\\Options\\Elementor\\QualityBadgeWidgetURL' => $baseDir . '/plugin_files/Services/Options/Elementor/QualityBadgeWidgetURL.class.php',
63
  'LiveChat\\Services\\Options\\Option' => $baseDir . '/plugin_files/Services/Options/Option.class.php',
 
64
  'LiveChat\\Services\\Options\\OptionsSet' => $baseDir . '/plugin_files/Services/Options/OptionsSet.class.php',
 
65
  'LiveChat\\Services\\Options\\Platform' => $baseDir . '/plugin_files/Services/Options/Platform.class.php',
66
  'LiveChat\\Services\\Options\\PublicKey' => $baseDir . '/plugin_files/Services/Options/PublicKey.class.php',
67
  'LiveChat\\Services\\Options\\ReadableOption' => $baseDir . '/plugin_files/Services/Options/ReadableOption.class.php',
 
68
  'LiveChat\\Services\\Options\\ReviewNoticeDismissed' => $baseDir . '/plugin_files/Services/Options/ReviewNoticeDismissed.class.php',
69
  'LiveChat\\Services\\Options\\ReviewNoticeOffset' => $baseDir . '/plugin_files/Services/Options/ReviewNoticeOffset.class.php',
70
  'LiveChat\\Services\\Options\\ReviewNoticeOptions' => $baseDir . '/plugin_files/Services/Options/ReviewNoticeOptions.class.php',
 
71
  'LiveChat\\Services\\Options\\ReviewNoticeTimestamp' => $baseDir . '/plugin_files/Services/Options/ReviewNoticeTimestamp.class.php',
72
  'LiveChat\\Services\\Options\\SettingsOptions' => $baseDir . '/plugin_files/Services/Options/SettingsOptions.class.php',
73
  'LiveChat\\Services\\Options\\StoreToken' => $baseDir . '/plugin_files/Services/Options/StoreToken.class.php',
74
  'LiveChat\\Services\\Options\\Synchronized' => $baseDir . '/plugin_files/Services/Options/Synchronized.class.php',
75
  'LiveChat\\Services\\Options\\UserAuthOptions' => $baseDir . '/plugin_files/Services/Options/UserAuthOptions.class.php',
76
  'LiveChat\\Services\\Options\\UserOption' => $baseDir . '/plugin_files/Services/Options/UserOption.class.php',
 
77
  'LiveChat\\Services\\Options\\UserToken' => $baseDir . '/plugin_files/Services/Options/UserToken.class.php',
78
  'LiveChat\\Services\\Options\\WidgetURL' => $baseDir . '/plugin_files/Services/Options/WidgetURL.class.php',
79
  'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceOption' => $baseDir . '/plugin_files/Services/Options/WooCommerce/WooCommerceOption.class.php',
 
80
  'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceUserOption' => $baseDir . '/plugin_files/Services/Options/WooCommerce/WooCommerceUserOption.class.php',
 
81
  'LiveChat\\Services\\Options\\WritableOption' => $baseDir . '/plugin_files/Services/Options/WritableOption.class.php',
 
82
  'LiveChat\\Services\\PlatformProvider' => $baseDir . '/plugin_files/Services/PlatformProvider.class.php',
 
83
  'LiveChat\\Services\\SettingsProvider' => $baseDir . '/plugin_files/Services/SettingsProvider.class.php',
 
84
  'LiveChat\\Services\\SetupProvider' => $baseDir . '/plugin_files/Services/SetupProvider.class.php',
 
85
  'LiveChat\\Services\\Store' => $baseDir . '/plugin_files/Services/Store.class.php',
 
86
  'LiveChat\\Services\\TemplateParser' => $baseDir . '/plugin_files/Services/TemplateParser.class.php',
 
87
  'LiveChat\\Services\\Templates\\ChatWidgetScriptTemplate' => $baseDir . '/plugin_files/Services/Templates/ChatWidgetScriptTemplate.class.php',
 
88
  'LiveChat\\Services\\Templates\\ConfirmIdentityNoticeTemplate' => $baseDir . '/plugin_files/Services/Templates/ConfirmIdentityNoticeTemplate.class.php',
89
  'LiveChat\\Services\\Templates\\ConnectNoticeTemplate' => $baseDir . '/plugin_files/Services/Templates/ConnectNoticeTemplate.class.php',
 
 
90
  'LiveChat\\Services\\Templates\\CustomerTrackingTemplate' => $baseDir . '/plugin_files/Services/Templates/CustomerTrackingTemplate.class.php',
 
91
  'LiveChat\\Services\\Templates\\DeactivationModalTemplate' => $baseDir . '/plugin_files/Services/Templates/DeactivationModalTemplate.class.php',
92
  'LiveChat\\Services\\Templates\\NoticeTemplate' => $baseDir . '/plugin_files/Services/Templates/NoticeTemplate.class.php',
 
93
  'LiveChat\\Services\\Templates\\ResourcesTabTemplate' => $baseDir . '/plugin_files/Services/Templates/ResourcesTabTemplate.class.php',
94
  'LiveChat\\Services\\Templates\\SettingsTemplate' => $baseDir . '/plugin_files/Services/Templates/SettingsTemplate.class.php',
 
95
  'LiveChat\\Services\\Templates\\Template' => $baseDir . '/plugin_files/Services/Templates/Template.class.php',
96
  'LiveChat\\Services\\Templates\\TrackingCodeTemplate' => $baseDir . '/plugin_files/Services/Templates/TrackingCodeTemplate.class.php',
97
+ 'LiveChat\\Services\\Templates\\Widgets\\ContactButtonWidgetTemplate' => $baseDir . '/plugin_files/Services/Templates/Widgets/ContactButtonWidgetTemplate.class.php',
98
+ 'LiveChat\\Services\\Templates\\Widgets\\Previews\\ContactButtonPreviewWidgetTemplate' => $baseDir . '/plugin_files/Services/Templates/Widgets/Previews/ContactButtonPreviewWidgetTemplate.class.php',
99
+ 'LiveChat\\Services\\Templates\\Widgets\\QualityBadgeWidgetTemplate' => $baseDir . '/plugin_files/Services/Templates/Widgets/QualityBadgeWidgetTemplate.class.php',
100
  'LiveChat\\Services\\TokenValidator' => $baseDir . '/plugin_files/Services/TokenValidator.class.php',
 
101
  'LiveChat\\Services\\UrlProvider' => $baseDir . '/plugin_files/Services/UrlProvider.class.php',
 
102
  'LiveChat\\Services\\User' => $baseDir . '/plugin_files/Services/User.class.php',
 
 
103
  'LiveChat\\Services\\WidgetProvider' => $baseDir . '/plugin_files/Services/WidgetProvider.class.php',
 
104
  'LiveChat\\Services\\WooCommerce\\CustomerTrackingProvider' => $baseDir . '/plugin_files/Services/WooCommerce/CustomerTrackingProvider.class.php',
 
105
  );
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInitcceae03e413af29d224cad9e623d6194
6
  {
7
  private static $loader;
8
 
@@ -22,15 +22,15 @@ class ComposerAutoloaderInitcceae03e413af29d224cad9e623d6194
22
  return self::$loader;
23
  }
24
 
25
- spl_autoload_register(array('ComposerAutoloaderInitcceae03e413af29d224cad9e623d6194', 'loadClassLoader'), true, true);
26
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
27
- spl_autoload_unregister(array('ComposerAutoloaderInitcceae03e413af29d224cad9e623d6194', 'loadClassLoader'));
28
 
29
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
30
  if ($useStaticLoader) {
31
  require_once __DIR__ . '/autoload_static.php';
32
 
33
- call_user_func(\Composer\Autoload\ComposerStaticInitcceae03e413af29d224cad9e623d6194::getInitializer($loader));
34
  } else {
35
  $map = require __DIR__ . '/autoload_namespaces.php';
36
  foreach ($map as $namespace => $path) {
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInita6493ae008253bbea81586604f62f71e
6
  {
7
  private static $loader;
8
 
22
  return self::$loader;
23
  }
24
 
25
+ spl_autoload_register(array('ComposerAutoloaderInita6493ae008253bbea81586604f62f71e', 'loadClassLoader'), true, true);
26
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
27
+ spl_autoload_unregister(array('ComposerAutoloaderInita6493ae008253bbea81586604f62f71e', 'loadClassLoader'));
28
 
29
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
30
  if ($useStaticLoader) {
31
  require_once __DIR__ . '/autoload_static.php';
32
 
33
+ call_user_func(\Composer\Autoload\ComposerStaticInita6493ae008253bbea81586604f62f71e::getInitializer($loader));
34
  } else {
35
  $map = require __DIR__ . '/autoload_namespaces.php';
36
  foreach ($map as $namespace => $path) {
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInitcceae03e413af29d224cad9e623d6194
8
  {
9
  public static $prefixLengthsPsr4 = array (
10
  'L' =>
@@ -29,9 +29,9 @@ class ComposerStaticInitcceae03e413af29d224cad9e623d6194
29
  );
30
 
31
  public static $classMap = array (
 
 
32
  'LiveChat\\Drivers\\HttpClient' => __DIR__ . '/../..' . '/plugin_files/Drivers/HttpClient.class.php',
33
- 'LiveChat\\Drivers\\HttpClientTest' => __DIR__ . '/../..' . '/plugin_files/tests/drivers/HttpClientTest.class.php',
34
- 'LiveChat\\Drivers\\WP_Error' => __DIR__ . '/../..' . '/plugin_files/tests/drivers/HttpClientTest.class.php',
35
  'LiveChat\\Exceptions\\ApiClientException' => __DIR__ . '/../..' . '/plugin_files/Exceptions/ApiClientException.class.php',
36
  'LiveChat\\Exceptions\\ErrorCodes' => __DIR__ . '/../..' . '/plugin_files/Exceptions/ErrorCode.class.php',
37
  'LiveChat\\Exceptions\\HttpClientException' => __DIR__ . '/../..' . '/plugin_files/Exceptions/HttpClientException.class.php',
@@ -39,128 +39,100 @@ class ComposerStaticInitcceae03e413af29d224cad9e623d6194
39
  'LiveChat\\LiveChat' => __DIR__ . '/../..' . '/plugin_files/LiveChat.class.php',
40
  'LiveChat\\LiveChatAdmin' => __DIR__ . '/../..' . '/plugin_files/LiveChatAdmin.class.php',
41
  'LiveChat\\Services\\ApiClient' => __DIR__ . '/../..' . '/plugin_files/Services/ApiClient.class.php',
42
- 'LiveChat\\Services\\ApiClientTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/ApiClientTest.class.php',
43
  'LiveChat\\Services\\CertProvider' => __DIR__ . '/../..' . '/plugin_files/Services/CertProvider.class.php',
44
- 'LiveChat\\Services\\CertProviderTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/CertProviderTest.class.php',
45
- 'LiveChat\\Services\\ConfirmIdentityNoticeTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/notifications/ConfirmIdentityNoticeTest.class.php',
46
- 'LiveChat\\Services\\ConnectNoticeTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/notifications/ConnectNoticeTest.class.php',
47
  'LiveChat\\Services\\ConnectToken' => __DIR__ . '/../..' . '/plugin_files/Services/ConnectToken.class.php',
48
  'LiveChat\\Services\\ConnectTokenProvider' => __DIR__ . '/../..' . '/plugin_files/Services/ConnectTokenProvider.class.php',
49
- 'LiveChat\\Services\\ConnectTokenProviderTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/ConnectTokenProviderTest.class.php',
50
- 'LiveChat\\Services\\ConnectTokenTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/ConnectTokenTest.class.php',
51
- 'LiveChat\\Services\\DeactivationModalTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/notifications/DeactivationModalTest.class.php',
 
 
 
 
 
 
 
 
52
  'LiveChat\\Services\\Factories\\ApiClientFactory' => __DIR__ . '/../..' . '/plugin_files/Services/Factories/ApiClientFactory.class.php',
53
  'LiveChat\\Services\\Factories\\ConnectTokenFactory' => __DIR__ . '/../..' . '/plugin_files/Services/Factories/ConnectTokenFactory.class.php',
54
  'LiveChat\\Services\\Factories\\ConnectTokenProviderFactory' => __DIR__ . '/../..' . '/plugin_files/Services/Factories/ConnectTokenProviderFactory.class.php',
55
  'LiveChat\\Services\\Factories\\UrlProviderFactory' => __DIR__ . '/../..' . '/plugin_files/Services/Factories/UrlProviderFactory.class.php',
56
  'LiveChat\\Services\\LicenseProvider' => __DIR__ . '/../..' . '/plugin_files/Services/LicenseProvider.class.php',
57
- 'LiveChat\\Services\\LicenseProviderTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/LicenseProviderTest.class.php',
58
  'LiveChat\\Services\\MenuProvider' => __DIR__ . '/../..' . '/plugin_files/Services/MenuProvider.class.php',
59
- 'LiveChat\\Services\\MenuProviderTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/MenuProviderTest.class.php',
60
- 'LiveChat\\Services\\MockData' => __DIR__ . '/../..' . '/plugin_files/tests/services/UserTest.class.php',
61
  'LiveChat\\Services\\ModuleConfiguration' => __DIR__ . '/../..' . '/plugin_files/Services/ModuleConfiguration.class.php',
62
- 'LiveChat\\Services\\NoticeTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/notifications/NoticeTest.class.php',
63
- 'LiveChat\\Services\\NotificationTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/notifications/NotificationTest.class.php',
64
  'LiveChat\\Services\\NotificationsRenderer' => __DIR__ . '/../..' . '/plugin_files/Services/NotificationsRenderer.class.php',
65
- 'LiveChat\\Services\\NotificationsRendererTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/NotificationsRendererTest.class.php',
66
  'LiveChat\\Services\\Notifications\\ConfirmIdentityNotice' => __DIR__ . '/../..' . '/plugin_files/Services/Notifications/ConfirmIdentityNotice.class.php',
67
  'LiveChat\\Services\\Notifications\\ConnectNotice' => __DIR__ . '/../..' . '/plugin_files/Services/Notifications/ConnectNotice.class.php',
68
  'LiveChat\\Services\\Notifications\\DeactivationModal' => __DIR__ . '/../..' . '/plugin_files/Services/Notifications/DeactivationModal.class.php',
69
  'LiveChat\\Services\\Notifications\\Notice' => __DIR__ . '/../..' . '/plugin_files/Services/Notifications/Notice.class.php',
70
  'LiveChat\\Services\\Notifications\\Notification' => __DIR__ . '/../..' . '/plugin_files/Services/Notifications/Notification.class.php',
71
  'LiveChat\\Services\\Options\\AuthorizedUsers' => __DIR__ . '/../..' . '/plugin_files/Services/Options/AuthorizedUsers.class.php',
72
- 'LiveChat\\Services\\Options\\AuthorizedUsersTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/AuthorizedUsersTest.class.php',
73
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedLicenseEmail' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedLicenseEmail.class.php',
74
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedLicenseNumber' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedLicenseNumber.class.php',
75
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedOption.class.php',
76
- 'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOptionTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/deprecated/DeprecatedOptionTest.class.php',
77
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedOptions.class.php',
78
- 'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOptionsTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/deprecated/DeprecatedOptionsTest.class.php',
79
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeDismissed' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeDismissed.class.php',
80
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeOffset' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeOffset.class.php',
81
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeOptions.class.php',
82
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeTimestamp' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeTimestamp.class.php',
83
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetSettings' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetSettings.class.php',
84
- 'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetSettingsTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/deprecated/widget/DeprecatedWidgetSettingsTest.class.php',
85
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWooCommerceSettings' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWooCommerceSettings.class.php',
86
- 'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWooCommerceSettingsTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/deprecated/widget/DeprecatedWidgetWooCommerceSettingsTest.class.php',
87
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressDisableGuestsOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressDisableGuestsOption.class.php',
88
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressDisableMobileOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressDisableMobileOption.class.php',
89
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressSettings' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressSettings.class.php',
90
- 'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressSettingsTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/deprecated/widget/DeprecatedWidgetWordPressSettingsTest.class.php',
 
 
91
  'LiveChat\\Services\\Options\\Option' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Option.class.php',
92
- 'LiveChat\\Services\\Options\\OptionTestCase' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/OptionTestCase.php',
93
  'LiveChat\\Services\\Options\\OptionsSet' => __DIR__ . '/../..' . '/plugin_files/Services/Options/OptionsSet.class.php',
94
- 'LiveChat\\Services\\Options\\OptionsSetTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/OptionsSetTest.class.php',
95
  'LiveChat\\Services\\Options\\Platform' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Platform.class.php',
96
  'LiveChat\\Services\\Options\\PublicKey' => __DIR__ . '/../..' . '/plugin_files/Services/Options/PublicKey.class.php',
97
  'LiveChat\\Services\\Options\\ReadableOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/ReadableOption.class.php',
98
- 'LiveChat\\Services\\Options\\ReadableOptionTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/ReadableOptionTest.class.php',
99
  'LiveChat\\Services\\Options\\ReviewNoticeDismissed' => __DIR__ . '/../..' . '/plugin_files/Services/Options/ReviewNoticeDismissed.class.php',
100
  'LiveChat\\Services\\Options\\ReviewNoticeOffset' => __DIR__ . '/../..' . '/plugin_files/Services/Options/ReviewNoticeOffset.class.php',
101
  'LiveChat\\Services\\Options\\ReviewNoticeOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/ReviewNoticeOptions.class.php',
102
- 'LiveChat\\Services\\Options\\ReviewNoticeOptionsTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/ReviewNoticeOptionsTest.class.php',
103
  'LiveChat\\Services\\Options\\ReviewNoticeTimestamp' => __DIR__ . '/../..' . '/plugin_files/Services/Options/ReviewNoticeTimestamp.class.php',
104
  'LiveChat\\Services\\Options\\SettingsOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/SettingsOptions.class.php',
105
  'LiveChat\\Services\\Options\\StoreToken' => __DIR__ . '/../..' . '/plugin_files/Services/Options/StoreToken.class.php',
106
  'LiveChat\\Services\\Options\\Synchronized' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Synchronized.class.php',
107
  'LiveChat\\Services\\Options\\UserAuthOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/UserAuthOptions.class.php',
108
  'LiveChat\\Services\\Options\\UserOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/UserOption.class.php',
109
- 'LiveChat\\Services\\Options\\UserOptionTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/UserOptionTest.class.php',
110
  'LiveChat\\Services\\Options\\UserToken' => __DIR__ . '/../..' . '/plugin_files/Services/Options/UserToken.class.php',
111
  'LiveChat\\Services\\Options\\WidgetURL' => __DIR__ . '/../..' . '/plugin_files/Services/Options/WidgetURL.class.php',
112
  'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/WooCommerce/WooCommerceOption.class.php',
113
- 'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceOptionTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/woocommerce/WooCommerceOptionTest.class.php',
114
  'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceUserOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/WooCommerce/WooCommerceUserOption.class.php',
115
- 'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceUserOptionTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/woocommerce/WooCommerceUserOptionTest.class.php',
116
  'LiveChat\\Services\\Options\\WritableOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/WritableOption.class.php',
117
- 'LiveChat\\Services\\Options\\WritableOptionTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/options/WritableOptionTest.class.php',
118
  'LiveChat\\Services\\PlatformProvider' => __DIR__ . '/../..' . '/plugin_files/Services/PlatformProvider.class.php',
119
- 'LiveChat\\Services\\PlatformProviderTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/PlatformProviderTest.class.php',
120
  'LiveChat\\Services\\SettingsProvider' => __DIR__ . '/../..' . '/plugin_files/Services/SettingsProvider.class.php',
121
- 'LiveChat\\Services\\SettingsProviderTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/SettingsProviderTest.class.php',
122
  'LiveChat\\Services\\SetupProvider' => __DIR__ . '/../..' . '/plugin_files/Services/SetupProvider.class.php',
123
- 'LiveChat\\Services\\SetupProviderTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/SetupProviderTest.class.php',
124
  'LiveChat\\Services\\Store' => __DIR__ . '/../..' . '/plugin_files/Services/Store.class.php',
125
- 'LiveChat\\Services\\StoreTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/StoreTest.class.php',
126
  'LiveChat\\Services\\TemplateParser' => __DIR__ . '/../..' . '/plugin_files/Services/TemplateParser.class.php',
127
- 'LiveChat\\Services\\TemplateParserTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/TemplateParserTest.class.php',
128
  'LiveChat\\Services\\Templates\\ChatWidgetScriptTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/ChatWidgetScriptTemplate.class.php',
129
- 'LiveChat\\Services\\Templates\\ChatWidgetScriptTemplateTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/templates/ChatWidgetScriptTemplateTest.class.php',
130
  'LiveChat\\Services\\Templates\\ConfirmIdentityNoticeTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/ConfirmIdentityNoticeTemplate.class.php',
131
  'LiveChat\\Services\\Templates\\ConnectNoticeTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/ConnectNoticeTemplate.class.php',
132
- 'LiveChat\\Services\\Templates\\ContactButtonWidgetTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/ContactButtonWidgetTemplate.class.php',
133
- 'LiveChat\\Services\\Templates\\ContactButtonWidgetTemplateTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/templates/ContactButtonWidgetTemplateTest.class.php',
134
  'LiveChat\\Services\\Templates\\CustomerTrackingTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/CustomerTrackingTemplate.class.php',
135
- 'LiveChat\\Services\\Templates\\CustomerTrackingTemplateTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/templates/CustomerTrackingTemplateTest.class.php',
136
  'LiveChat\\Services\\Templates\\DeactivationModalTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/DeactivationModalTemplate.class.php',
137
  'LiveChat\\Services\\Templates\\NoticeTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/NoticeTemplate.class.php',
138
- 'LiveChat\\Services\\Templates\\NoticeTemplateTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/templates/NoticeTemplateTest.class.php',
139
  'LiveChat\\Services\\Templates\\ResourcesTabTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/ResourcesTabTemplate.class.php',
140
  'LiveChat\\Services\\Templates\\SettingsTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/SettingsTemplate.class.php',
141
- 'LiveChat\\Services\\Templates\\SettingsTemplateTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/templates/SettingsTemplateTest.class.php',
142
  'LiveChat\\Services\\Templates\\Template' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/Template.class.php',
143
  'LiveChat\\Services\\Templates\\TrackingCodeTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/TrackingCodeTemplate.class.php',
144
- 'LiveChat\\Services\\Templates\\TrackingCodeTemplateTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/templates/TrackingCodeTemplateTest.class.php',
 
 
145
  'LiveChat\\Services\\TokenValidator' => __DIR__ . '/../..' . '/plugin_files/Services/TokenValidator.class.php',
146
- 'LiveChat\\Services\\TokenValidatorTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/TokenValidatorTest.class.php',
147
  'LiveChat\\Services\\UrlProvider' => __DIR__ . '/../..' . '/plugin_files/Services/UrlProvider.class.php',
148
- 'LiveChat\\Services\\UrlProviderTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/UrlProviderTest.class.php',
149
  'LiveChat\\Services\\User' => __DIR__ . '/../..' . '/plugin_files/Services/User.class.php',
150
- 'LiveChat\\Services\\UserTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/UserTest.class.php',
151
- 'LiveChat\\Services\\WP_Error' => __DIR__ . '/../..' . '/plugin_files/tests/services/ApiClientTest.class.php',
152
  'LiveChat\\Services\\WidgetProvider' => __DIR__ . '/../..' . '/plugin_files/Services/WidgetProvider.class.php',
153
- 'LiveChat\\Services\\WidgetProviderTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/WidgetProviderTest.class.php',
154
  'LiveChat\\Services\\WooCommerce\\CustomerTrackingProvider' => __DIR__ . '/../..' . '/plugin_files/Services/WooCommerce/CustomerTrackingProvider.class.php',
155
- 'LiveChat\\Services\\WooCommerce\\CustomerTrackingProviderTest' => __DIR__ . '/../..' . '/plugin_files/tests/services/woocommerce/CustomerTrackingProviderTest.class.php',
156
  );
157
 
158
  public static function getInitializer(ClassLoader $loader)
159
  {
160
  return \Closure::bind(function () use ($loader) {
161
- $loader->prefixLengthsPsr4 = ComposerStaticInitcceae03e413af29d224cad9e623d6194::$prefixLengthsPsr4;
162
- $loader->prefixDirsPsr4 = ComposerStaticInitcceae03e413af29d224cad9e623d6194::$prefixDirsPsr4;
163
- $loader->classMap = ComposerStaticInitcceae03e413af29d224cad9e623d6194::$classMap;
164
 
165
  }, null, ClassLoader::class);
166
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInita6493ae008253bbea81586604f62f71e
8
  {
9
  public static $prefixLengthsPsr4 = array (
10
  'L' =>
29
  );
30
 
31
  public static $classMap = array (
32
+ 'Elementor\\LiveChatContactButtonWidget' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Widgets/LiveChatContactButtonWidget.class.php',
33
+ 'Elementor\\LiveChatQualityBadgeWidget' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Widgets/LiveChatQualityBadgeWidget.class.php',
34
  'LiveChat\\Drivers\\HttpClient' => __DIR__ . '/../..' . '/plugin_files/Drivers/HttpClient.class.php',
 
 
35
  'LiveChat\\Exceptions\\ApiClientException' => __DIR__ . '/../..' . '/plugin_files/Exceptions/ApiClientException.class.php',
36
  'LiveChat\\Exceptions\\ErrorCodes' => __DIR__ . '/../..' . '/plugin_files/Exceptions/ErrorCode.class.php',
37
  'LiveChat\\Exceptions\\HttpClientException' => __DIR__ . '/../..' . '/plugin_files/Exceptions/HttpClientException.class.php',
39
  'LiveChat\\LiveChat' => __DIR__ . '/../..' . '/plugin_files/LiveChat.class.php',
40
  'LiveChat\\LiveChatAdmin' => __DIR__ . '/../..' . '/plugin_files/LiveChatAdmin.class.php',
41
  'LiveChat\\Services\\ApiClient' => __DIR__ . '/../..' . '/plugin_files/Services/ApiClient.class.php',
 
42
  'LiveChat\\Services\\CertProvider' => __DIR__ . '/../..' . '/plugin_files/Services/CertProvider.class.php',
 
 
 
43
  'LiveChat\\Services\\ConnectToken' => __DIR__ . '/../..' . '/plugin_files/Services/ConnectToken.class.php',
44
  'LiveChat\\Services\\ConnectTokenProvider' => __DIR__ . '/../..' . '/plugin_files/Services/ConnectTokenProvider.class.php',
45
+ 'LiveChat\\Services\\Elementor\\Dependencies\\ContactButtonWidgetDependencies' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Dependencies/ContactButtonWidgetDependencies.class.php',
46
+ 'LiveChat\\Services\\Elementor\\Dependencies\\QualityBadgeWidgetDependencies' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Dependencies/QualityBadgeWidgetDependencies.class.php',
47
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Scripts\\ContactButtonScriptDependency' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Dependencies/Scripts/ContactButtonScriptDependency.class.php',
48
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Scripts\\QualityBadgeScriptDependency' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Dependencies/Scripts/QualityBadgeScriptDependency.class.php',
49
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Scripts\\ScriptDependency' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Dependencies/Scripts/ScriptDependency.class.php',
50
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Styles\\ContactButtonStyleDependency' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Dependencies/Styles/ContactButtonStyleDependency.class.php',
51
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Styles\\QualityBadgeStyleDependency' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Dependencies/Styles/QualityBadgeStyleDependency.class.php',
52
+ 'LiveChat\\Services\\Elementor\\Dependencies\\Styles\\StyleDependency' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Dependencies/Styles/StyleDependency.class.php',
53
+ 'LiveChat\\Services\\Elementor\\Dependencies\\WidgetDependencies' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Dependencies/WidgetDependencies.class.php',
54
+ 'LiveChat\\Services\\Elementor\\ElementorWidgetsProvider' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/ElementorWidgetsProvider.class.php',
55
+ 'LiveChat\\Services\\Elementor\\Factories\\ElementorWidgetsFactory' => __DIR__ . '/../..' . '/plugin_files/Services/Elementor/Factories/ElementorWidgetsFactory.class.php',
56
  'LiveChat\\Services\\Factories\\ApiClientFactory' => __DIR__ . '/../..' . '/plugin_files/Services/Factories/ApiClientFactory.class.php',
57
  'LiveChat\\Services\\Factories\\ConnectTokenFactory' => __DIR__ . '/../..' . '/plugin_files/Services/Factories/ConnectTokenFactory.class.php',
58
  'LiveChat\\Services\\Factories\\ConnectTokenProviderFactory' => __DIR__ . '/../..' . '/plugin_files/Services/Factories/ConnectTokenProviderFactory.class.php',
59
  'LiveChat\\Services\\Factories\\UrlProviderFactory' => __DIR__ . '/../..' . '/plugin_files/Services/Factories/UrlProviderFactory.class.php',
60
  'LiveChat\\Services\\LicenseProvider' => __DIR__ . '/../..' . '/plugin_files/Services/LicenseProvider.class.php',
 
61
  'LiveChat\\Services\\MenuProvider' => __DIR__ . '/../..' . '/plugin_files/Services/MenuProvider.class.php',
 
 
62
  'LiveChat\\Services\\ModuleConfiguration' => __DIR__ . '/../..' . '/plugin_files/Services/ModuleConfiguration.class.php',
 
 
63
  'LiveChat\\Services\\NotificationsRenderer' => __DIR__ . '/../..' . '/plugin_files/Services/NotificationsRenderer.class.php',
 
64
  'LiveChat\\Services\\Notifications\\ConfirmIdentityNotice' => __DIR__ . '/../..' . '/plugin_files/Services/Notifications/ConfirmIdentityNotice.class.php',
65
  'LiveChat\\Services\\Notifications\\ConnectNotice' => __DIR__ . '/../..' . '/plugin_files/Services/Notifications/ConnectNotice.class.php',
66
  'LiveChat\\Services\\Notifications\\DeactivationModal' => __DIR__ . '/../..' . '/plugin_files/Services/Notifications/DeactivationModal.class.php',
67
  'LiveChat\\Services\\Notifications\\Notice' => __DIR__ . '/../..' . '/plugin_files/Services/Notifications/Notice.class.php',
68
  'LiveChat\\Services\\Notifications\\Notification' => __DIR__ . '/../..' . '/plugin_files/Services/Notifications/Notification.class.php',
69
  'LiveChat\\Services\\Options\\AuthorizedUsers' => __DIR__ . '/../..' . '/plugin_files/Services/Options/AuthorizedUsers.class.php',
 
70
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedLicenseEmail' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedLicenseEmail.class.php',
71
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedLicenseNumber' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedLicenseNumber.class.php',
72
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedOption.class.php',
 
73
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedOptions.class.php',
 
74
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeDismissed' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeDismissed.class.php',
75
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeOffset' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeOffset.class.php',
76
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeOptions.class.php',
77
  'LiveChat\\Services\\Options\\Deprecated\\DeprecatedReviewNoticeTimestamp' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/DeprecatedReviewNoticeTimestamp.class.php',
78
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetSettings' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetSettings.class.php',
 
79
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWooCommerceSettings' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWooCommerceSettings.class.php',
 
80
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressDisableGuestsOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressDisableGuestsOption.class.php',
81
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressDisableMobileOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressDisableMobileOption.class.php',
82
  'LiveChat\\Services\\Options\\Deprecated\\Widget\\DeprecatedWidgetWordPressSettings' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Deprecated/Widget/DeprecatedWidgetWordPressSettings.class.php',
83
+ 'LiveChat\\Services\\Options\\Elementor\\ContactButtonWidgetURL' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Elementor/ContactButtonWidgetURL.class.php',
84
+ 'LiveChat\\Services\\Options\\Elementor\\ElementorWidgetsOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Elementor/ElementorWidgetsOptions.class.php',
85
+ 'LiveChat\\Services\\Options\\Elementor\\QualityBadgeWidgetURL' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Elementor/QualityBadgeWidgetURL.class.php',
86
  'LiveChat\\Services\\Options\\Option' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Option.class.php',
 
87
  'LiveChat\\Services\\Options\\OptionsSet' => __DIR__ . '/../..' . '/plugin_files/Services/Options/OptionsSet.class.php',
 
88
  'LiveChat\\Services\\Options\\Platform' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Platform.class.php',
89
  'LiveChat\\Services\\Options\\PublicKey' => __DIR__ . '/../..' . '/plugin_files/Services/Options/PublicKey.class.php',
90
  'LiveChat\\Services\\Options\\ReadableOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/ReadableOption.class.php',
 
91
  'LiveChat\\Services\\Options\\ReviewNoticeDismissed' => __DIR__ . '/../..' . '/plugin_files/Services/Options/ReviewNoticeDismissed.class.php',
92
  'LiveChat\\Services\\Options\\ReviewNoticeOffset' => __DIR__ . '/../..' . '/plugin_files/Services/Options/ReviewNoticeOffset.class.php',
93
  'LiveChat\\Services\\Options\\ReviewNoticeOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/ReviewNoticeOptions.class.php',
 
94
  'LiveChat\\Services\\Options\\ReviewNoticeTimestamp' => __DIR__ . '/../..' . '/plugin_files/Services/Options/ReviewNoticeTimestamp.class.php',
95
  'LiveChat\\Services\\Options\\SettingsOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/SettingsOptions.class.php',
96
  'LiveChat\\Services\\Options\\StoreToken' => __DIR__ . '/../..' . '/plugin_files/Services/Options/StoreToken.class.php',
97
  'LiveChat\\Services\\Options\\Synchronized' => __DIR__ . '/../..' . '/plugin_files/Services/Options/Synchronized.class.php',
98
  'LiveChat\\Services\\Options\\UserAuthOptions' => __DIR__ . '/../..' . '/plugin_files/Services/Options/UserAuthOptions.class.php',
99
  'LiveChat\\Services\\Options\\UserOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/UserOption.class.php',
 
100
  'LiveChat\\Services\\Options\\UserToken' => __DIR__ . '/../..' . '/plugin_files/Services/Options/UserToken.class.php',
101
  'LiveChat\\Services\\Options\\WidgetURL' => __DIR__ . '/../..' . '/plugin_files/Services/Options/WidgetURL.class.php',
102
  'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/WooCommerce/WooCommerceOption.class.php',
 
103
  'LiveChat\\Services\\Options\\WooCommerce\\WooCommerceUserOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/WooCommerce/WooCommerceUserOption.class.php',
 
104
  'LiveChat\\Services\\Options\\WritableOption' => __DIR__ . '/../..' . '/plugin_files/Services/Options/WritableOption.class.php',
 
105
  'LiveChat\\Services\\PlatformProvider' => __DIR__ . '/../..' . '/plugin_files/Services/PlatformProvider.class.php',
 
106
  'LiveChat\\Services\\SettingsProvider' => __DIR__ . '/../..' . '/plugin_files/Services/SettingsProvider.class.php',
 
107
  'LiveChat\\Services\\SetupProvider' => __DIR__ . '/../..' . '/plugin_files/Services/SetupProvider.class.php',
 
108
  'LiveChat\\Services\\Store' => __DIR__ . '/../..' . '/plugin_files/Services/Store.class.php',
 
109
  'LiveChat\\Services\\TemplateParser' => __DIR__ . '/../..' . '/plugin_files/Services/TemplateParser.class.php',
 
110
  'LiveChat\\Services\\Templates\\ChatWidgetScriptTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/ChatWidgetScriptTemplate.class.php',
 
111
  'LiveChat\\Services\\Templates\\ConfirmIdentityNoticeTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/ConfirmIdentityNoticeTemplate.class.php',
112
  'LiveChat\\Services\\Templates\\ConnectNoticeTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/ConnectNoticeTemplate.class.php',
 
 
113
  'LiveChat\\Services\\Templates\\CustomerTrackingTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/CustomerTrackingTemplate.class.php',
 
114
  'LiveChat\\Services\\Templates\\DeactivationModalTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/DeactivationModalTemplate.class.php',
115
  'LiveChat\\Services\\Templates\\NoticeTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/NoticeTemplate.class.php',
 
116
  'LiveChat\\Services\\Templates\\ResourcesTabTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/ResourcesTabTemplate.class.php',
117
  'LiveChat\\Services\\Templates\\SettingsTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/SettingsTemplate.class.php',
 
118
  'LiveChat\\Services\\Templates\\Template' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/Template.class.php',
119
  'LiveChat\\Services\\Templates\\TrackingCodeTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/TrackingCodeTemplate.class.php',
120
+ 'LiveChat\\Services\\Templates\\Widgets\\ContactButtonWidgetTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/Widgets/ContactButtonWidgetTemplate.class.php',
121
+ 'LiveChat\\Services\\Templates\\Widgets\\Previews\\ContactButtonPreviewWidgetTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/Widgets/Previews/ContactButtonPreviewWidgetTemplate.class.php',
122
+ 'LiveChat\\Services\\Templates\\Widgets\\QualityBadgeWidgetTemplate' => __DIR__ . '/../..' . '/plugin_files/Services/Templates/Widgets/QualityBadgeWidgetTemplate.class.php',
123
  'LiveChat\\Services\\TokenValidator' => __DIR__ . '/../..' . '/plugin_files/Services/TokenValidator.class.php',
 
124
  'LiveChat\\Services\\UrlProvider' => __DIR__ . '/../..' . '/plugin_files/Services/UrlProvider.class.php',
 
125
  'LiveChat\\Services\\User' => __DIR__ . '/../..' . '/plugin_files/Services/User.class.php',
 
 
126
  'LiveChat\\Services\\WidgetProvider' => __DIR__ . '/../..' . '/plugin_files/Services/WidgetProvider.class.php',
 
127
  'LiveChat\\Services\\WooCommerce\\CustomerTrackingProvider' => __DIR__ . '/../..' . '/plugin_files/Services/WooCommerce/CustomerTrackingProvider.class.php',
 
128
  );
129
 
130
  public static function getInitializer(ClassLoader $loader)
131
  {
132
  return \Closure::bind(function () use ($loader) {
133
+ $loader->prefixLengthsPsr4 = ComposerStaticInita6493ae008253bbea81586604f62f71e::$prefixLengthsPsr4;
134
+ $loader->prefixDirsPsr4 = ComposerStaticInita6493ae008253bbea81586604f62f71e::$prefixDirsPsr4;
135
+ $loader->classMap = ComposerStaticInita6493ae008253bbea81586604f62f71e::$classMap;
136
 
137
  }, null, ClassLoader::class);
138
  }