From 6733d3cd246a98a56683a5350e1b0247ae9fb9c6 Mon Sep 17 00:00:00 2001 From: johnnyq Date: Fri, 24 Jan 2025 20:44:36 -0500 Subject: [PATCH] Removed unused libs in the vendor folder and moved stripe to the plugins folder then elininated the vendor folder all together, updated all the stripe links --- guest/guest_ajax.php | 2 +- guest/guest_pay_invoice_stripe.php | 2 +- {vendor => plugins}/stripe-php-10.5.0/LICENSE | 0 {vendor => plugins}/stripe-php-10.5.0/VERSION | 0 .../data/ca-certificates.crt | 0 .../stripe-php-10.5.0/init.php | 0 .../stripe-php-10.5.0/lib/Account.php | 0 .../stripe-php-10.5.0/lib/AccountLink.php | 0 .../lib/ApiOperations/All.php | 0 .../lib/ApiOperations/Create.php | 0 .../lib/ApiOperations/Delete.php | 0 .../lib/ApiOperations/NestedResource.php | 0 .../lib/ApiOperations/Request.php | 0 .../lib/ApiOperations/Retrieve.php | 0 .../lib/ApiOperations/Search.php | 0 .../lib/ApiOperations/SingletonRetrieve.php | 0 .../lib/ApiOperations/Update.php | 0 .../stripe-php-10.5.0/lib/ApiRequestor.php | 0 .../stripe-php-10.5.0/lib/ApiResource.php | 0 .../stripe-php-10.5.0/lib/ApiResponse.php | 0 .../stripe-php-10.5.0/lib/ApplePayDomain.php | 0 .../stripe-php-10.5.0/lib/ApplicationFee.php | 0 .../lib/ApplicationFeeRefund.php | 0 .../stripe-php-10.5.0/lib/Apps/Secret.php | 0 .../stripe-php-10.5.0/lib/Balance.php | 0 .../lib/BalanceTransaction.php | 0 .../stripe-php-10.5.0/lib/BankAccount.php | 0 .../lib/BaseStripeClient.php | 0 .../lib/BaseStripeClientInterface.php | 0 .../lib/BillingPortal/Configuration.php | 0 .../lib/BillingPortal/Session.php | 0 .../stripe-php-10.5.0/lib/Capability.php | 0 .../stripe-php-10.5.0/lib/Card.php | 0 .../stripe-php-10.5.0/lib/CashBalance.php | 0 .../stripe-php-10.5.0/lib/Charge.php | 0 .../lib/Checkout/Session.php | 0 .../stripe-php-10.5.0/lib/Collection.php | 0 .../stripe-php-10.5.0/lib/CountrySpec.php | 0 .../stripe-php-10.5.0/lib/Coupon.php | 0 .../stripe-php-10.5.0/lib/CreditNote.php | 0 .../lib/CreditNoteLineItem.php | 0 .../stripe-php-10.5.0/lib/Customer.php | 0 .../lib/CustomerBalanceTransaction.php | 0 .../lib/CustomerCashBalanceTransaction.php | 0 .../stripe-php-10.5.0/lib/Discount.php | 0 .../stripe-php-10.5.0/lib/Dispute.php | 0 .../stripe-php-10.5.0/lib/EphemeralKey.php | 0 .../stripe-php-10.5.0/lib/ErrorObject.php | 0 .../stripe-php-10.5.0/lib/Event.php | 0 .../lib/Exception/ApiConnectionException.php | 0 .../lib/Exception/ApiErrorException.php | 0 .../lib/Exception/AuthenticationException.php | 0 .../lib/Exception/BadMethodCallException.php | 0 .../lib/Exception/CardException.php | 0 .../lib/Exception/ExceptionInterface.php | 0 .../lib/Exception/IdempotencyException.php | 0 .../Exception/InvalidArgumentException.php | 0 .../lib/Exception/InvalidRequestException.php | 0 .../Exception/OAuth/ExceptionInterface.php | 0 .../OAuth/InvalidClientException.php | 0 .../Exception/OAuth/InvalidGrantException.php | 0 .../OAuth/InvalidRequestException.php | 0 .../Exception/OAuth/InvalidScopeException.php | 0 .../Exception/OAuth/OAuthErrorException.php | 0 .../OAuth/UnknownOAuthErrorException.php | 0 .../OAuth/UnsupportedGrantTypeException.php | 0 .../UnsupportedResponseTypeException.php | 0 .../lib/Exception/PermissionException.php | 0 .../lib/Exception/RateLimitException.php | 0 .../SignatureVerificationException.php | 0 .../Exception/UnexpectedValueException.php | 0 .../Exception/UnknownApiErrorException.php | 0 .../stripe-php-10.5.0/lib/ExchangeRate.php | 0 .../stripe-php-10.5.0/lib/File.php | 0 .../stripe-php-10.5.0/lib/FileLink.php | 0 .../lib/FinancialConnections/Account.php | 0 .../lib/FinancialConnections/AccountOwner.php | 0 .../FinancialConnections/AccountOwnership.php | 0 .../lib/FinancialConnections/Session.php | 0 .../lib/FundingInstructions.php | 0 .../lib/HttpClient/ClientInterface.php | 0 .../lib/HttpClient/CurlClient.php | 0 .../HttpClient/StreamingClientInterface.php | 0 .../lib/Identity/VerificationReport.php | 0 .../lib/Identity/VerificationSession.php | 0 .../stripe-php-10.5.0/lib/Invoice.php | 0 .../stripe-php-10.5.0/lib/InvoiceItem.php | 0 .../stripe-php-10.5.0/lib/InvoiceLineItem.php | 0 .../lib/Issuing/Authorization.php | 0 .../stripe-php-10.5.0/lib/Issuing/Card.php | 0 .../lib/Issuing/CardDetails.php | 0 .../lib/Issuing/Cardholder.php | 0 .../stripe-php-10.5.0/lib/Issuing/Dispute.php | 0 .../lib/Issuing/Transaction.php | 0 .../stripe-php-10.5.0/lib/LineItem.php | 0 .../stripe-php-10.5.0/lib/LoginLink.php | 0 .../stripe-php-10.5.0/lib/Mandate.php | 0 .../stripe-php-10.5.0/lib/OAuth.php | 0 .../lib/OAuthErrorObject.php | 0 .../stripe-php-10.5.0/lib/PaymentIntent.php | 0 .../stripe-php-10.5.0/lib/PaymentLink.php | 0 .../stripe-php-10.5.0/lib/PaymentMethod.php | 0 .../stripe-php-10.5.0/lib/Payout.php | 0 .../stripe-php-10.5.0/lib/Person.php | 0 .../stripe-php-10.5.0/lib/Plan.php | 0 .../stripe-php-10.5.0/lib/Price.php | 0 .../stripe-php-10.5.0/lib/Product.php | 0 .../stripe-php-10.5.0/lib/PromotionCode.php | 0 .../stripe-php-10.5.0/lib/Quote.php | 0 .../lib/Radar/EarlyFraudWarning.php | 0 .../stripe-php-10.5.0/lib/Radar/ValueList.php | 0 .../lib/Radar/ValueListItem.php | 0 .../lib/RecipientTransfer.php | 0 .../stripe-php-10.5.0/lib/Refund.php | 0 .../lib/Reporting/ReportRun.php | 0 .../lib/Reporting/ReportType.php | 0 .../lib/RequestTelemetry.php | 0 .../stripe-php-10.5.0/lib/Review.php | 0 .../stripe-php-10.5.0/lib/SearchResult.php | 0 .../lib/Service/AbstractService.php | 0 .../lib/Service/AbstractServiceFactory.php | 0 .../lib/Service/AccountLinkService.php | 0 .../lib/Service/AccountService.php | 0 .../lib/Service/ApplePayDomainService.php | 0 .../lib/Service/ApplicationFeeService.php | 0 .../lib/Service/Apps/AppsServiceFactory.php | 0 .../lib/Service/Apps/SecretService.php | 0 .../lib/Service/BalanceService.php | 0 .../lib/Service/BalanceTransactionService.php | 0 .../BillingPortalServiceFactory.php | 0 .../BillingPortal/ConfigurationService.php | 0 .../Service/BillingPortal/SessionService.php | 0 .../lib/Service/ChargeService.php | 0 .../Checkout/CheckoutServiceFactory.php | 0 .../lib/Service/Checkout/SessionService.php | 0 .../lib/Service/CoreServiceFactory.php | 0 .../lib/Service/CountrySpecService.php | 0 .../lib/Service/CouponService.php | 0 .../lib/Service/CreditNoteService.php | 0 .../lib/Service/CustomerService.php | 0 .../lib/Service/DisputeService.php | 0 .../lib/Service/EphemeralKeyService.php | 0 .../lib/Service/EventService.php | 0 .../lib/Service/ExchangeRateService.php | 0 .../lib/Service/FileLinkService.php | 0 .../lib/Service/FileService.php | 0 .../FinancialConnections/AccountService.php | 0 .../FinancialConnectionsServiceFactory.php | 0 .../FinancialConnections/SessionService.php | 0 .../Identity/IdentityServiceFactory.php | 0 .../Identity/VerificationReportService.php | 0 .../Identity/VerificationSessionService.php | 0 .../lib/Service/InvoiceItemService.php | 0 .../lib/Service/InvoiceService.php | 0 .../Service/Issuing/AuthorizationService.php | 0 .../lib/Service/Issuing/CardService.php | 0 .../lib/Service/Issuing/CardholderService.php | 0 .../lib/Service/Issuing/DisputeService.php | 0 .../Service/Issuing/IssuingServiceFactory.php | 0 .../Service/Issuing/TransactionService.php | 0 .../lib/Service/MandateService.php | 0 .../lib/Service/OAuthService.php | 0 .../lib/Service/PaymentIntentService.php | 0 .../lib/Service/PaymentLinkService.php | 0 .../lib/Service/PaymentMethodService.php | 0 .../lib/Service/PayoutService.php | 0 .../lib/Service/PlanService.php | 0 .../lib/Service/PriceService.php | 0 .../lib/Service/ProductService.php | 0 .../lib/Service/PromotionCodeService.php | 0 .../lib/Service/QuoteService.php | 0 .../Radar/EarlyFraudWarningService.php | 0 .../lib/Service/Radar/RadarServiceFactory.php | 0 .../Service/Radar/ValueListItemService.php | 0 .../lib/Service/Radar/ValueListService.php | 0 .../lib/Service/RefundService.php | 0 .../Service/Reporting/ReportRunService.php | 0 .../Service/Reporting/ReportTypeService.php | 0 .../Reporting/ReportingServiceFactory.php | 0 .../lib/Service/ReviewService.php | 0 .../lib/Service/SetupAttemptService.php | 0 .../lib/Service/SetupIntentService.php | 0 .../lib/Service/ShippingRateService.php | 0 .../Sigma/ScheduledQueryRunService.php | 0 .../lib/Service/Sigma/SigmaServiceFactory.php | 0 .../lib/Service/SourceService.php | 0 .../lib/Service/SubscriptionItemService.php | 0 .../Service/SubscriptionScheduleService.php | 0 .../lib/Service/SubscriptionService.php | 0 .../lib/Service/TaxCodeService.php | 0 .../lib/Service/TaxRateService.php | 0 .../Service/Terminal/ConfigurationService.php | 0 .../Terminal/ConnectionTokenService.php | 0 .../lib/Service/Terminal/LocationService.php | 0 .../lib/Service/Terminal/ReaderService.php | 0 .../Terminal/TerminalServiceFactory.php | 0 .../Service/TestHelpers/CustomerService.php | 0 .../TestHelpers/Issuing/CardService.php | 0 .../Issuing/IssuingServiceFactory.php | 0 .../lib/Service/TestHelpers/RefundService.php | 0 .../TestHelpers/Terminal/ReaderService.php | 0 .../Terminal/TerminalServiceFactory.php | 0 .../Service/TestHelpers/TestClockService.php | 0 .../TestHelpers/TestHelpersServiceFactory.php | 0 .../Treasury/InboundTransferService.php | 0 .../Treasury/OutboundPaymentService.php | 0 .../Treasury/OutboundTransferService.php | 0 .../Treasury/ReceivedCreditService.php | 0 .../Treasury/ReceivedDebitService.php | 0 .../Treasury/TreasuryServiceFactory.php | 0 .../lib/Service/TokenService.php | 0 .../lib/Service/TopupService.php | 0 .../lib/Service/TransferService.php | 0 .../Treasury/CreditReversalService.php | 0 .../Service/Treasury/DebitReversalService.php | 0 .../Treasury/FinancialAccountService.php | 0 .../Treasury/InboundTransferService.php | 0 .../Treasury/OutboundPaymentService.php | 0 .../Treasury/OutboundTransferService.php | 0 .../Treasury/ReceivedCreditService.php | 0 .../Service/Treasury/ReceivedDebitService.php | 0 .../Treasury/TransactionEntryService.php | 0 .../Service/Treasury/TransactionService.php | 0 .../Treasury/TreasuryServiceFactory.php | 0 .../lib/Service/WebhookEndpointService.php | 0 .../stripe-php-10.5.0/lib/SetupAttempt.php | 0 .../stripe-php-10.5.0/lib/SetupIntent.php | 0 .../stripe-php-10.5.0/lib/ShippingRate.php | 0 .../lib/Sigma/ScheduledQueryRun.php | 0 .../lib/SingletonApiResource.php | 0 .../stripe-php-10.5.0/lib/Source.php | 0 .../lib/SourceTransaction.php | 0 .../stripe-php-10.5.0/lib/Stripe.php | 0 .../stripe-php-10.5.0/lib/StripeClient.php | 0 .../lib/StripeClientInterface.php | 0 .../stripe-php-10.5.0/lib/StripeObject.php | 0 .../lib/StripeStreamingClientInterface.php | 0 .../stripe-php-10.5.0/lib/Subscription.php | 0 .../lib/SubscriptionItem.php | 0 .../lib/SubscriptionSchedule.php | 0 .../stripe-php-10.5.0/lib/TaxCode.php | 0 .../stripe-php-10.5.0/lib/TaxId.php | 0 .../stripe-php-10.5.0/lib/TaxRate.php | 0 .../lib/Terminal/Configuration.php | 0 .../lib/Terminal/ConnectionToken.php | 0 .../lib/Terminal/Location.php | 0 .../stripe-php-10.5.0/lib/Terminal/Reader.php | 0 .../lib/TestHelpers/TestClock.php | 0 .../stripe-php-10.5.0/lib/Token.php | 0 .../stripe-php-10.5.0/lib/Topup.php | 0 .../stripe-php-10.5.0/lib/Transfer.php | 0 .../lib/TransferReversal.php | 0 .../lib/Treasury/CreditReversal.php | 0 .../lib/Treasury/DebitReversal.php | 0 .../lib/Treasury/FinancialAccount.php | 0 .../lib/Treasury/FinancialAccountFeatures.php | 0 .../lib/Treasury/InboundTransfer.php | 0 .../lib/Treasury/OutboundPayment.php | 0 .../lib/Treasury/OutboundTransfer.php | 0 .../lib/Treasury/ReceivedCredit.php | 0 .../lib/Treasury/ReceivedDebit.php | 0 .../lib/Treasury/Transaction.php | 0 .../lib/Treasury/TransactionEntry.php | 0 .../stripe-php-10.5.0/lib/UsageRecord.php | 0 .../lib/UsageRecordSummary.php | 0 .../stripe-php-10.5.0/lib/Util/ApiVersion.php | 0 .../lib/Util/CaseInsensitiveArray.php | 0 .../lib/Util/DefaultLogger.php | 0 .../lib/Util/LoggerInterface.php | 0 .../lib/Util/ObjectTypes.php | 0 .../lib/Util/RandomGenerator.php | 0 .../lib/Util/RequestOptions.php | 0 .../stripe-php-10.5.0/lib/Util/Set.php | 0 .../stripe-php-10.5.0/lib/Util/Util.php | 0 .../stripe-php-10.5.0/lib/Webhook.php | 0 .../stripe-php-10.5.0/lib/WebhookEndpoint.php | 0 .../lib/WebhookSignature.php | 0 .../stripe-php-10.5.0/update_certs.php | 0 .../admin_settings_online_payment_clients.php | 2 +- scripts/cron.php | 2 +- vendor/autoload.php | 7 - vendor/composer/ClassLoader.php | 445 -------------- vendor/composer/LICENSE | 56 -- vendor/composer/autoload_classmap.php | 9 - vendor/composer/autoload_files.php | 10 - vendor/composer/autoload_namespaces.php | 9 - vendor/composer/autoload_psr4.php | 13 - vendor/composer/autoload_real.php | 70 --- vendor/composer/autoload_static.php | 59 -- vendor/composer/installed.json | 282 --------- vendor/myclabs/deep-copy/.gitattributes | 7 - vendor/myclabs/deep-copy/.gitignore | 3 - vendor/myclabs/deep-copy/.scrutinizer.yml | 4 - vendor/myclabs/deep-copy/.travis.yml | 40 -- vendor/myclabs/deep-copy/LICENSE | 20 - vendor/myclabs/deep-copy/README.md | 376 ------------ vendor/myclabs/deep-copy/composer.json | 38 -- vendor/myclabs/deep-copy/doc/clone.png | Bin 12380 -> 0 bytes vendor/myclabs/deep-copy/doc/deep-clone.png | Bin 14009 -> 0 bytes vendor/myclabs/deep-copy/doc/deep-copy.png | Bin 10895 -> 0 bytes vendor/myclabs/deep-copy/doc/graph.png | Bin 6436 -> 0 bytes vendor/myclabs/deep-copy/fixtures/f001/A.php | 20 - vendor/myclabs/deep-copy/fixtures/f001/B.php | 20 - vendor/myclabs/deep-copy/fixtures/f002/A.php | 33 - .../myclabs/deep-copy/fixtures/f003/Foo.php | 26 - .../fixtures/f004/UnclonableItem.php | 13 - .../myclabs/deep-copy/fixtures/f005/Foo.php | 13 - vendor/myclabs/deep-copy/fixtures/f006/A.php | 26 - vendor/myclabs/deep-copy/fixtures/f006/B.php | 26 - .../fixtures/f007/FooDateInterval.php | 15 - .../fixtures/f007/FooDateTimeZone.php | 15 - vendor/myclabs/deep-copy/fixtures/f008/A.php | 18 - vendor/myclabs/deep-copy/fixtures/f008/B.php | 7 - .../deep-copy/src/DeepCopy/DeepCopy.php | 289 --------- .../src/DeepCopy/Exception/CloneException.php | 9 - .../DeepCopy/Exception/PropertyException.php | 9 - .../Doctrine/DoctrineCollectionFilter.php | 33 - .../DoctrineEmptyCollectionFilter.php | 28 - .../Filter/Doctrine/DoctrineProxyFilter.php | 22 - .../deep-copy/src/DeepCopy/Filter/Filter.php | 18 - .../src/DeepCopy/Filter/KeepFilter.php | 16 - .../src/DeepCopy/Filter/ReplaceFilter.php | 39 -- .../src/DeepCopy/Filter/SetNullFilter.php | 24 - .../Matcher/Doctrine/DoctrineProxyMatcher.php | 22 - .../src/DeepCopy/Matcher/Matcher.php | 14 - .../src/DeepCopy/Matcher/PropertyMatcher.php | 39 -- .../DeepCopy/Matcher/PropertyNameMatcher.php | 32 - .../DeepCopy/Matcher/PropertyTypeMatcher.php | 46 -- .../DeepCopy/Reflection/ReflectionHelper.php | 78 --- .../TypeFilter/Date/DateIntervalFilter.php | 33 - .../src/DeepCopy/TypeFilter/ReplaceFilter.php | 30 - .../DeepCopy/TypeFilter/ShallowCopyFilter.php | 17 - .../TypeFilter/Spl/SplDoublyLinkedList.php | 10 - .../Spl/SplDoublyLinkedListFilter.php | 51 -- .../src/DeepCopy/TypeFilter/TypeFilter.php | 13 - .../src/DeepCopy/TypeMatcher/TypeMatcher.php | 29 - .../deep-copy/src/DeepCopy/deep_copy.php | 20 - vendor/otphp-10.0/.github/CONTRIBUTING.md | 25 - vendor/otphp-10.0/.github/ISSUE_TEMPLATE.md | 16 - .../.github/PULL_REQUEST_TEMPLATE.md | 21 - vendor/otphp-10.0/.php_cs.dist | 61 -- vendor/otphp-10.0/CODE_OF_CONDUCT.md | 46 -- vendor/otphp-10.0/LICENSE | 20 - vendor/otphp-10.0/composer.json | 50 -- vendor/otphp-10.0/phpstan.neon | 13 - vendor/otphp-10.0/src/Factory.php | 103 ---- vendor/otphp-10.0/src/FactoryInterface.php | 23 - vendor/otphp-10.0/src/HOTP.php | 100 ---- vendor/otphp-10.0/src/HOTPInterface.php | 29 - vendor/otphp-10.0/src/OTP.php | 111 ---- vendor/otphp-10.0/src/OTPInterface.php | 94 --- vendor/otphp-10.0/src/ParameterTrait.php | 190 ------ vendor/otphp-10.0/src/TOTP.php | 153 ----- vendor/otphp-10.0/src/TOTPInterface.php | 36 -- vendor/paragonie/random_compat/LICENSE | 22 - vendor/paragonie/random_compat/build-phar.sh | 5 - vendor/paragonie/random_compat/composer.json | 34 -- .../dist/random_compat.phar.pubkey | 5 - .../dist/random_compat.phar.pubkey.asc | 11 - vendor/paragonie/random_compat/lib/random.php | 32 - .../random_compat/other/build_phar.php | 57 -- .../random_compat/psalm-autoload.php | 9 - vendor/paragonie/random_compat/psalm.xml | 19 - vendor/psr/log/.gitignore | 1 - vendor/psr/log/LICENSE | 19 - vendor/psr/log/Psr/Log/AbstractLogger.php | 128 ---- .../log/Psr/Log/InvalidArgumentException.php | 7 - vendor/psr/log/Psr/Log/LogLevel.php | 18 - .../psr/log/Psr/Log/LoggerAwareInterface.php | 18 - vendor/psr/log/Psr/Log/LoggerAwareTrait.php | 26 - vendor/psr/log/Psr/Log/LoggerInterface.php | 123 ---- vendor/psr/log/Psr/Log/LoggerTrait.php | 140 ----- vendor/psr/log/Psr/Log/NullLogger.php | 28 - .../log/Psr/Log/Test/LoggerInterfaceTest.php | 144 ----- vendor/psr/log/Psr/Log/Test/TestLogger.php | 146 ----- vendor/psr/log/README.md | 52 -- vendor/psr/log/composer.json | 26 - vendor/setasign/fpdi/LICENSE.txt | 21 - vendor/setasign/fpdi/README.md | 170 ------ vendor/setasign/fpdi/composer.json | 50 -- vendor/setasign/fpdi/src/FpdfTpl.php | 22 - vendor/setasign/fpdi/src/FpdfTplTrait.php | 466 --------------- vendor/setasign/fpdi/src/Fpdi.php | 155 ----- vendor/setasign/fpdi/src/FpdiException.php | 19 - vendor/setasign/fpdi/src/FpdiTrait.php | 562 ------------------ .../CrossReference/AbstractReader.php | 96 --- .../CrossReference/CrossReference.php | 320 ---------- .../CrossReferenceException.php | 80 --- .../PdfParser/CrossReference/FixedReader.php | 196 ------ .../PdfParser/CrossReference/LineReader.php | 173 ------ .../CrossReference/ReaderInterface.php | 35 -- .../fpdi/src/PdfParser/Filter/Ascii85.php | 104 ---- .../src/PdfParser/Filter/Ascii85Exception.php | 28 - .../fpdi/src/PdfParser/Filter/AsciiHex.php | 48 -- .../src/PdfParser/Filter/FilterException.php | 24 - .../src/PdfParser/Filter/FilterInterface.php | 26 - .../fpdi/src/PdfParser/Filter/Flate.php | 78 --- .../src/PdfParser/Filter/FlateException.php | 28 - .../fpdi/src/PdfParser/Filter/Lzw.php | 189 ------ .../src/PdfParser/Filter/LzwException.php | 23 - .../setasign/fpdi/src/PdfParser/PdfParser.php | 378 ------------ .../fpdi/src/PdfParser/PdfParserException.php | 50 -- .../fpdi/src/PdfParser/StreamReader.php | 468 --------------- .../setasign/fpdi/src/PdfParser/Tokenizer.php | 161 ----- .../fpdi/src/PdfParser/Type/PdfArray.php | 85 --- .../fpdi/src/PdfParser/Type/PdfBoolean.php | 43 -- .../fpdi/src/PdfParser/Type/PdfDictionary.php | 135 ----- .../fpdi/src/PdfParser/Type/PdfHexString.php | 82 --- .../src/PdfParser/Type/PdfIndirectObject.php | 104 ---- .../Type/PdfIndirectObjectReference.php | 53 -- .../fpdi/src/PdfParser/Type/PdfName.php | 82 --- .../fpdi/src/PdfParser/Type/PdfNull.php | 20 - .../fpdi/src/PdfParser/Type/PdfNumeric.php | 44 -- .../fpdi/src/PdfParser/Type/PdfStream.php | 320 ---------- .../fpdi/src/PdfParser/Type/PdfString.php | 172 ------ .../fpdi/src/PdfParser/Type/PdfToken.php | 44 -- .../fpdi/src/PdfParser/Type/PdfType.php | 79 --- .../src/PdfParser/Type/PdfTypeException.php | 25 - .../src/PdfReader/DataStructure/Rectangle.php | 174 ------ vendor/setasign/fpdi/src/PdfReader/Page.php | 272 --------- .../fpdi/src/PdfReader/PageBoundaries.php | 95 --- .../setasign/fpdi/src/PdfReader/PdfReader.php | 221 ------- .../fpdi/src/PdfReader/PdfReaderException.php | 35 -- vendor/setasign/fpdi/src/Tcpdf/Fpdi.php | 266 --------- vendor/setasign/fpdi/src/TcpdfFpdi.php | 23 - vendor/setasign/fpdi/src/Tfpdf/FpdfTpl.php | 99 --- vendor/setasign/fpdi/src/Tfpdf/Fpdi.php | 164 ----- vendor/setasign/fpdi/src/autoload.php | 20 - 428 files changed, 4 insertions(+), 11393 deletions(-) rename {vendor => plugins}/stripe-php-10.5.0/LICENSE (100%) rename {vendor => plugins}/stripe-php-10.5.0/VERSION (100%) rename {vendor => plugins}/stripe-php-10.5.0/data/ca-certificates.crt (100%) rename {vendor => plugins}/stripe-php-10.5.0/init.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Account.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/AccountLink.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiOperations/All.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiOperations/Create.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiOperations/Delete.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiOperations/NestedResource.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiOperations/Request.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiOperations/Retrieve.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiOperations/Search.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiOperations/SingletonRetrieve.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiOperations/Update.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiRequestor.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiResource.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApiResponse.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApplePayDomain.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApplicationFee.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ApplicationFeeRefund.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Apps/Secret.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Balance.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/BalanceTransaction.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/BankAccount.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/BaseStripeClient.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/BaseStripeClientInterface.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/BillingPortal/Configuration.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/BillingPortal/Session.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Capability.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Card.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/CashBalance.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Charge.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Checkout/Session.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Collection.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/CountrySpec.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Coupon.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/CreditNote.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/CreditNoteLineItem.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Customer.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/CustomerBalanceTransaction.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/CustomerCashBalanceTransaction.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Discount.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Dispute.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/EphemeralKey.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ErrorObject.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Event.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/ApiConnectionException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/ApiErrorException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/AuthenticationException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/BadMethodCallException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/CardException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/ExceptionInterface.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/IdempotencyException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/InvalidArgumentException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/InvalidRequestException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/OAuth/ExceptionInterface.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/OAuth/InvalidClientException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/OAuth/InvalidGrantException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/OAuth/InvalidRequestException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/OAuth/InvalidScopeException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/OAuth/OAuthErrorException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/OAuth/UnknownOAuthErrorException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/OAuth/UnsupportedGrantTypeException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/OAuth/UnsupportedResponseTypeException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/PermissionException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/RateLimitException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/SignatureVerificationException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/UnexpectedValueException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Exception/UnknownApiErrorException.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ExchangeRate.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/File.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/FileLink.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/FinancialConnections/Account.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/FinancialConnections/AccountOwner.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/FinancialConnections/AccountOwnership.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/FinancialConnections/Session.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/FundingInstructions.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/HttpClient/ClientInterface.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/HttpClient/CurlClient.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/HttpClient/StreamingClientInterface.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Identity/VerificationReport.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Identity/VerificationSession.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Invoice.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/InvoiceItem.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/InvoiceLineItem.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Issuing/Authorization.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Issuing/Card.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Issuing/CardDetails.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Issuing/Cardholder.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Issuing/Dispute.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Issuing/Transaction.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/LineItem.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/LoginLink.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Mandate.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/OAuth.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/OAuthErrorObject.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/PaymentIntent.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/PaymentLink.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/PaymentMethod.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Payout.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Person.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Plan.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Price.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Product.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/PromotionCode.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Quote.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Radar/EarlyFraudWarning.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Radar/ValueList.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Radar/ValueListItem.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/RecipientTransfer.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Refund.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Reporting/ReportRun.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Reporting/ReportType.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/RequestTelemetry.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Review.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/SearchResult.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/AbstractService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/AbstractServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/AccountLinkService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/AccountService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/ApplePayDomainService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/ApplicationFeeService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Apps/AppsServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Apps/SecretService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/BalanceService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/BalanceTransactionService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/BillingPortal/BillingPortalServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/BillingPortal/ConfigurationService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/BillingPortal/SessionService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/ChargeService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Checkout/CheckoutServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Checkout/SessionService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/CoreServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/CountrySpecService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/CouponService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/CreditNoteService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/CustomerService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/DisputeService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/EphemeralKeyService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/EventService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/ExchangeRateService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/FileLinkService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/FileService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/FinancialConnections/AccountService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/FinancialConnections/FinancialConnectionsServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/FinancialConnections/SessionService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Identity/IdentityServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Identity/VerificationReportService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Identity/VerificationSessionService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/InvoiceItemService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/InvoiceService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Issuing/AuthorizationService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Issuing/CardService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Issuing/CardholderService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Issuing/DisputeService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Issuing/IssuingServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Issuing/TransactionService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/MandateService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/OAuthService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/PaymentIntentService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/PaymentLinkService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/PaymentMethodService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/PayoutService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/PlanService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/PriceService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/ProductService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/PromotionCodeService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/QuoteService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Radar/EarlyFraudWarningService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Radar/RadarServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Radar/ValueListItemService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Radar/ValueListService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/RefundService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Reporting/ReportRunService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Reporting/ReportTypeService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Reporting/ReportingServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/ReviewService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/SetupAttemptService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/SetupIntentService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/ShippingRateService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Sigma/ScheduledQueryRunService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Sigma/SigmaServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/SourceService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/SubscriptionItemService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/SubscriptionScheduleService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/SubscriptionService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TaxCodeService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TaxRateService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Terminal/ConfigurationService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Terminal/ConnectionTokenService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Terminal/LocationService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Terminal/ReaderService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Terminal/TerminalServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/CustomerService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/Issuing/CardService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/Issuing/IssuingServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/RefundService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/Terminal/ReaderService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/Terminal/TerminalServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/TestClockService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/TestHelpersServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/InboundTransferService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/OutboundPaymentService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/OutboundTransferService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/ReceivedCreditService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/ReceivedDebitService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/TreasuryServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TokenService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TopupService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/TransferService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/CreditReversalService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/DebitReversalService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/FinancialAccountService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/InboundTransferService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/OutboundPaymentService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/OutboundTransferService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/ReceivedCreditService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/ReceivedDebitService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/TransactionEntryService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/TransactionService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/Treasury/TreasuryServiceFactory.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Service/WebhookEndpointService.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/SetupAttempt.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/SetupIntent.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/ShippingRate.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Sigma/ScheduledQueryRun.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/SingletonApiResource.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Source.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/SourceTransaction.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Stripe.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/StripeClient.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/StripeClientInterface.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/StripeObject.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/StripeStreamingClientInterface.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Subscription.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/SubscriptionItem.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/SubscriptionSchedule.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/TaxCode.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/TaxId.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/TaxRate.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Terminal/Configuration.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Terminal/ConnectionToken.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Terminal/Location.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Terminal/Reader.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/TestHelpers/TestClock.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Token.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Topup.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Transfer.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/TransferReversal.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/CreditReversal.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/DebitReversal.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/FinancialAccount.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/FinancialAccountFeatures.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/InboundTransfer.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/OutboundPayment.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/OutboundTransfer.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/ReceivedCredit.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/ReceivedDebit.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/Transaction.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Treasury/TransactionEntry.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/UsageRecord.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/UsageRecordSummary.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Util/ApiVersion.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Util/CaseInsensitiveArray.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Util/DefaultLogger.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Util/LoggerInterface.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Util/ObjectTypes.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Util/RandomGenerator.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Util/RequestOptions.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Util/Set.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Util/Util.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/Webhook.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/WebhookEndpoint.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/lib/WebhookSignature.php (100%) rename {vendor => plugins}/stripe-php-10.5.0/update_certs.php (100%) delete mode 100644 vendor/autoload.php delete mode 100644 vendor/composer/ClassLoader.php delete mode 100644 vendor/composer/LICENSE delete mode 100644 vendor/composer/autoload_classmap.php delete mode 100644 vendor/composer/autoload_files.php delete mode 100644 vendor/composer/autoload_namespaces.php delete mode 100644 vendor/composer/autoload_psr4.php delete mode 100644 vendor/composer/autoload_real.php delete mode 100644 vendor/composer/autoload_static.php delete mode 100644 vendor/composer/installed.json delete mode 100644 vendor/myclabs/deep-copy/.gitattributes delete mode 100644 vendor/myclabs/deep-copy/.gitignore delete mode 100644 vendor/myclabs/deep-copy/.scrutinizer.yml delete mode 100644 vendor/myclabs/deep-copy/.travis.yml delete mode 100644 vendor/myclabs/deep-copy/LICENSE delete mode 100644 vendor/myclabs/deep-copy/README.md delete mode 100644 vendor/myclabs/deep-copy/composer.json delete mode 100644 vendor/myclabs/deep-copy/doc/clone.png delete mode 100644 vendor/myclabs/deep-copy/doc/deep-clone.png delete mode 100644 vendor/myclabs/deep-copy/doc/deep-copy.png delete mode 100644 vendor/myclabs/deep-copy/doc/graph.png delete mode 100644 vendor/myclabs/deep-copy/fixtures/f001/A.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f001/B.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f002/A.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f003/Foo.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f004/UnclonableItem.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f005/Foo.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f006/A.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f006/B.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f007/FooDateInterval.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f007/FooDateTimeZone.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f008/A.php delete mode 100644 vendor/myclabs/deep-copy/fixtures/f008/B.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/DeepCopy.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Exception/CloneException.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Exception/PropertyException.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Filter/Doctrine/DoctrineCollectionFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Filter/Doctrine/DoctrineEmptyCollectionFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Filter/Doctrine/DoctrineProxyFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Filter/Filter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Filter/KeepFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Filter/ReplaceFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Filter/SetNullFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Matcher/Doctrine/DoctrineProxyMatcher.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Matcher/Matcher.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Matcher/PropertyMatcher.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Matcher/PropertyNameMatcher.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Matcher/PropertyTypeMatcher.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/Reflection/ReflectionHelper.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/Date/DateIntervalFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/ReplaceFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/ShallowCopyFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/Spl/SplDoublyLinkedList.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/Spl/SplDoublyLinkedListFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/TypeFilter.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/TypeMatcher/TypeMatcher.php delete mode 100644 vendor/myclabs/deep-copy/src/DeepCopy/deep_copy.php delete mode 100644 vendor/otphp-10.0/.github/CONTRIBUTING.md delete mode 100644 vendor/otphp-10.0/.github/ISSUE_TEMPLATE.md delete mode 100644 vendor/otphp-10.0/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 vendor/otphp-10.0/.php_cs.dist delete mode 100644 vendor/otphp-10.0/CODE_OF_CONDUCT.md delete mode 100644 vendor/otphp-10.0/LICENSE delete mode 100644 vendor/otphp-10.0/composer.json delete mode 100644 vendor/otphp-10.0/phpstan.neon delete mode 100644 vendor/otphp-10.0/src/Factory.php delete mode 100644 vendor/otphp-10.0/src/FactoryInterface.php delete mode 100644 vendor/otphp-10.0/src/HOTP.php delete mode 100644 vendor/otphp-10.0/src/HOTPInterface.php delete mode 100644 vendor/otphp-10.0/src/OTP.php delete mode 100644 vendor/otphp-10.0/src/OTPInterface.php delete mode 100644 vendor/otphp-10.0/src/ParameterTrait.php delete mode 100644 vendor/otphp-10.0/src/TOTP.php delete mode 100644 vendor/otphp-10.0/src/TOTPInterface.php delete mode 100644 vendor/paragonie/random_compat/LICENSE delete mode 100644 vendor/paragonie/random_compat/build-phar.sh delete mode 100644 vendor/paragonie/random_compat/composer.json delete mode 100644 vendor/paragonie/random_compat/dist/random_compat.phar.pubkey delete mode 100644 vendor/paragonie/random_compat/dist/random_compat.phar.pubkey.asc delete mode 100644 vendor/paragonie/random_compat/lib/random.php delete mode 100644 vendor/paragonie/random_compat/other/build_phar.php delete mode 100644 vendor/paragonie/random_compat/psalm-autoload.php delete mode 100644 vendor/paragonie/random_compat/psalm.xml delete mode 100644 vendor/psr/log/.gitignore delete mode 100644 vendor/psr/log/LICENSE delete mode 100644 vendor/psr/log/Psr/Log/AbstractLogger.php delete mode 100644 vendor/psr/log/Psr/Log/InvalidArgumentException.php delete mode 100644 vendor/psr/log/Psr/Log/LogLevel.php delete mode 100644 vendor/psr/log/Psr/Log/LoggerAwareInterface.php delete mode 100644 vendor/psr/log/Psr/Log/LoggerAwareTrait.php delete mode 100644 vendor/psr/log/Psr/Log/LoggerInterface.php delete mode 100644 vendor/psr/log/Psr/Log/LoggerTrait.php delete mode 100644 vendor/psr/log/Psr/Log/NullLogger.php delete mode 100644 vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php delete mode 100644 vendor/psr/log/Psr/Log/Test/TestLogger.php delete mode 100644 vendor/psr/log/README.md delete mode 100644 vendor/psr/log/composer.json delete mode 100644 vendor/setasign/fpdi/LICENSE.txt delete mode 100644 vendor/setasign/fpdi/README.md delete mode 100644 vendor/setasign/fpdi/composer.json delete mode 100644 vendor/setasign/fpdi/src/FpdfTpl.php delete mode 100644 vendor/setasign/fpdi/src/FpdfTplTrait.php delete mode 100644 vendor/setasign/fpdi/src/Fpdi.php delete mode 100644 vendor/setasign/fpdi/src/FpdiException.php delete mode 100644 vendor/setasign/fpdi/src/FpdiTrait.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/CrossReference/AbstractReader.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReference.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReferenceException.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/CrossReference/FixedReader.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/CrossReference/LineReader.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/CrossReference/ReaderInterface.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Filter/Ascii85.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Filter/Ascii85Exception.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Filter/AsciiHex.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Filter/FilterException.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Filter/FilterInterface.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Filter/Flate.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Filter/FlateException.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Filter/Lzw.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Filter/LzwException.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/PdfParser.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/PdfParserException.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/StreamReader.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Tokenizer.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfArray.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfBoolean.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfDictionary.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfHexString.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObject.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObjectReference.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfName.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfNull.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfNumeric.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfStream.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfString.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfToken.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfType.php delete mode 100644 vendor/setasign/fpdi/src/PdfParser/Type/PdfTypeException.php delete mode 100644 vendor/setasign/fpdi/src/PdfReader/DataStructure/Rectangle.php delete mode 100644 vendor/setasign/fpdi/src/PdfReader/Page.php delete mode 100644 vendor/setasign/fpdi/src/PdfReader/PageBoundaries.php delete mode 100644 vendor/setasign/fpdi/src/PdfReader/PdfReader.php delete mode 100644 vendor/setasign/fpdi/src/PdfReader/PdfReaderException.php delete mode 100644 vendor/setasign/fpdi/src/Tcpdf/Fpdi.php delete mode 100644 vendor/setasign/fpdi/src/TcpdfFpdi.php delete mode 100644 vendor/setasign/fpdi/src/Tfpdf/FpdfTpl.php delete mode 100644 vendor/setasign/fpdi/src/Tfpdf/Fpdi.php delete mode 100644 vendor/setasign/fpdi/src/autoload.php diff --git a/guest/guest_ajax.php b/guest/guest_ajax.php index 493a88a3..2c5dfc18 100644 --- a/guest/guest_ajax.php +++ b/guest/guest_ajax.php @@ -72,7 +72,7 @@ if (isset($_GET['stripe_create_pi'])) { } // Setup Stripe - require_once '../vendor/stripe-php-10.5.0/init.php'; + require_once '../plugins/stripe-php-10.5.0/init.php'; $row = mysqli_fetch_array(mysqli_query($mysqli, "SELECT config_stripe_enable, config_stripe_secret, config_stripe_account FROM settings WHERE company_id = 1")); diff --git a/guest/guest_pay_invoice_stripe.php b/guest/guest_pay_invoice_stripe.php index 0dc48126..e7bb1814 100644 --- a/guest/guest_pay_invoice_stripe.php +++ b/guest/guest_pay_invoice_stripe.php @@ -181,7 +181,7 @@ if (isset($_GET['invoice_id'], $_GET['url_key']) && !isset($_GET['payment_intent $pi_cs = $_GET['payment_intent_client_secret']; // Initialize stripe - require_once '../vendor/stripe-php-10.5.0/init.php'; + require_once '../plugins/stripe-php-10.5.0/init.php'; \Stripe\Stripe::setApiKey($config_stripe_secret); diff --git a/vendor/stripe-php-10.5.0/LICENSE b/plugins/stripe-php-10.5.0/LICENSE similarity index 100% rename from vendor/stripe-php-10.5.0/LICENSE rename to plugins/stripe-php-10.5.0/LICENSE diff --git a/vendor/stripe-php-10.5.0/VERSION b/plugins/stripe-php-10.5.0/VERSION similarity index 100% rename from vendor/stripe-php-10.5.0/VERSION rename to plugins/stripe-php-10.5.0/VERSION diff --git a/vendor/stripe-php-10.5.0/data/ca-certificates.crt b/plugins/stripe-php-10.5.0/data/ca-certificates.crt similarity index 100% rename from vendor/stripe-php-10.5.0/data/ca-certificates.crt rename to plugins/stripe-php-10.5.0/data/ca-certificates.crt diff --git a/vendor/stripe-php-10.5.0/init.php b/plugins/stripe-php-10.5.0/init.php similarity index 100% rename from vendor/stripe-php-10.5.0/init.php rename to plugins/stripe-php-10.5.0/init.php diff --git a/vendor/stripe-php-10.5.0/lib/Account.php b/plugins/stripe-php-10.5.0/lib/Account.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Account.php rename to plugins/stripe-php-10.5.0/lib/Account.php diff --git a/vendor/stripe-php-10.5.0/lib/AccountLink.php b/plugins/stripe-php-10.5.0/lib/AccountLink.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/AccountLink.php rename to plugins/stripe-php-10.5.0/lib/AccountLink.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiOperations/All.php b/plugins/stripe-php-10.5.0/lib/ApiOperations/All.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiOperations/All.php rename to plugins/stripe-php-10.5.0/lib/ApiOperations/All.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiOperations/Create.php b/plugins/stripe-php-10.5.0/lib/ApiOperations/Create.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiOperations/Create.php rename to plugins/stripe-php-10.5.0/lib/ApiOperations/Create.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiOperations/Delete.php b/plugins/stripe-php-10.5.0/lib/ApiOperations/Delete.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiOperations/Delete.php rename to plugins/stripe-php-10.5.0/lib/ApiOperations/Delete.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiOperations/NestedResource.php b/plugins/stripe-php-10.5.0/lib/ApiOperations/NestedResource.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiOperations/NestedResource.php rename to plugins/stripe-php-10.5.0/lib/ApiOperations/NestedResource.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiOperations/Request.php b/plugins/stripe-php-10.5.0/lib/ApiOperations/Request.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiOperations/Request.php rename to plugins/stripe-php-10.5.0/lib/ApiOperations/Request.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiOperations/Retrieve.php b/plugins/stripe-php-10.5.0/lib/ApiOperations/Retrieve.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiOperations/Retrieve.php rename to plugins/stripe-php-10.5.0/lib/ApiOperations/Retrieve.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiOperations/Search.php b/plugins/stripe-php-10.5.0/lib/ApiOperations/Search.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiOperations/Search.php rename to plugins/stripe-php-10.5.0/lib/ApiOperations/Search.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiOperations/SingletonRetrieve.php b/plugins/stripe-php-10.5.0/lib/ApiOperations/SingletonRetrieve.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiOperations/SingletonRetrieve.php rename to plugins/stripe-php-10.5.0/lib/ApiOperations/SingletonRetrieve.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiOperations/Update.php b/plugins/stripe-php-10.5.0/lib/ApiOperations/Update.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiOperations/Update.php rename to plugins/stripe-php-10.5.0/lib/ApiOperations/Update.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiRequestor.php b/plugins/stripe-php-10.5.0/lib/ApiRequestor.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiRequestor.php rename to plugins/stripe-php-10.5.0/lib/ApiRequestor.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiResource.php b/plugins/stripe-php-10.5.0/lib/ApiResource.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiResource.php rename to plugins/stripe-php-10.5.0/lib/ApiResource.php diff --git a/vendor/stripe-php-10.5.0/lib/ApiResponse.php b/plugins/stripe-php-10.5.0/lib/ApiResponse.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApiResponse.php rename to plugins/stripe-php-10.5.0/lib/ApiResponse.php diff --git a/vendor/stripe-php-10.5.0/lib/ApplePayDomain.php b/plugins/stripe-php-10.5.0/lib/ApplePayDomain.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApplePayDomain.php rename to plugins/stripe-php-10.5.0/lib/ApplePayDomain.php diff --git a/vendor/stripe-php-10.5.0/lib/ApplicationFee.php b/plugins/stripe-php-10.5.0/lib/ApplicationFee.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApplicationFee.php rename to plugins/stripe-php-10.5.0/lib/ApplicationFee.php diff --git a/vendor/stripe-php-10.5.0/lib/ApplicationFeeRefund.php b/plugins/stripe-php-10.5.0/lib/ApplicationFeeRefund.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ApplicationFeeRefund.php rename to plugins/stripe-php-10.5.0/lib/ApplicationFeeRefund.php diff --git a/vendor/stripe-php-10.5.0/lib/Apps/Secret.php b/plugins/stripe-php-10.5.0/lib/Apps/Secret.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Apps/Secret.php rename to plugins/stripe-php-10.5.0/lib/Apps/Secret.php diff --git a/vendor/stripe-php-10.5.0/lib/Balance.php b/plugins/stripe-php-10.5.0/lib/Balance.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Balance.php rename to plugins/stripe-php-10.5.0/lib/Balance.php diff --git a/vendor/stripe-php-10.5.0/lib/BalanceTransaction.php b/plugins/stripe-php-10.5.0/lib/BalanceTransaction.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/BalanceTransaction.php rename to plugins/stripe-php-10.5.0/lib/BalanceTransaction.php diff --git a/vendor/stripe-php-10.5.0/lib/BankAccount.php b/plugins/stripe-php-10.5.0/lib/BankAccount.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/BankAccount.php rename to plugins/stripe-php-10.5.0/lib/BankAccount.php diff --git a/vendor/stripe-php-10.5.0/lib/BaseStripeClient.php b/plugins/stripe-php-10.5.0/lib/BaseStripeClient.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/BaseStripeClient.php rename to plugins/stripe-php-10.5.0/lib/BaseStripeClient.php diff --git a/vendor/stripe-php-10.5.0/lib/BaseStripeClientInterface.php b/plugins/stripe-php-10.5.0/lib/BaseStripeClientInterface.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/BaseStripeClientInterface.php rename to plugins/stripe-php-10.5.0/lib/BaseStripeClientInterface.php diff --git a/vendor/stripe-php-10.5.0/lib/BillingPortal/Configuration.php b/plugins/stripe-php-10.5.0/lib/BillingPortal/Configuration.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/BillingPortal/Configuration.php rename to plugins/stripe-php-10.5.0/lib/BillingPortal/Configuration.php diff --git a/vendor/stripe-php-10.5.0/lib/BillingPortal/Session.php b/plugins/stripe-php-10.5.0/lib/BillingPortal/Session.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/BillingPortal/Session.php rename to plugins/stripe-php-10.5.0/lib/BillingPortal/Session.php diff --git a/vendor/stripe-php-10.5.0/lib/Capability.php b/plugins/stripe-php-10.5.0/lib/Capability.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Capability.php rename to plugins/stripe-php-10.5.0/lib/Capability.php diff --git a/vendor/stripe-php-10.5.0/lib/Card.php b/plugins/stripe-php-10.5.0/lib/Card.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Card.php rename to plugins/stripe-php-10.5.0/lib/Card.php diff --git a/vendor/stripe-php-10.5.0/lib/CashBalance.php b/plugins/stripe-php-10.5.0/lib/CashBalance.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/CashBalance.php rename to plugins/stripe-php-10.5.0/lib/CashBalance.php diff --git a/vendor/stripe-php-10.5.0/lib/Charge.php b/plugins/stripe-php-10.5.0/lib/Charge.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Charge.php rename to plugins/stripe-php-10.5.0/lib/Charge.php diff --git a/vendor/stripe-php-10.5.0/lib/Checkout/Session.php b/plugins/stripe-php-10.5.0/lib/Checkout/Session.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Checkout/Session.php rename to plugins/stripe-php-10.5.0/lib/Checkout/Session.php diff --git a/vendor/stripe-php-10.5.0/lib/Collection.php b/plugins/stripe-php-10.5.0/lib/Collection.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Collection.php rename to plugins/stripe-php-10.5.0/lib/Collection.php diff --git a/vendor/stripe-php-10.5.0/lib/CountrySpec.php b/plugins/stripe-php-10.5.0/lib/CountrySpec.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/CountrySpec.php rename to plugins/stripe-php-10.5.0/lib/CountrySpec.php diff --git a/vendor/stripe-php-10.5.0/lib/Coupon.php b/plugins/stripe-php-10.5.0/lib/Coupon.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Coupon.php rename to plugins/stripe-php-10.5.0/lib/Coupon.php diff --git a/vendor/stripe-php-10.5.0/lib/CreditNote.php b/plugins/stripe-php-10.5.0/lib/CreditNote.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/CreditNote.php rename to plugins/stripe-php-10.5.0/lib/CreditNote.php diff --git a/vendor/stripe-php-10.5.0/lib/CreditNoteLineItem.php b/plugins/stripe-php-10.5.0/lib/CreditNoteLineItem.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/CreditNoteLineItem.php rename to plugins/stripe-php-10.5.0/lib/CreditNoteLineItem.php diff --git a/vendor/stripe-php-10.5.0/lib/Customer.php b/plugins/stripe-php-10.5.0/lib/Customer.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Customer.php rename to plugins/stripe-php-10.5.0/lib/Customer.php diff --git a/vendor/stripe-php-10.5.0/lib/CustomerBalanceTransaction.php b/plugins/stripe-php-10.5.0/lib/CustomerBalanceTransaction.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/CustomerBalanceTransaction.php rename to plugins/stripe-php-10.5.0/lib/CustomerBalanceTransaction.php diff --git a/vendor/stripe-php-10.5.0/lib/CustomerCashBalanceTransaction.php b/plugins/stripe-php-10.5.0/lib/CustomerCashBalanceTransaction.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/CustomerCashBalanceTransaction.php rename to plugins/stripe-php-10.5.0/lib/CustomerCashBalanceTransaction.php diff --git a/vendor/stripe-php-10.5.0/lib/Discount.php b/plugins/stripe-php-10.5.0/lib/Discount.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Discount.php rename to plugins/stripe-php-10.5.0/lib/Discount.php diff --git a/vendor/stripe-php-10.5.0/lib/Dispute.php b/plugins/stripe-php-10.5.0/lib/Dispute.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Dispute.php rename to plugins/stripe-php-10.5.0/lib/Dispute.php diff --git a/vendor/stripe-php-10.5.0/lib/EphemeralKey.php b/plugins/stripe-php-10.5.0/lib/EphemeralKey.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/EphemeralKey.php rename to plugins/stripe-php-10.5.0/lib/EphemeralKey.php diff --git a/vendor/stripe-php-10.5.0/lib/ErrorObject.php b/plugins/stripe-php-10.5.0/lib/ErrorObject.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ErrorObject.php rename to plugins/stripe-php-10.5.0/lib/ErrorObject.php diff --git a/vendor/stripe-php-10.5.0/lib/Event.php b/plugins/stripe-php-10.5.0/lib/Event.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Event.php rename to plugins/stripe-php-10.5.0/lib/Event.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/ApiConnectionException.php b/plugins/stripe-php-10.5.0/lib/Exception/ApiConnectionException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/ApiConnectionException.php rename to plugins/stripe-php-10.5.0/lib/Exception/ApiConnectionException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/ApiErrorException.php b/plugins/stripe-php-10.5.0/lib/Exception/ApiErrorException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/ApiErrorException.php rename to plugins/stripe-php-10.5.0/lib/Exception/ApiErrorException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/AuthenticationException.php b/plugins/stripe-php-10.5.0/lib/Exception/AuthenticationException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/AuthenticationException.php rename to plugins/stripe-php-10.5.0/lib/Exception/AuthenticationException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/BadMethodCallException.php b/plugins/stripe-php-10.5.0/lib/Exception/BadMethodCallException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/BadMethodCallException.php rename to plugins/stripe-php-10.5.0/lib/Exception/BadMethodCallException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/CardException.php b/plugins/stripe-php-10.5.0/lib/Exception/CardException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/CardException.php rename to plugins/stripe-php-10.5.0/lib/Exception/CardException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/ExceptionInterface.php b/plugins/stripe-php-10.5.0/lib/Exception/ExceptionInterface.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/ExceptionInterface.php rename to plugins/stripe-php-10.5.0/lib/Exception/ExceptionInterface.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/IdempotencyException.php b/plugins/stripe-php-10.5.0/lib/Exception/IdempotencyException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/IdempotencyException.php rename to plugins/stripe-php-10.5.0/lib/Exception/IdempotencyException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/InvalidArgumentException.php b/plugins/stripe-php-10.5.0/lib/Exception/InvalidArgumentException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/InvalidArgumentException.php rename to plugins/stripe-php-10.5.0/lib/Exception/InvalidArgumentException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/InvalidRequestException.php b/plugins/stripe-php-10.5.0/lib/Exception/InvalidRequestException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/InvalidRequestException.php rename to plugins/stripe-php-10.5.0/lib/Exception/InvalidRequestException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/OAuth/ExceptionInterface.php b/plugins/stripe-php-10.5.0/lib/Exception/OAuth/ExceptionInterface.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/OAuth/ExceptionInterface.php rename to plugins/stripe-php-10.5.0/lib/Exception/OAuth/ExceptionInterface.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/OAuth/InvalidClientException.php b/plugins/stripe-php-10.5.0/lib/Exception/OAuth/InvalidClientException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/OAuth/InvalidClientException.php rename to plugins/stripe-php-10.5.0/lib/Exception/OAuth/InvalidClientException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/OAuth/InvalidGrantException.php b/plugins/stripe-php-10.5.0/lib/Exception/OAuth/InvalidGrantException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/OAuth/InvalidGrantException.php rename to plugins/stripe-php-10.5.0/lib/Exception/OAuth/InvalidGrantException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/OAuth/InvalidRequestException.php b/plugins/stripe-php-10.5.0/lib/Exception/OAuth/InvalidRequestException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/OAuth/InvalidRequestException.php rename to plugins/stripe-php-10.5.0/lib/Exception/OAuth/InvalidRequestException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/OAuth/InvalidScopeException.php b/plugins/stripe-php-10.5.0/lib/Exception/OAuth/InvalidScopeException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/OAuth/InvalidScopeException.php rename to plugins/stripe-php-10.5.0/lib/Exception/OAuth/InvalidScopeException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/OAuth/OAuthErrorException.php b/plugins/stripe-php-10.5.0/lib/Exception/OAuth/OAuthErrorException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/OAuth/OAuthErrorException.php rename to plugins/stripe-php-10.5.0/lib/Exception/OAuth/OAuthErrorException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/OAuth/UnknownOAuthErrorException.php b/plugins/stripe-php-10.5.0/lib/Exception/OAuth/UnknownOAuthErrorException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/OAuth/UnknownOAuthErrorException.php rename to plugins/stripe-php-10.5.0/lib/Exception/OAuth/UnknownOAuthErrorException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/OAuth/UnsupportedGrantTypeException.php b/plugins/stripe-php-10.5.0/lib/Exception/OAuth/UnsupportedGrantTypeException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/OAuth/UnsupportedGrantTypeException.php rename to plugins/stripe-php-10.5.0/lib/Exception/OAuth/UnsupportedGrantTypeException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/OAuth/UnsupportedResponseTypeException.php b/plugins/stripe-php-10.5.0/lib/Exception/OAuth/UnsupportedResponseTypeException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/OAuth/UnsupportedResponseTypeException.php rename to plugins/stripe-php-10.5.0/lib/Exception/OAuth/UnsupportedResponseTypeException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/PermissionException.php b/plugins/stripe-php-10.5.0/lib/Exception/PermissionException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/PermissionException.php rename to plugins/stripe-php-10.5.0/lib/Exception/PermissionException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/RateLimitException.php b/plugins/stripe-php-10.5.0/lib/Exception/RateLimitException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/RateLimitException.php rename to plugins/stripe-php-10.5.0/lib/Exception/RateLimitException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/SignatureVerificationException.php b/plugins/stripe-php-10.5.0/lib/Exception/SignatureVerificationException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/SignatureVerificationException.php rename to plugins/stripe-php-10.5.0/lib/Exception/SignatureVerificationException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/UnexpectedValueException.php b/plugins/stripe-php-10.5.0/lib/Exception/UnexpectedValueException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/UnexpectedValueException.php rename to plugins/stripe-php-10.5.0/lib/Exception/UnexpectedValueException.php diff --git a/vendor/stripe-php-10.5.0/lib/Exception/UnknownApiErrorException.php b/plugins/stripe-php-10.5.0/lib/Exception/UnknownApiErrorException.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Exception/UnknownApiErrorException.php rename to plugins/stripe-php-10.5.0/lib/Exception/UnknownApiErrorException.php diff --git a/vendor/stripe-php-10.5.0/lib/ExchangeRate.php b/plugins/stripe-php-10.5.0/lib/ExchangeRate.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ExchangeRate.php rename to plugins/stripe-php-10.5.0/lib/ExchangeRate.php diff --git a/vendor/stripe-php-10.5.0/lib/File.php b/plugins/stripe-php-10.5.0/lib/File.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/File.php rename to plugins/stripe-php-10.5.0/lib/File.php diff --git a/vendor/stripe-php-10.5.0/lib/FileLink.php b/plugins/stripe-php-10.5.0/lib/FileLink.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/FileLink.php rename to plugins/stripe-php-10.5.0/lib/FileLink.php diff --git a/vendor/stripe-php-10.5.0/lib/FinancialConnections/Account.php b/plugins/stripe-php-10.5.0/lib/FinancialConnections/Account.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/FinancialConnections/Account.php rename to plugins/stripe-php-10.5.0/lib/FinancialConnections/Account.php diff --git a/vendor/stripe-php-10.5.0/lib/FinancialConnections/AccountOwner.php b/plugins/stripe-php-10.5.0/lib/FinancialConnections/AccountOwner.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/FinancialConnections/AccountOwner.php rename to plugins/stripe-php-10.5.0/lib/FinancialConnections/AccountOwner.php diff --git a/vendor/stripe-php-10.5.0/lib/FinancialConnections/AccountOwnership.php b/plugins/stripe-php-10.5.0/lib/FinancialConnections/AccountOwnership.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/FinancialConnections/AccountOwnership.php rename to plugins/stripe-php-10.5.0/lib/FinancialConnections/AccountOwnership.php diff --git a/vendor/stripe-php-10.5.0/lib/FinancialConnections/Session.php b/plugins/stripe-php-10.5.0/lib/FinancialConnections/Session.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/FinancialConnections/Session.php rename to plugins/stripe-php-10.5.0/lib/FinancialConnections/Session.php diff --git a/vendor/stripe-php-10.5.0/lib/FundingInstructions.php b/plugins/stripe-php-10.5.0/lib/FundingInstructions.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/FundingInstructions.php rename to plugins/stripe-php-10.5.0/lib/FundingInstructions.php diff --git a/vendor/stripe-php-10.5.0/lib/HttpClient/ClientInterface.php b/plugins/stripe-php-10.5.0/lib/HttpClient/ClientInterface.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/HttpClient/ClientInterface.php rename to plugins/stripe-php-10.5.0/lib/HttpClient/ClientInterface.php diff --git a/vendor/stripe-php-10.5.0/lib/HttpClient/CurlClient.php b/plugins/stripe-php-10.5.0/lib/HttpClient/CurlClient.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/HttpClient/CurlClient.php rename to plugins/stripe-php-10.5.0/lib/HttpClient/CurlClient.php diff --git a/vendor/stripe-php-10.5.0/lib/HttpClient/StreamingClientInterface.php b/plugins/stripe-php-10.5.0/lib/HttpClient/StreamingClientInterface.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/HttpClient/StreamingClientInterface.php rename to plugins/stripe-php-10.5.0/lib/HttpClient/StreamingClientInterface.php diff --git a/vendor/stripe-php-10.5.0/lib/Identity/VerificationReport.php b/plugins/stripe-php-10.5.0/lib/Identity/VerificationReport.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Identity/VerificationReport.php rename to plugins/stripe-php-10.5.0/lib/Identity/VerificationReport.php diff --git a/vendor/stripe-php-10.5.0/lib/Identity/VerificationSession.php b/plugins/stripe-php-10.5.0/lib/Identity/VerificationSession.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Identity/VerificationSession.php rename to plugins/stripe-php-10.5.0/lib/Identity/VerificationSession.php diff --git a/vendor/stripe-php-10.5.0/lib/Invoice.php b/plugins/stripe-php-10.5.0/lib/Invoice.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Invoice.php rename to plugins/stripe-php-10.5.0/lib/Invoice.php diff --git a/vendor/stripe-php-10.5.0/lib/InvoiceItem.php b/plugins/stripe-php-10.5.0/lib/InvoiceItem.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/InvoiceItem.php rename to plugins/stripe-php-10.5.0/lib/InvoiceItem.php diff --git a/vendor/stripe-php-10.5.0/lib/InvoiceLineItem.php b/plugins/stripe-php-10.5.0/lib/InvoiceLineItem.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/InvoiceLineItem.php rename to plugins/stripe-php-10.5.0/lib/InvoiceLineItem.php diff --git a/vendor/stripe-php-10.5.0/lib/Issuing/Authorization.php b/plugins/stripe-php-10.5.0/lib/Issuing/Authorization.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Issuing/Authorization.php rename to plugins/stripe-php-10.5.0/lib/Issuing/Authorization.php diff --git a/vendor/stripe-php-10.5.0/lib/Issuing/Card.php b/plugins/stripe-php-10.5.0/lib/Issuing/Card.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Issuing/Card.php rename to plugins/stripe-php-10.5.0/lib/Issuing/Card.php diff --git a/vendor/stripe-php-10.5.0/lib/Issuing/CardDetails.php b/plugins/stripe-php-10.5.0/lib/Issuing/CardDetails.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Issuing/CardDetails.php rename to plugins/stripe-php-10.5.0/lib/Issuing/CardDetails.php diff --git a/vendor/stripe-php-10.5.0/lib/Issuing/Cardholder.php b/plugins/stripe-php-10.5.0/lib/Issuing/Cardholder.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Issuing/Cardholder.php rename to plugins/stripe-php-10.5.0/lib/Issuing/Cardholder.php diff --git a/vendor/stripe-php-10.5.0/lib/Issuing/Dispute.php b/plugins/stripe-php-10.5.0/lib/Issuing/Dispute.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Issuing/Dispute.php rename to plugins/stripe-php-10.5.0/lib/Issuing/Dispute.php diff --git a/vendor/stripe-php-10.5.0/lib/Issuing/Transaction.php b/plugins/stripe-php-10.5.0/lib/Issuing/Transaction.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Issuing/Transaction.php rename to plugins/stripe-php-10.5.0/lib/Issuing/Transaction.php diff --git a/vendor/stripe-php-10.5.0/lib/LineItem.php b/plugins/stripe-php-10.5.0/lib/LineItem.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/LineItem.php rename to plugins/stripe-php-10.5.0/lib/LineItem.php diff --git a/vendor/stripe-php-10.5.0/lib/LoginLink.php b/plugins/stripe-php-10.5.0/lib/LoginLink.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/LoginLink.php rename to plugins/stripe-php-10.5.0/lib/LoginLink.php diff --git a/vendor/stripe-php-10.5.0/lib/Mandate.php b/plugins/stripe-php-10.5.0/lib/Mandate.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Mandate.php rename to plugins/stripe-php-10.5.0/lib/Mandate.php diff --git a/vendor/stripe-php-10.5.0/lib/OAuth.php b/plugins/stripe-php-10.5.0/lib/OAuth.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/OAuth.php rename to plugins/stripe-php-10.5.0/lib/OAuth.php diff --git a/vendor/stripe-php-10.5.0/lib/OAuthErrorObject.php b/plugins/stripe-php-10.5.0/lib/OAuthErrorObject.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/OAuthErrorObject.php rename to plugins/stripe-php-10.5.0/lib/OAuthErrorObject.php diff --git a/vendor/stripe-php-10.5.0/lib/PaymentIntent.php b/plugins/stripe-php-10.5.0/lib/PaymentIntent.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/PaymentIntent.php rename to plugins/stripe-php-10.5.0/lib/PaymentIntent.php diff --git a/vendor/stripe-php-10.5.0/lib/PaymentLink.php b/plugins/stripe-php-10.5.0/lib/PaymentLink.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/PaymentLink.php rename to plugins/stripe-php-10.5.0/lib/PaymentLink.php diff --git a/vendor/stripe-php-10.5.0/lib/PaymentMethod.php b/plugins/stripe-php-10.5.0/lib/PaymentMethod.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/PaymentMethod.php rename to plugins/stripe-php-10.5.0/lib/PaymentMethod.php diff --git a/vendor/stripe-php-10.5.0/lib/Payout.php b/plugins/stripe-php-10.5.0/lib/Payout.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Payout.php rename to plugins/stripe-php-10.5.0/lib/Payout.php diff --git a/vendor/stripe-php-10.5.0/lib/Person.php b/plugins/stripe-php-10.5.0/lib/Person.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Person.php rename to plugins/stripe-php-10.5.0/lib/Person.php diff --git a/vendor/stripe-php-10.5.0/lib/Plan.php b/plugins/stripe-php-10.5.0/lib/Plan.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Plan.php rename to plugins/stripe-php-10.5.0/lib/Plan.php diff --git a/vendor/stripe-php-10.5.0/lib/Price.php b/plugins/stripe-php-10.5.0/lib/Price.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Price.php rename to plugins/stripe-php-10.5.0/lib/Price.php diff --git a/vendor/stripe-php-10.5.0/lib/Product.php b/plugins/stripe-php-10.5.0/lib/Product.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Product.php rename to plugins/stripe-php-10.5.0/lib/Product.php diff --git a/vendor/stripe-php-10.5.0/lib/PromotionCode.php b/plugins/stripe-php-10.5.0/lib/PromotionCode.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/PromotionCode.php rename to plugins/stripe-php-10.5.0/lib/PromotionCode.php diff --git a/vendor/stripe-php-10.5.0/lib/Quote.php b/plugins/stripe-php-10.5.0/lib/Quote.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Quote.php rename to plugins/stripe-php-10.5.0/lib/Quote.php diff --git a/vendor/stripe-php-10.5.0/lib/Radar/EarlyFraudWarning.php b/plugins/stripe-php-10.5.0/lib/Radar/EarlyFraudWarning.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Radar/EarlyFraudWarning.php rename to plugins/stripe-php-10.5.0/lib/Radar/EarlyFraudWarning.php diff --git a/vendor/stripe-php-10.5.0/lib/Radar/ValueList.php b/plugins/stripe-php-10.5.0/lib/Radar/ValueList.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Radar/ValueList.php rename to plugins/stripe-php-10.5.0/lib/Radar/ValueList.php diff --git a/vendor/stripe-php-10.5.0/lib/Radar/ValueListItem.php b/plugins/stripe-php-10.5.0/lib/Radar/ValueListItem.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Radar/ValueListItem.php rename to plugins/stripe-php-10.5.0/lib/Radar/ValueListItem.php diff --git a/vendor/stripe-php-10.5.0/lib/RecipientTransfer.php b/plugins/stripe-php-10.5.0/lib/RecipientTransfer.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/RecipientTransfer.php rename to plugins/stripe-php-10.5.0/lib/RecipientTransfer.php diff --git a/vendor/stripe-php-10.5.0/lib/Refund.php b/plugins/stripe-php-10.5.0/lib/Refund.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Refund.php rename to plugins/stripe-php-10.5.0/lib/Refund.php diff --git a/vendor/stripe-php-10.5.0/lib/Reporting/ReportRun.php b/plugins/stripe-php-10.5.0/lib/Reporting/ReportRun.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Reporting/ReportRun.php rename to plugins/stripe-php-10.5.0/lib/Reporting/ReportRun.php diff --git a/vendor/stripe-php-10.5.0/lib/Reporting/ReportType.php b/plugins/stripe-php-10.5.0/lib/Reporting/ReportType.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Reporting/ReportType.php rename to plugins/stripe-php-10.5.0/lib/Reporting/ReportType.php diff --git a/vendor/stripe-php-10.5.0/lib/RequestTelemetry.php b/plugins/stripe-php-10.5.0/lib/RequestTelemetry.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/RequestTelemetry.php rename to plugins/stripe-php-10.5.0/lib/RequestTelemetry.php diff --git a/vendor/stripe-php-10.5.0/lib/Review.php b/plugins/stripe-php-10.5.0/lib/Review.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Review.php rename to plugins/stripe-php-10.5.0/lib/Review.php diff --git a/vendor/stripe-php-10.5.0/lib/SearchResult.php b/plugins/stripe-php-10.5.0/lib/SearchResult.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/SearchResult.php rename to plugins/stripe-php-10.5.0/lib/SearchResult.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/AbstractService.php b/plugins/stripe-php-10.5.0/lib/Service/AbstractService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/AbstractService.php rename to plugins/stripe-php-10.5.0/lib/Service/AbstractService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/AbstractServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/AbstractServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/AbstractServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/AbstractServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/AccountLinkService.php b/plugins/stripe-php-10.5.0/lib/Service/AccountLinkService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/AccountLinkService.php rename to plugins/stripe-php-10.5.0/lib/Service/AccountLinkService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/AccountService.php b/plugins/stripe-php-10.5.0/lib/Service/AccountService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/AccountService.php rename to plugins/stripe-php-10.5.0/lib/Service/AccountService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/ApplePayDomainService.php b/plugins/stripe-php-10.5.0/lib/Service/ApplePayDomainService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/ApplePayDomainService.php rename to plugins/stripe-php-10.5.0/lib/Service/ApplePayDomainService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/ApplicationFeeService.php b/plugins/stripe-php-10.5.0/lib/Service/ApplicationFeeService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/ApplicationFeeService.php rename to plugins/stripe-php-10.5.0/lib/Service/ApplicationFeeService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Apps/AppsServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/Apps/AppsServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Apps/AppsServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/Apps/AppsServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Apps/SecretService.php b/plugins/stripe-php-10.5.0/lib/Service/Apps/SecretService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Apps/SecretService.php rename to plugins/stripe-php-10.5.0/lib/Service/Apps/SecretService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/BalanceService.php b/plugins/stripe-php-10.5.0/lib/Service/BalanceService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/BalanceService.php rename to plugins/stripe-php-10.5.0/lib/Service/BalanceService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/BalanceTransactionService.php b/plugins/stripe-php-10.5.0/lib/Service/BalanceTransactionService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/BalanceTransactionService.php rename to plugins/stripe-php-10.5.0/lib/Service/BalanceTransactionService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/BillingPortal/BillingPortalServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/BillingPortal/BillingPortalServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/BillingPortal/BillingPortalServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/BillingPortal/BillingPortalServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/BillingPortal/ConfigurationService.php b/plugins/stripe-php-10.5.0/lib/Service/BillingPortal/ConfigurationService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/BillingPortal/ConfigurationService.php rename to plugins/stripe-php-10.5.0/lib/Service/BillingPortal/ConfigurationService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/BillingPortal/SessionService.php b/plugins/stripe-php-10.5.0/lib/Service/BillingPortal/SessionService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/BillingPortal/SessionService.php rename to plugins/stripe-php-10.5.0/lib/Service/BillingPortal/SessionService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/ChargeService.php b/plugins/stripe-php-10.5.0/lib/Service/ChargeService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/ChargeService.php rename to plugins/stripe-php-10.5.0/lib/Service/ChargeService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Checkout/CheckoutServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/Checkout/CheckoutServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Checkout/CheckoutServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/Checkout/CheckoutServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Checkout/SessionService.php b/plugins/stripe-php-10.5.0/lib/Service/Checkout/SessionService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Checkout/SessionService.php rename to plugins/stripe-php-10.5.0/lib/Service/Checkout/SessionService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/CoreServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/CoreServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/CoreServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/CoreServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/CountrySpecService.php b/plugins/stripe-php-10.5.0/lib/Service/CountrySpecService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/CountrySpecService.php rename to plugins/stripe-php-10.5.0/lib/Service/CountrySpecService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/CouponService.php b/plugins/stripe-php-10.5.0/lib/Service/CouponService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/CouponService.php rename to plugins/stripe-php-10.5.0/lib/Service/CouponService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/CreditNoteService.php b/plugins/stripe-php-10.5.0/lib/Service/CreditNoteService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/CreditNoteService.php rename to plugins/stripe-php-10.5.0/lib/Service/CreditNoteService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/CustomerService.php b/plugins/stripe-php-10.5.0/lib/Service/CustomerService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/CustomerService.php rename to plugins/stripe-php-10.5.0/lib/Service/CustomerService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/DisputeService.php b/plugins/stripe-php-10.5.0/lib/Service/DisputeService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/DisputeService.php rename to plugins/stripe-php-10.5.0/lib/Service/DisputeService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/EphemeralKeyService.php b/plugins/stripe-php-10.5.0/lib/Service/EphemeralKeyService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/EphemeralKeyService.php rename to plugins/stripe-php-10.5.0/lib/Service/EphemeralKeyService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/EventService.php b/plugins/stripe-php-10.5.0/lib/Service/EventService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/EventService.php rename to plugins/stripe-php-10.5.0/lib/Service/EventService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/ExchangeRateService.php b/plugins/stripe-php-10.5.0/lib/Service/ExchangeRateService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/ExchangeRateService.php rename to plugins/stripe-php-10.5.0/lib/Service/ExchangeRateService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/FileLinkService.php b/plugins/stripe-php-10.5.0/lib/Service/FileLinkService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/FileLinkService.php rename to plugins/stripe-php-10.5.0/lib/Service/FileLinkService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/FileService.php b/plugins/stripe-php-10.5.0/lib/Service/FileService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/FileService.php rename to plugins/stripe-php-10.5.0/lib/Service/FileService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/FinancialConnections/AccountService.php b/plugins/stripe-php-10.5.0/lib/Service/FinancialConnections/AccountService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/FinancialConnections/AccountService.php rename to plugins/stripe-php-10.5.0/lib/Service/FinancialConnections/AccountService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/FinancialConnections/FinancialConnectionsServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/FinancialConnections/FinancialConnectionsServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/FinancialConnections/FinancialConnectionsServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/FinancialConnections/FinancialConnectionsServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/FinancialConnections/SessionService.php b/plugins/stripe-php-10.5.0/lib/Service/FinancialConnections/SessionService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/FinancialConnections/SessionService.php rename to plugins/stripe-php-10.5.0/lib/Service/FinancialConnections/SessionService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Identity/IdentityServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/Identity/IdentityServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Identity/IdentityServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/Identity/IdentityServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Identity/VerificationReportService.php b/plugins/stripe-php-10.5.0/lib/Service/Identity/VerificationReportService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Identity/VerificationReportService.php rename to plugins/stripe-php-10.5.0/lib/Service/Identity/VerificationReportService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Identity/VerificationSessionService.php b/plugins/stripe-php-10.5.0/lib/Service/Identity/VerificationSessionService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Identity/VerificationSessionService.php rename to plugins/stripe-php-10.5.0/lib/Service/Identity/VerificationSessionService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/InvoiceItemService.php b/plugins/stripe-php-10.5.0/lib/Service/InvoiceItemService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/InvoiceItemService.php rename to plugins/stripe-php-10.5.0/lib/Service/InvoiceItemService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/InvoiceService.php b/plugins/stripe-php-10.5.0/lib/Service/InvoiceService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/InvoiceService.php rename to plugins/stripe-php-10.5.0/lib/Service/InvoiceService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Issuing/AuthorizationService.php b/plugins/stripe-php-10.5.0/lib/Service/Issuing/AuthorizationService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Issuing/AuthorizationService.php rename to plugins/stripe-php-10.5.0/lib/Service/Issuing/AuthorizationService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Issuing/CardService.php b/plugins/stripe-php-10.5.0/lib/Service/Issuing/CardService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Issuing/CardService.php rename to plugins/stripe-php-10.5.0/lib/Service/Issuing/CardService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Issuing/CardholderService.php b/plugins/stripe-php-10.5.0/lib/Service/Issuing/CardholderService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Issuing/CardholderService.php rename to plugins/stripe-php-10.5.0/lib/Service/Issuing/CardholderService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Issuing/DisputeService.php b/plugins/stripe-php-10.5.0/lib/Service/Issuing/DisputeService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Issuing/DisputeService.php rename to plugins/stripe-php-10.5.0/lib/Service/Issuing/DisputeService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Issuing/IssuingServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/Issuing/IssuingServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Issuing/IssuingServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/Issuing/IssuingServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Issuing/TransactionService.php b/plugins/stripe-php-10.5.0/lib/Service/Issuing/TransactionService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Issuing/TransactionService.php rename to plugins/stripe-php-10.5.0/lib/Service/Issuing/TransactionService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/MandateService.php b/plugins/stripe-php-10.5.0/lib/Service/MandateService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/MandateService.php rename to plugins/stripe-php-10.5.0/lib/Service/MandateService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/OAuthService.php b/plugins/stripe-php-10.5.0/lib/Service/OAuthService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/OAuthService.php rename to plugins/stripe-php-10.5.0/lib/Service/OAuthService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/PaymentIntentService.php b/plugins/stripe-php-10.5.0/lib/Service/PaymentIntentService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/PaymentIntentService.php rename to plugins/stripe-php-10.5.0/lib/Service/PaymentIntentService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/PaymentLinkService.php b/plugins/stripe-php-10.5.0/lib/Service/PaymentLinkService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/PaymentLinkService.php rename to plugins/stripe-php-10.5.0/lib/Service/PaymentLinkService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/PaymentMethodService.php b/plugins/stripe-php-10.5.0/lib/Service/PaymentMethodService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/PaymentMethodService.php rename to plugins/stripe-php-10.5.0/lib/Service/PaymentMethodService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/PayoutService.php b/plugins/stripe-php-10.5.0/lib/Service/PayoutService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/PayoutService.php rename to plugins/stripe-php-10.5.0/lib/Service/PayoutService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/PlanService.php b/plugins/stripe-php-10.5.0/lib/Service/PlanService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/PlanService.php rename to plugins/stripe-php-10.5.0/lib/Service/PlanService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/PriceService.php b/plugins/stripe-php-10.5.0/lib/Service/PriceService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/PriceService.php rename to plugins/stripe-php-10.5.0/lib/Service/PriceService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/ProductService.php b/plugins/stripe-php-10.5.0/lib/Service/ProductService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/ProductService.php rename to plugins/stripe-php-10.5.0/lib/Service/ProductService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/PromotionCodeService.php b/plugins/stripe-php-10.5.0/lib/Service/PromotionCodeService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/PromotionCodeService.php rename to plugins/stripe-php-10.5.0/lib/Service/PromotionCodeService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/QuoteService.php b/plugins/stripe-php-10.5.0/lib/Service/QuoteService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/QuoteService.php rename to plugins/stripe-php-10.5.0/lib/Service/QuoteService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Radar/EarlyFraudWarningService.php b/plugins/stripe-php-10.5.0/lib/Service/Radar/EarlyFraudWarningService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Radar/EarlyFraudWarningService.php rename to plugins/stripe-php-10.5.0/lib/Service/Radar/EarlyFraudWarningService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Radar/RadarServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/Radar/RadarServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Radar/RadarServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/Radar/RadarServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Radar/ValueListItemService.php b/plugins/stripe-php-10.5.0/lib/Service/Radar/ValueListItemService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Radar/ValueListItemService.php rename to plugins/stripe-php-10.5.0/lib/Service/Radar/ValueListItemService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Radar/ValueListService.php b/plugins/stripe-php-10.5.0/lib/Service/Radar/ValueListService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Radar/ValueListService.php rename to plugins/stripe-php-10.5.0/lib/Service/Radar/ValueListService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/RefundService.php b/plugins/stripe-php-10.5.0/lib/Service/RefundService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/RefundService.php rename to plugins/stripe-php-10.5.0/lib/Service/RefundService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Reporting/ReportRunService.php b/plugins/stripe-php-10.5.0/lib/Service/Reporting/ReportRunService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Reporting/ReportRunService.php rename to plugins/stripe-php-10.5.0/lib/Service/Reporting/ReportRunService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Reporting/ReportTypeService.php b/plugins/stripe-php-10.5.0/lib/Service/Reporting/ReportTypeService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Reporting/ReportTypeService.php rename to plugins/stripe-php-10.5.0/lib/Service/Reporting/ReportTypeService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Reporting/ReportingServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/Reporting/ReportingServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Reporting/ReportingServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/Reporting/ReportingServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/ReviewService.php b/plugins/stripe-php-10.5.0/lib/Service/ReviewService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/ReviewService.php rename to plugins/stripe-php-10.5.0/lib/Service/ReviewService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/SetupAttemptService.php b/plugins/stripe-php-10.5.0/lib/Service/SetupAttemptService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/SetupAttemptService.php rename to plugins/stripe-php-10.5.0/lib/Service/SetupAttemptService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/SetupIntentService.php b/plugins/stripe-php-10.5.0/lib/Service/SetupIntentService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/SetupIntentService.php rename to plugins/stripe-php-10.5.0/lib/Service/SetupIntentService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/ShippingRateService.php b/plugins/stripe-php-10.5.0/lib/Service/ShippingRateService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/ShippingRateService.php rename to plugins/stripe-php-10.5.0/lib/Service/ShippingRateService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Sigma/ScheduledQueryRunService.php b/plugins/stripe-php-10.5.0/lib/Service/Sigma/ScheduledQueryRunService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Sigma/ScheduledQueryRunService.php rename to plugins/stripe-php-10.5.0/lib/Service/Sigma/ScheduledQueryRunService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Sigma/SigmaServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/Sigma/SigmaServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Sigma/SigmaServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/Sigma/SigmaServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/SourceService.php b/plugins/stripe-php-10.5.0/lib/Service/SourceService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/SourceService.php rename to plugins/stripe-php-10.5.0/lib/Service/SourceService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/SubscriptionItemService.php b/plugins/stripe-php-10.5.0/lib/Service/SubscriptionItemService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/SubscriptionItemService.php rename to plugins/stripe-php-10.5.0/lib/Service/SubscriptionItemService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/SubscriptionScheduleService.php b/plugins/stripe-php-10.5.0/lib/Service/SubscriptionScheduleService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/SubscriptionScheduleService.php rename to plugins/stripe-php-10.5.0/lib/Service/SubscriptionScheduleService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/SubscriptionService.php b/plugins/stripe-php-10.5.0/lib/Service/SubscriptionService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/SubscriptionService.php rename to plugins/stripe-php-10.5.0/lib/Service/SubscriptionService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TaxCodeService.php b/plugins/stripe-php-10.5.0/lib/Service/TaxCodeService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TaxCodeService.php rename to plugins/stripe-php-10.5.0/lib/Service/TaxCodeService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TaxRateService.php b/plugins/stripe-php-10.5.0/lib/Service/TaxRateService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TaxRateService.php rename to plugins/stripe-php-10.5.0/lib/Service/TaxRateService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Terminal/ConfigurationService.php b/plugins/stripe-php-10.5.0/lib/Service/Terminal/ConfigurationService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Terminal/ConfigurationService.php rename to plugins/stripe-php-10.5.0/lib/Service/Terminal/ConfigurationService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Terminal/ConnectionTokenService.php b/plugins/stripe-php-10.5.0/lib/Service/Terminal/ConnectionTokenService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Terminal/ConnectionTokenService.php rename to plugins/stripe-php-10.5.0/lib/Service/Terminal/ConnectionTokenService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Terminal/LocationService.php b/plugins/stripe-php-10.5.0/lib/Service/Terminal/LocationService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Terminal/LocationService.php rename to plugins/stripe-php-10.5.0/lib/Service/Terminal/LocationService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Terminal/ReaderService.php b/plugins/stripe-php-10.5.0/lib/Service/Terminal/ReaderService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Terminal/ReaderService.php rename to plugins/stripe-php-10.5.0/lib/Service/Terminal/ReaderService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Terminal/TerminalServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/Terminal/TerminalServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Terminal/TerminalServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/Terminal/TerminalServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/CustomerService.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/CustomerService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/CustomerService.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/CustomerService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Issuing/CardService.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Issuing/CardService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Issuing/CardService.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Issuing/CardService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Issuing/IssuingServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Issuing/IssuingServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Issuing/IssuingServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Issuing/IssuingServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/RefundService.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/RefundService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/RefundService.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/RefundService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Terminal/ReaderService.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Terminal/ReaderService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Terminal/ReaderService.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Terminal/ReaderService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Terminal/TerminalServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Terminal/TerminalServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Terminal/TerminalServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Terminal/TerminalServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/TestClockService.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/TestClockService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/TestClockService.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/TestClockService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/TestHelpersServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/TestHelpersServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/TestHelpersServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/TestHelpersServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/InboundTransferService.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/InboundTransferService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/InboundTransferService.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/InboundTransferService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/OutboundPaymentService.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/OutboundPaymentService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/OutboundPaymentService.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/OutboundPaymentService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/OutboundTransferService.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/OutboundTransferService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/OutboundTransferService.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/OutboundTransferService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/ReceivedCreditService.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/ReceivedCreditService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/ReceivedCreditService.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/ReceivedCreditService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/ReceivedDebitService.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/ReceivedDebitService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/ReceivedDebitService.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/ReceivedDebitService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/TreasuryServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/TreasuryServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/TreasuryServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/TestHelpers/Treasury/TreasuryServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TokenService.php b/plugins/stripe-php-10.5.0/lib/Service/TokenService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TokenService.php rename to plugins/stripe-php-10.5.0/lib/Service/TokenService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TopupService.php b/plugins/stripe-php-10.5.0/lib/Service/TopupService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TopupService.php rename to plugins/stripe-php-10.5.0/lib/Service/TopupService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/TransferService.php b/plugins/stripe-php-10.5.0/lib/Service/TransferService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/TransferService.php rename to plugins/stripe-php-10.5.0/lib/Service/TransferService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/CreditReversalService.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/CreditReversalService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/CreditReversalService.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/CreditReversalService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/DebitReversalService.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/DebitReversalService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/DebitReversalService.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/DebitReversalService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/FinancialAccountService.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/FinancialAccountService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/FinancialAccountService.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/FinancialAccountService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/InboundTransferService.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/InboundTransferService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/InboundTransferService.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/InboundTransferService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/OutboundPaymentService.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/OutboundPaymentService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/OutboundPaymentService.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/OutboundPaymentService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/OutboundTransferService.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/OutboundTransferService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/OutboundTransferService.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/OutboundTransferService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/ReceivedCreditService.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/ReceivedCreditService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/ReceivedCreditService.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/ReceivedCreditService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/ReceivedDebitService.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/ReceivedDebitService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/ReceivedDebitService.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/ReceivedDebitService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/TransactionEntryService.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/TransactionEntryService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/TransactionEntryService.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/TransactionEntryService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/TransactionService.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/TransactionService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/TransactionService.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/TransactionService.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/Treasury/TreasuryServiceFactory.php b/plugins/stripe-php-10.5.0/lib/Service/Treasury/TreasuryServiceFactory.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/Treasury/TreasuryServiceFactory.php rename to plugins/stripe-php-10.5.0/lib/Service/Treasury/TreasuryServiceFactory.php diff --git a/vendor/stripe-php-10.5.0/lib/Service/WebhookEndpointService.php b/plugins/stripe-php-10.5.0/lib/Service/WebhookEndpointService.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Service/WebhookEndpointService.php rename to plugins/stripe-php-10.5.0/lib/Service/WebhookEndpointService.php diff --git a/vendor/stripe-php-10.5.0/lib/SetupAttempt.php b/plugins/stripe-php-10.5.0/lib/SetupAttempt.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/SetupAttempt.php rename to plugins/stripe-php-10.5.0/lib/SetupAttempt.php diff --git a/vendor/stripe-php-10.5.0/lib/SetupIntent.php b/plugins/stripe-php-10.5.0/lib/SetupIntent.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/SetupIntent.php rename to plugins/stripe-php-10.5.0/lib/SetupIntent.php diff --git a/vendor/stripe-php-10.5.0/lib/ShippingRate.php b/plugins/stripe-php-10.5.0/lib/ShippingRate.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/ShippingRate.php rename to plugins/stripe-php-10.5.0/lib/ShippingRate.php diff --git a/vendor/stripe-php-10.5.0/lib/Sigma/ScheduledQueryRun.php b/plugins/stripe-php-10.5.0/lib/Sigma/ScheduledQueryRun.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Sigma/ScheduledQueryRun.php rename to plugins/stripe-php-10.5.0/lib/Sigma/ScheduledQueryRun.php diff --git a/vendor/stripe-php-10.5.0/lib/SingletonApiResource.php b/plugins/stripe-php-10.5.0/lib/SingletonApiResource.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/SingletonApiResource.php rename to plugins/stripe-php-10.5.0/lib/SingletonApiResource.php diff --git a/vendor/stripe-php-10.5.0/lib/Source.php b/plugins/stripe-php-10.5.0/lib/Source.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Source.php rename to plugins/stripe-php-10.5.0/lib/Source.php diff --git a/vendor/stripe-php-10.5.0/lib/SourceTransaction.php b/plugins/stripe-php-10.5.0/lib/SourceTransaction.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/SourceTransaction.php rename to plugins/stripe-php-10.5.0/lib/SourceTransaction.php diff --git a/vendor/stripe-php-10.5.0/lib/Stripe.php b/plugins/stripe-php-10.5.0/lib/Stripe.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Stripe.php rename to plugins/stripe-php-10.5.0/lib/Stripe.php diff --git a/vendor/stripe-php-10.5.0/lib/StripeClient.php b/plugins/stripe-php-10.5.0/lib/StripeClient.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/StripeClient.php rename to plugins/stripe-php-10.5.0/lib/StripeClient.php diff --git a/vendor/stripe-php-10.5.0/lib/StripeClientInterface.php b/plugins/stripe-php-10.5.0/lib/StripeClientInterface.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/StripeClientInterface.php rename to plugins/stripe-php-10.5.0/lib/StripeClientInterface.php diff --git a/vendor/stripe-php-10.5.0/lib/StripeObject.php b/plugins/stripe-php-10.5.0/lib/StripeObject.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/StripeObject.php rename to plugins/stripe-php-10.5.0/lib/StripeObject.php diff --git a/vendor/stripe-php-10.5.0/lib/StripeStreamingClientInterface.php b/plugins/stripe-php-10.5.0/lib/StripeStreamingClientInterface.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/StripeStreamingClientInterface.php rename to plugins/stripe-php-10.5.0/lib/StripeStreamingClientInterface.php diff --git a/vendor/stripe-php-10.5.0/lib/Subscription.php b/plugins/stripe-php-10.5.0/lib/Subscription.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Subscription.php rename to plugins/stripe-php-10.5.0/lib/Subscription.php diff --git a/vendor/stripe-php-10.5.0/lib/SubscriptionItem.php b/plugins/stripe-php-10.5.0/lib/SubscriptionItem.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/SubscriptionItem.php rename to plugins/stripe-php-10.5.0/lib/SubscriptionItem.php diff --git a/vendor/stripe-php-10.5.0/lib/SubscriptionSchedule.php b/plugins/stripe-php-10.5.0/lib/SubscriptionSchedule.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/SubscriptionSchedule.php rename to plugins/stripe-php-10.5.0/lib/SubscriptionSchedule.php diff --git a/vendor/stripe-php-10.5.0/lib/TaxCode.php b/plugins/stripe-php-10.5.0/lib/TaxCode.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/TaxCode.php rename to plugins/stripe-php-10.5.0/lib/TaxCode.php diff --git a/vendor/stripe-php-10.5.0/lib/TaxId.php b/plugins/stripe-php-10.5.0/lib/TaxId.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/TaxId.php rename to plugins/stripe-php-10.5.0/lib/TaxId.php diff --git a/vendor/stripe-php-10.5.0/lib/TaxRate.php b/plugins/stripe-php-10.5.0/lib/TaxRate.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/TaxRate.php rename to plugins/stripe-php-10.5.0/lib/TaxRate.php diff --git a/vendor/stripe-php-10.5.0/lib/Terminal/Configuration.php b/plugins/stripe-php-10.5.0/lib/Terminal/Configuration.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Terminal/Configuration.php rename to plugins/stripe-php-10.5.0/lib/Terminal/Configuration.php diff --git a/vendor/stripe-php-10.5.0/lib/Terminal/ConnectionToken.php b/plugins/stripe-php-10.5.0/lib/Terminal/ConnectionToken.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Terminal/ConnectionToken.php rename to plugins/stripe-php-10.5.0/lib/Terminal/ConnectionToken.php diff --git a/vendor/stripe-php-10.5.0/lib/Terminal/Location.php b/plugins/stripe-php-10.5.0/lib/Terminal/Location.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Terminal/Location.php rename to plugins/stripe-php-10.5.0/lib/Terminal/Location.php diff --git a/vendor/stripe-php-10.5.0/lib/Terminal/Reader.php b/plugins/stripe-php-10.5.0/lib/Terminal/Reader.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Terminal/Reader.php rename to plugins/stripe-php-10.5.0/lib/Terminal/Reader.php diff --git a/vendor/stripe-php-10.5.0/lib/TestHelpers/TestClock.php b/plugins/stripe-php-10.5.0/lib/TestHelpers/TestClock.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/TestHelpers/TestClock.php rename to plugins/stripe-php-10.5.0/lib/TestHelpers/TestClock.php diff --git a/vendor/stripe-php-10.5.0/lib/Token.php b/plugins/stripe-php-10.5.0/lib/Token.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Token.php rename to plugins/stripe-php-10.5.0/lib/Token.php diff --git a/vendor/stripe-php-10.5.0/lib/Topup.php b/plugins/stripe-php-10.5.0/lib/Topup.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Topup.php rename to plugins/stripe-php-10.5.0/lib/Topup.php diff --git a/vendor/stripe-php-10.5.0/lib/Transfer.php b/plugins/stripe-php-10.5.0/lib/Transfer.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Transfer.php rename to plugins/stripe-php-10.5.0/lib/Transfer.php diff --git a/vendor/stripe-php-10.5.0/lib/TransferReversal.php b/plugins/stripe-php-10.5.0/lib/TransferReversal.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/TransferReversal.php rename to plugins/stripe-php-10.5.0/lib/TransferReversal.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/CreditReversal.php b/plugins/stripe-php-10.5.0/lib/Treasury/CreditReversal.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/CreditReversal.php rename to plugins/stripe-php-10.5.0/lib/Treasury/CreditReversal.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/DebitReversal.php b/plugins/stripe-php-10.5.0/lib/Treasury/DebitReversal.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/DebitReversal.php rename to plugins/stripe-php-10.5.0/lib/Treasury/DebitReversal.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/FinancialAccount.php b/plugins/stripe-php-10.5.0/lib/Treasury/FinancialAccount.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/FinancialAccount.php rename to plugins/stripe-php-10.5.0/lib/Treasury/FinancialAccount.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/FinancialAccountFeatures.php b/plugins/stripe-php-10.5.0/lib/Treasury/FinancialAccountFeatures.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/FinancialAccountFeatures.php rename to plugins/stripe-php-10.5.0/lib/Treasury/FinancialAccountFeatures.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/InboundTransfer.php b/plugins/stripe-php-10.5.0/lib/Treasury/InboundTransfer.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/InboundTransfer.php rename to plugins/stripe-php-10.5.0/lib/Treasury/InboundTransfer.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/OutboundPayment.php b/plugins/stripe-php-10.5.0/lib/Treasury/OutboundPayment.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/OutboundPayment.php rename to plugins/stripe-php-10.5.0/lib/Treasury/OutboundPayment.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/OutboundTransfer.php b/plugins/stripe-php-10.5.0/lib/Treasury/OutboundTransfer.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/OutboundTransfer.php rename to plugins/stripe-php-10.5.0/lib/Treasury/OutboundTransfer.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/ReceivedCredit.php b/plugins/stripe-php-10.5.0/lib/Treasury/ReceivedCredit.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/ReceivedCredit.php rename to plugins/stripe-php-10.5.0/lib/Treasury/ReceivedCredit.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/ReceivedDebit.php b/plugins/stripe-php-10.5.0/lib/Treasury/ReceivedDebit.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/ReceivedDebit.php rename to plugins/stripe-php-10.5.0/lib/Treasury/ReceivedDebit.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/Transaction.php b/plugins/stripe-php-10.5.0/lib/Treasury/Transaction.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/Transaction.php rename to plugins/stripe-php-10.5.0/lib/Treasury/Transaction.php diff --git a/vendor/stripe-php-10.5.0/lib/Treasury/TransactionEntry.php b/plugins/stripe-php-10.5.0/lib/Treasury/TransactionEntry.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Treasury/TransactionEntry.php rename to plugins/stripe-php-10.5.0/lib/Treasury/TransactionEntry.php diff --git a/vendor/stripe-php-10.5.0/lib/UsageRecord.php b/plugins/stripe-php-10.5.0/lib/UsageRecord.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/UsageRecord.php rename to plugins/stripe-php-10.5.0/lib/UsageRecord.php diff --git a/vendor/stripe-php-10.5.0/lib/UsageRecordSummary.php b/plugins/stripe-php-10.5.0/lib/UsageRecordSummary.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/UsageRecordSummary.php rename to plugins/stripe-php-10.5.0/lib/UsageRecordSummary.php diff --git a/vendor/stripe-php-10.5.0/lib/Util/ApiVersion.php b/plugins/stripe-php-10.5.0/lib/Util/ApiVersion.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Util/ApiVersion.php rename to plugins/stripe-php-10.5.0/lib/Util/ApiVersion.php diff --git a/vendor/stripe-php-10.5.0/lib/Util/CaseInsensitiveArray.php b/plugins/stripe-php-10.5.0/lib/Util/CaseInsensitiveArray.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Util/CaseInsensitiveArray.php rename to plugins/stripe-php-10.5.0/lib/Util/CaseInsensitiveArray.php diff --git a/vendor/stripe-php-10.5.0/lib/Util/DefaultLogger.php b/plugins/stripe-php-10.5.0/lib/Util/DefaultLogger.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Util/DefaultLogger.php rename to plugins/stripe-php-10.5.0/lib/Util/DefaultLogger.php diff --git a/vendor/stripe-php-10.5.0/lib/Util/LoggerInterface.php b/plugins/stripe-php-10.5.0/lib/Util/LoggerInterface.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Util/LoggerInterface.php rename to plugins/stripe-php-10.5.0/lib/Util/LoggerInterface.php diff --git a/vendor/stripe-php-10.5.0/lib/Util/ObjectTypes.php b/plugins/stripe-php-10.5.0/lib/Util/ObjectTypes.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Util/ObjectTypes.php rename to plugins/stripe-php-10.5.0/lib/Util/ObjectTypes.php diff --git a/vendor/stripe-php-10.5.0/lib/Util/RandomGenerator.php b/plugins/stripe-php-10.5.0/lib/Util/RandomGenerator.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Util/RandomGenerator.php rename to plugins/stripe-php-10.5.0/lib/Util/RandomGenerator.php diff --git a/vendor/stripe-php-10.5.0/lib/Util/RequestOptions.php b/plugins/stripe-php-10.5.0/lib/Util/RequestOptions.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Util/RequestOptions.php rename to plugins/stripe-php-10.5.0/lib/Util/RequestOptions.php diff --git a/vendor/stripe-php-10.5.0/lib/Util/Set.php b/plugins/stripe-php-10.5.0/lib/Util/Set.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Util/Set.php rename to plugins/stripe-php-10.5.0/lib/Util/Set.php diff --git a/vendor/stripe-php-10.5.0/lib/Util/Util.php b/plugins/stripe-php-10.5.0/lib/Util/Util.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Util/Util.php rename to plugins/stripe-php-10.5.0/lib/Util/Util.php diff --git a/vendor/stripe-php-10.5.0/lib/Webhook.php b/plugins/stripe-php-10.5.0/lib/Webhook.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/Webhook.php rename to plugins/stripe-php-10.5.0/lib/Webhook.php diff --git a/vendor/stripe-php-10.5.0/lib/WebhookEndpoint.php b/plugins/stripe-php-10.5.0/lib/WebhookEndpoint.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/WebhookEndpoint.php rename to plugins/stripe-php-10.5.0/lib/WebhookEndpoint.php diff --git a/vendor/stripe-php-10.5.0/lib/WebhookSignature.php b/plugins/stripe-php-10.5.0/lib/WebhookSignature.php similarity index 100% rename from vendor/stripe-php-10.5.0/lib/WebhookSignature.php rename to plugins/stripe-php-10.5.0/lib/WebhookSignature.php diff --git a/vendor/stripe-php-10.5.0/update_certs.php b/plugins/stripe-php-10.5.0/update_certs.php similarity index 100% rename from vendor/stripe-php-10.5.0/update_certs.php rename to plugins/stripe-php-10.5.0/update_certs.php diff --git a/post/admin/admin_settings_online_payment_clients.php b/post/admin/admin_settings_online_payment_clients.php index de3dd530..651674d0 100644 --- a/post/admin/admin_settings_online_payment_clients.php +++ b/post/admin/admin_settings_online_payment_clients.php @@ -16,7 +16,7 @@ if (isset($_GET['stripe_remove_pm'])) { try { // Initialize stripe - require_once 'vendor/stripe-php-10.5.0/init.php'; + require_once 'plugins/stripe-php-10.5.0/init.php'; $stripe = new \Stripe\StripeClient($config_stripe_secret); // Detach PM diff --git a/scripts/cron.php b/scripts/cron.php index e48fbc1d..d21123a2 100644 --- a/scripts/cron.php +++ b/scripts/cron.php @@ -708,7 +708,7 @@ while ($row = mysqli_fetch_array($sql_recurring)) { if ($config_stripe_enable && $stripe_id && $stripe_pm) { // Initialize - require_once __DIR__ . '/../vendor/stripe-php-10.5.0/init.php'; + require_once __DIR__ . '/../plugins/stripe-php-10.5.0/init.php'; $stripe = new \Stripe\StripeClient($config_stripe_secret); $balance_to_pay = round($invoice_amount, 2); diff --git a/vendor/autoload.php b/vendor/autoload.php deleted file mode 100644 index 7be8078a..00000000 --- a/vendor/autoload.php +++ /dev/null @@ -1,7 +0,0 @@ - - * Jordi Boggiano - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Composer\Autoload; - -/** - * ClassLoader implements a PSR-0, PSR-4 and classmap class loader. - * - * $loader = new \Composer\Autoload\ClassLoader(); - * - * // register classes with namespaces - * $loader->add('Symfony\Component', __DIR__.'/component'); - * $loader->add('Symfony', __DIR__.'/framework'); - * - * // activate the autoloader - * $loader->register(); - * - * // to enable searching the include path (eg. for PEAR packages) - * $loader->setUseIncludePath(true); - * - * In this example, if you try to use a class in the Symfony\Component - * namespace or one of its children (Symfony\Component\Console for instance), - * the autoloader will first look for the class under the component/ - * directory, and it will then fallback to the framework/ directory if not - * found before giving up. - * - * This class is loosely based on the Symfony UniversalClassLoader. - * - * @author Fabien Potencier - * @author Jordi Boggiano - * @see http://www.php-fig.org/psr/psr-0/ - * @see http://www.php-fig.org/psr/psr-4/ - */ -class ClassLoader -{ - // PSR-4 - private $prefixLengthsPsr4 = array(); - private $prefixDirsPsr4 = array(); - private $fallbackDirsPsr4 = array(); - - // PSR-0 - private $prefixesPsr0 = array(); - private $fallbackDirsPsr0 = array(); - - private $useIncludePath = false; - private $classMap = array(); - private $classMapAuthoritative = false; - private $missingClasses = array(); - private $apcuPrefix; - - public function getPrefixes() - { - if (!empty($this->prefixesPsr0)) { - return call_user_func_array('array_merge', $this->prefixesPsr0); - } - - return array(); - } - - public function getPrefixesPsr4() - { - return $this->prefixDirsPsr4; - } - - public function getFallbackDirs() - { - return $this->fallbackDirsPsr0; - } - - public function getFallbackDirsPsr4() - { - return $this->fallbackDirsPsr4; - } - - public function getClassMap() - { - return $this->classMap; - } - - /** - * @param array $classMap Class to filename map - */ - public function addClassMap(array $classMap) - { - if ($this->classMap) { - $this->classMap = array_merge($this->classMap, $classMap); - } else { - $this->classMap = $classMap; - } - } - - /** - * Registers a set of PSR-0 directories for a given prefix, either - * appending or prepending to the ones previously set for this prefix. - * - * @param string $prefix The prefix - * @param array|string $paths The PSR-0 root directories - * @param bool $prepend Whether to prepend the directories - */ - public function add($prefix, $paths, $prepend = false) - { - if (!$prefix) { - if ($prepend) { - $this->fallbackDirsPsr0 = array_merge( - (array) $paths, - $this->fallbackDirsPsr0 - ); - } else { - $this->fallbackDirsPsr0 = array_merge( - $this->fallbackDirsPsr0, - (array) $paths - ); - } - - return; - } - - $first = $prefix[0]; - if (!isset($this->prefixesPsr0[$first][$prefix])) { - $this->prefixesPsr0[$first][$prefix] = (array) $paths; - - return; - } - if ($prepend) { - $this->prefixesPsr0[$first][$prefix] = array_merge( - (array) $paths, - $this->prefixesPsr0[$first][$prefix] - ); - } else { - $this->prefixesPsr0[$first][$prefix] = array_merge( - $this->prefixesPsr0[$first][$prefix], - (array) $paths - ); - } - } - - /** - * Registers a set of PSR-4 directories for a given namespace, either - * appending or prepending to the ones previously set for this namespace. - * - * @param string $prefix The prefix/namespace, with trailing '\\' - * @param array|string $paths The PSR-4 base directories - * @param bool $prepend Whether to prepend the directories - * - * @throws \InvalidArgumentException - */ - public function addPsr4($prefix, $paths, $prepend = false) - { - if (!$prefix) { - // Register directories for the root namespace. - if ($prepend) { - $this->fallbackDirsPsr4 = array_merge( - (array) $paths, - $this->fallbackDirsPsr4 - ); - } else { - $this->fallbackDirsPsr4 = array_merge( - $this->fallbackDirsPsr4, - (array) $paths - ); - } - } elseif (!isset($this->prefixDirsPsr4[$prefix])) { - // Register directories for a new namespace. - $length = strlen($prefix); - if ('\\' !== $prefix[$length - 1]) { - throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); - } - $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; - $this->prefixDirsPsr4[$prefix] = (array) $paths; - } elseif ($prepend) { - // Prepend directories for an already registered namespace. - $this->prefixDirsPsr4[$prefix] = array_merge( - (array) $paths, - $this->prefixDirsPsr4[$prefix] - ); - } else { - // Append directories for an already registered namespace. - $this->prefixDirsPsr4[$prefix] = array_merge( - $this->prefixDirsPsr4[$prefix], - (array) $paths - ); - } - } - - /** - * Registers a set of PSR-0 directories for a given prefix, - * replacing any others previously set for this prefix. - * - * @param string $prefix The prefix - * @param array|string $paths The PSR-0 base directories - */ - public function set($prefix, $paths) - { - if (!$prefix) { - $this->fallbackDirsPsr0 = (array) $paths; - } else { - $this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths; - } - } - - /** - * Registers a set of PSR-4 directories for a given namespace, - * replacing any others previously set for this namespace. - * - * @param string $prefix The prefix/namespace, with trailing '\\' - * @param array|string $paths The PSR-4 base directories - * - * @throws \InvalidArgumentException - */ - public function setPsr4($prefix, $paths) - { - if (!$prefix) { - $this->fallbackDirsPsr4 = (array) $paths; - } else { - $length = strlen($prefix); - if ('\\' !== $prefix[$length - 1]) { - throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); - } - $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; - $this->prefixDirsPsr4[$prefix] = (array) $paths; - } - } - - /** - * Turns on searching the include path for class files. - * - * @param bool $useIncludePath - */ - public function setUseIncludePath($useIncludePath) - { - $this->useIncludePath = $useIncludePath; - } - - /** - * Can be used to check if the autoloader uses the include path to check - * for classes. - * - * @return bool - */ - public function getUseIncludePath() - { - return $this->useIncludePath; - } - - /** - * Turns off searching the prefix and fallback directories for classes - * that have not been registered with the class map. - * - * @param bool $classMapAuthoritative - */ - public function setClassMapAuthoritative($classMapAuthoritative) - { - $this->classMapAuthoritative = $classMapAuthoritative; - } - - /** - * Should class lookup fail if not found in the current class map? - * - * @return bool - */ - public function isClassMapAuthoritative() - { - return $this->classMapAuthoritative; - } - - /** - * APCu prefix to use to cache found/not-found classes, if the extension is enabled. - * - * @param string|null $apcuPrefix - */ - public function setApcuPrefix($apcuPrefix) - { - $this->apcuPrefix = function_exists('apcu_fetch') && ini_get('apc.enabled') ? $apcuPrefix : null; - } - - /** - * The APCu prefix in use, or null if APCu caching is not enabled. - * - * @return string|null - */ - public function getApcuPrefix() - { - return $this->apcuPrefix; - } - - /** - * Registers this instance as an autoloader. - * - * @param bool $prepend Whether to prepend the autoloader or not - */ - public function register($prepend = false) - { - spl_autoload_register(array($this, 'loadClass'), true, $prepend); - } - - /** - * Unregisters this instance as an autoloader. - */ - public function unregister() - { - spl_autoload_unregister(array($this, 'loadClass')); - } - - /** - * Loads the given class or interface. - * - * @param string $class The name of the class - * @return bool|null True if loaded, null otherwise - */ - public function loadClass($class) - { - if ($file = $this->findFile($class)) { - includeFile($file); - - return true; - } - } - - /** - * Finds the path to the file where the class is defined. - * - * @param string $class The name of the class - * - * @return string|false The path if found, false otherwise - */ - public function findFile($class) - { - // class map lookup - if (isset($this->classMap[$class])) { - return $this->classMap[$class]; - } - if ($this->classMapAuthoritative || isset($this->missingClasses[$class])) { - return false; - } - if (null !== $this->apcuPrefix) { - $file = apcu_fetch($this->apcuPrefix.$class, $hit); - if ($hit) { - return $file; - } - } - - $file = $this->findFileWithExtension($class, '.php'); - - // Search for Hack files if we are running on HHVM - if (false === $file && defined('HHVM_VERSION')) { - $file = $this->findFileWithExtension($class, '.hh'); - } - - if (null !== $this->apcuPrefix) { - apcu_add($this->apcuPrefix.$class, $file); - } - - if (false === $file) { - // Remember that this class does not exist. - $this->missingClasses[$class] = true; - } - - return $file; - } - - private function findFileWithExtension($class, $ext) - { - // PSR-4 lookup - $logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext; - - $first = $class[0]; - if (isset($this->prefixLengthsPsr4[$first])) { - $subPath = $class; - while (false !== $lastPos = strrpos($subPath, '\\')) { - $subPath = substr($subPath, 0, $lastPos); - $search = $subPath.'\\'; - if (isset($this->prefixDirsPsr4[$search])) { - $pathEnd = DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1); - foreach ($this->prefixDirsPsr4[$search] as $dir) { - if (file_exists($file = $dir . $pathEnd)) { - return $file; - } - } - } - } - } - - // PSR-4 fallback dirs - foreach ($this->fallbackDirsPsr4 as $dir) { - if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) { - return $file; - } - } - - // PSR-0 lookup - if (false !== $pos = strrpos($class, '\\')) { - // namespaced class name - $logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1) - . strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR); - } else { - // PEAR-like class name - $logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext; - } - - if (isset($this->prefixesPsr0[$first])) { - foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) { - if (0 === strpos($class, $prefix)) { - foreach ($dirs as $dir) { - if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { - return $file; - } - } - } - } - } - - // PSR-0 fallback dirs - foreach ($this->fallbackDirsPsr0 as $dir) { - if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { - return $file; - } - } - - // PSR-0 include paths. - if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) { - return $file; - } - - return false; - } -} - -/** - * Scope isolated include. - * - * Prevents access to $this/self from included files. - */ -function includeFile($file) -{ - include $file; -} diff --git a/vendor/composer/LICENSE b/vendor/composer/LICENSE deleted file mode 100644 index f0157a6e..00000000 --- a/vendor/composer/LICENSE +++ /dev/null @@ -1,56 +0,0 @@ -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: Composer -Upstream-Contact: Jordi Boggiano -Source: https://github.com/composer/composer - -Files: * -Copyright: 2016, Nils Adermann - 2016, Jordi Boggiano -License: Expat - -Files: src/Composer/Util/TlsHelper.php -Copyright: 2016, Nils Adermann - 2016, Jordi Boggiano - 2013, Evan Coury -License: Expat and BSD-2-Clause - -License: BSD-2-Clause - Redistribution and use in source and binary forms, with or without modification, - are permitted provided that the following conditions are met: - . - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - . - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - . - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -License: Expat - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is furnished - to do so, subject to the following conditions: - . - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - . - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php deleted file mode 100644 index 7a91153b..00000000 --- a/vendor/composer/autoload_classmap.php +++ /dev/null @@ -1,9 +0,0 @@ - $vendorDir . '/myclabs/deep-copy/src/DeepCopy/deep_copy.php', -); diff --git a/vendor/composer/autoload_namespaces.php b/vendor/composer/autoload_namespaces.php deleted file mode 100644 index b7fc0125..00000000 --- a/vendor/composer/autoload_namespaces.php +++ /dev/null @@ -1,9 +0,0 @@ - array($vendorDir . '/setasign/fpdi/src'), - 'Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'), - 'Mpdf\\' => array($vendorDir . '/mpdf/mpdf/src'), - 'DeepCopy\\' => array($vendorDir . '/myclabs/deep-copy/src/DeepCopy'), -); diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php deleted file mode 100644 index b6a25b70..00000000 --- a/vendor/composer/autoload_real.php +++ /dev/null @@ -1,70 +0,0 @@ -= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded()); - if ($useStaticLoader) { - require_once __DIR__ . '/autoload_static.php'; - - call_user_func(\Composer\Autoload\ComposerStaticInit2f3ac34518ab9588684f4980e436d764::getInitializer($loader)); - } else { - $map = require __DIR__ . '/autoload_namespaces.php'; - foreach ($map as $namespace => $path) { - $loader->set($namespace, $path); - } - - $map = require __DIR__ . '/autoload_psr4.php'; - foreach ($map as $namespace => $path) { - $loader->setPsr4($namespace, $path); - } - - $classMap = require __DIR__ . '/autoload_classmap.php'; - if ($classMap) { - $loader->addClassMap($classMap); - } - } - - $loader->register(true); - - if ($useStaticLoader) { - $includeFiles = Composer\Autoload\ComposerStaticInit2f3ac34518ab9588684f4980e436d764::$files; - } else { - $includeFiles = require __DIR__ . '/autoload_files.php'; - } - foreach ($includeFiles as $fileIdentifier => $file) { - composerRequire2f3ac34518ab9588684f4980e436d764($fileIdentifier, $file); - } - - return $loader; - } -} - -function composerRequire2f3ac34518ab9588684f4980e436d764($fileIdentifier, $file) -{ - if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { - require $file; - - $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; - } -} diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php deleted file mode 100644 index 382fea55..00000000 --- a/vendor/composer/autoload_static.php +++ /dev/null @@ -1,59 +0,0 @@ - __DIR__ . '/..' . '/myclabs/deep-copy/src/DeepCopy/deep_copy.php', - ); - - public static $prefixLengthsPsr4 = array ( - 's' => - array ( - 'setasign\\Fpdi\\' => 14, - ), - 'P' => - array ( - 'Psr\\Log\\' => 8, - ), - 'M' => - array ( - 'Mpdf\\' => 5, - ), - 'D' => - array ( - 'DeepCopy\\' => 9, - ), - ); - - public static $prefixDirsPsr4 = array ( - 'setasign\\Fpdi\\' => - array ( - 0 => __DIR__ . '/..' . '/setasign/fpdi/src', - ), - 'Psr\\Log\\' => - array ( - 0 => __DIR__ . '/..' . '/psr/log/Psr/Log', - ), - 'Mpdf\\' => - array ( - 0 => __DIR__ . '/..' . '/mpdf/mpdf/src', - ), - 'DeepCopy\\' => - array ( - 0 => __DIR__ . '/..' . '/myclabs/deep-copy/src/DeepCopy', - ), - ); - - public static function getInitializer(ClassLoader $loader) - { - return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInit2f3ac34518ab9588684f4980e436d764::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInit2f3ac34518ab9588684f4980e436d764::$prefixDirsPsr4; - - }, null, ClassLoader::class); - } -} diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json deleted file mode 100644 index 3093bea7..00000000 --- a/vendor/composer/installed.json +++ /dev/null @@ -1,282 +0,0 @@ -[ - { - "name": "mpdf/mpdf", - "version": "v8.0.0", - "version_normalized": "8.0.0.0", - "source": { - "type": "git", - "url": "https://github.com/mpdf/mpdf.git", - "reference": "c13ebc0fd5cc0613dfb1fd37d55a67859b92cf0c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mpdf/mpdf/zipball/c13ebc0fd5cc0613dfb1fd37d55a67859b92cf0c", - "reference": "c13ebc0fd5cc0613dfb1fd37d55a67859b92cf0c", - "shasum": "" - }, - "require": { - "ext-gd": "*", - "ext-mbstring": "*", - "myclabs/deep-copy": "^1.7", - "paragonie/random_compat": "^1.4|^2.0|9.99.99", - "php": "^5.6 || ~7.0.0 || ~7.1.0 || ~7.2.0 || ~7.3.0", - "psr/log": "^1.0", - "setasign/fpdi": "^2.1" - }, - "require-dev": { - "mockery/mockery": "^0.9.5", - "mpdf/qrcode": "^1.0.0", - "phpunit/phpunit": "^5.0", - "squizlabs/php_codesniffer": "^2.7.0", - "tracy/tracy": "^2.4" - }, - "suggest": { - "ext-bcmath": "Needed for generation of some types of barcodes", - "ext-xml": "Needed mainly for SVG manipulation", - "ext-zlib": "Needed for compression of embedded resources, such as fonts" - }, - "time": "2019-03-15T22:03:58+00:00", - "type": "library", - "extra": { - "branch-alias": { - "dev-development": "7.x-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-4": { - "Mpdf\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "GPL-2.0-only" - ], - "authors": [ - { - "name": "Matěj Humpál", - "role": "Developer, maintainer" - }, - { - "name": "Ian Back", - "role": "Developer (retired)" - } - ], - "description": "PHP library generating PDF files from UTF-8 encoded HTML", - "homepage": "https://mpdf.github.io", - "keywords": [ - "pdf", - "php", - "utf-8" - ] - }, - { - "name": "myclabs/deep-copy", - "version": "1.9.1", - "version_normalized": "1.9.1.0", - "source": { - "type": "git", - "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "e6828efaba2c9b79f4499dae1d66ef8bfa7b2b72" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/e6828efaba2c9b79f4499dae1d66ef8bfa7b2b72", - "reference": "e6828efaba2c9b79f4499dae1d66ef8bfa7b2b72", - "shasum": "" - }, - "require": { - "php": "^7.1" - }, - "replace": { - "myclabs/deep-copy": "self.version" - }, - "require-dev": { - "doctrine/collections": "^1.0", - "doctrine/common": "^2.6", - "phpunit/phpunit": "^7.1" - }, - "time": "2019-04-07T13:18:21+00:00", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-4": { - "DeepCopy\\": "src/DeepCopy/" - }, - "files": [ - "src/DeepCopy/deep_copy.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Create deep copies (clones) of your objects", - "keywords": [ - "clone", - "copy", - "duplicate", - "object", - "object graph" - ] - }, - { - "name": "paragonie/random_compat", - "version": "v9.99.99", - "version_normalized": "9.99.99.0", - "source": { - "type": "git", - "url": "https://github.com/paragonie/random_compat.git", - "reference": "84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95", - "reference": "84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95", - "shasum": "" - }, - "require": { - "php": "^7" - }, - "require-dev": { - "phpunit/phpunit": "4.*|5.*", - "vimeo/psalm": "^1" - }, - "suggest": { - "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." - }, - "time": "2018-07-02T15:55:56+00:00", - "type": "library", - "installation-source": "dist", - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Paragon Initiative Enterprises", - "email": "security@paragonie.com", - "homepage": "https://paragonie.com" - } - ], - "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", - "keywords": [ - "csprng", - "polyfill", - "pseudorandom", - "random" - ] - }, - { - "name": "psr/log", - "version": "1.1.0", - "version_normalized": "1.1.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/log.git", - "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", - "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "time": "2018-11-20T15:27:04+00:00", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-4": { - "Psr\\Log\\": "Psr/Log/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interface for logging libraries", - "homepage": "https://github.com/php-fig/log", - "keywords": [ - "log", - "psr", - "psr-3" - ] - }, - { - "name": "setasign/fpdi", - "version": "v2.2.0", - "version_normalized": "2.2.0.0", - "source": { - "type": "git", - "url": "https://github.com/Setasign/FPDI.git", - "reference": "3c266002f8044f61b17329f7cd702d44d73f0f7f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/Setasign/FPDI/zipball/3c266002f8044f61b17329f7cd702d44d73f0f7f", - "reference": "3c266002f8044f61b17329f7cd702d44d73f0f7f", - "shasum": "" - }, - "require": { - "ext-zlib": "*", - "php": "^5.6 || ^7.0" - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "setasign/fpdf": "~1.8", - "setasign/tfpdf": "1.25", - "tecnickcom/tcpdf": "~6.2" - }, - "suggest": { - "setasign/fpdf": "FPDI will extend this class but as it is also possible to use TCPDF or tFPDF as an alternative. There's no fixed dependency configured.", - "setasign/fpdi-fpdf": "Use this package to automatically evaluate dependencies to FPDF.", - "setasign/fpdi-tcpdf": "Use this package to automatically evaluate dependencies to TCPDF.", - "setasign/fpdi-tfpdf": "Use this package to automatically evaluate dependencies to tFPDF." - }, - "time": "2019-01-30T14:11:19+00:00", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-4": { - "setasign\\Fpdi\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jan Slabon", - "email": "jan.slabon@setasign.com", - "homepage": "https://www.setasign.com" - }, - { - "name": "Maximilian Kresse", - "email": "maximilian.kresse@setasign.com", - "homepage": "https://www.setasign.com" - } - ], - "description": "FPDI is a collection of PHP classes facilitating developers to read pages from existing PDF documents and use them as templates in FPDF. Because it is also possible to use FPDI with TCPDF, there are no fixed dependencies defined. Please see suggestions for packages which evaluates the dependencies automatically.", - "homepage": "https://www.setasign.com/fpdi", - "keywords": [ - "fpdf", - "fpdi", - "pdf" - ] - } -] diff --git a/vendor/myclabs/deep-copy/.gitattributes b/vendor/myclabs/deep-copy/.gitattributes deleted file mode 100644 index 8018068b..00000000 --- a/vendor/myclabs/deep-copy/.gitattributes +++ /dev/null @@ -1,7 +0,0 @@ -# Auto detect text files and perform LF normalization -* text=auto - -*.png binary - -tests/ export-ignore -phpunit.xml.dist export-ignore diff --git a/vendor/myclabs/deep-copy/.gitignore b/vendor/myclabs/deep-copy/.gitignore deleted file mode 100644 index eef72f75..00000000 --- a/vendor/myclabs/deep-copy/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -/composer.phar -/composer.lock -/vendor/* diff --git a/vendor/myclabs/deep-copy/.scrutinizer.yml b/vendor/myclabs/deep-copy/.scrutinizer.yml deleted file mode 100644 index 6934299b..00000000 --- a/vendor/myclabs/deep-copy/.scrutinizer.yml +++ /dev/null @@ -1,4 +0,0 @@ -build: - environment: - variables: - COMPOSER_ROOT_VERSION: '1.8.0' diff --git a/vendor/myclabs/deep-copy/.travis.yml b/vendor/myclabs/deep-copy/.travis.yml deleted file mode 100644 index 88f9d2e8..00000000 --- a/vendor/myclabs/deep-copy/.travis.yml +++ /dev/null @@ -1,40 +0,0 @@ -language: php - -sudo: false - -env: - global: - - COMPOSER_ROOT_VERSION=1.8.0 - -php: - - '7.1' - - '7.2' - - nightly - -matrix: - fast_finish: true - include: - - php: '7.1' - env: COMPOSER_FLAGS="--prefer-lowest" - allow_failures: - - php: nightly - -cache: - directories: - - $HOME/.composer/cache/files - -install: - - composer update --no-interaction --no-progress --no-suggest --prefer-dist $COMPOSER_FLAGS - - wget https://github.com/satooshi/php-coveralls/releases/download/v1.0.0/coveralls.phar - -before_script: - - mkdir -p build/logs - -script: - - vendor/bin/phpunit --coverage-clover build/logs/clover.xml - -after_script: - - php coveralls.phar -v - -notifications: - email: false diff --git a/vendor/myclabs/deep-copy/LICENSE b/vendor/myclabs/deep-copy/LICENSE deleted file mode 100644 index c3e83500..00000000 --- a/vendor/myclabs/deep-copy/LICENSE +++ /dev/null @@ -1,20 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2013 My C-Sense - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/vendor/myclabs/deep-copy/README.md b/vendor/myclabs/deep-copy/README.md deleted file mode 100644 index 7abe5dc8..00000000 --- a/vendor/myclabs/deep-copy/README.md +++ /dev/null @@ -1,376 +0,0 @@ -# DeepCopy - -DeepCopy helps you create deep copies (clones) of your objects. It is designed to handle cycles in the association graph. - -[![Build Status](https://travis-ci.org/myclabs/DeepCopy.png?branch=1.x)](https://travis-ci.org/myclabs/DeepCopy) -[![Coverage Status](https://coveralls.io/repos/myclabs/DeepCopy/badge.png?branch=1.x)](https://coveralls.io/r/myclabs/DeepCopy?branch=1.x) -[![Scrutinizer Quality Score](https://scrutinizer-ci.com/g/myclabs/DeepCopy/badges/quality-score.png?s=2747100c19b275f93a777e3297c6c12d1b68b934)](https://scrutinizer-ci.com/g/myclabs/DeepCopy/) -[![Total Downloads](https://poser.pugx.org/myclabs/deep-copy/downloads.svg)](https://packagist.org/packages/myclabs/deep-copy) - - -**You are browsing the 1.x version, this version is in maintenance mode only. Please check the new -[2.x](https://github.com/myclabs/DeepCopy/tree/2.x) version.** - - -## Table of Contents - -1. [How](#how) -1. [Why](#why) - 1. [Using simply `clone`](#using-simply-clone) - 1. [Overridding `__clone()`](#overridding-__clone) - 1. [With `DeepCopy`](#with-deepcopy) -1. [How it works](#how-it-works) -1. [Going further](#going-further) - 1. [Matchers](#matchers) - 1. [Property name](#property-name) - 1. [Specific property](#specific-property) - 1. [Type](#type) - 1. [Filters](#filters) - 1. [`SetNullFilter`](#setnullfilter-filter) - 1. [`KeepFilter`](#keepfilter-filter) - 1. [`DoctrineCollectionFilter`](#doctrinecollectionfilter-filter) - 1. [`DoctrineEmptyCollectionFilter`](#doctrineemptycollectionfilter-filter) - 1. [`DoctrineProxyFilter`](#doctrineproxyfilter-filter) - 1. [`ReplaceFilter`](#replacefilter-type-filter) - 1. [`ShallowCopyFilter`](#shallowcopyfilter-type-filter) -1. [Edge cases](#edge-cases) -1. [Contributing](#contributing) - 1. [Tests](#tests) - - -## How? - -Install with Composer: - -```json -composer require myclabs/deep-copy -``` - -Use simply: - -```php -use DeepCopy\DeepCopy; - -$copier = new DeepCopy(); -$myCopy = $copier->copy($myObject); -``` - - -## Why? - -- How do you create copies of your objects? - -```php -$myCopy = clone $myObject; -``` - -- How do you create **deep** copies of your objects (i.e. copying also all the objects referenced in the properties)? - -You use [`__clone()`](http://www.php.net/manual/en/language.oop5.cloning.php#object.clone) and implement the behavior -yourself. - -- But how do you handle **cycles** in the association graph? - -Now you're in for a big mess :( - -![association graph](doc/graph.png) - - -### Using simply `clone` - -![Using clone](doc/clone.png) - - -### Overridding `__clone()` - -![Overridding __clone](doc/deep-clone.png) - - -### With `DeepCopy` - -![With DeepCopy](doc/deep-copy.png) - - -## How it works - -DeepCopy recursively traverses all the object's properties and clones them. To avoid cloning the same object twice it -keeps a hash map of all instances and thus preserves the object graph. - -To use it: - -```php -use function DeepCopy\deep_copy; - -$copy = deep_copy($var); -``` - -Alternatively, you can create your own `DeepCopy` instance to configure it differently for example: - -```php -use DeepCopy\DeepCopy; - -$copier = new DeepCopy(true); - -$copy = $copier->copy($var); -``` - -You may want to roll your own deep copy function: - -```php -namespace Acme; - -use DeepCopy\DeepCopy; - -function deep_copy($var) -{ - static $copier = null; - - if (null === $copier) { - $copier = new DeepCopy(true); - } - - return $copier->copy($var); -} -``` - - -## Going further - -You can add filters to customize the copy process. - -The method to add a filter is `DeepCopy\DeepCopy::addFilter($filter, $matcher)`, -with `$filter` implementing `DeepCopy\Filter\Filter` -and `$matcher` implementing `DeepCopy\Matcher\Matcher`. - -We provide some generic filters and matchers. - - -### Matchers - - - `DeepCopy\Matcher` applies on a object attribute. - - `DeepCopy\TypeMatcher` applies on any element found in graph, including array elements. - - -#### Property name - -The `PropertyNameMatcher` will match a property by its name: - -```php -use DeepCopy\Matcher\PropertyNameMatcher; - -// Will apply a filter to any property of any objects named "id" -$matcher = new PropertyNameMatcher('id'); -``` - - -#### Specific property - -The `PropertyMatcher` will match a specific property of a specific class: - -```php -use DeepCopy\Matcher\PropertyMatcher; - -// Will apply a filter to the property "id" of any objects of the class "MyClass" -$matcher = new PropertyMatcher('MyClass', 'id'); -``` - - -#### Type - -The `TypeMatcher` will match any element by its type (instance of a class or any value that could be parameter of -[gettype()](http://php.net/manual/en/function.gettype.php) function): - -```php -use DeepCopy\TypeMatcher\TypeMatcher; - -// Will apply a filter to any object that is an instance of Doctrine\Common\Collections\Collection -$matcher = new TypeMatcher('Doctrine\Common\Collections\Collection'); -``` - - -### Filters - -- `DeepCopy\Filter` applies a transformation to the object attribute matched by `DeepCopy\Matcher` -- `DeepCopy\TypeFilter` applies a transformation to any element matched by `DeepCopy\TypeMatcher` - - -#### `SetNullFilter` (filter) - -Let's say for example that you are copying a database record (or a Doctrine entity), so you want the copy not to have -any ID: - -```php -use DeepCopy\DeepCopy; -use DeepCopy\Filter\SetNullFilter; -use DeepCopy\Matcher\PropertyNameMatcher; - -$object = MyClass::load(123); -echo $object->id; // 123 - -$copier = new DeepCopy(); -$copier->addFilter(new SetNullFilter(), new PropertyNameMatcher('id')); - -$copy = $copier->copy($object); - -echo $copy->id; // null -``` - - -#### `KeepFilter` (filter) - -If you want a property to remain untouched (for example, an association to an object): - -```php -use DeepCopy\DeepCopy; -use DeepCopy\Filter\KeepFilter; -use DeepCopy\Matcher\PropertyMatcher; - -$copier = new DeepCopy(); -$copier->addFilter(new KeepFilter(), new PropertyMatcher('MyClass', 'category')); - -$copy = $copier->copy($object); -// $copy->category has not been touched -``` - - -#### `DoctrineCollectionFilter` (filter) - -If you use Doctrine and want to copy an entity, you will need to use the `DoctrineCollectionFilter`: - -```php -use DeepCopy\DeepCopy; -use DeepCopy\Filter\Doctrine\DoctrineCollectionFilter; -use DeepCopy\Matcher\PropertyTypeMatcher; - -$copier = new DeepCopy(); -$copier->addFilter(new DoctrineCollectionFilter(), new PropertyTypeMatcher('Doctrine\Common\Collections\Collection')); - -$copy = $copier->copy($object); -``` - - -#### `DoctrineEmptyCollectionFilter` (filter) - -If you use Doctrine and want to copy an entity who contains a `Collection` that you want to be reset, you can use the -`DoctrineEmptyCollectionFilter` - -```php -use DeepCopy\DeepCopy; -use DeepCopy\Filter\Doctrine\DoctrineEmptyCollectionFilter; -use DeepCopy\Matcher\PropertyMatcher; - -$copier = new DeepCopy(); -$copier->addFilter(new DoctrineEmptyCollectionFilter(), new PropertyMatcher('MyClass', 'myProperty')); - -$copy = $copier->copy($object); - -// $copy->myProperty will return an empty collection -``` - - -#### `DoctrineProxyFilter` (filter) - -If you use Doctrine and use cloning on lazy loaded entities, you might encounter errors mentioning missing fields on a -Doctrine proxy class (...\\\_\_CG\_\_\Proxy). -You can use the `DoctrineProxyFilter` to load the actual entity behind the Doctrine proxy class. -**Make sure, though, to put this as one of your very first filters in the filter chain so that the entity is loaded -before other filters are applied!** - -```php -use DeepCopy\DeepCopy; -use DeepCopy\Filter\Doctrine\DoctrineProxyFilter; -use DeepCopy\Matcher\Doctrine\DoctrineProxyMatcher; - -$copier = new DeepCopy(); -$copier->addFilter(new DoctrineProxyFilter(), new DoctrineProxyMatcher()); - -$copy = $copier->copy($object); - -// $copy should now contain a clone of all entities, including those that were not yet fully loaded. -``` - - -#### `ReplaceFilter` (type filter) - -1. If you want to replace the value of a property: - -```php -use DeepCopy\DeepCopy; -use DeepCopy\Filter\ReplaceFilter; -use DeepCopy\Matcher\PropertyMatcher; - -$copier = new DeepCopy(); -$callback = function ($currentValue) { - return $currentValue . ' (copy)' -}; -$copier->addFilter(new ReplaceFilter($callback), new PropertyMatcher('MyClass', 'title')); - -$copy = $copier->copy($object); - -// $copy->title will contain the data returned by the callback, e.g. 'The title (copy)' -``` - -2. If you want to replace whole element: - -```php -use DeepCopy\DeepCopy; -use DeepCopy\TypeFilter\ReplaceFilter; -use DeepCopy\TypeMatcher\TypeMatcher; - -$copier = new DeepCopy(); -$callback = function (MyClass $myClass) { - return get_class($myClass); -}; -$copier->addTypeFilter(new ReplaceFilter($callback), new TypeMatcher('MyClass')); - -$copy = $copier->copy([new MyClass, 'some string', new MyClass]); - -// $copy will contain ['MyClass', 'some string', 'MyClass'] -``` - - -The `$callback` parameter of the `ReplaceFilter` constructor accepts any PHP callable. - - -#### `ShallowCopyFilter` (type filter) - -Stop *DeepCopy* from recursively copying element, using standard `clone` instead: - -```php -use DeepCopy\DeepCopy; -use DeepCopy\TypeFilter\ShallowCopyFilter; -use DeepCopy\TypeMatcher\TypeMatcher; -use Mockery as m; - -$this->deepCopy = new DeepCopy(); -$this->deepCopy->addTypeFilter( - new ShallowCopyFilter, - new TypeMatcher(m\MockInterface::class) -); - -$myServiceWithMocks = new MyService(m::mock(MyDependency1::class), m::mock(MyDependency2::class)); -// All mocks will be just cloned, not deep copied -``` - - -## Edge cases - -The following structures cannot be deep-copied with PHP Reflection. As a result they are shallow cloned and filters are -not applied. There is two ways for you to handle them: - -- Implement your own `__clone()` method -- Use a filter with a type matcher - - -## Contributing - -DeepCopy is distributed under the MIT license. - - -### Tests - -Running the tests is simple: - -```php -vendor/bin/phpunit -``` diff --git a/vendor/myclabs/deep-copy/composer.json b/vendor/myclabs/deep-copy/composer.json deleted file mode 100644 index 4108a23b..00000000 --- a/vendor/myclabs/deep-copy/composer.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "name": "myclabs/deep-copy", - "type": "library", - "description": "Create deep copies (clones) of your objects", - "keywords": ["clone", "copy", "duplicate", "object", "object graph"], - "license": "MIT", - - "autoload": { - "psr-4": { - "DeepCopy\\": "src/DeepCopy/" - }, - "files": [ - "src/DeepCopy/deep_copy.php" - ] - }, - "autoload-dev": { - "psr-4": { - "DeepCopy\\": "fixtures/", - "DeepCopyTest\\": "tests/DeepCopyTest/" - } - }, - - "require": { - "php": "^7.1" - }, - "require-dev": { - "doctrine/collections": "^1.0", - "doctrine/common": "^2.6", - "phpunit/phpunit": "^7.1" - }, - "replace": { - "myclabs/deep-copy": "self.version" - }, - - "config": { - "sort-packages": true - } -} diff --git a/vendor/myclabs/deep-copy/doc/clone.png b/vendor/myclabs/deep-copy/doc/clone.png deleted file mode 100644 index 376afd491257d44a8c3772b0b7b0bd7b6c747086..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12380 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�+9eLb17NhZax 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 diff --git a/vendor/myclabs/deep-copy/doc/graph.png b/vendor/myclabs/deep-copy/doc/graph.png deleted file mode 100644 index 4d5c9428f719bf6ad68f25a46d6e935c2362c4a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6436 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 diff --git a/vendor/myclabs/deep-copy/fixtures/f001/A.php b/vendor/myclabs/deep-copy/fixtures/f001/A.php deleted file mode 100644 index 648d5dff..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f001/A.php +++ /dev/null @@ -1,20 +0,0 @@ -aProp; - } - - public function setAProp($prop) - { - $this->aProp = $prop; - - return $this; - } -} diff --git a/vendor/myclabs/deep-copy/fixtures/f001/B.php b/vendor/myclabs/deep-copy/fixtures/f001/B.php deleted file mode 100644 index 462bb44e..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f001/B.php +++ /dev/null @@ -1,20 +0,0 @@ -bProp; - } - - public function setBProp($prop) - { - $this->bProp = $prop; - - return $this; - } -} diff --git a/vendor/myclabs/deep-copy/fixtures/f002/A.php b/vendor/myclabs/deep-copy/fixtures/f002/A.php deleted file mode 100644 index d9aa5c35..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f002/A.php +++ /dev/null @@ -1,33 +0,0 @@ -prop1; - } - - public function setProp1($prop) - { - $this->prop1 = $prop; - - return $this; - } - - public function getProp2() - { - return $this->prop2; - } - - public function setProp2($prop) - { - $this->prop2 = $prop; - - return $this; - } -} diff --git a/vendor/myclabs/deep-copy/fixtures/f003/Foo.php b/vendor/myclabs/deep-copy/fixtures/f003/Foo.php deleted file mode 100644 index 9cd76224..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f003/Foo.php +++ /dev/null @@ -1,26 +0,0 @@ -name = $name; - } - - public function getProp() - { - return $this->prop; - } - - public function setProp($prop) - { - $this->prop = $prop; - - return $this; - } -} \ No newline at end of file diff --git a/vendor/myclabs/deep-copy/fixtures/f004/UnclonableItem.php b/vendor/myclabs/deep-copy/fixtures/f004/UnclonableItem.php deleted file mode 100644 index 82c6c67c..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f004/UnclonableItem.php +++ /dev/null @@ -1,13 +0,0 @@ -cloned = true; - } -} diff --git a/vendor/myclabs/deep-copy/fixtures/f006/A.php b/vendor/myclabs/deep-copy/fixtures/f006/A.php deleted file mode 100644 index d9efb116..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f006/A.php +++ /dev/null @@ -1,26 +0,0 @@ -aProp; - } - - public function setAProp($prop) - { - $this->aProp = $prop; - - return $this; - } - - public function __clone() - { - $this->cloned = true; - } -} diff --git a/vendor/myclabs/deep-copy/fixtures/f006/B.php b/vendor/myclabs/deep-copy/fixtures/f006/B.php deleted file mode 100644 index 1f80b3d4..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f006/B.php +++ /dev/null @@ -1,26 +0,0 @@ -bProp; - } - - public function setBProp($prop) - { - $this->bProp = $prop; - - return $this; - } - - public function __clone() - { - $this->cloned = true; - } -} diff --git a/vendor/myclabs/deep-copy/fixtures/f007/FooDateInterval.php b/vendor/myclabs/deep-copy/fixtures/f007/FooDateInterval.php deleted file mode 100644 index e16bc6aa..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f007/FooDateInterval.php +++ /dev/null @@ -1,15 +0,0 @@ -cloned = true; - } -} diff --git a/vendor/myclabs/deep-copy/fixtures/f007/FooDateTimeZone.php b/vendor/myclabs/deep-copy/fixtures/f007/FooDateTimeZone.php deleted file mode 100644 index 6f4e61fe..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f007/FooDateTimeZone.php +++ /dev/null @@ -1,15 +0,0 @@ -cloned = true; - } -} diff --git a/vendor/myclabs/deep-copy/fixtures/f008/A.php b/vendor/myclabs/deep-copy/fixtures/f008/A.php deleted file mode 100644 index 88471d01..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f008/A.php +++ /dev/null @@ -1,18 +0,0 @@ -foo = $foo; - } - - public function getFoo() - { - return $this->foo; - } -} diff --git a/vendor/myclabs/deep-copy/fixtures/f008/B.php b/vendor/myclabs/deep-copy/fixtures/f008/B.php deleted file mode 100644 index 6053092d..00000000 --- a/vendor/myclabs/deep-copy/fixtures/f008/B.php +++ /dev/null @@ -1,7 +0,0 @@ - Filter, 'matcher' => Matcher] pairs. - */ - private $filters = []; - - /** - * Type Filters to apply. - * - * @var array Array of ['filter' => Filter, 'matcher' => Matcher] pairs. - */ - private $typeFilters = []; - - /** - * @var bool - */ - private $skipUncloneable = false; - - /** - * @var bool - */ - private $useCloneMethod; - - /** - * @param bool $useCloneMethod If set to true, when an object implements the __clone() function, it will be used - * instead of the regular deep cloning. - */ - public function __construct($useCloneMethod = false) - { - $this->useCloneMethod = $useCloneMethod; - - $this->addTypeFilter(new DateIntervalFilter(), new TypeMatcher(DateInterval::class)); - $this->addTypeFilter(new SplDoublyLinkedListFilter($this), new TypeMatcher(SplDoublyLinkedList::class)); - } - - /** - * If enabled, will not throw an exception when coming across an uncloneable property. - * - * @param $skipUncloneable - * - * @return $this - */ - public function skipUncloneable($skipUncloneable = true) - { - $this->skipUncloneable = $skipUncloneable; - - return $this; - } - - /** - * Deep copies the given object. - * - * @param mixed $object - * - * @return mixed - */ - public function copy($object) - { - $this->hashMap = []; - - return $this->recursiveCopy($object); - } - - public function addFilter(Filter $filter, Matcher $matcher) - { - $this->filters[] = [ - 'matcher' => $matcher, - 'filter' => $filter, - ]; - } - - public function prependFilter(Filter $filter, Matcher $matcher) - { - array_unshift($this->filters, [ - 'matcher' => $matcher, - 'filter' => $filter, - ]); - } - - public function addTypeFilter(TypeFilter $filter, TypeMatcher $matcher) - { - $this->typeFilters[] = [ - 'matcher' => $matcher, - 'filter' => $filter, - ]; - } - - private function recursiveCopy($var) - { - // Matches Type Filter - if ($filter = $this->getFirstMatchedTypeFilter($this->typeFilters, $var)) { - return $filter->apply($var); - } - - // Resource - if (is_resource($var)) { - return $var; - } - - // Array - if (is_array($var)) { - return $this->copyArray($var); - } - - // Scalar - if (! is_object($var)) { - return $var; - } - - // Object - return $this->copyObject($var); - } - - /** - * Copy an array - * @param array $array - * @return array - */ - private function copyArray(array $array) - { - foreach ($array as $key => $value) { - $array[$key] = $this->recursiveCopy($value); - } - - return $array; - } - - /** - * Copies an object. - * - * @param object $object - * - * @throws CloneException - * - * @return object - */ - private function copyObject($object) - { - $objectHash = spl_object_hash($object); - - if (isset($this->hashMap[$objectHash])) { - return $this->hashMap[$objectHash]; - } - - $reflectedObject = new ReflectionObject($object); - $isCloneable = $reflectedObject->isCloneable(); - - if (false === $isCloneable) { - if ($this->skipUncloneable) { - $this->hashMap[$objectHash] = $object; - - return $object; - } - - throw new CloneException( - sprintf( - 'The class "%s" is not cloneable.', - $reflectedObject->getName() - ) - ); - } - - $newObject = clone $object; - $this->hashMap[$objectHash] = $newObject; - - if ($this->useCloneMethod && $reflectedObject->hasMethod('__clone')) { - return $newObject; - } - - if ($newObject instanceof DateTimeInterface || $newObject instanceof DateTimeZone) { - return $newObject; - } - - foreach (ReflectionHelper::getProperties($reflectedObject) as $property) { - $this->copyObjectProperty($newObject, $property); - } - - return $newObject; - } - - private function copyObjectProperty($object, ReflectionProperty $property) - { - // Ignore static properties - if ($property->isStatic()) { - return; - } - - // Apply the filters - foreach ($this->filters as $item) { - /** @var Matcher $matcher */ - $matcher = $item['matcher']; - /** @var Filter $filter */ - $filter = $item['filter']; - - if ($matcher->matches($object, $property->getName())) { - $filter->apply( - $object, - $property->getName(), - function ($object) { - return $this->recursiveCopy($object); - } - ); - - // If a filter matches, we stop processing this property - return; - } - } - - $property->setAccessible(true); - $propertyValue = $property->getValue($object); - - // Copy the property - $property->setValue($object, $this->recursiveCopy($propertyValue)); - } - - /** - * Returns first filter that matches variable, `null` if no such filter found. - * - * @param array $filterRecords Associative array with 2 members: 'filter' with value of type {@see TypeFilter} and - * 'matcher' with value of type {@see TypeMatcher} - * @param mixed $var - * - * @return TypeFilter|null - */ - private function getFirstMatchedTypeFilter(array $filterRecords, $var) - { - $matched = $this->first( - $filterRecords, - function (array $record) use ($var) { - /* @var TypeMatcher $matcher */ - $matcher = $record['matcher']; - - return $matcher->matches($var); - } - ); - - return isset($matched) ? $matched['filter'] : null; - } - - /** - * Returns first element that matches predicate, `null` if no such element found. - * - * @param array $elements Array of ['filter' => Filter, 'matcher' => Matcher] pairs. - * @param callable $predicate Predicate arguments are: element. - * - * @return array|null Associative array with 2 members: 'filter' with value of type {@see TypeFilter} and 'matcher' - * with value of type {@see TypeMatcher} or `null`. - */ - private function first(array $elements, callable $predicate) - { - foreach ($elements as $element) { - if (call_user_func($predicate, $element)) { - return $element; - } - } - - return null; - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/Exception/CloneException.php b/vendor/myclabs/deep-copy/src/DeepCopy/Exception/CloneException.php deleted file mode 100644 index c046706a..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/Exception/CloneException.php +++ /dev/null @@ -1,9 +0,0 @@ -setAccessible(true); - $oldCollection = $reflectionProperty->getValue($object); - - $newCollection = $oldCollection->map( - function ($item) use ($objectCopier) { - return $objectCopier($item); - } - ); - - $reflectionProperty->setValue($object, $newCollection); - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/Filter/Doctrine/DoctrineEmptyCollectionFilter.php b/vendor/myclabs/deep-copy/src/DeepCopy/Filter/Doctrine/DoctrineEmptyCollectionFilter.php deleted file mode 100644 index 7b33fd54..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/Filter/Doctrine/DoctrineEmptyCollectionFilter.php +++ /dev/null @@ -1,28 +0,0 @@ -setAccessible(true); - - $reflectionProperty->setValue($object, new ArrayCollection()); - } -} \ No newline at end of file diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/Filter/Doctrine/DoctrineProxyFilter.php b/vendor/myclabs/deep-copy/src/DeepCopy/Filter/Doctrine/DoctrineProxyFilter.php deleted file mode 100644 index 8bee8f76..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/Filter/Doctrine/DoctrineProxyFilter.php +++ /dev/null @@ -1,22 +0,0 @@ -__load(); - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/Filter/Filter.php b/vendor/myclabs/deep-copy/src/DeepCopy/Filter/Filter.php deleted file mode 100644 index 85ba18ce..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/Filter/Filter.php +++ /dev/null @@ -1,18 +0,0 @@ -callback = $callable; - } - - /** - * Replaces the object property by the result of the callback called with the object property. - * - * {@inheritdoc} - */ - public function apply($object, $property, $objectCopier) - { - $reflectionProperty = ReflectionHelper::getProperty($object, $property); - $reflectionProperty->setAccessible(true); - - $value = call_user_func($this->callback, $reflectionProperty->getValue($object)); - - $reflectionProperty->setValue($object, $value); - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/Filter/SetNullFilter.php b/vendor/myclabs/deep-copy/src/DeepCopy/Filter/SetNullFilter.php deleted file mode 100644 index bea86b88..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/Filter/SetNullFilter.php +++ /dev/null @@ -1,24 +0,0 @@ -setAccessible(true); - $reflectionProperty->setValue($object, null); - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/Matcher/Doctrine/DoctrineProxyMatcher.php b/vendor/myclabs/deep-copy/src/DeepCopy/Matcher/Doctrine/DoctrineProxyMatcher.php deleted file mode 100644 index ec8856f5..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/Matcher/Doctrine/DoctrineProxyMatcher.php +++ /dev/null @@ -1,22 +0,0 @@ -class = $class; - $this->property = $property; - } - - /** - * Matches a specific property of a specific class. - * - * {@inheritdoc} - */ - public function matches($object, $property) - { - return ($object instanceof $this->class) && $property == $this->property; - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/Matcher/PropertyNameMatcher.php b/vendor/myclabs/deep-copy/src/DeepCopy/Matcher/PropertyNameMatcher.php deleted file mode 100644 index c8ec0d2b..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/Matcher/PropertyNameMatcher.php +++ /dev/null @@ -1,32 +0,0 @@ -property = $property; - } - - /** - * Matches a property by its name. - * - * {@inheritdoc} - */ - public function matches($object, $property) - { - return $property == $this->property; - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/Matcher/PropertyTypeMatcher.php b/vendor/myclabs/deep-copy/src/DeepCopy/Matcher/PropertyTypeMatcher.php deleted file mode 100644 index a6b0c0bc..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/Matcher/PropertyTypeMatcher.php +++ /dev/null @@ -1,46 +0,0 @@ -propertyType = $propertyType; - } - - /** - * {@inheritdoc} - */ - public function matches($object, $property) - { - try { - $reflectionProperty = ReflectionHelper::getProperty($object, $property); - } catch (ReflectionException $exception) { - return false; - } - - $reflectionProperty->setAccessible(true); - - return $reflectionProperty->getValue($object) instanceof $this->propertyType; - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/Reflection/ReflectionHelper.php b/vendor/myclabs/deep-copy/src/DeepCopy/Reflection/ReflectionHelper.php deleted file mode 100644 index 742410cb..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/Reflection/ReflectionHelper.php +++ /dev/null @@ -1,78 +0,0 @@ -getProperties() does not return private properties from ancestor classes. - * - * @author muratyaman@gmail.com - * @see http://php.net/manual/en/reflectionclass.getproperties.php - * - * @param ReflectionClass $ref - * - * @return ReflectionProperty[] - */ - public static function getProperties(ReflectionClass $ref) - { - $props = $ref->getProperties(); - $propsArr = array(); - - foreach ($props as $prop) { - $propertyName = $prop->getName(); - $propsArr[$propertyName] = $prop; - } - - if ($parentClass = $ref->getParentClass()) { - $parentPropsArr = self::getProperties($parentClass); - foreach ($propsArr as $key => $property) { - $parentPropsArr[$key] = $property; - } - - return $parentPropsArr; - } - - return $propsArr; - } - - /** - * Retrieves property by name from object and all its ancestors. - * - * @param object|string $object - * @param string $name - * - * @throws PropertyException - * @throws ReflectionException - * - * @return ReflectionProperty - */ - public static function getProperty($object, $name) - { - $reflection = is_object($object) ? new ReflectionObject($object) : new ReflectionClass($object); - - if ($reflection->hasProperty($name)) { - return $reflection->getProperty($name); - } - - if ($parentClass = $reflection->getParentClass()) { - return self::getProperty($parentClass->getName(), $name); - } - - throw new PropertyException( - sprintf( - 'The class "%s" doesn\'t have a property with the given name: "%s".', - is_object($object) ? get_class($object) : $object, - $name - ) - ); - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/Date/DateIntervalFilter.php b/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/Date/DateIntervalFilter.php deleted file mode 100644 index becd1cff..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/Date/DateIntervalFilter.php +++ /dev/null @@ -1,33 +0,0 @@ - $propertyValue) { - $copy->{$propertyName} = $propertyValue; - } - - return $copy; - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/ReplaceFilter.php b/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/ReplaceFilter.php deleted file mode 100644 index 164f8b8e..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/ReplaceFilter.php +++ /dev/null @@ -1,30 +0,0 @@ -callback = $callable; - } - - /** - * {@inheritdoc} - */ - public function apply($element) - { - return call_user_func($this->callback, $element); - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/ShallowCopyFilter.php b/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/ShallowCopyFilter.php deleted file mode 100644 index a5fbd7a2..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/ShallowCopyFilter.php +++ /dev/null @@ -1,17 +0,0 @@ -copier = $copier; - } - - /** - * {@inheritdoc} - */ - public function apply($element) - { - $newElement = clone $element; - - $copy = $this->createCopyClosure(); - - return $copy($newElement); - } - - private function createCopyClosure() - { - $copier = $this->copier; - - $copy = function (SplDoublyLinkedList $list) use ($copier) { - // Replace each element in the list with a deep copy of itself - for ($i = 1; $i <= $list->count(); $i++) { - $copy = $copier->recursiveCopy($list->shift()); - - $list->push($copy); - } - - return $list; - }; - - return Closure::bind($copy, null, DeepCopy::class); - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/TypeFilter.php b/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/TypeFilter.php deleted file mode 100644 index 5785a7da..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/TypeFilter/TypeFilter.php +++ /dev/null @@ -1,13 +0,0 @@ -type = $type; - } - - /** - * @param mixed $element - * - * @return boolean - */ - public function matches($element) - { - return is_object($element) ? is_a($element, $this->type) : gettype($element) === $this->type; - } -} diff --git a/vendor/myclabs/deep-copy/src/DeepCopy/deep_copy.php b/vendor/myclabs/deep-copy/src/DeepCopy/deep_copy.php deleted file mode 100644 index 55dcc926..00000000 --- a/vendor/myclabs/deep-copy/src/DeepCopy/deep_copy.php +++ /dev/null @@ -1,20 +0,0 @@ -copy($value); - } -} diff --git a/vendor/otphp-10.0/.github/CONTRIBUTING.md b/vendor/otphp-10.0/.github/CONTRIBUTING.md deleted file mode 100644 index 871735ad..00000000 --- a/vendor/otphp-10.0/.github/CONTRIBUTING.md +++ /dev/null @@ -1,25 +0,0 @@ -# Contributing - -First of all, **thank you** for contributing. - -Bugs or feature requests can be posted online on the GitHub issues section of the project. - -Few rules to ease code reviews and merges: - -- You MUST follow the [PSR-1](http://www.php-fig.org/psr/psr-1/), [PSR-2](http://www.php-fig.org/psr/psr-2/) and [PSR-4](http://www.php-fig.org/psr/psr-4/) coding standards. -- You MUST run the test suite. -- You MUST write (or update) unit tests when bugs are fixed or features are added. -- You SHOULD write documentation. - -We use [Git-Flow](http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/) to automate our git branching workflow. - -To contribute use [Pull Requests](https://help.github.com/articles/using-pull-requests), please, write commit messages that make sense, and rebase your branch before submitting your PR. - -May be asked to squash your commits too. This is used to "clean" your Pull Request before merging it, avoiding commits such as fix tests, fix 2, fix 3, etc. - -Run test suite ------------- - -* install composer: `curl -s http://getcomposer.org/installer | php` -* install dependencies: `php composer.phar install` -* run tests: `vendor/bin/phpunit` diff --git a/vendor/otphp-10.0/.github/ISSUE_TEMPLATE.md b/vendor/otphp-10.0/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index 2ceb8da6..00000000 --- a/vendor/otphp-10.0/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,16 +0,0 @@ -| Q | A -| -------------------- | ----- -| Bug report? | yes/no -| Feature request? | yes/no -| BC Break report? | yes/no -| RFC? / Specification | yes/no -| Library version | x.y(.z) - - diff --git a/vendor/otphp-10.0/.github/PULL_REQUEST_TEMPLATE.md b/vendor/otphp-10.0/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index acd0be9f..00000000 --- a/vendor/otphp-10.0/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,21 +0,0 @@ -| Q | A -| ------------- | --- -| Branch? | master -| Bug fix? | yes/no -| New feature? | yes/no -| BC breaks? | yes/no -| Deprecations? | yes/no -| Tests pass? | yes/no -| Fixed tickets | #... -| License | MIT -| Tests added | -| Doc PR | - - diff --git a/vendor/otphp-10.0/.php_cs.dist b/vendor/otphp-10.0/.php_cs.dist deleted file mode 100644 index 7410dff6..00000000 --- a/vendor/otphp-10.0/.php_cs.dist +++ /dev/null @@ -1,61 +0,0 @@ -in(__DIR__.'/src') - ->in(__DIR__.'/tests') -; - -return PhpCsFixer\Config::create() - ->setRules([ - '@PSR1' => true, - '@PSR2' => true, - '@Symfony' => true, - '@DoctrineAnnotation' => true, - '@PHP70Migration' => true, - '@PHP71Migration' => true, - 'strict_param' => true, - 'strict_comparison' => true, - 'array_syntax' => ['syntax' => 'short'], - 'array_indentation' => true, - 'ordered_imports' => true, - 'protected_to_private' => true, - 'declare_strict_types' => true, - 'native_function_invocation' => [ - 'include' => ['@compiler_optimized'], - 'scope' => 'namespaced', - ], - 'mb_str_functions' => true, - 'method_chaining_indentation' => true, - 'linebreak_after_opening_tag' => true, - 'combine_consecutive_issets' => true, - 'combine_consecutive_unsets' => true, - 'compact_nullable_typehint' => true, - 'no_superfluous_phpdoc_tags' => true, - 'no_superfluous_elseif' => true, - 'phpdoc_trim_consecutive_blank_line_separation' => true, - 'phpdoc_order' => true, - 'pow_to_exponentiation' => true, - 'simplified_null_return' => true, - 'header_comment' => [ - 'header' => $header, - ], - 'align_multiline_comment' => [ - 'comment_type' => 'all_multiline', - ], - 'php_unit_test_annotation' => [ - 'case' => 'snake', - 'style' => 'annotation', - ], - 'php_unit_test_case_static_method_calls' => true, - ]) - ->setRiskyAllowed(true) - ->setUsingCache(true) - ->setFinder($finder) - ; diff --git a/vendor/otphp-10.0/CODE_OF_CONDUCT.md b/vendor/otphp-10.0/CODE_OF_CONDUCT.md deleted file mode 100644 index 4ec12c72..00000000 --- a/vendor/otphp-10.0/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,46 +0,0 @@ -# Contributor Covenant Code of Conduct - -## Our Pledge - -In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. - -## Our Standards - -Examples of behavior that contributes to creating a positive environment include: - -* Using welcoming and inclusive language -* Being respectful of differing viewpoints and experiences -* Gracefully accepting constructive criticism -* Focusing on what is best for the community -* Showing empathy towards other community members - -Examples of unacceptable behavior by participants include: - -* The use of sexualized language or imagery and unwelcome sexual attention or advances -* Trolling, insulting/derogatory comments, and personal or political attacks -* Public or private harassment -* Publishing others' private information, such as a physical or electronic address, without explicit permission -* Other conduct which could reasonably be considered inappropriate in a professional setting - -## Our Responsibilities - -Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. - -Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. - -## Scope - -This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. - -## Enforcement - -Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at contact@spomky-labs.com. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. - -Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. - -## Attribution - -This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version] - -[homepage]: http://contributor-covenant.org -[version]: http://contributor-covenant.org/version/1/4/ diff --git a/vendor/otphp-10.0/LICENSE b/vendor/otphp-10.0/LICENSE deleted file mode 100644 index e6a673e3..00000000 --- a/vendor/otphp-10.0/LICENSE +++ /dev/null @@ -1,20 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2014-2016 Florent Morselli - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/vendor/otphp-10.0/composer.json b/vendor/otphp-10.0/composer.json deleted file mode 100644 index 2b325741..00000000 --- a/vendor/otphp-10.0/composer.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "name": "spomky-labs/otphp", - "type": "library", - "description": "A PHP library for generating one time passwords according to RFC 4226 (HOTP Algorithm) and the RFC 6238 (TOTP Algorithm) and compatible with Google Authenticator", - "license": "MIT", - "keywords": ["otp", "hotp", "totp", "RFC 4226", "RFC 6238", "Google Authenticator", "FreeOTP"], - "homepage": "https://github.com/Spomky-Labs/otphp", - "authors": [ - { - "name": "Florent Morselli", - "homepage": "https://github.com/Spomky" - }, - { - "name": "All contributors", - "homepage": "https://github.com/Spomky-Labs/otphp/contributors" - } - ], - "require": { - "php": "^7.2|^8.0", - "ext-mbstring": "*", - "paragonie/constant_time_encoding": "^2.0", - "beberlei/assert": "^3.0", - "thecodingmachine/safe": "^0.1.14" - }, - "require-dev": { - "phpunit/phpunit": "^8.0", - "php-coveralls/php-coveralls": "^2.0", - "phpstan/phpstan": "^0.11", - "phpstan/phpstan-beberlei-assert": "^0.11.0", - "phpstan/phpstan-deprecation-rules": "^0.11", - "phpstan/phpstan-phpunit": "^0.11", - "phpstan/phpstan-strict-rules": "^0.11", - "thecodingmachine/phpstan-safe-rule": "^0.1.0" - }, - "suggest": { - }, - "autoload": { - "psr-4": { "OTPHP\\": "src/" } - }, - "autoload-dev": { - "psr-4": { "OTPHP\\Test\\": "tests/" } - }, - "extra": { - "branch-alias": { - "v10.0": "10.0.x-dev", - "v9.0": "9.0.x-dev", - "v8.3": "8.3.x-dev" - } - } -} diff --git a/vendor/otphp-10.0/phpstan.neon b/vendor/otphp-10.0/phpstan.neon deleted file mode 100644 index c9be8962..00000000 --- a/vendor/otphp-10.0/phpstan.neon +++ /dev/null @@ -1,13 +0,0 @@ -parameters: - level: 7 - paths: - - src - - tests - ignoreErrors: - - '#Variable property access on \$this\(OTPHP\\OTP\)\.#' -includes: - - vendor/phpstan/phpstan-strict-rules/rules.neon - - vendor/phpstan/phpstan-phpunit/extension.neon - - vendor/phpstan/phpstan-deprecation-rules/rules.neon - - vendor/thecodingmachine/phpstan-safe-rule/phpstan-safe-rule.neon - - vendor/phpstan/phpstan-beberlei-assert/extension.neon diff --git a/vendor/otphp-10.0/src/Factory.php b/vendor/otphp-10.0/src/Factory.php deleted file mode 100644 index f5be85c0..00000000 --- a/vendor/otphp-10.0/src/Factory.php +++ /dev/null @@ -1,103 +0,0 @@ -getCode(), $throwable); - } - Assertion::isArray($parsed_url, 'Not a valid OTP provisioning URI'); - self::checkData($parsed_url); - - $otp = self::createOTP($parsed_url); - - self::populateOTP($otp, $parsed_url); - - return $otp; - } - - private static function populateParameters(OTPInterface &$otp, array $data): void - { - foreach ($data['query'] as $key => $value) { - $otp->setParameter($key, $value); - } - } - - private static function populateOTP(OTPInterface &$otp, array $data): void - { - self::populateParameters($otp, $data); - $result = explode(':', rawurldecode(mb_substr($data['path'], 1))); - - if (2 > \count($result)) { - $otp->setIssuerIncludedAsParameter(false); - - return; - } - - if (null !== $otp->getIssuer()) { - Assertion::eq($result[0], $otp->getIssuer(), 'Invalid OTP: invalid issuer in parameter'); - $otp->setIssuerIncludedAsParameter(true); - } - $otp->setIssuer($result[0]); - } - - private static function checkData(array &$data): void - { - foreach (['scheme', 'host', 'path', 'query'] as $key) { - Assertion::keyExists($data, $key, 'Not a valid OTP provisioning URI'); - } - Assertion::eq('otpauth', $data['scheme'], 'Not a valid OTP provisioning URI'); - parse_str($data['query'], $data['query']); - Assertion::keyExists($data['query'], 'secret', 'Not a valid OTP provisioning URI'); - } - - private static function createOTP(array $parsed_url): OTPInterface - { - switch ($parsed_url['host']) { - case 'totp': - $totp = TOTP::create($parsed_url['query']['secret']); - $totp->setLabel(self::getLabel($parsed_url['path'])); - - return $totp; - case 'hotp': - $hotp = HOTP::create($parsed_url['query']['secret']); - $hotp->setLabel(self::getLabel($parsed_url['path'])); - - return $hotp; - default: - throw new InvalidArgumentException(sprintf('Unsupported "%s" OTP type', $parsed_url['host'])); - } - } - - private static function getLabel(string $data): string - { - $result = explode(':', rawurldecode(mb_substr($data, 1))); - - return 2 === \count($result) ? $result[1] : $result[0]; - } -} diff --git a/vendor/otphp-10.0/src/FactoryInterface.php b/vendor/otphp-10.0/src/FactoryInterface.php deleted file mode 100644 index 00acc2d0..00000000 --- a/vendor/otphp-10.0/src/FactoryInterface.php +++ /dev/null @@ -1,23 +0,0 @@ -setCounter($counter); - } - - public static function create(?string $secret = null, int $counter = 0, string $digest = 'sha1', int $digits = 6): HOTPInterface - { - return new self($secret, $counter, $digest, $digits); - } - - protected function setCounter(int $counter): void - { - $this->setParameter('counter', $counter); - } - - public function getCounter(): int - { - return $this->getParameter('counter'); - } - - private function updateCounter(int $counter): void - { - $this->setCounter($counter); - } - - public function getProvisioningUri(): string - { - return $this->generateURI('hotp', ['counter' => $this->getCounter()]); - } - - /** - * If the counter is not provided, the OTP is verified at the actual counter. - */ - public function verify(string $otp, ?int $counter = null, ?int $window = null): bool - { - Assertion::greaterOrEqualThan($counter, 0, 'The counter must be at least 0.'); - - if (null === $counter) { - $counter = $this->getCounter(); - } elseif ($counter < $this->getCounter()) { - return false; - } - - return $this->verifyOtpWithWindow($otp, $counter, $window); - } - - private function getWindow(?int $window): int - { - return abs($window ?? 0); - } - - private function verifyOtpWithWindow(string $otp, int $counter, ?int $window): bool - { - $window = $this->getWindow($window); - - for ($i = $counter; $i <= $counter + $window; ++$i) { - if ($this->compareOTP($this->at($i), $otp)) { - $this->updateCounter($i + 1); - - return true; - } - } - - return false; - } - - protected function getParameterMap(): array - { - $v = array_merge( - parent::getParameterMap(), - ['counter' => function ($value) { - Assertion::greaterOrEqualThan((int) $value, 0, 'Counter must be at least 0.'); - - return (int) $value; - }] - ); - - return $v; - } -} diff --git a/vendor/otphp-10.0/src/HOTPInterface.php b/vendor/otphp-10.0/src/HOTPInterface.php deleted file mode 100644 index 336ce105..00000000 --- a/vendor/otphp-10.0/src/HOTPInterface.php +++ /dev/null @@ -1,29 +0,0 @@ -setSecret($secret); - $this->setDigest($digest); - $this->setDigits($digits); - } - - public function getQrCodeUri(string $uri, string $placeholder): string - { - $provisioning_uri = urlencode($this->getProvisioningUri()); - - return str_replace($placeholder, $provisioning_uri, $uri); - } - - /** - * The OTP at the specified input. - */ - protected function generateOTP(int $input): string - { - $hash = hash_hmac($this->getDigest(), $this->intToByteString($input), $this->getDecodedSecret()); - $hmac = []; - foreach (str_split($hash, 2) as $hex) { - $hmac[] = hexdec($hex); - } - $offset = $hmac[\count($hmac) - 1] & 0xF; - $code = ($hmac[$offset + 0] & 0x7F) << 24 | ($hmac[$offset + 1] & 0xFF) << 16 | ($hmac[$offset + 2] & 0xFF) << 8 | ($hmac[$offset + 3] & 0xFF); - $otp = $code % 10 ** $this->getDigits(); - - return str_pad((string) $otp, $this->getDigits(), '0', STR_PAD_LEFT); - } - - public function at(int $timestamp): string - { - return $this->generateOTP($timestamp); - } - - protected function filterOptions(array &$options): void - { - foreach (['algorithm' => 'sha1', 'period' => 30, 'digits' => 6] as $key => $default) { - if (isset($options[$key]) && $default === $options[$key]) { - unset($options[$key]); - } - } - - ksort($options); - } - - protected function generateURI(string $type, array $options): string - { - $label = $this->getLabel(); - Assertion::string($label, 'The label is not set.'); - Assertion::false($this->hasColon($label), 'Label must not contain a colon.'); - $options = array_merge($options, $this->getParameters()); - $this->filterOptions($options); - $params = str_replace(['+', '%7E'], ['%20', '~'], http_build_query($options)); - - return sprintf('otpauth://%s/%s?%s', $type, rawurlencode((null !== $this->getIssuer() ? $this->getIssuer().':' : '').$label), $params); - } - - private function getDecodedSecret(): string - { - try { - $secret = Base32::decodeUpper($this->getSecret()); - } catch (\Exception $e) { - throw new RuntimeException('Unable to decode the secret. Is it correctly base32 encoded?'); - } - - return $secret; - } - - private function intToByteString(int $int): string - { - $result = []; - while (0 !== $int) { - $result[] = \chr($int & 0xFF); - $int >>= 8; - } - - return str_pad(implode(array_reverse($result)), 8, "\000", STR_PAD_LEFT); - } - - protected function compareOTP(string $safe, string $user): bool - { - return hash_equals($safe, $user); - } -} diff --git a/vendor/otphp-10.0/src/OTPInterface.php b/vendor/otphp-10.0/src/OTPInterface.php deleted file mode 100644 index 40dfd5bc..00000000 --- a/vendor/otphp-10.0/src/OTPInterface.php +++ /dev/null @@ -1,94 +0,0 @@ -parameters; - - if (null !== $this->getIssuer() && true === $this->isIssuerIncludedAsParameter()) { - $parameters['issuer'] = $this->getIssuer(); - } - - return $parameters; - } - - public function getSecret(): string - { - return $this->getParameter('secret'); - } - - private function setSecret(?string $secret): void - { - $this->setParameter('secret', $secret); - } - - public function getLabel(): ?string - { - return $this->label; - } - - public function setLabel(string $label): void - { - $this->setParameter('label', $label); - } - - public function getIssuer(): ?string - { - return $this->issuer; - } - - public function setIssuer(string $issuer): void - { - $this->setParameter('issuer', $issuer); - } - - public function isIssuerIncludedAsParameter(): bool - { - return $this->issuer_included_as_parameter; - } - - public function setIssuerIncludedAsParameter(bool $issuer_included_as_parameter): void - { - $this->issuer_included_as_parameter = $issuer_included_as_parameter; - } - - public function getDigits(): int - { - return $this->getParameter('digits'); - } - - private function setDigits(int $digits): void - { - $this->setParameter('digits', $digits); - } - - public function getDigest(): string - { - return $this->getParameter('algorithm'); - } - - private function setDigest(string $digest): void - { - $this->setParameter('algorithm', $digest); - } - - public function hasParameter(string $parameter): bool - { - return \array_key_exists($parameter, $this->parameters); - } - - public function getParameter(string $parameter) - { - if ($this->hasParameter($parameter)) { - return $this->getParameters()[$parameter]; - } - - throw new InvalidArgumentException(sprintf('Parameter "%s" does not exist', $parameter)); - } - - public function setParameter(string $parameter, $value): void - { - $map = $this->getParameterMap(); - - if (true === \array_key_exists($parameter, $map)) { - $callback = $map[$parameter]; - $value = $callback($value); - } - - if (property_exists($this, $parameter)) { - $this->$parameter = $value; - } else { - $this->parameters[$parameter] = $value; - } - } - - protected function getParameterMap(): array - { - return [ - 'label' => function ($value) { - Assertion::false($this->hasColon($value), 'Label must not contain a colon.'); - - return $value; - }, - 'secret' => function ($value) { - if (null === $value) { - $value = Base32::encodeUpper(random_bytes(64)); - } - $value = trim(mb_strtoupper($value), '='); - - return $value; - }, - 'algorithm' => function ($value) { - $value = mb_strtolower($value); - Assertion::inArray($value, hash_algos(), sprintf('The "%s" digest is not supported.', $value)); - - return $value; - }, - 'digits' => function ($value) { - Assertion::greaterThan($value, 0, 'Digits must be at least 1.'); - - return (int) $value; - }, - 'issuer' => function ($value) { - Assertion::false($this->hasColon($value), 'Issuer must not contain a colon.'); - - return $value; - }, - ]; - } - - private function hasColon(string $value): bool - { - $colons = [':', '%3A', '%3a']; - foreach ($colons as $colon) { - if (false !== mb_strpos($value, $colon)) { - return true; - } - } - - return false; - } -} diff --git a/vendor/otphp-10.0/src/TOTP.php b/vendor/otphp-10.0/src/TOTP.php deleted file mode 100644 index 9c0db826..00000000 --- a/vendor/otphp-10.0/src/TOTP.php +++ /dev/null @@ -1,153 +0,0 @@ -setPeriod($period); - $this->setEpoch($epoch); - } - - public static function create(?string $secret = null, int $period = 30, string $digest = 'sha1', int $digits = 6, int $epoch = 0): TOTPInterface - { - return new self($secret, $period, $digest, $digits, $epoch); - } - - protected function setPeriod(int $period): void - { - $this->setParameter('period', $period); - } - - public function getPeriod(): int - { - return $this->getParameter('period'); - } - - private function setEpoch(int $epoch): void - { - $this->setParameter('epoch', $epoch); - } - - public function getEpoch(): int - { - return $this->getParameter('epoch'); - } - - public function at(int $timestamp): string - { - return $this->generateOTP($this->timecode($timestamp)); - } - - public function now(): string - { - return $this->at(time()); - } - - /** - * If no timestamp is provided, the OTP is verified at the actual timestamp. - */ - public function verify(string $otp, ?int $timestamp = null, ?int $window = null): bool - { - $timestamp = $this->getTimestamp($timestamp); - - if (null === $window) { - return $this->compareOTP($this->at($timestamp), $otp); - } - - return $this->verifyOtpWithWindow($otp, $timestamp, $window); - } - - private function verifyOtpWithWindow(string $otp, int $timestamp, int $window): bool - { - $window = abs($window); - - for ($i = 0; $i <= $window; ++$i) { - $next = $i * $this->getPeriod() + $timestamp; - $previous = -$i * $this->getPeriod() + $timestamp; - $valid = $this->compareOTP($this->at($next), $otp) || - $this->compareOTP($this->at($previous), $otp); - - if ($valid) { - return true; - } - } - - return false; - } - - private function getTimestamp(?int $timestamp): int - { - $timestamp = $timestamp ?? time(); - Assertion::greaterOrEqualThan($timestamp, 0, 'Timestamp must be at least 0.'); - - return $timestamp; - } - - public function getProvisioningUri(): string - { - $params = []; - if (30 !== $this->getPeriod()) { - $params['period'] = $this->getPeriod(); - } - - if (0 !== $this->getEpoch()) { - $params['epoch'] = $this->getEpoch(); - } - - return $this->generateURI('totp', $params); - } - - private function timecode(int $timestamp): int - { - return (int) floor(($timestamp - $this->getEpoch()) / $this->getPeriod()); - } - - protected function getParameterMap(): array - { - $v = array_merge( - parent::getParameterMap(), - [ - 'period' => function ($value) { - Assertion::greaterThan((int) $value, 0, 'Period must be at least 1.'); - - return (int) $value; - }, - 'epoch' => function ($value) { - Assertion::greaterOrEqualThan((int) $value, 0, 'Epoch must be greater than or equal to 0.'); - - return (int) $value; - }, - ] - ); - - return $v; - } - - protected function filterOptions(array &$options): void - { - parent::filterOptions($options); - - if (isset($options['epoch']) && 0 === $options['epoch']) { - unset($options['epoch']); - } - - ksort($options); - } -} diff --git a/vendor/otphp-10.0/src/TOTPInterface.php b/vendor/otphp-10.0/src/TOTPInterface.php deleted file mode 100644 index a19fe7c0..00000000 --- a/vendor/otphp-10.0/src/TOTPInterface.php +++ /dev/null @@ -1,36 +0,0 @@ -buildFromDirectory(dirname(__DIR__).'/lib'); -rename( - dirname(__DIR__).'/lib/index.php', - dirname(__DIR__).'/lib/random.php' -); - -/** - * If we pass an (optional) path to a private key as a second argument, we will - * sign the Phar with OpenSSL. - * - * If you leave this out, it will produce an unsigned .phar! - */ -if ($argc > 1) { - if (!@is_readable($argv[1])) { - echo 'Could not read the private key file:', $argv[1], "\n"; - exit(255); - } - $pkeyFile = file_get_contents($argv[1]); - - $private = openssl_get_privatekey($pkeyFile); - if ($private !== false) { - $pkey = ''; - openssl_pkey_export($private, $pkey); - $phar->setSignatureAlgorithm(Phar::OPENSSL, $pkey); - - /** - * Save the corresponding public key to the file - */ - if (!@is_readable($dist.'/random_compat.phar.pubkey')) { - $details = openssl_pkey_get_details($private); - file_put_contents( - $dist.'/random_compat.phar.pubkey', - $details['key'] - ); - } - } else { - echo 'An error occurred reading the private key from OpenSSL.', "\n"; - exit(255); - } -} diff --git a/vendor/paragonie/random_compat/psalm-autoload.php b/vendor/paragonie/random_compat/psalm-autoload.php deleted file mode 100644 index d71d1b81..00000000 --- a/vendor/paragonie/random_compat/psalm-autoload.php +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/vendor/psr/log/.gitignore b/vendor/psr/log/.gitignore deleted file mode 100644 index 22d0d82f..00000000 --- a/vendor/psr/log/.gitignore +++ /dev/null @@ -1 +0,0 @@ -vendor diff --git a/vendor/psr/log/LICENSE b/vendor/psr/log/LICENSE deleted file mode 100644 index 474c952b..00000000 --- a/vendor/psr/log/LICENSE +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (c) 2012 PHP Framework Interoperability Group - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/vendor/psr/log/Psr/Log/AbstractLogger.php b/vendor/psr/log/Psr/Log/AbstractLogger.php deleted file mode 100644 index 90e721af..00000000 --- a/vendor/psr/log/Psr/Log/AbstractLogger.php +++ /dev/null @@ -1,128 +0,0 @@ -log(LogLevel::EMERGENCY, $message, $context); - } - - /** - * Action must be taken immediately. - * - * Example: Entire website down, database unavailable, etc. This should - * trigger the SMS alerts and wake you up. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function alert($message, array $context = array()) - { - $this->log(LogLevel::ALERT, $message, $context); - } - - /** - * Critical conditions. - * - * Example: Application component unavailable, unexpected exception. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function critical($message, array $context = array()) - { - $this->log(LogLevel::CRITICAL, $message, $context); - } - - /** - * Runtime errors that do not require immediate action but should typically - * be logged and monitored. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function error($message, array $context = array()) - { - $this->log(LogLevel::ERROR, $message, $context); - } - - /** - * Exceptional occurrences that are not errors. - * - * Example: Use of deprecated APIs, poor use of an API, undesirable things - * that are not necessarily wrong. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function warning($message, array $context = array()) - { - $this->log(LogLevel::WARNING, $message, $context); - } - - /** - * Normal but significant events. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function notice($message, array $context = array()) - { - $this->log(LogLevel::NOTICE, $message, $context); - } - - /** - * Interesting events. - * - * Example: User logs in, SQL logs. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function info($message, array $context = array()) - { - $this->log(LogLevel::INFO, $message, $context); - } - - /** - * Detailed debug information. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function debug($message, array $context = array()) - { - $this->log(LogLevel::DEBUG, $message, $context); - } -} diff --git a/vendor/psr/log/Psr/Log/InvalidArgumentException.php b/vendor/psr/log/Psr/Log/InvalidArgumentException.php deleted file mode 100644 index 67f852d1..00000000 --- a/vendor/psr/log/Psr/Log/InvalidArgumentException.php +++ /dev/null @@ -1,7 +0,0 @@ -logger = $logger; - } -} diff --git a/vendor/psr/log/Psr/Log/LoggerInterface.php b/vendor/psr/log/Psr/Log/LoggerInterface.php deleted file mode 100644 index 5ea72438..00000000 --- a/vendor/psr/log/Psr/Log/LoggerInterface.php +++ /dev/null @@ -1,123 +0,0 @@ -log(LogLevel::EMERGENCY, $message, $context); - } - - /** - * Action must be taken immediately. - * - * Example: Entire website down, database unavailable, etc. This should - * trigger the SMS alerts and wake you up. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function alert($message, array $context = array()) - { - $this->log(LogLevel::ALERT, $message, $context); - } - - /** - * Critical conditions. - * - * Example: Application component unavailable, unexpected exception. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function critical($message, array $context = array()) - { - $this->log(LogLevel::CRITICAL, $message, $context); - } - - /** - * Runtime errors that do not require immediate action but should typically - * be logged and monitored. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function error($message, array $context = array()) - { - $this->log(LogLevel::ERROR, $message, $context); - } - - /** - * Exceptional occurrences that are not errors. - * - * Example: Use of deprecated APIs, poor use of an API, undesirable things - * that are not necessarily wrong. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function warning($message, array $context = array()) - { - $this->log(LogLevel::WARNING, $message, $context); - } - - /** - * Normal but significant events. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function notice($message, array $context = array()) - { - $this->log(LogLevel::NOTICE, $message, $context); - } - - /** - * Interesting events. - * - * Example: User logs in, SQL logs. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function info($message, array $context = array()) - { - $this->log(LogLevel::INFO, $message, $context); - } - - /** - * Detailed debug information. - * - * @param string $message - * @param array $context - * - * @return void - */ - public function debug($message, array $context = array()) - { - $this->log(LogLevel::DEBUG, $message, $context); - } - - /** - * Logs with an arbitrary level. - * - * @param mixed $level - * @param string $message - * @param array $context - * - * @return void - */ - abstract public function log($level, $message, array $context = array()); -} diff --git a/vendor/psr/log/Psr/Log/NullLogger.php b/vendor/psr/log/Psr/Log/NullLogger.php deleted file mode 100644 index d8cd682c..00000000 --- a/vendor/psr/log/Psr/Log/NullLogger.php +++ /dev/null @@ -1,28 +0,0 @@ -logger) { }` - * blocks. - */ -class NullLogger extends AbstractLogger -{ - /** - * Logs with an arbitrary level. - * - * @param mixed $level - * @param string $message - * @param array $context - * - * @return void - */ - public function log($level, $message, array $context = array()) - { - // noop - } -} diff --git a/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php b/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php deleted file mode 100644 index 4b861c3e..00000000 --- a/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php +++ /dev/null @@ -1,144 +0,0 @@ - ". - * - * Example ->error('Foo') would yield "error Foo". - * - * @return string[] - */ - abstract public function getLogs(); - - public function testImplements() - { - $this->assertInstanceOf('Psr\Log\LoggerInterface', $this->getLogger()); - } - - /** - * @dataProvider provideLevelsAndMessages - */ - public function testLogsAtAllLevels($level, $message) - { - $logger = $this->getLogger(); - $logger->{$level}($message, array('user' => 'Bob')); - $logger->log($level, $message, array('user' => 'Bob')); - - $expected = array( - $level.' message of level '.$level.' with context: Bob', - $level.' message of level '.$level.' with context: Bob', - ); - $this->assertEquals($expected, $this->getLogs()); - } - - public function provideLevelsAndMessages() - { - return array( - LogLevel::EMERGENCY => array(LogLevel::EMERGENCY, 'message of level emergency with context: {user}'), - LogLevel::ALERT => array(LogLevel::ALERT, 'message of level alert with context: {user}'), - LogLevel::CRITICAL => array(LogLevel::CRITICAL, 'message of level critical with context: {user}'), - LogLevel::ERROR => array(LogLevel::ERROR, 'message of level error with context: {user}'), - LogLevel::WARNING => array(LogLevel::WARNING, 'message of level warning with context: {user}'), - LogLevel::NOTICE => array(LogLevel::NOTICE, 'message of level notice with context: {user}'), - LogLevel::INFO => array(LogLevel::INFO, 'message of level info with context: {user}'), - LogLevel::DEBUG => array(LogLevel::DEBUG, 'message of level debug with context: {user}'), - ); - } - - /** - * @expectedException \Psr\Log\InvalidArgumentException - */ - public function testThrowsOnInvalidLevel() - { - $logger = $this->getLogger(); - $logger->log('invalid level', 'Foo'); - } - - public function testContextReplacement() - { - $logger = $this->getLogger(); - $logger->info('{Message {nothing} {user} {foo.bar} a}', array('user' => 'Bob', 'foo.bar' => 'Bar')); - - $expected = array('info {Message {nothing} Bob Bar a}'); - $this->assertEquals($expected, $this->getLogs()); - } - - public function testObjectCastToString() - { - if (method_exists($this, 'createPartialMock')) { - $dummy = $this->createPartialMock('Psr\Log\Test\DummyTest', array('__toString')); - } else { - $dummy = $this->getMock('Psr\Log\Test\DummyTest', array('__toString')); - } - $dummy->expects($this->once()) - ->method('__toString') - ->will($this->returnValue('DUMMY')); - - $this->getLogger()->warning($dummy); - - $expected = array('warning DUMMY'); - $this->assertEquals($expected, $this->getLogs()); - } - - public function testContextCanContainAnything() - { - $closed = fopen('php://memory', 'r'); - fclose($closed); - - $context = array( - 'bool' => true, - 'null' => null, - 'string' => 'Foo', - 'int' => 0, - 'float' => 0.5, - 'nested' => array('with object' => new DummyTest), - 'object' => new \DateTime, - 'resource' => fopen('php://memory', 'r'), - 'closed' => $closed, - ); - - $this->getLogger()->warning('Crazy context data', $context); - - $expected = array('warning Crazy context data'); - $this->assertEquals($expected, $this->getLogs()); - } - - public function testContextExceptionKeyCanBeExceptionOrOtherValues() - { - $logger = $this->getLogger(); - $logger->warning('Random message', array('exception' => 'oops')); - $logger->critical('Uncaught Exception!', array('exception' => new \LogicException('Fail'))); - - $expected = array( - 'warning Random message', - 'critical Uncaught Exception!' - ); - $this->assertEquals($expected, $this->getLogs()); - } -} - -class DummyTest -{ - public function __toString() - { - } -} diff --git a/vendor/psr/log/Psr/Log/Test/TestLogger.php b/vendor/psr/log/Psr/Log/Test/TestLogger.php deleted file mode 100644 index 0cdffe4f..00000000 --- a/vendor/psr/log/Psr/Log/Test/TestLogger.php +++ /dev/null @@ -1,146 +0,0 @@ - $level, - 'message' => $message, - 'context' => $context, - ]; - - $this->recordsByLevel[$record['level']][] = $record; - $this->records[] = $record; - } - - public function hasRecords($level) - { - return isset($this->recordsByLevel[$level]); - } - - public function hasRecord($record, $level) - { - if (is_string($record)) { - $record = ['message' => $record]; - } - return $this->hasRecordThatPasses(function ($rec) use ($record) { - if ($rec['message'] !== $record['message']) { - return false; - } - if (isset($record['context']) && $rec['context'] !== $record['context']) { - return false; - } - return true; - }, $level); - } - - public function hasRecordThatContains($message, $level) - { - return $this->hasRecordThatPasses(function ($rec) use ($message) { - return strpos($rec['message'], $message) !== false; - }, $level); - } - - public function hasRecordThatMatches($regex, $level) - { - return $this->hasRecordThatPasses(function ($rec) use ($regex) { - return preg_match($regex, $rec['message']) > 0; - }, $level); - } - - public function hasRecordThatPasses(callable $predicate, $level) - { - if (!isset($this->recordsByLevel[$level])) { - return false; - } - foreach ($this->recordsByLevel[$level] as $i => $rec) { - if (call_user_func($predicate, $rec, $i)) { - return true; - } - } - return false; - } - - public function __call($method, $args) - { - if (preg_match('/(.*)(Debug|Info|Notice|Warning|Error|Critical|Alert|Emergency)(.*)/', $method, $matches) > 0) { - $genericMethod = $matches[1] . ('Records' !== $matches[3] ? 'Record' : '') . $matches[3]; - $level = strtolower($matches[2]); - if (method_exists($this, $genericMethod)) { - $args[] = $level; - return call_user_func_array([$this, $genericMethod], $args); - } - } - throw new \BadMethodCallException('Call to undefined method ' . get_class($this) . '::' . $method . '()'); - } - - public function reset() - { - $this->records = []; - } -} diff --git a/vendor/psr/log/README.md b/vendor/psr/log/README.md deleted file mode 100644 index 5571a25e..00000000 --- a/vendor/psr/log/README.md +++ /dev/null @@ -1,52 +0,0 @@ -PSR Log -======= - -This repository holds all interfaces/classes/traits related to -[PSR-3](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md). - -Note that this is not a logger of its own. It is merely an interface that -describes a logger. See the specification for more details. - -Installation ------------- - -```bash -composer require psr/log -``` - -Usage ------ - -If you need a logger, you can use the interface like this: - -```php -logger = $logger; - } - - public function doSomething() - { - if ($this->logger) { - $this->logger->info('Doing work'); - } - - // do something useful - } -} -``` - -You can then pick one of the implementations of the interface to get a logger. - -If you want to implement the interface, you can require this package and -implement `Psr\Log\LoggerInterface` in your code. Please read the -[specification text](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md) -for details. diff --git a/vendor/psr/log/composer.json b/vendor/psr/log/composer.json deleted file mode 100644 index 87934d70..00000000 --- a/vendor/psr/log/composer.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "psr/log", - "description": "Common interface for logging libraries", - "keywords": ["psr", "psr-3", "log"], - "homepage": "https://github.com/php-fig/log", - "license": "MIT", - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "require": { - "php": ">=5.3.0" - }, - "autoload": { - "psr-4": { - "Psr\\Log\\": "Psr/Log/" - } - }, - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - } -} diff --git a/vendor/setasign/fpdi/LICENSE.txt b/vendor/setasign/fpdi/LICENSE.txt deleted file mode 100644 index 7e758500..00000000 --- a/vendor/setasign/fpdi/LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2017 Setasign - Jan Slabon, https://www.setasign.com - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. \ No newline at end of file diff --git a/vendor/setasign/fpdi/README.md b/vendor/setasign/fpdi/README.md deleted file mode 100644 index 9c1f9320..00000000 --- a/vendor/setasign/fpdi/README.md +++ /dev/null @@ -1,170 +0,0 @@ -FPDI - Free PDF Document Importer -================================= - -[![Latest Stable Version](https://poser.pugx.org/setasign/fpdi/v/stable.svg)](https://packagist.org/packages/setasign/fpdi) -[![Total Downloads](https://poser.pugx.org/setasign/fpdi/downloads.svg)](https://packagist.org/packages/setasign/fpdi) -[![Latest Unstable Version](https://poser.pugx.org/setasign/fpdi/v/unstable.svg)](https://packagist.org/packages/setasign/fpdi) -[![License](https://poser.pugx.org/setasign/fpdi/license.svg)](https://packagist.org/packages/setasign/fpdi) -[![Build Status](https://travis-ci.org/Setasign/FPDI.svg?branch=development)](https://travis-ci.org/Setasign/FPDI) - -:heavy_exclamation_mark: This document refers to FPDI 2. Version 1 is deprecated and development is discontinued. :heavy_exclamation_mark: - -FPDI is a collection of PHP classes facilitating developers to read pages from existing PDF -documents and use them as templates in [FPDF](http://www.fpdf.org), which was developed by Olivier Plathey. Apart -from a copy of [FPDF](http://www.fpdf.org), FPDI does not require any special PHP extensions. - -FPDI can also be used as an extension for [TCPDF](https://github.com/tecnickcom/TCPDF) or -[tFPDF](http://fpdf.org/en/script/script92.php), too. - -## Installation with [Composer](https://packagist.org/packages/setasign/fpdi) - -Because FPDI can be used with FPDF, TCPDF or tFPDF we didn't added a fixed dependency in the main -composer.json file but we added metadata packages for -[FPDF](https://github.com/Setasign/FPDI-FPDF), -[TCPDF](https://github.com/Setasign/FPDI-TCPDF) and -[tFPDF](https://github.com/Setasign/FPDI-tFPDF). - -### Evaluate Dependencies Automatically - -For FPDF add following [package](https://github.com/Setasign/FPDI-FPDF) to your composer.json: -```json -{ - "require": { - "setasign/fpdi-fpdf": "^2.0" - } -} -``` - -For TCPDF add following [package](https://github.com/Setasign/FPDI-TCPDF) to your composer.json: -```json -{ - "require": { - "setasign/fpdi-tcpdf": "^2.0" - } -} -``` - -For tFPDF add following [package](https://github.com/Setasign/FPDI-tFPDF) to your composer.json: -```json -{ - "require": { - "setasign/fpdi-tfpdf": "^2.1" - } -} -``` - -### Manual Dependencies - -If you don't want to use the metadata packages, it is up to you to add the dependencies to your -composer.json file. - -To use FPDI with FPDF include following in your composer.json file: - -```json -{ - "require": { - "setasign/fpdf": "^1.8", - "setasign/fpdi": "^2.0" - } -} -``` - -If you want to use TCPDF, your have to update your composer.json respectively to: - -```json -{ - "require": { - "tecnickcom/tcpdf": "^6.2", - "setasign/fpdi": "^2.0" - } -} -``` - -If you want to use tFPDF, your have to update your composer.json respectively to: - -```json -{ - "require": { - "tecnickcom/tfpdf": "1.25", - "setasign/fpdi": "^2.1" - } -} -``` - -## Manual Installation - -If you do not use composer, just require the autoload.php in the /src folder: - -```php -require_once 'src/autoload.php'; - -``` - -If you have a PSR-4 autoloader implemented, just register the src path as follows: -```php -$loader = new \Example\Psr4AutoloaderClass; -$loader->register(); -$loader->addNamespace('setasign\Fpdi', 'path/to/src/'); -``` - -## Changes to Version 1 - -Version 2 is a complete rewrite from scratch of FPDI which comes with: -- Namespaced code -- Clean and up-to-date code base and style -- PSR-4 compatible autoloading -- Performance improvements by up to 100% -- Less memory consumption -- Native support for reading PDFs from strings or stream-resources -- Support for documents with "invalid" data before their file-header -- Optimized page tree resolving -- Usage of individual exceptions -- Several test types (unit, functional and visual tests) - -We tried to keep the main methods and logical workflow the same as in version 1 but please -notice that there were incompatible changes which you should consider when updating to -version 2: -- You need to load the code using the `src/autoload.php` file instead of `classes/FPDI.php`. -- The classes and traits are namespaced now: `setasign\Fpdi` -- Page boundaries beginning with a slash, such as `/MediaBox`, are not supported anymore. Remove - the slash or use a constant of `PdfReader\PageBoundaries`. -- The parameters $x, $y, $width and $height of the `useTemplate()` or `getTemplateSize()` - method have more logical correct default values now. Passing `0` as width or height will - result in an `InvalidArgumentException` now. -- The return value of `getTemplateSize()` had changed to an array with more speaking keys - and reusability: Use `width` instead of `w` and `height` instead of `h`. -- If you want to use **FPDI with TCPDF** you need to refactor your code to use the class `Tcpdf\Fpdi` -(since 2.1; before it was `TcpdfFpdi`) instead of `FPDI`. - -## Example and Documentation - -A simple example, that imports a single page and places this onto a new created page: - -```php -AddPage(); -// set the source file -$pdf->setSourceFile("Fantastic-Speaker.pdf"); -// import page 1 -$tplId = $pdf->importPage(1); -// use the imported page and place it at point 10,10 with a width of 100 mm -$pdf->useTemplate($tplId, 10, 10, 100); - -$pdf->Output(); -``` - -A full end-user documentation and API reference is available [here](https://manuals.setasign.com/fpdi-manual/). \ No newline at end of file diff --git a/vendor/setasign/fpdi/composer.json b/vendor/setasign/fpdi/composer.json deleted file mode 100644 index 58f79315..00000000 --- a/vendor/setasign/fpdi/composer.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "name": "setasign/fpdi", - "homepage": "https://www.setasign.com/fpdi", - "description": "FPDI is a collection of PHP classes facilitating developers to read pages from existing PDF documents and use them as templates in FPDF. Because it is also possible to use FPDI with TCPDF, there are no fixed dependencies defined. Please see suggestions for packages which evaluates the dependencies automatically.", - "type": "library", - "keywords": [ - "pdf", - "fpdi", - "fpdf" - ], - "license": "MIT", - "autoload": { - "psr-4": { - "setasign\\Fpdi\\": "src/" - } - }, - "require": { - "php": "^5.6 || ^7.0", - "ext-zlib": "*" - }, - "authors": [ - { - "name": "Jan Slabon", - "email": "jan.slabon@setasign.com", - "homepage": "https://www.setasign.com" - }, - { - "name": "Maximilian Kresse", - "email": "maximilian.kresse@setasign.com", - "homepage": "https://www.setasign.com" - } - ], - "suggest": { - "setasign/fpdf": "FPDI will extend this class but as it is also possible to use TCPDF or tFPDF as an alternative. There's no fixed dependency configured.", - "setasign/fpdi-fpdf": "Use this package to automatically evaluate dependencies to FPDF.", - "setasign/fpdi-tcpdf": "Use this package to automatically evaluate dependencies to TCPDF.", - "setasign/fpdi-tfpdf": "Use this package to automatically evaluate dependencies to tFPDF." - }, - "require-dev": { - "phpunit/phpunit": "~5.7", - "setasign/fpdf": "~1.8", - "tecnickcom/tcpdf": "~6.2", - "setasign/tfpdf": "1.25" - }, - "autoload-dev": { - "psr-4": { - "setasign\\Fpdi\\": "tests/" - } - } -} diff --git a/vendor/setasign/fpdi/src/FpdfTpl.php b/vendor/setasign/fpdi/src/FpdfTpl.php deleted file mode 100644 index fba7c6a0..00000000 --- a/vendor/setasign/fpdi/src/FpdfTpl.php +++ /dev/null @@ -1,22 +0,0 @@ -currentTemplateId !== null) { - throw new \BadMethodCallException('The page format cannot be changed when writing to a template.'); - } - - if (!\in_array($orientation, ['P', 'L'], true)) { - throw new \InvalidArgumentException(\sprintf( - 'Invalid page orientation "%s"! Only "P" and "L" are allowed!', - $orientation - )); - } - - $size = $this->_getpagesize($size); - - if ($orientation != $this->CurOrientation - || $size[0] != $this->CurPageSize[0] - || $size[1] != $this->CurPageSize[1] - ) { - // New size or orientation - if ($orientation === 'P') { - $this->w = $size[0]; - $this->h = $size[1]; - } else { - $this->w = $size[1]; - $this->h = $size[0]; - } - $this->wPt = $this->w * $this->k; - $this->hPt = $this->h * $this->k; - $this->PageBreakTrigger = $this->h - $this->bMargin; - $this->CurOrientation = $orientation; - $this->CurPageSize = $size; - - $this->PageInfo[$this->page]['size'] = array($this->wPt, $this->hPt); - } - } - - /** - * Draws a template onto the page or another template. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $tpl The template id - * @param array|float|int $x The abscissa of upper-left corner. Alternatively you could use an assoc array - * with the keys "x", "y", "width", "height", "adjustPageSize". - * @param float|int $y The ordinate of upper-left corner. - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @param bool $adjustPageSize - * @return array The size - * @see FpdfTplTrait::getTemplateSize() - */ - public function useTemplate($tpl, $x = 0, $y = 0, $width = null, $height = null, $adjustPageSize = false) - { - if (!isset($this->templates[$tpl])) { - throw new \InvalidArgumentException('Template does not exist!'); - } - - if (\is_array($x)) { - unset($x['tpl']); - \extract($x, EXTR_IF_EXISTS); - /** @noinspection NotOptimalIfConditionsInspection */ - /** @noinspection CallableParameterUseCaseInTypeContextInspection */ - if (\is_array($x)) { - $x = 0; - } - } - - $template = $this->templates[$tpl]; - - $originalSize = $this->getTemplateSize($tpl); - $newSize = $this->getTemplateSize($tpl, $width, $height); - if ($adjustPageSize) { - $this->setPageFormat($newSize, $newSize['orientation']); - } - - $this->_out( - // reset standard values, translate and scale - \sprintf( - 'q 0 J 1 w 0 j 0 G 0 g %.4F 0 0 %.4F %.4F %.4F cm /%s Do Q', - ($newSize['width'] / $originalSize['width']), - ($newSize['height'] / $originalSize['height']), - $x * $this->k, - ($this->h - $y - $newSize['height']) * $this->k, - $template['id'] - ) - ); - - return $newSize; - } - - /** - * Get the size of a template. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $tpl The template id - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @return array|bool An array with following keys: width, height, 0 (=width), 1 (=height), orientation (L or P) - */ - public function getTemplateSize($tpl, $width = null, $height = null) - { - if (!isset($this->templates[$tpl])) { - return false; - } - - if ($width === null && $height === null) { - $width = $this->templates[$tpl]['width']; - $height = $this->templates[$tpl]['height']; - } elseif ($width === null) { - $width = $height * $this->templates[$tpl]['width'] / $this->templates[$tpl]['height']; - } - - if ($height === null) { - $height = $width * $this->templates[$tpl]['height'] / $this->templates[$tpl]['width']; - } - - if ($height <= 0. || $width <= 0.) { - throw new \InvalidArgumentException('Width or height parameter needs to be larger than zero.'); - } - - return [ - 'width' => $width, - 'height' => $height, - 0 => $width, - 1 => $height, - 'orientation' => $width > $height ? 'L' : 'P' - ]; - } - - /** - * Begins a new template. - * - * @param float|int|null $width The width of the template. If null, the current page width is used. - * @param float|int|null $height The height of the template. If null, the current page height is used. - * @param bool $groupXObject Define the form XObject as a group XObject to support transparency (if used). - * @return int A template identifier. - */ - public function beginTemplate($width = null, $height = null, $groupXObject = false) - { - if ($width === null) { - $width = $this->w; - } - - if ($height === null) { - $height = $this->h; - } - - $templateId = $this->getNextTemplateId(); - - // initiate buffer with current state of FPDF - $buffer = "2 J\n" - . \sprintf('%.2F w', $this->LineWidth * $this->k) . "\n"; - - if ($this->FontFamily) { - $buffer .= \sprintf("BT /F%d %.2F Tf ET\n", $this->CurrentFont['i'], $this->FontSizePt); - } - - if ($this->DrawColor !== '0 G') { - $buffer .= $this->DrawColor . "\n"; - } - if ($this->FillColor !== '0 g') { - $buffer .= $this->FillColor . "\n"; - } - - if ($groupXObject && \version_compare('1.4', $this->PDFVersion, '>')) { - $this->PDFVersion = '1.4'; - } - - $this->templates[$templateId] = [ - 'objectNumber' => null, - 'id' => 'TPL' . $templateId, - 'buffer' => $buffer, - 'width' => $width, - 'height' => $height, - 'groupXObject' => $groupXObject, - 'state' => [ - 'x' => $this->x, - 'y' => $this->y, - 'AutoPageBreak' => $this->AutoPageBreak, - 'bMargin' => $this->bMargin, - 'tMargin' => $this->tMargin, - 'lMargin' => $this->lMargin, - 'rMargin' => $this->rMargin, - 'h' => $this->h, - 'w' => $this->w, - 'FontFamily' => $this->FontFamily, - 'FontStyle' => $this->FontStyle, - 'FontSizePt' => $this->FontSizePt, - 'FontSize' => $this->FontSize, - 'underline' => $this->underline, - 'TextColor' => $this->TextColor, - 'DrawColor' => $this->DrawColor, - 'FillColor' => $this->FillColor, - 'ColorFlag' => $this->ColorFlag - ] - ]; - - $this->SetAutoPageBreak(false); - $this->currentTemplateId = $templateId; - - $this->h = $height; - $this->w = $width; - - $this->SetXY($this->lMargin, $this->tMargin); - $this->SetRightMargin($this->w - $width + $this->rMargin); - - return $templateId; - } - - /** - * Ends a template. - * - * @return bool|int|null A template identifier. - */ - public function endTemplate() - { - if (null === $this->currentTemplateId) { - return false; - } - - $templateId = $this->currentTemplateId; - $template = $this->templates[$templateId]; - - $state = $template['state']; - $this->SetXY($state['x'], $state['y']); - $this->tMargin = $state['tMargin']; - $this->lMargin = $state['lMargin']; - $this->rMargin = $state['rMargin']; - $this->h = $state['h']; - $this->w = $state['w']; - $this->SetAutoPageBreak($state['AutoPageBreak'], $state['bMargin']); - - $this->FontFamily = $state['FontFamily']; - $this->FontStyle = $state['FontStyle']; - $this->FontSizePt = $state['FontSizePt']; - $this->FontSize = $state['FontSize']; - - $this->TextColor = $state['TextColor']; - $this->DrawColor = $state['DrawColor']; - $this->FillColor = $state['FillColor']; - $this->ColorFlag = $state['ColorFlag']; - - $this->underline = $state['underline']; - - $fontKey = $this->FontFamily . $this->FontStyle; - if ($fontKey) { - $this->CurrentFont =& $this->fonts[$fontKey]; - } else { - unset($this->CurrentFont); - } - - $this->currentTemplateId = null; - - return $templateId; - } - - /** - * Get the next template id. - * - * @return int - */ - protected function getNextTemplateId() - { - return $this->templateId++; - } - - /* overwritten FPDF methods: */ - - /** - * @inheritdoc - */ - public function AddPage($orientation = '', $size = '', $rotation = 0) - { - if ($this->currentTemplateId !== null) { - throw new \BadMethodCallException('Pages cannot be added when writing to a template.'); - } - parent::AddPage($orientation, $size, $rotation); - } - - /** - * @inheritdoc - */ - public function Link($x, $y, $w, $h, $link) - { - if ($this->currentTemplateId !== null) { - throw new \BadMethodCallException('Links cannot be set when writing to a template.'); - } - parent::Link($x, $y, $w, $h, $link); - } - - /** - * @inheritdoc - */ - public function SetLink($link, $y = 0, $page = -1) - { - if ($this->currentTemplateId !== null) { - throw new \BadMethodCallException('Links cannot be set when writing to a template.'); - } - return parent::SetLink($link, $y, $page); - } - - /** - * @inheritdoc - */ - public function SetDrawColor($r, $g = null, $b = null) - { - parent::SetDrawColor($r, $g, $b); - if ($this->page === 0 && $this->currentTemplateId !== null) { - $this->_out($this->DrawColor); - } - } - - /** - * @inheritdoc - */ - public function SetFillColor($r, $g = null, $b = null) - { - parent::SetFillColor($r, $g, $b); - if ($this->page === 0 && $this->currentTemplateId !== null) { - $this->_out($this->FillColor); - } - } - - /** - * @inheritdoc - */ - public function SetLineWidth($width) - { - parent::SetLineWidth($width); - if ($this->page === 0 && $this->currentTemplateId !== null) { - $this->_out(\sprintf('%.2F w', $width * $this->k)); - } - } - - /** - * @inheritdoc - */ - public function SetFont($family, $style = '', $size = 0) - { - parent::SetFont($family, $style, $size); - if ($this->page === 0 && $this->currentTemplateId !== null) { - $this->_out(\sprintf('BT /F%d %.2F Tf ET', $this->CurrentFont['i'], $this->FontSizePt)); - } - } - - /** - * @inheritdoc - */ - public function SetFontSize($size) - { - parent::SetFontSize($size); - if ($this->page === 0 && $this->currentTemplateId !== null) { - $this->_out(sprintf('BT /F%d %.2F Tf ET', $this->CurrentFont['i'], $this->FontSizePt)); - } - } - - /** - * @inheritdoc - */ - protected function _putimages() - { - parent::_putimages(); - - foreach ($this->templates as $key => $template) { - $this->_newobj(); - $this->templates[$key]['objectNumber'] = $this->n; - - $this->_put('<_put(\sprintf('/BBox[0 0 %.2F %.2F]', $template['width'] * $this->k, $template['height'] * $this->k)); - $this->_put('/Resources 2 0 R'); // default resources dictionary of FPDF - - if ($this->compress) { - $buffer = \gzcompress($template['buffer']); - $this->_put('/Filter/FlateDecode'); - } else { - $buffer = $template['buffer']; - } - - $this->_put('/Length ' . \strlen($buffer)); - - if ($template['groupXObject']) { - $this->_put('/Group <>'); - } - - $this->_put('>>'); - $this->_putstream($buffer); - $this->_put('endobj'); - } - } - - /** - * @inheritdoc - */ - protected function _putxobjectdict() - { - foreach ($this->templates as $key => $template) { - $this->_put('/' . $template['id'] . ' ' . $template['objectNumber'] . ' 0 R'); - } - - parent::_putxobjectdict(); - } - - /** - * @inheritdoc - */ - public function _out($s) - { - if ($this->currentTemplateId !== null) { - $this->templates[$this->currentTemplateId]['buffer'] .= $s . "\n"; - } else { - parent::_out($s); - } - } -} \ No newline at end of file diff --git a/vendor/setasign/fpdi/src/Fpdi.php b/vendor/setasign/fpdi/src/Fpdi.php deleted file mode 100644 index b49c103b..00000000 --- a/vendor/setasign/fpdi/src/Fpdi.php +++ /dev/null @@ -1,155 +0,0 @@ -cleanUp(); - } - - /** - * Draws an imported page or a template onto the page or another template. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $tpl The template id - * @param float|int|array $x The abscissa of upper-left corner. Alternatively you could use an assoc array - * with the keys "x", "y", "width", "height", "adjustPageSize". - * @param float|int $y The ordinate of upper-left corner. - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @param bool $adjustPageSize - * @return array The size - * @see Fpdi::getTemplateSize() - */ - public function useTemplate($tpl, $x = 0, $y = 0, $width = null, $height = null, $adjustPageSize = false) - { - if (isset($this->importedPages[$tpl])) { - $size = $this->useImportedPage($tpl, $x, $y, $width, $height, $adjustPageSize); - if ($this->currentTemplateId !== null) { - $this->templates[$this->currentTemplateId]['resources']['templates']['importedPages'][$tpl] = $tpl; - } - return $size; - } - - return parent::useTemplate($tpl, $x, $y, $width, $height, $adjustPageSize); - } - - /** - * Get the size of an imported page or template. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $tpl The template id - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @return array|bool An array with following keys: width, height, 0 (=width), 1 (=height), orientation (L or P) - */ - public function getTemplateSize($tpl, $width = null, $height = null) - { - $size = parent::getTemplateSize($tpl, $width, $height); - if ($size === false) { - return $this->getImportedPageSize($tpl, $width, $height); - } - - return $size; - } - - /** - * @inheritdoc - * @throws CrossReferenceException - * @throws PdfParserException - */ - protected function _putimages() - { - $this->currentReaderId = null; - parent::_putimages(); - - foreach ($this->importedPages as $key => $pageData) { - $this->_newobj(); - $this->importedPages[$key]['objectNumber'] = $this->n; - $this->currentReaderId = $pageData['readerId']; - $this->writePdfType($pageData['stream']); - $this->_put('endobj'); - } - - foreach (\array_keys($this->readers) as $readerId) { - $parser = $this->getPdfReader($readerId)->getParser(); - $this->currentReaderId = $readerId; - - while (($objectNumber = \array_pop($this->objectsToCopy[$readerId])) !== null) { - try { - $object = $parser->getIndirectObject($objectNumber); - - } catch (CrossReferenceException $e) { - if ($e->getCode() === CrossReferenceException::OBJECT_NOT_FOUND) { - $object = PdfIndirectObject::create($objectNumber, 0, new PdfNull()); - } else { - throw $e; - } - } - - $this->writePdfType($object); - } - } - - $this->currentReaderId = null; - } - - /** - * @inheritdoc - */ - protected function _putxobjectdict() - { - foreach ($this->importedPages as $key => $pageData) { - $this->_put('/' . $pageData['id'] . ' ' . $pageData['objectNumber'] . ' 0 R'); - } - - parent::_putxobjectdict(); - } - - /** - * @inheritdoc - */ - protected function _put($s, $newLine = true) - { - if ($newLine) { - $this->buffer .= $s . "\n"; - } else { - $this->buffer .= $s; - } - } -} diff --git a/vendor/setasign/fpdi/src/FpdiException.php b/vendor/setasign/fpdi/src/FpdiException.php deleted file mode 100644 index d126c14f..00000000 --- a/vendor/setasign/fpdi/src/FpdiException.php +++ /dev/null @@ -1,19 +0,0 @@ -readers) : $this->createdReaders; - foreach ($readers as $id) { - $this->readers[$id]->getParser()->getStreamReader()->cleanUp(); - unset($this->readers[$id]); - } - - $this->createdReaders= []; - } - - /** - * Set the minimal PDF version. - * - * @param string $pdfVersion - */ - protected function setMinPdfVersion($pdfVersion) - { - if (\version_compare($pdfVersion, $this->PDFVersion, '>')) { - $this->PDFVersion = $pdfVersion; - } - } - - /** @noinspection PhpUndefinedClassInspection */ - /** - * Get a new pdf parser instance. - * - * @param StreamReader $streamReader - * @return PdfParser|FpdiPdfParser - */ - protected function getPdfParserInstance(StreamReader $streamReader) - { - /** @noinspection PhpUndefinedClassInspection */ - if (\class_exists(FpdiPdfParser::class)) { - /** @noinspection PhpUndefinedClassInspection */ - return new FpdiPdfParser($streamReader); - } - - return new PdfParser($streamReader); - } - - /** - * Get an unique reader id by the $file parameter. - * - * @param string|resource|PdfReader|StreamReader $file An open file descriptor, a path to a file, a PdfReader - * instance or a StreamReader instance. - * @return string - */ - protected function getPdfReaderId($file) - { - if (\is_resource($file)) { - $id = (string) $file; - } elseif (\is_string($file)) { - $id = \realpath($file); - if ($id === false) { - $id = $file; - } - } elseif (\is_object($file)) { - $id = \spl_object_hash($file); - } else { - throw new \InvalidArgumentException( - \sprintf('Invalid type in $file parameter (%s)', \gettype($file)) - ); - } - - /** @noinspection OffsetOperationsInspection */ - if (isset($this->readers[$id])) { - return $id; - } - - if (\is_resource($file)) { - $streamReader = new StreamReader($file); - } elseif (\is_string($file)) { - $streamReader = StreamReader::createByFile($file); - $this->createdReaders[] = $id; - } else { - $streamReader = $file; - } - - $reader = new PdfReader($this->getPdfParserInstance($streamReader)); - /** @noinspection OffsetOperationsInspection */ - $this->readers[$id] = $reader; - - return $id; - } - - /** - * Get a pdf reader instance by its id. - * - * @param string $id - * @return PdfReader - */ - protected function getPdfReader($id) - { - if (isset($this->readers[$id])) { - return $this->readers[$id]; - } - - throw new \InvalidArgumentException( - \sprintf('No pdf reader with the given id (%s) exists.', $id) - ); - } - - /** - * Set the source PDF file. - * - * @param string|resource|StreamReader $file Path to the file or a stream resource or a StreamReader instance. - * @return int The page count of the PDF document. - * @throws PdfParserException - */ - public function setSourceFile($file) - { - $this->currentReaderId = $this->getPdfReaderId($file); - $this->objectsToCopy[$this->currentReaderId] = []; - - $reader = $this->getPdfReader($this->currentReaderId); - $this->setMinPdfVersion($reader->getPdfVersion()); - - return $reader->getPageCount(); - } - - /** - * Imports a page. - * - * @param int $pageNumber The page number. - * @param string $box The page boundary to import. Default set to PageBoundaries::CROP_BOX. - * @param bool $groupXObject Define the form XObject as a group XObject to support transparency (if used). - * @return string A unique string identifying the imported page. - * @throws CrossReferenceException - * @throws FilterException - * @throws PdfParserException - * @throws PdfTypeException - * @throws PdfReaderException - * @see PageBoundaries - */ - public function importPage($pageNumber, $box = PageBoundaries::CROP_BOX, $groupXObject = true) - { - if (null === $this->currentReaderId) { - throw new \BadMethodCallException('No reader initiated. Call setSourceFile() first.'); - } - - $pageId = $this->currentReaderId; - - $pageNumber = (int)$pageNumber; - $pageId .= '|' . $pageNumber . '|' . ($groupXObject ? '1' : '0'); - - // for backwards compatibility with FPDI 1 - $box = \ltrim($box, '/'); - if (!PageBoundaries::isValidName($box)) { - throw new \InvalidArgumentException( - \sprintf('Box name is invalid: "%s"', $box) - ); - } - - $pageId .= '|' . $box; - - if (isset($this->importedPages[$pageId])) { - return $pageId; - } - - $reader = $this->getPdfReader($this->currentReaderId); - $page = $reader->getPage($pageNumber); - - $bbox = $page->getBoundary($box); - if ($bbox === false) { - throw new PdfReaderException( - \sprintf("Page doesn't have a boundary box (%s).", $box), - PdfReaderException::MISSING_DATA - ); - } - - $dict = new PdfDictionary(); - $dict->value['Type'] = PdfName::create('XObject'); - $dict->value['Subtype'] = PdfName::create('Form'); - $dict->value['FormType'] = PdfNumeric::create(1); - $dict->value['BBox'] = $bbox->toPdfArray(); - - if ($groupXObject) { - $this->setMinPdfVersion('1.4'); - $dict->value['Group'] = PdfDictionary::create([ - 'Type' => PdfName::create('Group'), - 'S' => PdfName::create('Transparency') - ]); - } - - $resources = $page->getAttribute('Resources'); - if ($resources !== null) { - $dict->value['Resources'] = $resources; - } - - list($width, $height) = $page->getWidthAndHeight($box); - - $a = 1; - $b = 0; - $c = 0; - $d = 1; - $e = -$bbox->getLlx(); - $f = -$bbox->getLly(); - - $rotation = $page->getRotation(); - - if ($rotation !== 0) { - $rotation *= -1; - $angle = $rotation * M_PI/180; - $a = \cos($angle); - $b = \sin($angle); - $c = -$b; - $d = $a; - - switch ($rotation) { - case -90: - $e = -$bbox->getLly(); - $f = $bbox->getUrx(); - break; - case -180: - $e = $bbox->getUrx(); - $f = $bbox->getUry(); - break; - case -270: - $e = $bbox->getUry(); - $f = -$bbox->getLlx(); - break; - } - } - - // we need to rotate/translate - if ($a != 1 || $b != 0 || $c != 0 || $d != 1 || $e != 0 || $f != 0) { - $dict->value['Matrix'] = PdfArray::create([ - PdfNumeric::create($a), PdfNumeric::create($b), PdfNumeric::create($c), - PdfNumeric::create($d), PdfNumeric::create($e), PdfNumeric::create($f) - ]); - } - - // try to use the existing content stream - $pageDict = $page->getPageDictionary(); - - $contentsObject = PdfType::resolve(PdfDictionary::get($pageDict, 'Contents'), $reader->getParser(), true); - $contents = PdfType::resolve($contentsObject, $reader->getParser()); - - // just copy the stream reference if it is only a single stream - if (($contentsIsStream = ($contents instanceof PdfStream)) - || ($contents instanceof PdfArray && \count($contents->value) === 1) - ) { - if ($contentsIsStream) { - /** - * @var PdfIndirectObject $contentsObject - */ - $stream = $contents; - } else { - $stream = PdfType::resolve($contents->value[0], $reader->getParser()); - } - - $filter = PdfDictionary::get($stream->value, 'Filter'); - if (!$filter instanceof PdfNull) { - $dict->value['Filter'] = $filter; - } - $length = PdfType::resolve(PdfDictionary::get($stream->value, 'Length'), $reader->getParser()); - $dict->value['Length'] = $length; - $stream->value = $dict; - - // otherwise extract it from the array and re-compress the whole stream - } else { - $streamContent = $this->compress - ? \gzcompress($page->getContentStream()) - : $page->getContentStream(); - - $dict->value['Length'] = PdfNumeric::create(\strlen($streamContent)); - if ($this->compress) { - $dict->value['Filter'] = PdfName::create('FlateDecode'); - } - - $stream = PdfStream::create($dict, $streamContent); - } - - $this->importedPages[$pageId] = [ - 'objectNumber' => null, - 'readerId' => $this->currentReaderId, - 'id' => 'TPL' . $this->getNextTemplateId(), - 'width' => $width / $this->k, - 'height' => $height / $this->k, - 'stream' => $stream - ]; - - return $pageId; - } - - /** - * Draws an imported page onto the page. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $pageId The page id - * @param float|int|array $x The abscissa of upper-left corner. Alternatively you could use an assoc array - * with the keys "x", "y", "width", "height", "adjustPageSize". - * @param float|int $y The ordinate of upper-left corner. - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @param bool $adjustPageSize - * @return array The size. - * @see Fpdi::getTemplateSize() - */ - public function useImportedPage($pageId, $x = 0, $y = 0, $width = null, $height = null, $adjustPageSize = false) - { - if (\is_array($x)) { - /** @noinspection OffsetOperationsInspection */ - unset($x['pageId']); - \extract($x, EXTR_IF_EXISTS); - /** @noinspection NotOptimalIfConditionsInspection */ - if (\is_array($x)) { - $x = 0; - } - } - - if (!isset($this->importedPages[$pageId])) { - throw new \InvalidArgumentException('Imported page does not exist!'); - } - - $importedPage = $this->importedPages[$pageId]; - - $originalSize = $this->getTemplateSize($pageId); - $newSize = $this->getTemplateSize($pageId, $width, $height); - if ($adjustPageSize) { - $this->setPageFormat($newSize, $newSize['orientation']); - } - - $this->_out( - // reset standard values, translate and scale - \sprintf( - 'q 0 J 1 w 0 j 0 G 0 g %.4F 0 0 %.4F %.4F %.4F cm /%s Do Q', - ($newSize['width'] / $originalSize['width']), - ($newSize['height'] / $originalSize['height']), - $x * $this->k, - ($this->h - $y - $newSize['height']) * $this->k, - $importedPage['id'] - ) - ); - - return $newSize; - } - - /** - * Get the size of an imported page. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $tpl The template id - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @return array|bool An array with following keys: width, height, 0 (=width), 1 (=height), orientation (L or P) - */ - public function getImportedPageSize($tpl, $width = null, $height = null) - { - if (isset($this->importedPages[$tpl])) { - $importedPage = $this->importedPages[$tpl]; - - if ($width === null && $height === null) { - $width = $importedPage['width']; - $height = $importedPage['height']; - } elseif ($width === null) { - $width = $height * $importedPage['width'] / $importedPage['height']; - } - - if ($height === null) { - $height = $width * $importedPage['height'] / $importedPage['width']; - } - - if ($height <= 0. || $width <= 0.) { - throw new \InvalidArgumentException('Width or height parameter needs to be larger than zero.'); - } - - return [ - 'width' => $width, - 'height' => $height, - 0 => $width, - 1 => $height, - 'orientation' => $width > $height ? 'L' : 'P' - ]; - } - - return false; - } - - /** - * Writes a PdfType object to the resulting buffer. - * - * @param PdfType $value - * @throws PdfTypeException - */ - protected function writePdfType(PdfType $value) - { - if ($value instanceof PdfNumeric) { - if (\is_int($value->value)) { - $this->_put($value->value . ' ', false); - } else { - $this->_put(\rtrim(\rtrim(\sprintf('%.5F', $value->value), '0'), '.') . ' ', false); - } - - } elseif ($value instanceof PdfName) { - $this->_put('/' . $value->value . ' ', false); - - } elseif ($value instanceof PdfString) { - $this->_put('(' . $value->value . ')', false); - - } elseif ($value instanceof PdfHexString) { - $this->_put('<' . $value->value . '>'); - - } elseif ($value instanceof PdfBoolean) { - $this->_put($value->value ? 'true ' : 'false ', false); - - } elseif ($value instanceof PdfArray) { - $this->_put('[', false); - foreach ($value->value as $entry) { - $this->writePdfType($entry); - } - $this->_put(']'); - - } elseif ($value instanceof PdfDictionary) { - $this->_put('<<', false); - foreach ($value->value as $name => $entry) { - $this->_put('/' . $name . ' ', false); - $this->writePdfType($entry); - } - $this->_put('>>'); - - } elseif ($value instanceof PdfToken) { - $this->_put($value->value); - - } elseif ($value instanceof PdfNull) { - $this->_put('null '); - - } elseif ($value instanceof PdfStream) { - /** - * @var $value PdfStream - */ - $this->writePdfType($value->value); - $this->_put('stream'); - $this->_put($value->getStream()); - $this->_put('endstream'); - - } elseif ($value instanceof PdfIndirectObjectReference) { - if (!isset($this->objectMap[$this->currentReaderId])) { - $this->objectMap[$this->currentReaderId] = []; - } - - if (!isset($this->objectMap[$this->currentReaderId][$value->value])) { - $this->objectMap[$this->currentReaderId][$value->value] = ++$this->n; - $this->objectsToCopy[$this->currentReaderId][] = $value->value; - } - - $this->_put($this->objectMap[$this->currentReaderId][$value->value] . ' 0 R ', false); - - } elseif ($value instanceof PdfIndirectObject) { - /** - * @var $value PdfIndirectObject - */ - $n = $this->objectMap[$this->currentReaderId][$value->objectNumber]; - $this->_newobj($n); - $this->writePdfType($value->value); - $this->_put('endobj'); - } - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/CrossReference/AbstractReader.php b/vendor/setasign/fpdi/src/PdfParser/CrossReference/AbstractReader.php deleted file mode 100644 index 1d5c5795..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/CrossReference/AbstractReader.php +++ /dev/null @@ -1,96 +0,0 @@ -parser = $parser; - $this->readTrailer(); - } - - /** - * Get the trailer dictionary. - * - * @return PdfDictionary - */ - public function getTrailer() - { - return $this->trailer; - } - - /** - * Read the trailer dictionary. - * - * @throws CrossReferenceException - * @throws PdfTypeException - */ - protected function readTrailer() - { - try { - $trailerKeyword = $this->parser->readValue(null, PdfToken::class); - if ($trailerKeyword->value !== 'trailer') { - throw new CrossReferenceException( - \sprintf( - 'Unexpected end of cross reference. "trailer"-keyword expected, got: %s.', - $trailerKeyword->value - ), - CrossReferenceException::UNEXPECTED_END - ); - } - } catch (PdfTypeException $e) { - throw new CrossReferenceException( - 'Unexpected end of cross reference. "trailer"-keyword expected, got an invalid object type.', - CrossReferenceException::UNEXPECTED_END, - $e - ); - } - - try { - $trailer = $this->parser->readValue(null, PdfDictionary::class); - } catch (PdfTypeException $e) { - throw new CrossReferenceException( - 'Unexpected end of cross reference. Trailer not found.', - CrossReferenceException::UNEXPECTED_END, - $e - ); - } - - $this->trailer = $trailer; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReference.php b/vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReference.php deleted file mode 100644 index 95674ce1..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReference.php +++ /dev/null @@ -1,320 +0,0 @@ -parser = $parser; - $this->fileHeaderOffset = $fileHeaderOffset; - - $offset = $this->findStartXref(); - $reader = null; - /** @noinspection TypeUnsafeComparisonInspection */ - while ($offset != false) { // By doing an unsafe comparsion we ignore faulty references to byte offset 0 - try { - $reader = $this->readXref($offset + $this->fileHeaderOffset); - } catch (CrossReferenceException $e) { - // sometimes the file header offset is part of the byte offsets, so let's retry by resetting it to zero. - if ($e->getCode() === CrossReferenceException::INVALID_DATA && $this->fileHeaderOffset !== 0) { - $this->fileHeaderOffset = 0; - $reader = $this->readXref($offset + $this->fileHeaderOffset); - } else { - throw $e; - } - } - - $trailer = $reader->getTrailer(); - $this->checkForEncryption($trailer); - $this->readers[] = $reader; - - if (isset($trailer->value['Prev'])) { - $offset = $trailer->value['Prev']->value; - } else { - $offset = false; - } - } - - // fix faulty sub-section header - if ($reader instanceof FixedReader) { - /** - * @var FixedReader $reader - */ - $reader->fixFaultySubSectionShift(); - } - - if ($reader === null) { - throw new CrossReferenceException('No cross-reference found.', CrossReferenceException::NO_XREF_FOUND); - } - } - - /** - * Get the size of the cross reference. - * - * @return integer - */ - public function getSize() - { - return $this->getTrailer()->value['Size']->value; - } - - /** - * Get the trailer dictionary. - * - * @return PdfDictionary - */ - public function getTrailer() - { - return $this->readers[0]->getTrailer(); - } - - /** - * Get the cross reference readser instances. - * - * @return ReaderInterface[] - */ - public function getReaders() - { - return $this->readers; - } - - /** - * Get the offset by an object number. - * - * @param int $objectNumber - * @return integer|bool - */ - public function getOffsetFor($objectNumber) - { - foreach ($this->getReaders() as $reader) { - $offset = $reader->getOffsetFor($objectNumber); - if ($offset !== false) { - return $offset; - } - } - - return false; - } - - /** - * Get an indirect object by its object number. - * - * @param int $objectNumber - * @return PdfIndirectObject - * @throws CrossReferenceException - */ - public function getIndirectObject($objectNumber) - { - $offset = $this->getOffsetFor($objectNumber); - if ($offset === false) { - throw new CrossReferenceException( - \sprintf('Object (id:%s) not found.', $objectNumber), - CrossReferenceException::OBJECT_NOT_FOUND - ); - } - - $parser = $this->parser; - - $parser->getTokenizer()->clearStack(); - $parser->getStreamReader()->reset($offset + $this->fileHeaderOffset); - - try { - /** @var PdfIndirectObject $object */ - $object = $parser->readValue(null, PdfIndirectObject::class); - } catch (PdfTypeException $e) { - throw new CrossReferenceException( - \sprintf('Object (id:%s) not found at location (%s).', $objectNumber, $offset), - CrossReferenceException::OBJECT_NOT_FOUND, - $e - ); - } - - if ($object->objectNumber !== $objectNumber) { - throw new CrossReferenceException( - \sprintf('Wrong object found, got %s while %s was expected.', $object->objectNumber, $objectNumber), - CrossReferenceException::OBJECT_NOT_FOUND - ); - } - - return $object; - } - - /** - * Read the cross-reference table at a given offset. - * - * Internally the method will try to evaluate the best reader for this cross-reference. - * - * @param int $offset - * @return ReaderInterface - * @throws CrossReferenceException - * @throws PdfTypeException - */ - protected function readXref($offset) - { - $this->parser->getStreamReader()->reset($offset); - $this->parser->getTokenizer()->clearStack(); - $initValue = $this->parser->readValue(); - - return $this->initReaderInstance($initValue); - } - - /** - * Get a cross-reference reader instance. - * - * @param PdfToken|PdfIndirectObject $initValue - * @return ReaderInterface|bool - * @throws CrossReferenceException - * @throws PdfTypeException - */ - protected function initReaderInstance($initValue) - { - $position = $this->parser->getStreamReader()->getPosition() - + $this->parser->getStreamReader()->getOffset() + $this->fileHeaderOffset; - - if ($initValue instanceof PdfToken && $initValue->value === 'xref') { - try { - return new FixedReader($this->parser); - } catch (CrossReferenceException $e) { - $this->parser->getStreamReader()->reset($position); - $this->parser->getTokenizer()->clearStack(); - - return new LineReader($this->parser); - } - } - - if ($initValue instanceof PdfIndirectObject) { - // check for encryption - $stream = PdfStream::ensure($initValue->value); - - $type = PdfDictionary::get($stream->value, 'Type'); - if ($type->value !== 'XRef') { - throw new CrossReferenceException( - 'The xref position points to an incorrect object type.', - CrossReferenceException::INVALID_DATA - ); - } - - $this->checkForEncryption($stream->value); - - throw new CrossReferenceException( - 'This PDF document probably uses a compression technique which is not supported by the ' . - 'free parser shipped with FPDI. (See https://www.setasign.com/fpdi-pdf-parser for more details)', - CrossReferenceException::COMPRESSED_XREF - ); - } - - throw new CrossReferenceException( - 'The xref position points to an incorrect object type.', - CrossReferenceException::INVALID_DATA - ); - } - - /** - * Check for encryption. - * - * @param PdfDictionary $dictionary - * @throws CrossReferenceException - */ - protected function checkForEncryption(PdfDictionary $dictionary) - { - if (isset($dictionary->value['Encrypt'])) { - throw new CrossReferenceException( - 'This PDF document is encrypted and cannot be processed with FPDI.', - CrossReferenceException::ENCRYPTED - ); - } - } - - /** - * Find the start position for the first cross-reference. - * - * @return int The byte-offset position of the first cross-reference. - * @throws CrossReferenceException - */ - protected function findStartXref() - { - $reader = $this->parser->getStreamReader(); - $reader->reset(-self::$trailerSearchLength, self::$trailerSearchLength); - - $buffer = $reader->getBuffer(false); - $pos = \strrpos($buffer, 'startxref'); - $addOffset = 9; - if ($pos === false) { - // Some corrupted documents uses startref, instead of startxref - $pos = \strrpos($buffer, 'startref'); - if ($pos === false) { - throw new CrossReferenceException( - 'Unable to find pointer to xref table', - CrossReferenceException::NO_STARTXREF_FOUND - ); - } - $addOffset = 8; - } - - $reader->setOffset($pos + $addOffset); - - try { - $value = $this->parser->readValue(null, PdfNumeric::class); - } catch (PdfTypeException $e) { - throw new CrossReferenceException( - 'Invalid data after startxref keyword.', - CrossReferenceException::INVALID_DATA, - $e - ); - } - - return $value->value; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReferenceException.php b/vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReferenceException.php deleted file mode 100644 index 3fa9b33a..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReferenceException.php +++ /dev/null @@ -1,80 +0,0 @@ -reader = $parser->getStreamReader(); - $this->read(); - parent::__construct($parser); - } - - /** - * Get all subsection data. - * - * @return array - */ - public function getSubSections() - { - return $this->subSections; - } - - /** - * @inheritdoc - */ - public function getOffsetFor($objectNumber) - { - foreach ($this->subSections as $offset => list($startObject, $objectCount)) { - if ($objectNumber >= $startObject && $objectNumber < ($startObject + $objectCount)) { - $position = $offset + 20 * ($objectNumber - $startObject); - $this->reader->ensure($position, 20); - $line = $this->reader->readBytes(20); - if ($line[17] === 'f') { - return false; - } - - return (int) \substr($line, 0, 10); - } - } - - return false; - } - - /** - * Read the cross-reference. - * - * This reader will only read the subsections in this method. The offsets were resolved individually by this - * information. - * - * @throws CrossReferenceException - */ - protected function read() - { - $subSections = []; - - $startObject = $entryCount = $lastLineStart = null; - $validityChecked = false; - while (($line = $this->reader->readLine(20)) !== false) { - if (\strpos($line, 'trailer') !== false) { - $this->reader->reset($lastLineStart); - break; - } - - // jump over if line content doesn't match the expected string - if (\sscanf($line, '%d %d', $startObject, $entryCount) !== 2) { - continue; - } - - $oldPosition = $this->reader->getPosition(); - $position = $oldPosition + $this->reader->getOffset(); - - if (!$validityChecked && $entryCount > 0) { - $nextLine = $this->reader->readBytes(21); - /* Check the next line for maximum of 20 bytes and not longer - * By catching 21 bytes and trimming the length should be still 21. - */ - if (\strlen(\trim($nextLine)) !== 21) { - throw new CrossReferenceException( - 'Cross-reference entries are larger than 20 bytes.', - CrossReferenceException::ENTRIES_TOO_LARGE - ); - } - - /* Check for less than 20 bytes: cut the line to 20 bytes and trim; have to result in exactly 18 bytes. - * If it would have less bytes the substring would get the first bytes of the next line which would - * evaluate to a 20 bytes long string after trimming. - */ - if (\strlen(\trim(\substr($nextLine, 0, 20))) !== 18) { - throw new CrossReferenceException( - 'Cross-reference entries are less than 20 bytes.', - CrossReferenceException::ENTRIES_TOO_SHORT - ); - } - - $validityChecked = true; - } - - $subSections[$position] = [$startObject, $entryCount]; - - $lastLineStart = $position + $entryCount * 20; - $this->reader->reset($lastLineStart); - } - - // reset after the last correct parsed line - $this->reader->reset($lastLineStart); - - if (\count($subSections) === 0) { - throw new CrossReferenceException( - 'No entries found in cross-reference.', - CrossReferenceException::NO_ENTRIES - ); - } - - $this->subSections = $subSections; - } - - /** - * Fixes an invalid object number shift. - * - * This method can be used to repair documents with an invalid subsection header: - * - * - * xref - * 1 7 - * 0000000000 65535 f - * 0000000009 00000 n - * 0000412075 00000 n - * 0000412172 00000 n - * 0000412359 00000 n - * 0000412417 00000 n - * 0000412468 00000 n - * - * - * It shall only be called on the first table. - * - * @return bool - */ - public function fixFaultySubSectionShift() - { - $subSections = $this->getSubSections(); - if (\count($subSections) > 1) { - return false; - } - - $subSection = \current($subSections); - if ($subSection[0] != 1) { - return false; - } - - if ($this->getOffsetFor(1) === false) { - foreach ($subSections as $offset => list($startObject, $objectCount)) { - $this->subSections[$offset] = [$startObject - 1, $objectCount]; - } - return true; - } - - return false; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/CrossReference/LineReader.php b/vendor/setasign/fpdi/src/PdfParser/CrossReference/LineReader.php deleted file mode 100644 index 31a96be9..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/CrossReference/LineReader.php +++ /dev/null @@ -1,173 +0,0 @@ - 20 bytes). - * - * @package setasign\Fpdi\PdfParser\CrossReference - */ -class LineReader extends AbstractReader implements ReaderInterface -{ - /** - * The object offsets. - * - * @var array - */ - protected $offsets; - - /** - * LineReader constructor. - * - * @param PdfParser $parser - * @throws CrossReferenceException - */ - public function __construct(PdfParser $parser) - { - $this->read($this->extract($parser->getStreamReader())); - parent::__construct($parser); - } - - /** - * @inheritdoc - */ - public function getOffsetFor($objectNumber) - { - if (isset($this->offsets[$objectNumber])) { - return $this->offsets[$objectNumber][0]; - } - - return false; - } - - /** - * Get all found offsets. - * - * @return array - */ - public function getOffsets() - { - return $this->offsets; - } - - /** - * Extracts the cross reference data from the stream reader. - * - * @param StreamReader $reader - * @return string - * @throws CrossReferenceException - */ - protected function extract(StreamReader $reader) - { - $cycles = -1; - $bytesPerCycle = 100; - - $reader->reset(null, $bytesPerCycle); - - while ( - ($trailerPos = \strpos($reader->getBuffer(false), 'trailer', \max($bytesPerCycle * $cycles++, 0))) === false - ) { - if ($reader->increaseLength($bytesPerCycle) === false) { - break; - } - } - - if ($trailerPos === false) { - throw new CrossReferenceException( - 'Unexpected end of cross reference. "trailer"-keyword not found.', - CrossReferenceException::NO_TRAILER_FOUND - ); - } - - $xrefContent = \substr($reader->getBuffer(false), 0, $trailerPos); - $reader->reset($reader->getPosition() + $trailerPos); - - return $xrefContent; - } - - /** - * Read the cross-reference entries. - * - * @param string $xrefContent - * @throws CrossReferenceException - */ - protected function read($xrefContent) - { - // get eol markers in the first 100 bytes - \preg_match_all("/(\r\n|\n|\r)/", \substr($xrefContent, 0, 100), $m); - - if (\count($m[0]) === 0) { - throw new CrossReferenceException( - 'No data found in cross-reference.', - CrossReferenceException::INVALID_DATA - ); - } - - // count(array_count_values()) is faster then count(array_unique()) - // @see https://github.com/symfony/symfony/pull/23731 - // can be reverted for php7.2 - $differentLineEndings = \count(\array_count_values($m[0])); - if ($differentLineEndings > 1) { - $lines = \preg_split("/(\r\n|\n|\r)/", $xrefContent, -1, PREG_SPLIT_NO_EMPTY); - } else { - $lines = \explode($m[0][0], $xrefContent); - } - - unset($differentLineEndings, $m); - $linesCount = \count($lines); - $start = null; - $entryCount = 0; - - $offsets = []; - - /** @noinspection ForeachInvariantsInspection */ - for ($i = 0; $i < $linesCount; $i++) { - $line = \trim($lines[$i]); - if ($line) { - $pieces = \explode(' ', $line); - - $c = \count($pieces); - switch ($c) { - case 2: - $start = (int) $pieces[0]; - $entryCount += (int) $pieces[1]; - break; - - /** @noinspection PhpMissingBreakStatementInspection */ - case 3: - switch ($pieces[2]) { - case 'n': - $offsets[$start] = [(int) $pieces[0], (int) $pieces[1]]; - $start++; - break 2; - case 'f': - $start++; - break 2; - } - // fall through if pieces doesn't match - - default: - throw new CrossReferenceException( - \sprintf('Unexpected data in xref table (%s)', \implode(' ', $pieces)), - CrossReferenceException::INVALID_DATA - ); - } - } - } - - $this->offsets = $offsets; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/CrossReference/ReaderInterface.php b/vendor/setasign/fpdi/src/PdfParser/CrossReference/ReaderInterface.php deleted file mode 100644 index 84b22679..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/CrossReference/ReaderInterface.php +++ /dev/null @@ -1,35 +0,0 @@ - - if ($ch === 126 && isset($data[$k + 1]) && (\ord($data[$k + 1]) & 0xFF) === 62) { - break; - } - if (\preg_match('/^\s$/', \chr($ch))) { - continue; - } - if ($ch === 122 /* z */ && $state === 0) { - $out .= \chr(0) . \chr(0) . \chr(0) . \chr(0); - continue; - } - if ($ch < 33 /* ! */ || $ch > 117 /* u */) { - throw new Ascii85Exception( - 'Illegal character found while ASCII85 decode.', - Ascii85Exception::ILLEGAL_CHAR_FOUND - ); - } - - $chn[$state] = $ch - 33;/* ! */ - $state++; - - if ($state === 5) { - $state = 0; - $r = 0; - for ($j = 0; $j < 5; ++$j) { - /** @noinspection UnnecessaryCastingInspection */ - $r = (int)($r * 85 + $chn[$j]); - } - - $out .= \chr($r >> 24) - . \chr($r >> 16) - . \chr($r >> 8) - . \chr($r); - } - } - - if ($state === 1) { - throw new Ascii85Exception( - 'Illegal length while ASCII85 decode.', - Ascii85Exception::ILLEGAL_LENGTH - ); - } - - if ($state === 2) { - $r = $chn[0] * 85 * 85 * 85 * 85 + ($chn[1] + 1) * 85 * 85 * 85; - $out .= \chr($r >> 24); - - } elseif ($state === 3) { - $r = $chn[0] * 85 * 85 * 85 * 85 + $chn[1] * 85 * 85 * 85 + ($chn[2] + 1) * 85 * 85; - $out .= \chr($r >> 24); - $out .= \chr($r >> 16); - - } elseif ($state === 4) { - $r = $chn[0] * 85 * 85 * 85 * 85 + $chn[1] * 85 * 85 * 85 + $chn[2] * 85 * 85 + ($chn[3] + 1) * 85; - $out .= \chr($r >> 24); - $out .= \chr($r >> 16); - $out .= \chr($r >> 8); - } - - return $out; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Filter/Ascii85Exception.php b/vendor/setasign/fpdi/src/PdfParser/Filter/Ascii85Exception.php deleted file mode 100644 index 898276c7..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Filter/Ascii85Exception.php +++ /dev/null @@ -1,28 +0,0 @@ -')); - if ((\strlen($data) % 2) === 1) { - $data .= '0'; - } - - return \pack('H*', $data); - } - - /** - * Converts a string into ASCII hexadecimal representation. - * - * @param string $data The input string - * @param boolean $leaveEOD - * @return string - */ - public function encode($data, $leaveEOD = false) - { - $t = \unpack('H*', $data); - return \current($t) - . ($leaveEOD ? '' : '>'); - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Filter/FilterException.php b/vendor/setasign/fpdi/src/PdfParser/Filter/FilterException.php deleted file mode 100644 index a41ce690..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Filter/FilterException.php +++ /dev/null @@ -1,24 +0,0 @@ -extensionLoaded()) { - $oData = $data; - $data = @((\strlen($data) > 0) ? \gzuncompress($data) : ''); - if ($data === false) { - // Try this fallback - $tries = 1; - while ($tries < 10 && ($data === false || \strlen($data) < (\strlen($oData) - $tries - 1))) { - $data = @(\gzinflate(\substr($oData, $tries))); - $tries++; - } - - if ($data === false) { - // let's try if the checksum is CRC32 - $fh = fopen('php://temp', 'w+b'); - \fwrite($fh, "\x1f\x8b\x08\x00\x00\x00\x00\x00" . $oData); - \stream_filter_append($fh, 'zlib.inflate', \STREAM_FILTER_READ, ['window' => 30]); - \fseek($fh, 0); - $data = \stream_get_contents($fh); - \fclose($fh); - } - - if (!$data) { - throw new FlateException( - 'Error while decompressing stream.', - FlateException::DECOMPRESS_ERROR - ); - } - } - } else { - throw new FlateException( - 'To handle FlateDecode filter, enable zlib support in PHP.', - FlateException::NO_ZLIB - ); - } - - return $data; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Filter/FlateException.php b/vendor/setasign/fpdi/src/PdfParser/Filter/FlateException.php deleted file mode 100644 index d44281da..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Filter/FlateException.php +++ /dev/null @@ -1,28 +0,0 @@ -initsTable(); - - $this->data = $data; - $this->dataLength = \strlen($data); - - // Initialize pointers - $this->bytePointer = 0; - - $this->nextData = 0; - $this->nextBits = 0; - - $oldCode = 0; - - $uncompData = ''; - - while (($code = $this->getNextCode()) !== 257) { - if ($code === 256) { - $this->initsTable(); - $code = $this->getNextCode(); - - if ($code === 257) { - break; - } - - $uncompData .= $this->sTable[$code]; - $oldCode = $code; - - } else { - if ($code < $this->tIdx) { - $string = $this->sTable[$code]; - $uncompData .= $string; - - $this->addStringToTable($this->sTable[$oldCode], $string[0]); - $oldCode = $code; - } else { - $string = $this->sTable[$oldCode]; - $string .= $string[0]; - $uncompData .= $string; - - $this->addStringToTable($string); - $oldCode = $code; - } - } - } - - return $uncompData; - } - - /** - * Initialize the string table. - */ - protected function initsTable() - { - $this->sTable = []; - - for ($i = 0; $i < 256; $i++) { - $this->sTable[$i] = \chr($i); - } - - $this->tIdx = 258; - $this->bitsToGet = 9; - } - - /** - * Add a new string to the string table. - * - * @param string $oldString - * @param string $newString - */ - protected function addStringToTable($oldString, $newString = '') - { - $string = $oldString . $newString; - - // Add this new String to the table - $this->sTable[$this->tIdx++] = $string; - - if ($this->tIdx === 511) { - $this->bitsToGet = 10; - } elseif ($this->tIdx === 1023) { - $this->bitsToGet = 11; - } elseif ($this->tIdx === 2047) { - $this->bitsToGet = 12; - } - } - - /** - * Returns the next 9, 10, 11 or 12 bits. - * - * @return integer - */ - protected function getNextCode() - { - if ($this->bytePointer === $this->dataLength) { - return 257; - } - - $this->nextData = ($this->nextData << 8) | (\ord($this->data[$this->bytePointer++]) & 0xff); - $this->nextBits += 8; - - if ($this->nextBits < $this->bitsToGet) { - $this->nextData = ($this->nextData << 8) | (\ord($this->data[$this->bytePointer++]) & 0xff); - $this->nextBits += 8; - } - - $code = ($this->nextData >> ($this->nextBits - $this->bitsToGet)) & $this->andTable[$this->bitsToGet - 9]; - $this->nextBits -= $this->bitsToGet; - - return $code; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Filter/LzwException.php b/vendor/setasign/fpdi/src/PdfParser/Filter/LzwException.php deleted file mode 100644 index e822bc98..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Filter/LzwException.php +++ /dev/null @@ -1,23 +0,0 @@ -streamReader = $streamReader; - $this->tokenizer = new Tokenizer($streamReader); - } - - /** - * Removes cycled references. - * - * @internal - */ - public function cleanUp() - { - $this->xref = null; - } - - /** - * Get the stream reader instance. - * - * @return StreamReader - */ - public function getStreamReader() - { - return $this->streamReader; - } - - /** - * Get the tokenizer instance. - * - * @return Tokenizer - */ - public function getTokenizer() - { - return $this->tokenizer; - } - - /** - * Resolves the file header. - * - * @throws PdfParserException - * @return int - */ - protected function resolveFileHeader() - { - if ($this->fileHeader) { - return $this->fileHeaderOffset; - } - - $this->streamReader->reset(0); - $offset = false; - $maxIterations = 1000; - while (true) { - $buffer = $this->streamReader->getBuffer(false); - $offset = \strpos($buffer, '%PDF-'); - if ($offset === false) { - if (!$this->streamReader->increaseLength(100) || (--$maxIterations === 0)) { - throw new PdfParserException( - 'Unable to find PDF file header.', - PdfParserException::FILE_HEADER_NOT_FOUND - ); - } - continue; - } - break; - } - - $this->fileHeaderOffset = $offset; - $this->streamReader->setOffset($offset); - - $this->fileHeader = \trim($this->streamReader->readLine()); - return $this->fileHeaderOffset; - } - - /** - * Get the cross reference instance. - * - * @return CrossReference - * @throws CrossReferenceException - * @throws PdfParserException - */ - public function getCrossReference() - { - if ($this->xref === null) { - $this->xref = new CrossReference($this, $this->resolveFileHeader()); - } - - return $this->xref; - } - - /** - * Get the PDF version. - * - * @return int[] An array of major and minor version. - * @throws PdfParserException - */ - public function getPdfVersion() - { - $this->resolveFileHeader(); - - if (\preg_match('/%PDF-(\d)\.(\d)/', $this->fileHeader, $result) === 0) { - throw new PdfParserException( - 'Unable to extract PDF version from file header.', - PdfParserException::PDF_VERSION_NOT_FOUND - ); - } - list(, $major, $minor) = $result; - - $catalog = $this->getCatalog(); - if (isset($catalog->value['Version'])) { - $versionParts = \explode('.', PdfName::unescape(PdfType::resolve($catalog->value['Version'], $this)->value)); - if (count($versionParts) === 2) { - list($major, $minor) = $versionParts; - } - } - - return [(int) $major, (int) $minor]; - } - - /** - * Get the catalog dictionary. - * - * @return PdfDictionary - * @throws Type\PdfTypeException - * @throws CrossReferenceException - * @throws PdfParserException - */ - public function getCatalog() - { - $xref = $this->getCrossReference(); - $trailer = $xref->getTrailer(); - - $catalog = PdfType::resolve(PdfDictionary::get($trailer, 'Root'), $this); - - return PdfDictionary::ensure($catalog); - } - - /** - * Get an indirect object by its object number. - * - * @param int $objectNumber - * @param bool $cache - * @return PdfIndirectObject - * @throws CrossReferenceException - * @throws PdfParserException - */ - public function getIndirectObject($objectNumber, $cache = false) - { - $objectNumber = (int) $objectNumber; - if (isset($this->objects[$objectNumber])) { - return $this->objects[$objectNumber]; - } - - $xref = $this->getCrossReference(); - $object = $xref->getIndirectObject($objectNumber); - - if ($cache) { - $this->objects[$objectNumber] = $object; - } - - return $object; - } - - /** - * Read a PDF value. - * - * @param null|bool|string $token - * @param null|string $expectedType - * @return bool|PdfArray|PdfBoolean|PdfHexString|PdfName|PdfNull|PdfNumeric|PdfString|PdfToken|PdfIndirectObjectReference - * @throws Type\PdfTypeException - */ - public function readValue($token = null, $expectedType = null) - { - if ($token === null) { - $token = $this->tokenizer->getNextToken(); - } - - if ($token === false) { - if ($expectedType !== null) { - throw new Type\PdfTypeException('Got unexpected token type.', Type\PdfTypeException::INVALID_DATA_TYPE); - } - return false; - } - - switch ($token) { - case '(': - $this->ensureExpectedType($token, $expectedType); - return PdfString::parse($this->streamReader); - - case '<': - if ($this->streamReader->getByte() === '<') { - $this->ensureExpectedType('<<', $expectedType); - $this->streamReader->addOffset(1); - return PdfDictionary::parse($this->tokenizer, $this->streamReader, $this); - } - - $this->ensureExpectedType($token, $expectedType); - return PdfHexString::parse($this->streamReader); - - case '/': - $this->ensureExpectedType($token, $expectedType); - return PdfName::parse($this->tokenizer, $this->streamReader); - - case '[': - $this->ensureExpectedType($token, $expectedType); - return PdfArray::parse($this->tokenizer, $this); - - default: - if (\is_numeric($token)) { - if (($token2 = $this->tokenizer->getNextToken()) !== false) { - if (\is_numeric($token2)) { - if (($token3 = $this->tokenizer->getNextToken()) !== false) { - switch ($token3) { - case 'obj': - if ($expectedType !== null && $expectedType !== PdfIndirectObject::class) { - throw new Type\PdfTypeException( - 'Got unexpected token type.', Type\PdfTypeException::INVALID_DATA_TYPE - ); - } - - return PdfIndirectObject::parse( - $token, - $token2, - $this, - $this->tokenizer, - $this->streamReader - ); - case 'R': - if ($expectedType !== null && - $expectedType !== PdfIndirectObjectReference::class - ) { - throw new Type\PdfTypeException( - 'Got unexpected token type.', Type\PdfTypeException::INVALID_DATA_TYPE - ); - } - - return PdfIndirectObjectReference::create($token, $token2); - } - - $this->tokenizer->pushStack($token3); - } - } - - $this->tokenizer->pushStack($token2); - } - - if ($expectedType !== null && $expectedType !== PdfNumeric::class) { - throw new Type\PdfTypeException( - 'Got unexpected token type.', Type\PdfTypeException::INVALID_DATA_TYPE - ); - } - return PdfNumeric::create($token); - } - - if ($token === 'true' || $token === 'false') { - $this->ensureExpectedType($token, $expectedType); - return PdfBoolean::create($token === 'true'); - } - - if ($token === 'null') { - $this->ensureExpectedType($token, $expectedType); - return new PdfNull(); - } - - if ($expectedType !== null && $expectedType !== PdfToken::class) { - throw new Type\PdfTypeException( - 'Got unexpected token type.', Type\PdfTypeException::INVALID_DATA_TYPE - ); - } - - $v = new PdfToken(); - $v->value = $token; - - return $v; - } - } - - /** - * Ensures that the token will evaluate to an expected object type (or not). - * - * @param string $token - * @param string|null $expectedType - * @return bool - * @throws Type\PdfTypeException - */ - private function ensureExpectedType($token, $expectedType) - { - static $mapping = [ - '(' => PdfString::class, - '<' => PdfHexString::class, - '<<' => PdfDictionary::class, - '/' => PdfName::class, - '[' => PdfArray::class, - 'true' => PdfBoolean::class, - 'false' => PdfBoolean::class, - 'null' => PdfNull::class - ]; - - if ($expectedType === null || $mapping[$token] === $expectedType) { - return true; - } - - throw new Type\PdfTypeException('Got unexpected token type.', Type\PdfTypeException::INVALID_DATA_TYPE); - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/PdfParserException.php b/vendor/setasign/fpdi/src/PdfParser/PdfParserException.php deleted file mode 100644 index 476bccd5..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/PdfParserException.php +++ /dev/null @@ -1,50 +0,0 @@ -stream = $stream; - $this->closeStream = $closeStream; - $this->reset(); - } - - /** - * The destructor. - */ - public function __destruct() - { - $this->cleanUp(); - } - - /** - * Closes the file handle. - */ - public function cleanUp() - { - if ($this->closeStream && is_resource($this->stream)) { - \fclose($this->stream); - } - } - - /** - * Returns the byte length of the buffer. - * - * @param bool $atOffset - * @return int - */ - public function getBufferLength($atOffset = false) - { - if ($atOffset === false) { - return $this->bufferLength; - } - - return $this->bufferLength - $this->offset; - } - - /** - * Get the current position in the stream. - * - * @return int - */ - public function getPosition() - { - return $this->position; - } - - /** - * Returns the current buffer. - * - * @param bool $atOffset - * @return string - */ - public function getBuffer($atOffset = true) - { - if ($atOffset === false) { - return $this->buffer; - } - - $string = \substr($this->buffer, $this->offset); - - return (string) $string; - } - - /** - * Gets a byte at a specific position in the buffer. - * - * If the position is invalid the method will return false. - * - * If the $position parameter is set to null the value of $this->offset will be used. - * - * @param int|null $position - * @return string|bool - */ - public function getByte($position = null) - { - $position = (int) ($position !== null ? $position : $this->offset); - if ($position >= $this->bufferLength && - (!$this->increaseLength() || $position >= $this->bufferLength) - ) { - return false; - } - - return $this->buffer[$position]; - } - - /** - * Returns a byte at a specific position, and set the offset to the next byte position. - * - * If the position is invalid the method will return false. - * - * If the $position parameter is set to null the value of $this->offset will be used. - * - * @param int|null $position - * @return string|bool - */ - public function readByte($position = null) - { - if ($position !== null) { - $position = (int) $position; - // check if needed bytes are available in the current buffer - if (!($position >= $this->position && $position < $this->position + $this->bufferLength)) { - $this->reset($position); - $offset = $this->offset; - } else { - $offset = $position - $this->position; - } - } else { - $offset = $this->offset; - } - - if ($offset >= $this->bufferLength && - ((!$this->increaseLength()) || $offset >= $this->bufferLength) - ) { - return false; - } - - $this->offset = $offset + 1; - return $this->buffer[$offset]; - } - - /** - * Read bytes from the current or a specific offset position and set the internal pointer to the next byte. - * - * If the position is invalid the method will return false. - * - * If the $position parameter is set to null the value of $this->offset will be used. - * - * @param int $length - * @param int|null $position - * @return string - */ - public function readBytes($length, $position = null) - { - $length = (int) $length; - if ($position !== null) { - // check if needed bytes are available in the current buffer - if (!($position >= $this->position && $position < $this->position + $this->bufferLength)) { - $this->reset($position, $length); - $offset = $this->offset; - } else { - $offset = $position - $this->position; - } - } else { - $offset = $this->offset; - } - - if (($offset + $length) > $this->bufferLength && - ((!$this->increaseLength($length)) || ($offset + $length) > $this->bufferLength) - ) { - return false; - } - - $bytes = \substr($this->buffer, $offset, $length); - $this->offset = $offset + $length; - - return $bytes; - } - - /** - * Read a line from the current position. - * - * @param int $length - * @return string|bool - */ - public function readLine($length = 1024) - { - if ($this->ensureContent() === false) { - return false; - } - - $line = ''; - while ($this->ensureContent()) { - $char = $this->readByte(); - - if ($char === "\n") { - break; - } - - if ($char === "\r") { - if ($this->getByte() === "\n") { - $this->addOffset(1); - } - break; - } - - $line .= $char; - - if (\strlen($line) >= $length) { - break; - } - } - - return $line; - } - - /** - * Set the offset position in the current buffer. - * - * @param int $offset - */ - public function setOffset($offset) - { - if ($offset > $this->bufferLength || $offset < 0) { - throw new \OutOfRangeException( - \sprintf('Offset (%s) out of range (length: %s)', $offset, $this->bufferLength) - ); - } - - $this->offset = (int) $offset; - } - - /** - * Returns the current offset in the current buffer. - * - * @return int - */ - public function getOffset() - { - return $this->offset; - } - - /** - * Add an offset to the current offset. - * - * @param int $offset - */ - public function addOffset($offset) - { - $this->setOffset($this->offset + $offset); - } - - /** - * Make sure that there is at least one character beyond the current offset in the buffer. - * - * @return bool - */ - public function ensureContent() - { - while ($this->offset >= $this->bufferLength) { - if (!$this->increaseLength()) { - return false; - } - } - return true; - } - - /** - * Returns the stream. - * - * @return resource - */ - public function getStream() - { - return $this->stream; - } - - /** - * Gets the total available length. - * - * @return int - */ - public function getTotalLength() - { - if ($this->totalLength === null) { - $stat = \fstat($this->stream); - $this->totalLength = $stat['size']; - } - - return $this->totalLength; - } - - /** - * Resets the buffer to a position and re-read the buffer with the given length. - * - * If the $pos parameter is negative the start buffer position will be the $pos'th position from - * the end of the file. - * - * If the $pos parameter is negative and the absolute value is bigger then the totalLength of - * the file $pos will set to zero. - * - * @param int|null $pos Start position of the new buffer - * @param int $length Length of the new buffer. Mustn't be negative - */ - public function reset($pos = 0, $length = 200) - { - if ($pos === null) { - $pos = $this->position + $this->offset; - } elseif ($pos < 0) { - $pos = \max(0, $this->getTotalLength() + $pos); - } - - \fseek($this->stream, $pos); - - $this->position = $pos; - $this->buffer = $length > 0 ? \fread($this->stream, $length) : ''; - $this->bufferLength = \strlen($this->buffer); - $this->offset = 0; - - // If a stream wrapper is in use it is possible that - // length values > 8096 will be ignored, so use the - // increaseLength()-method to correct that behavior - if ($this->bufferLength < $length && $this->increaseLength($length - $this->bufferLength)) { - // increaseLength parameter is $minLength, so cut to have only the required bytes in the buffer - $this->buffer = \substr($this->buffer, 0, $length); - $this->bufferLength = \strlen($this->buffer); - } - } - - /** - * Ensures bytes in the buffer with a specific length and location in the file. - * - * @param int $pos - * @param int $length - * @see reset() - */ - public function ensure($pos, $length) - { - if ($pos >= $this->position - && $pos < ($this->position + $this->bufferLength) - && ($this->position + $this->bufferLength) >= ($pos + $length) - ) { - $this->offset = $pos - $this->position; - } else { - $this->reset($pos, $length); - } - } - - /** - * Forcefully read more data into the buffer. - * - * @param int $minLength - * @return bool Returns false if the stream reaches the end - */ - public function increaseLength($minLength = 100) - { - $length = \max($minLength, 100); - - if (\feof($this->stream) || $this->getTotalLength() === $this->position + $this->bufferLength) { - return false; - } - - $newLength = $this->bufferLength + $length; - do { - $this->buffer .= \fread($this->stream, $newLength - $this->bufferLength); - $this->bufferLength = \strlen($this->buffer); - } while (($this->bufferLength !== $newLength) && !\feof($this->stream)); - - return true; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Tokenizer.php b/vendor/setasign/fpdi/src/PdfParser/Tokenizer.php deleted file mode 100644 index ebf0d0b8..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Tokenizer.php +++ /dev/null @@ -1,161 +0,0 @@ -streamReader = $streamReader; - } - - /** - * Get the stream reader instance. - * - * @return StreamReader - */ - public function getStreamReader() - { - return $this->streamReader; - } - - /** - * Clear the token stack. - */ - public function clearStack() - { - $this->stack = []; - } - - /** - * Push a token onto the stack. - * - * @param string $token - */ - public function pushStack($token) - { - $this->stack[] = $token; - } - - /** - * Get next token. - * - * @return bool|string - */ - public function getNextToken() - { - $token = \array_pop($this->stack); - if ($token !== null) { - return $token; - } - - if (($byte = $this->streamReader->readByte()) === false) { - return false; - } - - if ($byte === "\x20" || - $byte === "\x0A" || - $byte === "\x0D" || - $byte === "\x0C" || - $byte === "\x09" || - $byte === "\x00" - ) { - if ($this->leapWhiteSpaces() === false) { - return false; - } - $byte = $this->streamReader->readByte(); - } - - switch ($byte) { - case '/': - case '[': - case ']': - case '(': - case ')': - case '{': - case '}': - case '<': - case '>': - return $byte; - case '%': - $this->streamReader->readLine(); - return $this->getNextToken(); - } - - /* This way is faster than checking single bytes. - */ - $bufferOffset = $this->streamReader->getOffset(); - do { - $lastBuffer = $this->streamReader->getBuffer(false); - $pos = \strcspn( - $lastBuffer, - "\x00\x09\x0A\x0C\x0D\x20()<>[]{}/%", - $bufferOffset - ); - } while ( - // Break the loop if a delimiter or white space char is matched - // in the current buffer or increase the buffers length - $lastBuffer !== false && - ( - $bufferOffset + $pos === \strlen($lastBuffer) && - $this->streamReader->increaseLength() - ) - ); - - $result = \substr($lastBuffer, $bufferOffset - 1, $pos + 1); - $this->streamReader->setOffset($bufferOffset + $pos); - - return $result; - } - - /** - * Leap white spaces. - * - * @return boolean - */ - public function leapWhiteSpaces() - { - do { - if (!$this->streamReader->ensureContent()) { - return false; - } - - $buffer = $this->streamReader->getBuffer(false); - $matches = \strspn($buffer, "\x20\x0A\x0C\x0D\x09\x00", $this->streamReader->getOffset()); - if ($matches > 0) { - $this->streamReader->addOffset($matches); - } - } while ($this->streamReader->getOffset() >= $this->streamReader->getBufferLength()); - - return true; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfArray.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfArray.php deleted file mode 100644 index 9cf449ad..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfArray.php +++ /dev/null @@ -1,85 +0,0 @@ -getNextToken()) !== ']') { - if ($token === false || ($value = $parser->readValue($token)) === false) { - return false; - } - - $result[] = $value; - } - - $v = new self; - $v->value = $result; - - return $v; - } - - /** - * Helper method to create an instance. - * - * @param PdfType[] $values - * @return self - */ - public static function create(array $values = []) - { - $v = new self; - $v->value = $values; - - return $v; - } - - /** - * Ensures that the passed array is a PdfArray instance with a (optional) specific size. - * - * @param mixed $array - * @param null|int $size - * @return self - * @throws PdfTypeException - */ - public static function ensure($array, $size = null) - { - $result = PdfType::ensureType(self::class, $array, 'Array value expected.'); - - if ($size !== null && \count($array->value) !== $size) { - throw new PdfTypeException( - \sprintf('Array with %s entries expected.', $size), - PdfTypeException::INVALID_DATA_SIZE - ); - } - - return $result; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfBoolean.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfBoolean.php deleted file mode 100644 index 5f746b7d..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfBoolean.php +++ /dev/null @@ -1,43 +0,0 @@ -value = (boolean) $value; - return $v; - } - - /** - * Ensures that the passed value is a PdfBoolean instance. - * - * @param mixed $value - * @return self - * @throws PdfTypeException - */ - public static function ensure($value) - { - return PdfType::ensureType(self::class, $value, 'Boolean value expected.'); - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfDictionary.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfDictionary.php deleted file mode 100644 index 46b669d6..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfDictionary.php +++ /dev/null @@ -1,135 +0,0 @@ -getNextToken(); - if ($token === '>' && $streamReader->getByte() === '>') { - $streamReader->addOffset(1); - break; - } - - $key = $parser->readValue($token); - if ($key === false) { - return false; - } - - // ensure the first value to be a Name object - if (!($key instanceof PdfName)) { - $lastToken = null; - // ignore all other entries and search for the closing brackets - while (($token = $tokenizer->getNextToken()) !== '>' && $token !== false && $lastToken !== '>') { - $lastToken = $token; - } - - if ($token === false) { - return false; - } - - break; - } - - - $value = $parser->readValue(); - if ($value === false) { - return false; - } - - if ($value instanceof PdfNull) { - continue; - } - - // catch missing value - if ($value instanceof PdfToken && $value->value === '>' && $streamReader->getByte() === '>') { - $streamReader->addOffset(1); - break; - } - - $entries[$key->value] = $value; - } - - $v = new self; - $v->value = $entries; - - return $v; - } - - /** - * Helper method to create an instance. - * - * @param PdfType[] $entries The keys are the name entries of the dictionary. - * @return self - */ - public static function create(array $entries = []) - { - $v = new self; - $v->value = $entries; - - return $v; - } - - /** - * Get a value by its key from a dictionary or a default value. - * - * @param mixed $dictionary - * @param string $key - * @param PdfType|mixed|null $default - * @return PdfNull|PdfType - * @throws PdfTypeException - */ - public static function get($dictionary, $key, PdfType $default = null) - { - $dictionary = self::ensure($dictionary); - - if (isset($dictionary->value[$key])) { - return $dictionary->value[$key]; - } - - return $default === null - ? new PdfNull() - : $default; - } - - /** - * Ensures that the passed value is a PdfDictionary instance. - * - * @param mixed $dictionary - * @return self - * @throws PdfTypeException - */ - public static function ensure($dictionary) - { - return PdfType::ensureType(self::class, $dictionary, 'Dictionary value expected.'); - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfHexString.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfHexString.php deleted file mode 100644 index 793fa43a..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfHexString.php +++ /dev/null @@ -1,82 +0,0 @@ -getOffset(); - - /** - * @var string $buffer - * @var int $pos - */ - while (true) { - $buffer = $streamReader->getBuffer(false); - $pos = \strpos($buffer, '>', $bufferOffset); - if ($pos === false) { - if (!$streamReader->increaseLength()) { - return false; - } - continue; - } - - break; - } - - $result = \substr($buffer, $bufferOffset, $pos - $bufferOffset); - $streamReader->setOffset($pos + 1); - - $v = new self; - $v->value = $result; - - return $v; - } - - /** - * Helper method to create an instance. - * - * @param string $string The hex encoded string. - * @return self - */ - public static function create($string) - { - $v = new self; - $v->value = $string; - - return $v; - } - - /** - * Ensures that the passed value is a PdfHexString instance. - * - * @param mixed $hexString - * @return self - * @throws PdfTypeException - */ - public static function ensure($hexString) - { - return PdfType::ensureType(self::class, $hexString, 'Hex string value expected.'); - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObject.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObject.php deleted file mode 100644 index a5bd2ac6..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObject.php +++ /dev/null @@ -1,104 +0,0 @@ -readValue(); - if ($value === false) { - return false; - } - - $nextToken = $tokenizer->getNextToken(); - if ($nextToken === 'stream') { - $value = PdfStream::parse($value, $reader, $parser); - } elseif ($nextToken !== false) { - $tokenizer->pushStack($nextToken); - } - - $v = new self; - $v->objectNumber = (int) $objectNumberToken; - $v->generationNumber = (int) $objectGenerationNumberToken; - $v->value = $value; - - return $v; - } - - /** - * Helper method to create an instance. - * - * @param int $objectNumber - * @param int $generationNumber - * @param PdfType $value - * @return self - */ - public static function create($objectNumber, $generationNumber, PdfType $value) - { - $v = new self; - $v->objectNumber = (int) $objectNumber; - $v->generationNumber = (int) $generationNumber; - $v->value = $value; - - return $v; - } - - /** - * Ensures that the passed value is a PdfIndirectObject instance. - * - * @param mixed $indirectObject - * @return self - * @throws PdfTypeException - */ - public static function ensure($indirectObject) - { - return PdfType::ensureType(self::class, $indirectObject, 'Indirect object expected.'); - } - - /** - * The object number. - * - * @var int - */ - public $objectNumber; - - /** - * The generation number. - * - * @var int - */ - public $generationNumber; -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObjectReference.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObjectReference.php deleted file mode 100644 index c6a67a0e..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObjectReference.php +++ /dev/null @@ -1,53 +0,0 @@ -value = (int) $objectNumber; - $v->generationNumber = (int) $generationNumber; - - return $v; - } - - /** - * Ensures that the passed value is a PdfIndirectObject instance. - * - * @param mixed $value - * @return self - * @throws PdfTypeException - */ - public static function ensure($value) - { - return PdfType::ensureType(self::class, $value, 'Indirect reference value expected.'); - } - - /** - * The generation number. - * - * @var int - */ - public $generationNumber; -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfName.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfName.php deleted file mode 100644 index 6be7d0e5..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfName.php +++ /dev/null @@ -1,82 +0,0 @@ -getByte(), "\x00\x09\x0A\x0C\x0D\x20()<>[]{}/%") === 0) { - $v->value = (string) $tokenizer->getNextToken(); - return $v; - } - - $v->value = ''; - return $v; - } - - /** - * Unescapes a name string. - * - * @param string $value - * @return string - */ - static public function unescape($value) - { - if (strpos($value, '#') === false) - return $value; - - return preg_replace_callback('/#[a-fA-F\d]{2}/', function($matches) { - return chr(hexdec($matches[0])); - }, $value); - } - - /** - * Helper method to create an instance. - * - * @param string $string - * @return self - */ - public static function create($string) - { - $v = new self; - $v->value = $string; - - return $v; - } - - /** - * Ensures that the passed value is a PdfName instance. - * - * @param mixed $name - * @return self - * @throws PdfTypeException - */ - public static function ensure($name) - { - return PdfType::ensureType(self::class, $name, 'Name value expected.'); - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfNull.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfNull.php deleted file mode 100644 index 3dbe37cc..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfNull.php +++ /dev/null @@ -1,20 +0,0 @@ -value = $value + 0; - - return $v; - } - - /** - * Ensures that the passed value is a PdfNumeric instance. - * - * @param mixed $value - * @return self - * @throws PdfTypeException - */ - public static function ensure($value) - { - return PdfType::ensureType(self::class, $value, 'Numeric value expected.'); - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfStream.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfStream.php deleted file mode 100644 index 4b9300ba..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfStream.php +++ /dev/null @@ -1,320 +0,0 @@ -value = $dictionary; - $v->reader = $reader; - $v->parser = $parser; - - $offset = $reader->getOffset(); - - // Find the first "newline" - while (($firstByte = $reader->getByte($offset)) !== false) { - if ($firstByte !== "\n" && $firstByte !== "\r") { - $offset++; - } else { - break; - } - } - - if (false === $firstByte) { - throw new PdfTypeException( - 'Unable to parse stream data. No newline after the stream keyword found.', - PdfTypeException::NO_NEWLINE_AFTER_STREAM_KEYWORD - ); - } - - $sndByte = $reader->getByte($offset + 1); - if ($firstByte === "\n" || $firstByte === "\r") { - $offset++; - } - - if ($sndByte === "\n" && $firstByte !== "\n") { - $offset++; - } - - $reader->setOffset($offset); - // let's only save the byte-offset and read the stream only when needed - $v->stream = $reader->getPosition() + $reader->getOffset(); - - return $v; - } - - /** - * Helper method to create an instance. - * - * @param PdfDictionary $dictionary - * @param string $stream - * @return self - */ - public static function create(PdfDictionary $dictionary, $stream) - { - $v = new self; - $v->value = $dictionary; - $v->stream = (string) $stream; - - return $v; - } - - /** - * Ensures that the passed value is a PdfStream instance. - * - * @param mixed $stream - * @return self - * @throws PdfTypeException - */ - public static function ensure($stream) - { - return PdfType::ensureType(self::class, $stream, 'Stream value expected.'); - } - - /** - * The stream or its byte-offset position. - * - * @var int|string - */ - protected $stream; - - /** - * The stream reader instance. - * - * @var StreamReader - */ - protected $reader; - - /** - * The PDF parser instance. - * - * @var PdfParser - */ - protected $parser; - - /** - * Get the stream data. - * - * @param bool $cache Whether cache the stream data or not. - * @return bool|string - * @throws PdfTypeException - * @throws CrossReferenceException - * @throws PdfParserException - */ - public function getStream($cache = false) - { - if (\is_int($this->stream)) { - $length = PdfDictionary::get($this->value, 'Length'); - if ($this->parser !== null) { - $length = PdfType::resolve($length, $this->parser); - } - - if (!($length instanceof PdfNumeric) || $length->value === 0) { - $this->reader->reset($this->stream, 100000); - $buffer = $this->extractStream(); - } else { - $this->reader->reset($this->stream, $length->value); - $buffer = $this->reader->getBuffer(false); - if ($this->parser !== null) { - $this->reader->reset($this->stream + strlen($buffer)); - $this->parser->getTokenizer()->clearStack(); - $token = $this->parser->readValue(); - if ($token === false || !($token instanceof PdfToken) || $token->value !== 'endstream') { - $this->reader->reset($this->stream, 100000); - $buffer = $this->extractStream(); - $this->reader->reset($this->stream + strlen($buffer)); - } - } - } - - if ($cache === false) { - return $buffer; - } - - $this->stream = $buffer; - $this->reader = null; - } - - return $this->stream; - } - - /** - * Extract the stream "manually". - * - * @return string - * @throws PdfTypeException - */ - protected function extractStream() - { - while (true) { - $buffer = $this->reader->getBuffer(false); - $length = \strpos($buffer, 'endstream'); - if ($length === false) { - if (!$this->reader->increaseLength(100000)) { - throw new PdfTypeException('Cannot extract stream.'); - } - continue; - } - break; - } - - $buffer = \substr($buffer, 0, $length); - $lastByte = \substr($buffer, -1); - - /* Check for EOL marker = - * CARRIAGE RETURN (\r) and a LINE FEED (\n) or just a LINE FEED (\n}, - * and not by a CARRIAGE RETURN (\r) alone - */ - if ($lastByte === "\n") { - $buffer = \substr($buffer, 0, -1); - - $lastByte = \substr($buffer, -1); - if ($lastByte === "\r") { - $buffer = \substr($buffer, 0, -1); - } - } - - return $buffer; - } - - /** - * Get the unfiltered stream data. - * - * @return string - * @throws FilterException - * @throws PdfParserException - */ - public function getUnfilteredStream() - { - $stream = $this->getStream(); - $filters = PdfDictionary::get($this->value, 'Filter'); - if ($filters instanceof PdfNull) { - return $stream; - } - - if ($filters instanceof PdfArray) { - $filters = $filters->value; - } else { - $filters = [$filters]; - } - - $decodeParams = PdfDictionary::get($this->value, 'DecodeParms'); - if ($decodeParams instanceof PdfArray) { - $decodeParams = $decodeParams->value; - } else { - $decodeParams = [$decodeParams]; - } - - foreach ($filters as $key => $filter) { - if (!($filter instanceof PdfName)) { - continue; - } - - $decodeParam = null; - if (isset($decodeParams[$key])) { - $decodeParam = ($decodeParams[$key] instanceof PdfDictionary ? $decodeParams[$key] : null); - } - - switch ($filter->value) { - case 'FlateDecode': - case 'Fl': - case 'LZWDecode': - case 'LZW': - if (\strpos($filter->value, 'LZW') === 0) { - $filterObject = new Lzw(); - } else { - $filterObject = new Flate(); - } - - $stream = $filterObject->decode($stream); - - if ($decodeParam instanceof PdfDictionary) { - $predictor = PdfDictionary::get($decodeParam, 'Predictor', PdfNumeric::create(1)); - if ($predictor->value !== 1) { - if (!\class_exists(Predictor::class)) { - throw new PdfParserException( - 'This PDF document makes use of features which are only implemented in the ' . - 'commercial "FPDI PDF-Parser" add-on (see https://www.setasign.com/fpdi-pdf-' . - 'parser).', - PdfParserException::IMPLEMENTED_IN_FPDI_PDF_PARSER - ); - } - - $colors = PdfDictionary::get($decodeParam, 'Colors', PdfNumeric::create(1)); - $bitsPerComponent = PdfDictionary::get( - $decodeParam, - 'BitsPerComponent', - PdfNumeric::create(8) - ); - - $columns = PdfDictionary::get($decodeParam, 'Columns', PdfNumeric::create(1)); - - $filterObject = new Predictor( - $predictor->value, - $colors->value, - $bitsPerComponent->value, - $columns->value - ); - - $stream = $filterObject->decode($stream); - } - } - - break; - case 'ASCII85Decode': - case 'A85': - $filterObject = new Ascii85(); - $stream = $filterObject->decode($stream); - break; - - case 'ASCIIHexDecode': - case 'AHx': - $filterObject = new AsciiHex(); - $stream = $filterObject->decode($stream); - break; - - default: - throw new FilterException( - \sprintf('Unsupported filter "%s".', $filter->value), - FilterException::UNSUPPORTED_FILTER - ); - } - } - - return $stream; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfString.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfString.php deleted file mode 100644 index f933b1ad..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfString.php +++ /dev/null @@ -1,172 +0,0 @@ -getOffset(); - $openBrackets = 1; - do { - $buffer = $streamReader->getBuffer(false); - for ($length = \strlen($buffer); $openBrackets !== 0 && $pos < $length; $pos++) { - switch ($buffer[$pos]) { - case '(': - $openBrackets++; - break; - case ')': - $openBrackets--; - break; - case '\\': - $pos++; - } - } - } while ($openBrackets !== 0 && $streamReader->increaseLength()); - - $result = \substr($buffer, $startPos, $openBrackets + $pos - $startPos - 1); - $streamReader->setOffset($pos); - - $v = new self; - $v->value = $result; - - return $v; - } - - /** - * Helper method to create an instance. - * - * @param string $value The string needs to be escaped accordingly. - * @return self - */ - public static function create($value) - { - $v = new self; - $v->value = $value; - - return $v; - } - - /** - * Ensures that the passed value is a PdfString instance. - * - * @param mixed $string - * @return self - * @throws PdfTypeException - */ - public static function ensure($string) - { - return PdfType::ensureType(self::class, $string, 'String value expected.'); - } - - /** - * Unescapes escaped sequences in a PDF string according to the PDF specification. - * - * @param string $s - * @return string - */ - public static function unescape($s) - { - $out = ''; - /** @noinspection ForeachInvariantsInspection */ - for ($count = 0, $n = \strlen($s); $count < $n; $count++) { - if ($s[$count] !== '\\') { - $out .= $s[$count]; - } else { - // A backslash at the end of the string - ignore it - if ($count === ($n - 1)) { - break; - } - - switch ($s[++$count]) { - case ')': - case '(': - case '\\': - $out .= $s[$count]; - break; - - case 'f': - $out .= "\x0C"; - break; - - case 'b': - $out .= "\x08"; - break; - - case 't': - $out .= "\x09"; - break; - - case 'r': - $out .= "\x0D"; - break; - - case 'n': - $out .= "\x0A"; - break; - - case "\r": - if ($count !== $n - 1 && $s[$count + 1] === "\n") { - $count++; - } - break; - - case "\n": - break; - - default: - $actualChar = \ord($s[$count]); - // ascii 48 = number 0 - // ascii 57 = number 9 - if ($actualChar >= 48 && - $actualChar <= 57) { - $oct = '' . $s[$count]; - - /** @noinspection NotOptimalIfConditionsInspection */ - if ($count + 1 < $n && - \ord($s[$count + 1]) >= 48 && - \ord($s[$count + 1]) <= 57 - ) { - $count++; - $oct .= $s[$count]; - - /** @noinspection NotOptimalIfConditionsInspection */ - if ($count + 1 < $n && - \ord($s[$count + 1]) >= 48 && - \ord($s[$count + 1]) <= 57 - ) { - $oct .= $s[++$count]; - } - } - - $out .= \chr(\octdec($oct)); - } else { - // If the character is not one of those defined, the backslash is ignored - $out .= $s[$count]; - } - } - } - } - return $out; - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfToken.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfToken.php deleted file mode 100644 index 4abda09b..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfToken.php +++ /dev/null @@ -1,44 +0,0 @@ -value = $token; - - return $v; - } - - /** - * Ensures that the passed value is a PdfToken instance. - * - * @param mixed $token - * @return self - * @throws PdfTypeException - */ - public static function ensure($token) - { - return PdfType::ensureType(self::class, $token, 'Token value expected.'); - } -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfType.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfType.php deleted file mode 100644 index 6ce3c8cc..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfType.php +++ /dev/null @@ -1,79 +0,0 @@ -value, $parser, $stopAtIndirectObject); - } - - if ($value instanceof PdfIndirectObjectReference) { - return self::resolve($parser->getIndirectObject($value->value), $parser, $stopAtIndirectObject); - } - - return $value; - } - - /** - * Ensure that a value is an instance of a specific PDF type. - * - * @param string $type - * @param PdfType $value - * @param string $errorMessage - * @return mixed - * @throws PdfTypeException - */ - protected static function ensureType($type, $value, $errorMessage) - { - if (!($value instanceof $type)) { - throw new PdfTypeException( - $errorMessage, - PdfTypeException::INVALID_DATA_TYPE - ); - } - - return $value; - } - - /** - * The value of the PDF type. - * - * @var mixed - */ - public $value; -} diff --git a/vendor/setasign/fpdi/src/PdfParser/Type/PdfTypeException.php b/vendor/setasign/fpdi/src/PdfParser/Type/PdfTypeException.php deleted file mode 100644 index 83272204..00000000 --- a/vendor/setasign/fpdi/src/PdfParser/Type/PdfTypeException.php +++ /dev/null @@ -1,25 +0,0 @@ -value; - $ax = PdfNumeric::ensure(PdfType::resolve($array[0], $parser))->value; - $ay = PdfNumeric::ensure(PdfType::resolve($array[1], $parser))->value; - $bx = PdfNumeric::ensure(PdfType::resolve($array[2], $parser))->value; - $by = PdfNumeric::ensure(PdfType::resolve($array[3], $parser))->value; - - return new self($ax, $ay, $bx, $by); - } - - /** - * Rectangle constructor. - * - * @param float|int $ax - * @param float|int $ay - * @param float|int $bx - * @param float|int $by - */ - public function __construct($ax, $ay, $bx, $by) - { - $this->llx = \min($ax, $bx); - $this->lly = \min($ay, $by); - $this->urx = \max($ax, $bx); - $this->ury = \max($ay, $by); - } - - /** - * Get the width of the rectangle. - * - * @return float|int - */ - public function getWidth() - { - return $this->urx - $this->llx; - } - - /** - * Get the height of the rectangle. - * - * @return float|int - */ - public function getHeight() - { - return $this->ury - $this->lly; - } - - /** - * Get the lower left abscissa. - * - * @return float|int - */ - public function getLlx() - { - return $this->llx; - } - - /** - * Get the lower left ordinate. - * - * @return float|int - */ - public function getLly() - { - return $this->lly; - } - - /** - * Get the upper right abscissa. - * - * @return float|int - */ - public function getUrx() - { - return $this->urx; - } - - /** - * Get the upper right ordinate. - * - * @return float|int - */ - public function getUry() - { - return $this->ury; - } - - /** - * Get the rectangle as an array. - * - * @return array - */ - public function toArray() - { - return [ - $this->llx, - $this->lly, - $this->urx, - $this->ury - ]; - } - - /** - * Get the rectangle as a PdfArray. - * - * @return PdfArray - */ - public function toPdfArray() - { - $array = new PdfArray(); - $array->value[] = PdfNumeric::create($this->llx); - $array->value[] = PdfNumeric::create($this->lly); - $array->value[] = PdfNumeric::create($this->urx); - $array->value[] = PdfNumeric::create($this->ury); - - return $array; - } -} diff --git a/vendor/setasign/fpdi/src/PdfReader/Page.php b/vendor/setasign/fpdi/src/PdfReader/Page.php deleted file mode 100644 index 0c2fb566..00000000 --- a/vendor/setasign/fpdi/src/PdfReader/Page.php +++ /dev/null @@ -1,272 +0,0 @@ -pageObject = $page; - $this->parser = $parser; - } - - /** - * Get the indirect object of this page. - * - * @return PdfIndirectObject - */ - public function getPageObject() - { - return $this->pageObject; - } - - /** - * Get the dictionary of this page. - * - * @return PdfDictionary - * @throws PdfParserException - * @throws PdfTypeException - * @throws CrossReferenceException - */ - public function getPageDictionary() - { - if (null === $this->pageDictionary) { - $this->pageDictionary = PdfDictionary::ensure(PdfType::resolve($this->getPageObject(), $this->parser)); - } - - return $this->pageDictionary; - } - - /** - * Get a page attribute. - * - * @param string $name - * @param bool $inherited - * @return PdfType|null - * @throws PdfParserException - * @throws PdfTypeException - * @throws CrossReferenceException - */ - public function getAttribute($name, $inherited = true) - { - $dict = $this->getPageDictionary(); - - if (isset($dict->value[$name])) { - return $dict->value[$name]; - } - - $inheritedKeys = ['Resources', 'MediaBox', 'CropBox', 'Rotate']; - if ($inherited && \in_array($name, $inheritedKeys, true)) { - if ($this->inheritedAttributes === null) { - $this->inheritedAttributes = []; - $inheritedKeys = \array_filter($inheritedKeys, function ($key) use ($dict) { - return !isset($dict->value[$key]); - }); - - if (\count($inheritedKeys) > 0) { - $parentDict = PdfType::resolve(PdfDictionary::get($dict, 'Parent'), $this->parser); - while ($parentDict instanceof PdfDictionary) { - foreach ($inheritedKeys as $index => $key) { - if (isset($parentDict->value[$key])) { - $this->inheritedAttributes[$key] = $parentDict->value[$key]; - unset($inheritedKeys[$index]); - } - } - - /** @noinspection NotOptimalIfConditionsInspection */ - if (isset($parentDict->value['Parent']) && \count($inheritedKeys) > 0) { - $parentDict = PdfType::resolve(PdfDictionary::get($parentDict, 'Parent'), $this->parser); - } else { - break; - } - } - } - } - - if (isset($this->inheritedAttributes[$name])) { - return $this->inheritedAttributes[$name]; - } - } - - return null; - } - - /** - * Get the rotation value. - * - * @return int - * @throws PdfParserException - * @throws PdfTypeException - * @throws CrossReferenceException - */ - public function getRotation() - { - $rotation = $this->getAttribute('Rotate'); - if (null === $rotation) { - return 0; - } - - $rotation = PdfNumeric::ensure(PdfType::resolve($rotation, $this->parser))->value % 360; - - if ($rotation < 0) { - $rotation += 360; - } - - return $rotation; - } - - /** - * Get a boundary of this page. - * - * @param string $box - * @param bool $fallback - * @return bool|Rectangle - * @throws PdfParserException - * @throws PdfTypeException - * @throws CrossReferenceException - * @see PageBoundaries - */ - public function getBoundary($box = PageBoundaries::CROP_BOX, $fallback = true) - { - $value = $this->getAttribute($box); - - if ($value !== null) { - return Rectangle::byPdfArray($value, $this->parser); - } - - if ($fallback === false) { - return false; - } - - switch ($box) { - case PageBoundaries::BLEED_BOX: - case PageBoundaries::TRIM_BOX: - case PageBoundaries::ART_BOX: - return $this->getBoundary(PageBoundaries::CROP_BOX, true); - case PageBoundaries::CROP_BOX: - return $this->getBoundary(PageBoundaries::MEDIA_BOX, true); - } - - return false; - } - - /** - * Get the width and height of this page. - * - * @param string $box - * @param bool $fallback - * @return array|bool - * @throws PdfParserException - * @throws PdfTypeException - * @throws CrossReferenceException - */ - public function getWidthAndHeight($box = PageBoundaries::CROP_BOX, $fallback = true) - { - $boundary = $this->getBoundary($box, $fallback); - if ($boundary === false) { - return false; - } - - $rotation = $this->getRotation(); - $interchange = ($rotation / 90) % 2; - - return [ - $interchange ? $boundary->getHeight() : $boundary->getWidth(), - $interchange ? $boundary->getWidth() : $boundary->getHeight() - ]; - } - - /** - * Get the raw content stream. - * - * @return string - * @throws PdfReaderException - * @throws PdfTypeException - * @throws FilterException - * @throws PdfParserException - */ - public function getContentStream() - { - $dict = $this->getPageDictionary(); - $contents = PdfType::resolve(PdfDictionary::get($dict, 'Contents'), $this->parser); - if ($contents instanceof PdfNull) { - return ''; - } - - if ($contents instanceof PdfArray) { - $result = []; - foreach ($contents->value as $content) { - $content = PdfType::resolve($content, $this->parser); - if (!($content instanceof PdfStream)) { - continue; - } - $result[] = $content->getUnfilteredStream(); - } - - return \implode("\n", $result); - } - - if ($contents instanceof PdfStream) { - return $contents->getUnfilteredStream(); - } - - throw new PdfReaderException( - 'Array or stream expected.', - PdfReaderException::UNEXPECTED_DATA_TYPE - ); - } -} diff --git a/vendor/setasign/fpdi/src/PdfReader/PageBoundaries.php b/vendor/setasign/fpdi/src/PdfReader/PageBoundaries.php deleted file mode 100644 index aaeaf91d..00000000 --- a/vendor/setasign/fpdi/src/PdfReader/PageBoundaries.php +++ /dev/null @@ -1,95 +0,0 @@ -parser = $parser; - } - - /** - * PdfReader destructor. - */ - public function __destruct() - { - if ($this->parser !== null) { - /** @noinspection PhpInternalEntityUsedInspection */ - $this->parser->cleanUp(); - } - } - - /** - * Get the pdf parser instance. - * - * @return PdfParser - */ - public function getParser() - { - return $this->parser; - } - - /** - * Get the PDF version. - * - * @return string - * @throws PdfParserException - */ - public function getPdfVersion() - { - return \implode('.', $this->parser->getPdfVersion()); - } - - /** - * Get the page count. - * - * @return int - * @throws PdfTypeException - * @throws CrossReferenceException - * @throws PdfParserException - */ - public function getPageCount() - { - if ($this->pageCount === null) { - $catalog = $this->parser->getCatalog(); - - $pages = PdfType::resolve(PdfDictionary::get($catalog, 'Pages'), $this->parser); - $count = PdfType::resolve(PdfDictionary::get($pages, 'Count'), $this->parser); - - $this->pageCount = PdfNumeric::ensure($count)->value; - } - - return $this->pageCount; - } - - /** - * Get a page instance. - * - * @param int $pageNumber - * @return Page - * @throws PdfTypeException - * @throws CrossReferenceException - * @throws PdfParserException - * @throws \InvalidArgumentException - */ - public function getPage($pageNumber) - { - if (!\is_numeric($pageNumber)) { - throw new \InvalidArgumentException( - 'Page number needs to be a number.' - ); - } - - if ($pageNumber < 1 || $pageNumber > $this->getPageCount()) { - throw new \InvalidArgumentException( - \sprintf( - 'Page number "%s" out of available page range (1 - %s)', - $pageNumber, - $this->getPageCount() - ) - ); - } - - $this->readPages(); - - $page = $this->pages[$pageNumber - 1]; - - if ($page instanceof PdfIndirectObjectReference) { - $readPages = function ($kids) use (&$readPages) { - $kids = PdfArray::ensure($kids); - - /** @noinspection LoopWhichDoesNotLoopInspection */ - foreach ($kids->value as $reference) { - $reference = PdfIndirectObjectReference::ensure($reference); - $object = $this->parser->getIndirectObject($reference->value); - $type = PdfDictionary::get($object->value, 'Type'); - - if ($type->value === 'Pages') { - return $readPages(PdfDictionary::get($object->value, 'Kids')); - } - - return $object; - } - - throw new PdfReaderException( - 'Kids array cannot be empty.', - PdfReaderException::KIDS_EMPTY - ); - }; - - $page = $this->parser->getIndirectObject($page->value); - $dict = PdfType::resolve($page, $this->parser); - $type = PdfDictionary::get($dict, 'Type'); - if ($type->value === 'Pages') { - $kids = PdfType::resolve(PdfDictionary::get($dict, 'Kids'), $this->parser); - $page = $this->pages[$pageNumber - 1] = $readPages($kids); - } else { - $this->pages[$pageNumber - 1] = $page; - } - } - - return new Page($page, $this->parser); - } - - /** - * Walk the page tree and resolve all indirect objects of all pages. - * - * @throws PdfTypeException - * @throws CrossReferenceException - * @throws PdfParserException - */ - protected function readPages() - { - if (\count($this->pages) > 0) { - return; - } - - $readPages = function ($kids, $count) use (&$readPages) { - $kids = PdfArray::ensure($kids); - $isLeaf = $count->value === \count($kids->value); - - foreach ($kids->value as $reference) { - $reference = PdfIndirectObjectReference::ensure($reference); - - if ($isLeaf) { - $this->pages[] = $reference; - continue; - } - - $object = $this->parser->getIndirectObject($reference->value); - $type = PdfDictionary::get($object->value, 'Type'); - - if ($type->value === 'Pages') { - $readPages(PdfDictionary::get($object->value, 'Kids'), PdfDictionary::get($object->value, 'Count')); - } else { - $this->pages[] = $object; - } - } - }; - - $catalog = $this->parser->getCatalog(); - $pages = PdfType::resolve(PdfDictionary::get($catalog, 'Pages'), $this->parser); - $count = PdfType::resolve(PdfDictionary::get($pages, 'Count'), $this->parser); - $kids = PdfType::resolve(PdfDictionary::get($pages, 'Kids'), $this->parser); - $readPages($kids, $count); - } -} diff --git a/vendor/setasign/fpdi/src/PdfReader/PdfReaderException.php b/vendor/setasign/fpdi/src/PdfReader/PdfReaderException.php deleted file mode 100644 index c1159ba7..00000000 --- a/vendor/setasign/fpdi/src/PdfReader/PdfReaderException.php +++ /dev/null @@ -1,35 +0,0 @@ -cleanUp(); - } - - /** - * Get the next template id. - * - * @return int - */ - protected function getNextTemplateId() - { - return $this->templateId++; - } - - /** - * Draws an imported page onto the page or another template. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $tpl The template id - * @param float|int|array $x The abscissa of upper-left corner. Alternatively you could use an assoc array - * with the keys "x", "y", "width", "height", "adjustPageSize". - * @param float|int $y The ordinate of upper-left corner. - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @param bool $adjustPageSize - * @return array The size - * @see FpdiTrait::getTemplateSize() - */ - public function useTemplate($tpl, $x = 0, $y = 0, $width = null, $height = null, $adjustPageSize = false) - { - return $this->useImportedPage($tpl, $x, $y, $width, $height, $adjustPageSize); - } - - /** - * Draws an imported page onto the page. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $pageId The page id - * @param float|int|array $x The abscissa of upper-left corner. Alternatively you could use an assoc array - * with the keys "x", "y", "width", "height", "adjustPageSize". - * @param float|int $y The ordinate of upper-left corner. - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @param bool $adjustPageSize - * @return array The size. - * @see Fpdi::getTemplateSize() - */ - public function useImportedPage($pageId, $x = 0, $y = 0, $width = null, $height = null, $adjustPageSize = false) - { - $size = $this->fpdiUseImportedPage($pageId, $x, $y, $width, $height, $adjustPageSize); - if ($this->inxobj) { - $importedPage = $this->importedPages[$pageId]; - $this->xobjects[$this->xobjid]['importedPages'][$importedPage['id']] = $pageId; - } - - return $size; - } - - /** - * Get the size of an imported page. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $tpl The template id - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @return array|bool An array with following keys: width, height, 0 (=width), 1 (=height), orientation (L or P) - */ - public function getTemplateSize($tpl, $width = null, $height = null) - { - return $this->getImportedPageSize($tpl, $width, $height); - } - - /** - * @inheritdoc - */ - protected function _getxobjectdict() - { - $out = parent::_getxobjectdict(); - - foreach ($this->importedPages as $key => $pageData) { - $out .= '/' . $pageData['id'] . ' ' . $pageData['objectNumber'] . ' 0 R '; - } - - return $out; - } - - /** - * @inheritdoc - * @throws CrossReferenceException - * @throws PdfParserException - */ - protected function _putxobjects() - { - foreach ($this->importedPages as $key => $pageData) { - $this->currentObjectNumber = $this->_newobj(); - $this->importedPages[$key]['objectNumber'] = $this->currentObjectNumber; - $this->currentReaderId = $pageData['readerId']; - $this->writePdfType($pageData['stream']); - $this->_put('endobj'); - } - - foreach (\array_keys($this->readers) as $readerId) { - $parser = $this->getPdfReader($readerId)->getParser(); - $this->currentReaderId = $readerId; - - while (($objectNumber = \array_pop($this->objectsToCopy[$readerId])) !== null) { - try { - $object = $parser->getIndirectObject($objectNumber); - - } catch (CrossReferenceException $e) { - if ($e->getCode() === CrossReferenceException::OBJECT_NOT_FOUND) { - $object = PdfIndirectObject::create($objectNumber, 0, new PdfNull()); - } else { - throw $e; - } - } - - $this->writePdfType($object); - } - } - - // let's prepare resources for imported pages in templates - foreach ($this->xobjects as $xObjectId => $data) { - if (!isset($data['importedPages'])) { - continue; - } - - foreach ($data['importedPages'] as $id => $pageKey) { - $page = $this->importedPages[$pageKey]; - $this->xobjects[$xObjectId]['xobjects'][$id] = ['n' => $page['objectNumber']]; - } - } - - - parent::_putxobjects(); - $this->currentObjectNumber = null; - } - - /** - * Append content to the buffer of TCPDF. - * - * @param string $s - * @param bool $newLine - */ - protected function _put($s, $newLine = true) - { - if ($newLine) { - $this->setBuffer($s . "\n"); - } else { - $this->setBuffer($s); - } - } - - /** - * Begin a new object and return the object number. - * - * @param int|string $objid Object ID (leave empty to get a new ID). - * @return int object number - */ - protected function _newobj($objid = '') - { - $this->_out($this->_getobj($objid)); - return $this->n; - } - - /** - * Writes a PdfType object to the resulting buffer. - * - * @param PdfType $value - * @throws PdfTypeException - */ - protected function writePdfType(PdfType $value) - { - if (!$this->encrypted) { - $this->fpdiWritePdfType($value); - return; - } - - if ($value instanceof PdfString) { - $string = PdfString::unescape($value->value); - $string = $this->_encrypt_data($this->currentObjectNumber, $string); - $value->value = \TCPDF_STATIC::_escape($string); - - } elseif ($value instanceof PdfHexString) { - $filter = new AsciiHex(); - $string = $filter->decode($value->value); - $string = $this->_encrypt_data($this->currentObjectNumber, $string); - $value->value = $filter->encode($string, true); - - } elseif ($value instanceof PdfStream) { - $stream = $value->getStream(); - $stream = $this->_encrypt_data($this->currentObjectNumber, $stream); - $dictionary = $value->value; - $dictionary->value['Length'] = PdfNumeric::create(\strlen($stream)); - $value = PdfStream::create($dictionary, $stream); - - } elseif ($value instanceof PdfIndirectObject) { - /** - * @var $value PdfIndirectObject - */ - $this->currentObjectNumber = $this->objectMap[$this->currentReaderId][$value->objectNumber]; - } - - $this->fpdiWritePdfType($value); - } -} \ No newline at end of file diff --git a/vendor/setasign/fpdi/src/TcpdfFpdi.php b/vendor/setasign/fpdi/src/TcpdfFpdi.php deleted file mode 100644 index 6b617a17..00000000 --- a/vendor/setasign/fpdi/src/TcpdfFpdi.php +++ /dev/null @@ -1,23 +0,0 @@ -_protectedPutimages(); - } - - /** - * Make the method public as in tFPDF. - */ - public function _putxobjectdict() - { - $this->_protectedPutxobjectdict(); - } - - /** - * Set the page format of the current page. - * - * @param array $size An array with two values defining the size. - * @param string $orientation "L" for landscape, "P" for portrait. - * @throws \BadMethodCallException - */ - public function setPageFormat($size, $orientation) - { - if ($this->currentTemplateId !== null) { - throw new \BadMethodCallException('The page format cannot be changed when writing to a template.'); - } - - if (!\in_array($orientation, ['P', 'L'], true)) { - throw new \InvalidArgumentException(\sprintf( - 'Invalid page orientation "%s"! Only "P" and "L" are allowed!', - $orientation - )); - } - - $size = $this->_getpagesize($size); - - if ($orientation != $this->CurOrientation - || $size[0] != $this->CurPageSize[0] - || $size[1] != $this->CurPageSize[1] - ) { - // New size or orientation - if ($orientation === 'P') { - $this->w = $size[0]; - $this->h = $size[1]; - } else { - $this->w = $size[1]; - $this->h = $size[0]; - } - $this->wPt = $this->w * $this->k; - $this->hPt = $this->h * $this->k; - $this->PageBreakTrigger = $this->h - $this->bMargin; - $this->CurOrientation = $orientation; - $this->CurPageSize = $size; - - $this->PageSizes[$this->page] = array($this->wPt, $this->hPt); - } - } - - /** - * @inheritdoc - */ - protected function _put($s, $newLine = true) - { - if ($newLine) { - $this->buffer .= $s . "\n"; - } else { - $this->buffer .= $s; - } - } -} \ No newline at end of file diff --git a/vendor/setasign/fpdi/src/Tfpdf/Fpdi.php b/vendor/setasign/fpdi/src/Tfpdf/Fpdi.php deleted file mode 100644 index f22625f0..00000000 --- a/vendor/setasign/fpdi/src/Tfpdf/Fpdi.php +++ /dev/null @@ -1,164 +0,0 @@ -cleanUp(); - } - - /** - * Draws an imported page or a template onto the page or another template. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $tpl The template id - * @param float|int|array $x The abscissa of upper-left corner. Alternatively you could use an assoc array - * with the keys "x", "y", "width", "height", "adjustPageSize". - * @param float|int $y The ordinate of upper-left corner. - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @param bool $adjustPageSize - * @return array The size - * @see Fpdi::getTemplateSize() - */ - public function useTemplate($tpl, $x = 0, $y = 0, $width = null, $height = null, $adjustPageSize = false) - { - if (isset($this->importedPages[$tpl])) { - $size = $this->useImportedPage($tpl, $x, $y, $width, $height, $adjustPageSize); - if ($this->currentTemplateId !== null) { - $this->templates[$this->currentTemplateId]['resources']['templates']['importedPages'][$tpl] = $tpl; - } - return $size; - } - - return parent::useTemplate($tpl, $x, $y, $width, $height, $adjustPageSize); - } - - /** - * Get the size of an imported page or template. - * - * Give only one of the size parameters (width, height) to calculate the other one automatically in view to the - * aspect ratio. - * - * @param mixed $tpl The template id - * @param float|int|null $width The width. - * @param float|int|null $height The height. - * @return array|bool An array with following keys: width, height, 0 (=width), 1 (=height), orientation (L or P) - */ - public function getTemplateSize($tpl, $width = null, $height = null) - { - $size = parent::getTemplateSize($tpl, $width, $height); - if ($size === false) { - return $this->getImportedPageSize($tpl, $width, $height); - } - - return $size; - } - - /** - * @inheritdoc - * @throws CrossReferenceException - * @throws PdfParserException - */ - public function _putimages() - { - $this->currentReaderId = null; - parent::_putimages(); - - foreach ($this->importedPages as $key => $pageData) { - $this->_newobj(); - $this->importedPages[$key]['objectNumber'] = $this->n; - $this->currentReaderId = $pageData['readerId']; - $this->writePdfType($pageData['stream']); - $this->_put('endobj'); - } - - foreach (\array_keys($this->readers) as $readerId) { - $parser = $this->getPdfReader($readerId)->getParser(); - $this->currentReaderId = $readerId; - - while (($objectNumber = \array_pop($this->objectsToCopy[$readerId])) !== null) { - try { - $object = $parser->getIndirectObject($objectNumber); - - } catch (CrossReferenceException $e) { - if ($e->getCode() === CrossReferenceException::OBJECT_NOT_FOUND) { - $object = PdfIndirectObject::create($objectNumber, 0, new PdfNull()); - } else { - throw $e; - } - } - - $this->writePdfType($object); - } - } - - $this->currentReaderId = null; - } - - /** - * @inheritdoc - */ - public function _putxobjectdict() - { - foreach ($this->importedPages as $key => $pageData) { - $this->_put('/' . $pageData['id'] . ' ' . $pageData['objectNumber'] . ' 0 R'); - } - - parent::_putxobjectdict(); - } - - /** - * @inheritdoc - */ - public function _newobj($n = null) - { - // Begin a new object - if($n === null) - $n = ++$this->n; - $this->offsets[$n] = $this->_getoffset(); - $this->_put($n.' 0 obj'); - } - - /** - * @inheritdoc - */ - protected function _getoffset() - { - return strlen($this->buffer); - } -} \ No newline at end of file diff --git a/vendor/setasign/fpdi/src/autoload.php b/vendor/setasign/fpdi/src/autoload.php deleted file mode 100644 index fd7d4726..00000000 --- a/vendor/setasign/fpdi/src/autoload.php +++ /dev/null @@ -1,20 +0,0 @@ -