Changeset 3336392
- Timestamp:
- 07/30/2025 07:34:27 AM (8 months ago)
- Location:
- sendcloud-connected-shipping
- Files:
-
- 131 added
- 15 edited
-
tags/1.0.15 (added)
-
tags/1.0.15/changelog.txt (added)
-
tags/1.0.15/composer.json (added)
-
tags/1.0.15/composer.lock (added)
-
tags/1.0.15/database (added)
-
tags/1.0.15/database/Exceptions (added)
-
tags/1.0.15/database/Exceptions/class-migration-exception.php (added)
-
tags/1.0.15/database/Migrations (added)
-
tags/1.0.15/database/Migrations/migration.v.1.0.0.php (added)
-
tags/1.0.15/database/Migrations/migration.v.1.0.1.php (added)
-
tags/1.0.15/database/Migrations/migration.v.1.0.11.php (added)
-
tags/1.0.15/database/Utility (added)
-
tags/1.0.15/database/Utility/class-migration-reader.php (added)
-
tags/1.0.15/database/class-abstract-migration.php (added)
-
tags/1.0.15/database/class-migrator.php (added)
-
tags/1.0.15/i18n (added)
-
tags/1.0.15/i18n/languages (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-de_DE.mo (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-de_DE.po (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-en_GB.mo (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-en_GB.po (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-en_US.mo (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-en_US.po (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-es_ES.mo (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-es_ES.po (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-fr_FR.mo (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-fr_FR.po (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-it_IT.mo (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-it_IT.po (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-nl_NL.mo (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping-nl_NL.po (added)
-
tags/1.0.15/i18n/languages/sendcloud-connected-shipping.pot (added)
-
tags/1.0.15/includes (added)
-
tags/1.0.15/includes/Controllers (added)
-
tags/1.0.15/includes/Controllers/Api (added)
-
tags/1.0.15/includes/Controllers/Api/class-authorization.php (added)
-
tags/1.0.15/includes/Controllers/Api/class-base-wc-rest-controller.php (added)
-
tags/1.0.15/includes/Controllers/Api/class-integration-controller.php (added)
-
tags/1.0.15/includes/Controllers/Api/class-service-point-controller.php (added)
-
tags/1.0.15/includes/Controllers/Api/class-status-controller.php (added)
-
tags/1.0.15/includes/Controllers/Backend (added)
-
tags/1.0.15/includes/Controllers/Backend/class-connect-controller.php (added)
-
tags/1.0.15/includes/Controllers/Backend/class-migration-controller.php (added)
-
tags/1.0.15/includes/Controllers/Backend/class-support-controller.php (added)
-
tags/1.0.15/includes/Controllers/Backend/class-view-controller.php (added)
-
tags/1.0.15/includes/Controllers/Frontend (added)
-
tags/1.0.15/includes/Controllers/Frontend/class-base-controller.php (added)
-
tags/1.0.15/includes/Controllers/Frontend/class-oauth-complete-controller.php (added)
-
tags/1.0.15/includes/Controllers/Frontend/class-oauth-connect-controller.php (added)
-
tags/1.0.15/includes/Exceptions (added)
-
tags/1.0.15/includes/Exceptions/class-http-unsuccessful-response.php (added)
-
tags/1.0.15/includes/Exceptions/class-invalid-payload-exception.php (added)
-
tags/1.0.15/includes/Exceptions/class-missing-auth-data-exception.php (added)
-
tags/1.0.15/includes/Exceptions/class-missing-consumer-key-exception.php (added)
-
tags/1.0.15/includes/Exceptions/class-request-missing-parameters-exception.php (added)
-
tags/1.0.15/includes/HookHandlers (added)
-
tags/1.0.15/includes/HookHandlers/class-api-handler.php (added)
-
tags/1.0.15/includes/HookHandlers/class-plugin-disable-handler.php (added)
-
tags/1.0.15/includes/HookHandlers/class-product-handler.php (added)
-
tags/1.0.15/includes/Models (added)
-
tags/1.0.15/includes/Models/class-api-key.php (added)
-
tags/1.0.15/includes/Models/class-auth-data.php (added)
-
tags/1.0.15/includes/Models/class-deactivation-data.php (added)
-
tags/1.0.15/includes/Models/class-service-point-instance.php (added)
-
tags/1.0.15/includes/Models/class-service-point-meta.php (added)
-
tags/1.0.15/includes/Repositories (added)
-
tags/1.0.15/includes/Repositories/class-abstract-repository.php (added)
-
tags/1.0.15/includes/Repositories/class-api-key-repository.php (added)
-
tags/1.0.15/includes/Repositories/class-config-repository.php (added)
-
tags/1.0.15/includes/Repositories/class-order-repository.php (added)
-
tags/1.0.15/includes/Repositories/class-shipping-method-options-repository.php (added)
-
tags/1.0.15/includes/ServicePoint (added)
-
tags/1.0.15/includes/ServicePoint/Checkout (added)
-
tags/1.0.15/includes/ServicePoint/Checkout/class-checkout-block-handler.php (added)
-
tags/1.0.15/includes/ServicePoint/Checkout/class-checkout-handler.php (added)
-
tags/1.0.15/includes/ServicePoint/Shipping (added)
-
tags/1.0.15/includes/ServicePoint/Shipping/class-abstract-flat-rate-free-shipping-method.php (added)
-
tags/1.0.15/includes/ServicePoint/Shipping/class-service-point-shipping-method.php (added)
-
tags/1.0.15/includes/ServicePoint/class-email-handler.php (added)
-
tags/1.0.15/includes/ServicePoint/class-order-admin-handler.php (added)
-
tags/1.0.15/includes/Services (added)
-
tags/1.0.15/includes/Services/class-auth-service.php (added)
-
tags/1.0.15/includes/Services/class-config-service.php (added)
-
tags/1.0.15/includes/Services/class-connect-service.php (added)
-
tags/1.0.15/includes/Services/class-webhook-service.php (added)
-
tags/1.0.15/includes/Utility (added)
-
tags/1.0.15/includes/Utility/class-auth-code-generator.php (added)
-
tags/1.0.15/includes/Utility/class-base64-url-encoder.php (added)
-
tags/1.0.15/includes/Utility/class-database.php (added)
-
tags/1.0.15/includes/Utility/class-http-client.php (added)
-
tags/1.0.15/includes/Utility/class-logger-factory.php (added)
-
tags/1.0.15/includes/Utility/class-logger.php (added)
-
tags/1.0.15/includes/Utility/class-response.php (added)
-
tags/1.0.15/includes/Utility/class-shop-helper.php (added)
-
tags/1.0.15/includes/Utility/class-version-utility.php (added)
-
tags/1.0.15/includes/Utility/class-view.php (added)
-
tags/1.0.15/includes/class-sendcloud.php (added)
-
tags/1.0.15/readme.txt (added)
-
tags/1.0.15/resources (added)
-
tags/1.0.15/resources/css (added)
-
tags/1.0.15/resources/css/sendcloud.css (added)
-
tags/1.0.15/resources/js (added)
-
tags/1.0.15/resources/js/sendcloud.page.js (added)
-
tags/1.0.15/resources/js/service-point-block.js (added)
-
tags/1.0.15/resources/views (added)
-
tags/1.0.15/resources/views/plugin (added)
-
tags/1.0.15/resources/views/plugin/deactivation-notice.php (added)
-
tags/1.0.15/resources/views/service-point (added)
-
tags/1.0.15/resources/views/service-point/checkout (added)
-
tags/1.0.15/resources/views/service-point/checkout/service-point-carriers.php (added)
-
tags/1.0.15/resources/views/service-point/email-template.php (added)
-
tags/1.0.15/resources/views/service-point/order-admin.php (added)
-
tags/1.0.15/resources/views/service-point/order-confirmation-page.php (added)
-
tags/1.0.15/resources/views/wc-settings (added)
-
tags/1.0.15/resources/views/wc-settings/sendcloud-page.php (added)
-
tags/1.0.15/sendcloud-connected-shipping.php (added)
-
tags/1.0.15/uninstall.php (added)
-
tags/1.0.15/vendor (added)
-
tags/1.0.15/vendor/autoload.php (added)
-
tags/1.0.15/vendor/composer (added)
-
tags/1.0.15/vendor/composer/ClassLoader.php (added)
-
tags/1.0.15/vendor/composer/InstalledVersions.php (added)
-
tags/1.0.15/vendor/composer/LICENSE (added)
-
tags/1.0.15/vendor/composer/autoload_classmap.php (added)
-
tags/1.0.15/vendor/composer/autoload_namespaces.php (added)
-
tags/1.0.15/vendor/composer/autoload_psr4.php (added)
-
tags/1.0.15/vendor/composer/autoload_real.php (added)
-
tags/1.0.15/vendor/composer/autoload_static.php (added)
-
tags/1.0.15/vendor/composer/installed.json (added)
-
tags/1.0.15/vendor/composer/installed.php (added)
-
tags/1.0.15/vendor/composer/platform_check.php (added)
-
trunk/changelog.txt (modified) (1 diff)
-
trunk/composer.lock (modified) (2 diffs)
-
trunk/includes/class-sendcloud.php (modified) (1 diff)
-
trunk/readme.txt (modified) (5 diffs)
-
trunk/sendcloud-connected-shipping.php (modified) (1 diff)
-
trunk/vendor/autoload.php (modified) (1 diff)
-
trunk/vendor/composer/ClassLoader.php (modified) (25 diffs)
-
trunk/vendor/composer/InstalledVersions.php (modified) (11 diffs)
-
trunk/vendor/composer/LICENSE (modified) (2 diffs)
-
trunk/vendor/composer/autoload_classmap.php (modified) (1 diff)
-
trunk/vendor/composer/autoload_namespaces.php (modified) (1 diff)
-
trunk/vendor/composer/autoload_psr4.php (modified) (1 diff)
-
trunk/vendor/composer/autoload_real.php (modified) (2 diffs)
-
trunk/vendor/composer/autoload_static.php (modified) (2 diffs)
-
trunk/vendor/composer/installed.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
sendcloud-connected-shipping/trunk/changelog.txt
r3333025 r3336392 1 1 *** WooCommerce Sendcloud | The all-in-one shipping platform Changelog *** 2 3 = 2025-07-29 - version 1.0.15 = 4 * Change plugin description 2 5 3 6 = 2025-07-23 - version 1.0.14 = -
sendcloud-connected-shipping/trunk/composer.lock
r3300820 r3336392 10 10 "aliases": [], 11 11 "minimum-stability": "stable", 12 "stability-flags": {},12 "stability-flags": [], 13 13 "prefer-stable": false, 14 14 "prefer-lowest": false, … … 17 17 "ext-json": "*" 18 18 }, 19 "platform-dev": {},20 "plugin-api-version": "2. 6.0"19 "platform-dev": [], 20 "plugin-api-version": "2.2.0" 21 21 } -
sendcloud-connected-shipping/trunk/includes/class-sendcloud.php
r3333025 r3336392 27 27 28 28 class SCCSP_Sendcloud { 29 const VERSION = '1.0.1 4';29 const VERSION = '1.0.15'; 30 30 31 31 const INTEGRATION_NAME = 'sendcloudshipping'; -
sendcloud-connected-shipping/trunk/readme.txt
r3333025 r3336392 1 1 === Sendcloud Shipping === 2 Version: 1.0.1 42 Version: 1.0.15 3 3 Developer: SendCloud Global B.V. 4 4 Developer URI: http://sendcloud.com 5 Tags: shipping, carriers, service point, delivery, woocommerce5 Tags: shipping, shipping rates, order tracking, service points, woocommerce 6 6 Requires at least: 4.9 7 7 Requires PHP: 7.0 8 8 Tested up to: 6.8.2 9 Stable tag: 1.0.1 49 Stable tag: 1.0.15 10 10 License: GPLv2 11 11 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 19 19 [youtube https://www.youtube.com/watch?v=0GUV5W0bNi0 ] 20 20 21 = Sendcloud, the all-in-one shipping platform that helps you grow. =21 = Fast, automated shipping for WooCommerce: labels, tracking & returns in one platform. = 22 22 23 Shipping shouldn’t slow you down. Sendcloud simplifies shipping—automating labels, tracking, and returns—while giving you smart insights and access to multiple carriers, all in one easy platform.23 Grow your business with the Sendcloud x WooCommerce integration. Connect your WooCommerce store with Sendcloud in seconds and automate your shipping workflow — from checkout to returns — all from one powerful platform. Join 25,000+ e-commerce businesses that grow with Sendcloud. 24 24 25 With advanced analytics, benchmarks, and recommendations, <strong>Shipping Intelligence</strong> helps shape your ideal shipping strategy based on over a decade of logistics data. <strong>Support Automation</strong> centralizes claims and carrier communications, reducing manual tasks and enabling proactive customer support. 25 = Connect your WooCommerce store in seconds and streamline your entire fulfillment workflow in one platform. = 26 26 27 The time is now — turn shipping into your competitive advantage and every delivery an experience. Join 25,000+ e-commerce businesses that grow with Sendcloud. 27 🛠 Set up in seconds: no code needed 28 28 29 = Integrate your WooCommerce with 160+ international carriers = 30 Your business is unique, and so are your shipping needs. That's why we've partnered with over 160 leading international carriers. Upload your own carrier contract or ship directly through Sendcloud's pre-negotiated shipping rates. 29 🚚 160+ carriers, including DHL, UPS, Royal Mail & more 30 31 📍 Customized delivery experience — let customers choose home delivery, pickup points, same-day, or next-day 32 33 📦 Print labels, sync orders, manage returns — all in one place 34 35 📬 Branded tracking emails & SMS notifications 36 37 🔁 Easy, branded return portal 38 39 📊 Track shipping and returns data in one dashboard 40 41 = Why WooCommerce merchants choose Sendcloud: = 42 43 * Automate your shipping process: Go beyond label printing — create powerful automations to reduce errors and scale faster. 44 45 * Pick and pack more orders in less time: Minimize costly returns by ensuring the right order gets delivered every time. 46 47 * Deliver the best post-purchase experience: Give your customers proactive tracking updates and a branded, hassle-free return portal. 48 49 * One platform, full control: Everything you need to run your e-commerce shipping — built to integrate with your existing WooCommerce stack. 31 50 32 51 = Supported carriers = 33 52 DHL, DHL Express, DPD, UPS, FedEx, Hermes, Budbee, GLS, Royal Mail, PostNL, Bpost, SEUR, Correos, Correos Express, Colissimo, Mondial Relay, Colis Prive, Lettre Suivie, Chronopost, Deutsche Post, Trunkrs, Post Italiane, MRW, BRT, Cycloon, Delivengo, Parcelforce, and many more! We’re continuously integrating new carriers, so stay tuned for the latest updates and never miss out on any developments. 34 53 35 = How does Sendcloud work? =36 Sendcloud simplifies your shipping by connecting your store to a wide selection of carriers. Once integrated, you can:37 • <strong>Offer flexible delivery options</strong>, from same-day to scheduled drop-offs, so customers can choose what works for them.38 • <strong>Optimize the post-purchase experience</strong> with branded tracking emails and pages that build customer loyalty.39 • <strong>Simplify shipping</strong> by activating multiple carriers and automating support tasks like tracking updates and returns.40 • Print shipping labels in bulk and <strong>skip the manual work.</strong>41 • <strong>Keep your customers in the loop</strong> with real-time updates, even when delays happen.42 • <strong>Make returns effortless</strong> with your own branded returns portal.43 • <strong>Drive growth</strong> with actionable insights from your shipping dashboard.44 45 54 = 3rd Party Services = 46 Our plugin connects to a n SendCloud API to synchronize order information. It synchronizes order information every time a new order is created in WooCommerce, or the sync button is clicked on Sendcloud panel page. ('https://panel.sendcloud.sc')47 This service is provided by "Sendcloud".55 Our plugin connects to a SendCloud API to synchronize order information. It synchronizes order information every time a new order is created in WooCommerce, or the sync button is clicked on the [Sendcloud panel page](https://panel.sendcloud.sc). 56 This service is provided by “Sendcloud”. 48 57 49 58 Please find the links to Terms of service and privacy policy for Sendcloud on following websites: 50 • Terms of service -(https://www.sendcloud.com/terms-conditions/)51 • Privacy Policy -(https://www.sendcloud.com/privacy-policy)59 • [Terms of service](https://www.sendcloud.com/terms-conditions/) 60 • [Privacy Policy](https://www.sendcloud.com/privacy-policy) 52 61 53 62 == Installation == … … 56 65 57 66 1. Navigate to your WordPress store's dashboard and select Plugins > Add New Plugin. Search for 'Sendcloud connected shipping'. 58 2. Activate the plugin via the 'Plugins' screen in WordPress or install it directly through the WordPress plugins screen (recommended method). 67 2. Activate the plugin via the 'Plugins' screen in WordPress or install it directly through the WordPress plugins screen (recommended method). If you need more help getting set up, visit our [Help Center](https://support.sendcloud.com/hc/en-us/articles/35936346704017-Self-hosted-Shop-Systems-Troubleshooting-Integration-Issues) for quick fixes and setup tips for self-hosted shop systems. 59 68 3. Once connected to Sendcloud, navigate to Integrations > WooCommerce within the Sendcloud panel and enable service points. 60 69 4. In WooCommerce, go to Settings > Shipping and enable 'Service Point Delivery' for the desired zones. … … 79 88 e.g. A grocery store near your house or work may accept those packages. 80 89 90 = Need more help getting set up? = 91 Visit our [Help Center](https://support.sendcloud.com/hc/en-us/articles/35936346704017-Self-hosted-Shop-Systems-Troubleshooting-Integration-Issues) for quick fixes and setup tips for self-hosted shop systems. 92 81 93 == Screenshots == 82 94 … … 91 103 92 104 == Changelog == 105 = 1.0.15 = 106 * Change plugin description 107 93 108 = 1.0.14 = 94 109 * Fixed checkout translation -
sendcloud-connected-shipping/trunk/sendcloud-connected-shipping.php
r3333025 r3336392 4 4 * Plugin URI: https://wordpress.org/plugins/sendcloud-connected-shipping/ 5 5 * Description: Sendcloud plugin. 6 * Version: 1.0.1 46 * Version: 1.0.15 7 7 * Woo: 8 8 * Author: Sendcloud B.V. -
sendcloud-connected-shipping/trunk/vendor/autoload.php
r3318368 r3336392 3 3 // autoload.php @generated by Composer 4 4 5 if (PHP_VERSION_ID < 50600) {6 if (!headers_sent()) {7 header('HTTP/1.1 500 Internal Server Error');8 }9 $err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;10 if (!ini_get('display_errors')) {11 if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {12 fwrite(STDERR, $err);13 } elseif (!headers_sent()) {14 echo $err;15 }16 }17 throw new RuntimeException($err);18 }19 20 5 require_once __DIR__ . '/composer/autoload_real.php'; 21 6 22 return ComposerAutoloaderInit 799da1d7fc2f83b97f37781f90812d9d::getLoader();7 return ComposerAutoloaderInit6c5b39b93eda2c317444925cbe7b3b0f::getLoader(); -
sendcloud-connected-shipping/trunk/vendor/composer/ClassLoader.php
r3300820 r3336392 43 43 class ClassLoader 44 44 { 45 /** @var \Closure(string):void */ 46 private static $includeFile; 47 48 /** @var string|null */ 45 /** @var ?string */ 49 46 private $vendorDir; 50 47 51 48 // PSR-4 52 49 /** 53 * @var array<string, array<string, int>> 50 * @var array[] 51 * @psalm-var array<string, array<string, int>> 54 52 */ 55 53 private $prefixLengthsPsr4 = array(); 56 54 /** 57 * @var array<string, list<string>> 55 * @var array[] 56 * @psalm-var array<string, array<int, string>> 58 57 */ 59 58 private $prefixDirsPsr4 = array(); 60 59 /** 61 * @var list<string> 60 * @var array[] 61 * @psalm-var array<string, string> 62 62 */ 63 63 private $fallbackDirsPsr4 = array(); … … 65 65 // PSR-0 66 66 /** 67 * List of PSR-0 prefixes 68 * 69 * Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2'))) 70 * 71 * @var array<string, array<string, list<string>>> 67 * @var array[] 68 * @psalm-var array<string, array<string, string[]>> 72 69 */ 73 70 private $prefixesPsr0 = array(); 74 71 /** 75 * @var list<string> 72 * @var array[] 73 * @psalm-var array<string, string> 76 74 */ 77 75 private $fallbackDirsPsr0 = array(); … … 81 79 82 80 /** 83 * @var array<string, string> 81 * @var string[] 82 * @psalm-var array<string, string> 84 83 */ 85 84 private $classMap = array(); … … 89 88 90 89 /** 91 * @var array<string, bool> 90 * @var bool[] 91 * @psalm-var array<string, bool> 92 92 */ 93 93 private $missingClasses = array(); 94 94 95 /** @var string|null*/95 /** @var ?string */ 96 96 private $apcuPrefix; 97 97 98 98 /** 99 * @var array<string, self>99 * @var self[] 100 100 */ 101 101 private static $registeredLoaders = array(); 102 102 103 103 /** 104 * @param string|null$vendorDir104 * @param ?string $vendorDir 105 105 */ 106 106 public function __construct($vendorDir = null) 107 107 { 108 108 $this->vendorDir = $vendorDir; 109 self::initializeIncludeClosure(); 110 } 111 112 /** 113 * @return array<string, list<string>> 109 } 110 111 /** 112 * @return string[] 114 113 */ 115 114 public function getPrefixes() … … 123 122 124 123 /** 125 * @return array<string, list<string>> 124 * @return array[] 125 * @psalm-return array<string, array<int, string>> 126 126 */ 127 127 public function getPrefixesPsr4() … … 131 131 132 132 /** 133 * @return list<string> 133 * @return array[] 134 * @psalm-return array<string, string> 134 135 */ 135 136 public function getFallbackDirs() … … 139 140 140 141 /** 141 * @return list<string> 142 * @return array[] 143 * @psalm-return array<string, string> 142 144 */ 143 145 public function getFallbackDirsPsr4() … … 147 149 148 150 /** 149 * @return array<string, string> Array of classname => path 151 * @return string[] Array of classname => path 152 * @psalm-return array<string, string> 150 153 */ 151 154 public function getClassMap() … … 155 158 156 159 /** 157 * @param array<string, string> $classMap Class to filename map 160 * @param string[] $classMap Class to filename map 161 * @psalm-param array<string, string> $classMap 158 162 * 159 163 * @return void … … 172 176 * appending or prepending to the ones previously set for this prefix. 173 177 * 174 * @param string $prefix The prefix175 * @param list<string>|string $paths The PSR-0 root directories176 * @param bool $prepend Whether to prepend the directories178 * @param string $prefix The prefix 179 * @param string[]|string $paths The PSR-0 root directories 180 * @param bool $prepend Whether to prepend the directories 177 181 * 178 182 * @return void … … 180 184 public function add($prefix, $paths, $prepend = false) 181 185 { 182 $paths = (array) $paths;183 186 if (!$prefix) { 184 187 if ($prepend) { 185 188 $this->fallbackDirsPsr0 = array_merge( 186 $paths,189 (array) $paths, 187 190 $this->fallbackDirsPsr0 188 191 ); … … 190 193 $this->fallbackDirsPsr0 = array_merge( 191 194 $this->fallbackDirsPsr0, 192 $paths195 (array) $paths 193 196 ); 194 197 } … … 199 202 $first = $prefix[0]; 200 203 if (!isset($this->prefixesPsr0[$first][$prefix])) { 201 $this->prefixesPsr0[$first][$prefix] = $paths;204 $this->prefixesPsr0[$first][$prefix] = (array) $paths; 202 205 203 206 return; … … 205 208 if ($prepend) { 206 209 $this->prefixesPsr0[$first][$prefix] = array_merge( 207 $paths,210 (array) $paths, 208 211 $this->prefixesPsr0[$first][$prefix] 209 212 ); … … 211 214 $this->prefixesPsr0[$first][$prefix] = array_merge( 212 215 $this->prefixesPsr0[$first][$prefix], 213 $paths216 (array) $paths 214 217 ); 215 218 } … … 220 223 * appending or prepending to the ones previously set for this namespace. 221 224 * 222 * @param string $prefix The prefix/namespace, with trailing '\\'223 * @param list<string>|string $paths The PSR-4 base directories224 * @param bool $prepend Whether to prepend the directories225 * @param string $prefix The prefix/namespace, with trailing '\\' 226 * @param string[]|string $paths The PSR-4 base directories 227 * @param bool $prepend Whether to prepend the directories 225 228 * 226 229 * @throws \InvalidArgumentException … … 230 233 public function addPsr4($prefix, $paths, $prepend = false) 231 234 { 232 $paths = (array) $paths;233 235 if (!$prefix) { 234 236 // Register directories for the root namespace. 235 237 if ($prepend) { 236 238 $this->fallbackDirsPsr4 = array_merge( 237 $paths,239 (array) $paths, 238 240 $this->fallbackDirsPsr4 239 241 ); … … 241 243 $this->fallbackDirsPsr4 = array_merge( 242 244 $this->fallbackDirsPsr4, 243 $paths245 (array) $paths 244 246 ); 245 247 } … … 251 253 } 252 254 $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; 253 $this->prefixDirsPsr4[$prefix] = $paths;255 $this->prefixDirsPsr4[$prefix] = (array) $paths; 254 256 } elseif ($prepend) { 255 257 // Prepend directories for an already registered namespace. 256 258 $this->prefixDirsPsr4[$prefix] = array_merge( 257 $paths,259 (array) $paths, 258 260 $this->prefixDirsPsr4[$prefix] 259 261 ); … … 262 264 $this->prefixDirsPsr4[$prefix] = array_merge( 263 265 $this->prefixDirsPsr4[$prefix], 264 $paths266 (array) $paths 265 267 ); 266 268 } … … 271 273 * replacing any others previously set for this prefix. 272 274 * 273 * @param string $prefix The prefix274 * @param list<string>|string $paths The PSR-0 base directories275 * @param string $prefix The prefix 276 * @param string[]|string $paths The PSR-0 base directories 275 277 * 276 278 * @return void … … 289 291 * replacing any others previously set for this namespace. 290 292 * 291 * @param string $prefix The prefix/namespace, with trailing '\\'292 * @param list<string>|string $paths The PSR-4 base directories293 * @param string $prefix The prefix/namespace, with trailing '\\' 294 * @param string[]|string $paths The PSR-4 base directories 293 295 * 294 296 * @throws \InvalidArgumentException … … 424 426 { 425 427 if ($file = $this->findFile($class)) { 426 $includeFile = self::$includeFile; 427 $includeFile($file); 428 includeFile($file); 428 429 429 430 return true; … … 476 477 477 478 /** 478 * Returns the currently registered loaders keyed by their corresponding vendor directories.479 * 480 * @return array<string, self>479 * Returns the currently registered loaders indexed by their corresponding vendor directories. 480 * 481 * @return self[] 481 482 */ 482 483 public static function getRegisteredLoaders() … … 555 556 return false; 556 557 } 557 558 /**559 * @return void560 */561 private static function initializeIncludeClosure()562 {563 if (self::$includeFile !== null) {564 return;565 }566 567 /**568 * Scope isolated include.569 *570 * Prevents access to $this/self from included files.571 *572 * @param string $file573 * @return void574 */575 self::$includeFile = \Closure::bind(static function($file) {576 include $file;577 }, null, null);578 }579 558 } 559 560 /** 561 * Scope isolated include. 562 * 563 * Prevents access to $this/self from included files. 564 * 565 * @param string $file 566 * @return void 567 * @private 568 */ 569 function includeFile($file) 570 { 571 include $file; 572 } -
sendcloud-connected-shipping/trunk/vendor/composer/InstalledVersions.php
r3318368 r3336392 22 22 * 23 23 * To require its presence, you can require `composer-runtime-api ^2.0` 24 *25 * @final26 24 */ 27 25 class InstalledVersions 28 26 { 29 27 /** 30 * @var string|null if set (by reflection by Composer), this should be set to the path where this class is being copied to31 * @internal32 */33 private static $selfDir = null;34 35 /**36 28 * @var mixed[]|null 37 * @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}|array{}|null29 * @psalm-var array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}|array{}|null 38 30 */ 39 31 private static $installed; 40 32 41 33 /** 42 * @var bool43 */44 private static $installedIsLocalDir;45 46 /**47 34 * @var bool|null 48 35 */ … … 51 38 /** 52 39 * @var array[] 53 * @psalm-var array<string, array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>40 * @psalm-var array<string, array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}> 54 41 */ 55 42 private static $installedByVendor = array(); … … 110 97 foreach (self::getInstalled() as $installed) { 111 98 if (isset($installed['versions'][$packageName])) { 112 return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false;99 return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']); 113 100 } 114 101 } … … 131 118 public static function satisfies(VersionParser $parser, $packageName, $constraint) 132 119 { 133 $constraint = $parser->parseConstraints( (string)$constraint);120 $constraint = $parser->parseConstraints($constraint); 134 121 $provided = $parser->parseConstraints(self::getVersionRanges($packageName)); 135 122 … … 255 242 /** 256 243 * @return array 257 * @psalm-return array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}244 * @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string} 258 245 */ 259 246 public static function getRootPackage() … … 269 256 * @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect. 270 257 * @return array[] 271 * @psalm-return array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}258 * @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>} 272 259 */ 273 260 public static function getRawData() … … 292 279 * 293 280 * @return array[] 294 * @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>281 * @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}> 295 282 */ 296 283 public static function getAllRawData() … … 315 302 * @return void 316 303 * 317 * @psalm-param array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $data304 * @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>} $data 318 305 */ 319 306 public static function reload($data) … … 321 308 self::$installed = $data; 322 309 self::$installedByVendor = array(); 323 324 // when using reload, we disable the duplicate protection to ensure that self::$installed data is325 // always returned, but we cannot know whether it comes from the installed.php in __DIR__ or not,326 // so we have to assume it does not, and that may result in duplicate data being returned when listing327 // all installed packages for example328 self::$installedIsLocalDir = false;329 }330 331 /**332 * @return string333 */334 private static function getSelfDir()335 {336 if (self::$selfDir === null) {337 self::$selfDir = strtr(__DIR__, '\\', '/');338 }339 340 return self::$selfDir;341 310 } 342 311 343 312 /** 344 313 * @return array[] 345 * @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>314 * @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}> 346 315 */ 347 316 private static function getInstalled() … … 352 321 353 322 $installed = array(); 354 $copiedLocalDir = false;355 323 356 324 if (self::$canGetVendors) { 357 $selfDir = self::getSelfDir();358 325 foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) { 359 $vendorDir = strtr($vendorDir, '\\', '/');360 326 if (isset(self::$installedByVendor[$vendorDir])) { 361 327 $installed[] = self::$installedByVendor[$vendorDir]; 362 328 } elseif (is_file($vendorDir.'/composer/installed.php')) { 363 /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */ 364 $required = require $vendorDir.'/composer/installed.php'; 365 self::$installedByVendor[$vendorDir] = $required; 366 $installed[] = $required; 367 if (self::$installed === null && $vendorDir.'/composer' === $selfDir) { 368 self::$installed = $required; 369 self::$installedIsLocalDir = true; 329 $installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php'; 330 if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) { 331 self::$installed = $installed[count($installed) - 1]; 370 332 } 371 }372 if (self::$installedIsLocalDir && $vendorDir.'/composer' === $selfDir) {373 $copiedLocalDir = true;374 333 } 375 334 } … … 380 339 // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937 381 340 if (substr(__DIR__, -8, 1) !== 'C') { 382 /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */ 383 $required = require __DIR__ . '/installed.php'; 384 self::$installed = $required; 341 self::$installed = require __DIR__ . '/installed.php'; 385 342 } else { 386 343 self::$installed = array(); 387 344 } 388 345 } 389 390 if (self::$installed !== array() && !$copiedLocalDir) { 391 $installed[] = self::$installed; 392 } 346 $installed[] = self::$installed; 393 347 394 348 return $installed; -
sendcloud-connected-shipping/trunk/vendor/composer/LICENSE
r3300820 r3336392 1 2 1 Copyright (c) Nils Adermann, Jordi Boggiano 3 2 … … 19 18 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 20 19 THE SOFTWARE. 21 -
sendcloud-connected-shipping/trunk/vendor/composer/autoload_classmap.php
r3300820 r3336392 3 3 // autoload_classmap.php @generated by Composer 4 4 5 $vendorDir = dirname( __DIR__);5 $vendorDir = dirname(dirname(__FILE__)); 6 6 $baseDir = dirname($vendorDir); 7 7 -
sendcloud-connected-shipping/trunk/vendor/composer/autoload_namespaces.php
r3300820 r3336392 3 3 // autoload_namespaces.php @generated by Composer 4 4 5 $vendorDir = dirname( __DIR__);5 $vendorDir = dirname(dirname(__FILE__)); 6 6 $baseDir = dirname($vendorDir); 7 7 -
sendcloud-connected-shipping/trunk/vendor/composer/autoload_psr4.php
r3300820 r3336392 3 3 // autoload_psr4.php @generated by Composer 4 4 5 $vendorDir = dirname( __DIR__);5 $vendorDir = dirname(dirname(__FILE__)); 6 6 $baseDir = dirname($vendorDir); 7 7 -
sendcloud-connected-shipping/trunk/vendor/composer/autoload_real.php
r3300820 r3336392 3 3 // autoload_real.php @generated by Composer 4 4 5 class ComposerAutoloaderInit 799da1d7fc2f83b97f37781f90812d9d5 class ComposerAutoloaderInit6c5b39b93eda2c317444925cbe7b3b0f 6 6 { 7 7 private static $loader; … … 25 25 require __DIR__ . '/platform_check.php'; 26 26 27 spl_autoload_register(array('ComposerAutoloaderInit 799da1d7fc2f83b97f37781f90812d9d', 'loadClassLoader'), true, true);28 self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname( __DIR__));29 spl_autoload_unregister(array('ComposerAutoloaderInit 799da1d7fc2f83b97f37781f90812d9d', 'loadClassLoader'));27 spl_autoload_register(array('ComposerAutoloaderInit6c5b39b93eda2c317444925cbe7b3b0f', 'loadClassLoader'), true, true); 28 self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__))); 29 spl_autoload_unregister(array('ComposerAutoloaderInit6c5b39b93eda2c317444925cbe7b3b0f', 'loadClassLoader')); 30 30 31 require __DIR__ . '/autoload_static.php'; 32 call_user_func(\Composer\Autoload\ComposerStaticInit799da1d7fc2f83b97f37781f90812d9d::getInitializer($loader)); 31 $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded()); 32 if ($useStaticLoader) { 33 require __DIR__ . '/autoload_static.php'; 34 35 call_user_func(\Composer\Autoload\ComposerStaticInit6c5b39b93eda2c317444925cbe7b3b0f::getInitializer($loader)); 36 } else { 37 $map = require __DIR__ . '/autoload_namespaces.php'; 38 foreach ($map as $namespace => $path) { 39 $loader->set($namespace, $path); 40 } 41 42 $map = require __DIR__ . '/autoload_psr4.php'; 43 foreach ($map as $namespace => $path) { 44 $loader->setPsr4($namespace, $path); 45 } 46 47 $classMap = require __DIR__ . '/autoload_classmap.php'; 48 if ($classMap) { 49 $loader->addClassMap($classMap); 50 } 51 } 33 52 34 53 $loader->register(true); -
sendcloud-connected-shipping/trunk/vendor/composer/autoload_static.php
r3300820 r3336392 5 5 namespace Composer\Autoload; 6 6 7 class ComposerStaticInit 799da1d7fc2f83b97f37781f90812d9d7 class ComposerStaticInit6c5b39b93eda2c317444925cbe7b3b0f 8 8 { 9 9 public static $classMap = array ( … … 72 72 { 73 73 return \Closure::bind(function () use ($loader) { 74 $loader->classMap = ComposerStaticInit 799da1d7fc2f83b97f37781f90812d9d::$classMap;74 $loader->classMap = ComposerStaticInit6c5b39b93eda2c317444925cbe7b3b0f::$classMap; 75 75 76 76 }, null, ClassLoader::class); -
sendcloud-connected-shipping/trunk/vendor/composer/installed.php
r3333025 r3336392 1 1 <?php return array( 2 2 'root' => array( 3 'name' => 'sendcloud/woocommerce',4 3 'pretty_version' => 'dev-main', 5 4 'version' => 'dev-main', 6 'reference' => '4cc742386ef767aa8d6f539ecc2e1b5f116d1333',7 5 'type' => 'library', 8 6 'install_path' => __DIR__ . '/../../', 9 7 'aliases' => array(), 8 'reference' => '41392e43035af30cef773b15296e74a1431381f9', 9 'name' => 'sendcloud/woocommerce', 10 10 'dev' => false, 11 11 ), … … 14 14 'pretty_version' => 'dev-main', 15 15 'version' => 'dev-main', 16 'reference' => '4cc742386ef767aa8d6f539ecc2e1b5f116d1333',17 16 'type' => 'library', 18 17 'install_path' => __DIR__ . '/../../', 19 18 'aliases' => array(), 19 'reference' => '41392e43035af30cef773b15296e74a1431381f9', 20 20 'dev_requirement' => false, 21 21 ),
Note: See TracChangeset
for help on using the changeset viewer.