├── .dockerignore ├── .env.example ├── .github └── workflows │ ├── build.yml │ └── readme.yml ├── .gitignore ├── .htaccess ├── LICENSE ├── README.md ├── app ├── common │ ├── Config.php │ ├── Constant.php │ ├── ICheck.php │ ├── components │ │ └── Curl.php │ ├── event │ │ ├── EventDispatcher.php │ │ ├── EventListenerInterface.php │ │ └── StoppableEventInterface.php │ └── exception │ │ ├── BusinessException.php │ │ └── Handler.php ├── controller │ ├── Api.php │ ├── BaseController.php │ ├── Index.php │ ├── Status.php │ └── Task.php ├── domain │ ├── Command.php │ ├── Command │ │ ├── move.php │ │ ├── reseed.php │ │ ├── rss.php │ │ └── spiders.php │ ├── CommandInterface.php │ ├── Config.php │ ├── ConfigParser │ │ ├── Move.php │ │ ├── Reseed.php │ │ ├── Rss.php │ │ └── Spiders.php │ ├── ConfigParserInterface.php │ ├── Crontab.php │ └── Users.php ├── functions.php ├── helpers.php ├── middleware │ ├── AuthCheck.php │ └── StaticFile.php ├── model │ └── Test.php └── view │ └── index │ └── view.html ├── bin ├── .gitignore ├── iyuu.php ├── move.php ├── rss.php └── spiders.php ├── composer.json ├── composer.lock ├── config ├── app.php ├── autoload.php ├── bootstrap.php ├── container.php ├── database.php ├── dependence.php ├── event.php ├── exception.php ├── log.php ├── middleware.php ├── plugin │ └── webman │ │ ├── console │ │ └── app.php │ │ └── event │ │ ├── app.php │ │ ├── bootstrap.php │ │ └── command.php ├── process.php ├── redis.php ├── route.php ├── server.php ├── session.php ├── static.php ├── translation.php └── view.php ├── docker ├── Dockerfile ├── Readme.md ├── build.amd64.sh ├── build.arm64.sh ├── build.n1.sh ├── entrypoint.sh ├── example.sh └── push.sh ├── docs └── help.md ├── gg.sh ├── init.php ├── nssm ├── win32 │ ├── install.cmd │ ├── nssm.exe │ └── remove.cmd └── win64 │ ├── install.cmd │ ├── nssm.exe │ └── remove.cmd ├── process ├── Monitor.php └── Task.php ├── public ├── .gitattributes ├── .gitignore ├── 404.html ├── LICENSE ├── README.md ├── api │ ├── init.json │ ├── table.json │ ├── tableSelect.json │ └── upload.json ├── css │ ├── layuimini.css │ ├── public.css │ └── themes │ │ └── default.css ├── favicon.ico ├── images │ ├── captcha.jpg │ ├── home.png │ ├── icon-login.png │ └── logo.png ├── index.html ├── js │ ├── function.js │ ├── lay-config.js │ └── lay-module │ │ ├── echarts │ │ ├── echarts.js │ │ └── echartsTheme.js │ │ ├── iconPicker │ │ └── iconPickerFa.js │ │ ├── layarea │ │ └── layarea.js │ │ ├── layuimini │ │ ├── miniAdmin.js │ │ ├── miniMenu.js │ │ ├── miniPage.js │ │ ├── miniTheme.js │ │ └── miniTongji.js │ │ ├── step-lay │ │ ├── step.css │ │ └── step.js │ │ ├── tableSelect │ │ └── tableSelect.js │ │ ├── treetable-lay │ │ ├── treetable.css │ │ └── treetable.js │ │ └── wangEditor │ │ ├── fonts │ │ └── w-e-icon.woff │ │ ├── wangEditor.css │ │ ├── wangEditor.js │ │ ├── wangEditor.min.css │ │ ├── wangEditor.min.js │ │ └── wangEditor.min.js.map ├── lib │ ├── font-awesome-4.7.0 │ │ ├── HELP-US-OUT.txt │ │ ├── css │ │ │ ├── font-awesome.css │ │ │ └── font-awesome.min.css │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ ├── fontawesome-webfont.woff │ │ │ └── fontawesome-webfont.woff2 │ │ ├── less │ │ │ ├── animated.less │ │ │ ├── bordered-pulled.less │ │ │ ├── core.less │ │ │ ├── fixed-width.less │ │ │ ├── font-awesome.less │ │ │ ├── icons.less │ │ │ ├── larger.less │ │ │ ├── list.less │ │ │ ├── mixins.less │ │ │ ├── path.less │ │ │ ├── rotated-flipped.less │ │ │ ├── screen-reader.less │ │ │ ├── stacked.less │ │ │ └── variables.less │ │ └── scss │ │ │ ├── _animated.scss │ │ │ ├── _bordered-pulled.scss │ │ │ ├── _core.scss │ │ │ ├── _fixed-width.scss │ │ │ ├── _icons.scss │ │ │ ├── _larger.scss │ │ │ ├── _list.scss │ │ │ ├── _mixins.scss │ │ │ ├── _path.scss │ │ │ ├── _rotated-flipped.scss │ │ │ ├── _screen-reader.scss │ │ │ ├── _stacked.scss │ │ │ ├── _variables.scss │ │ │ └── font-awesome.scss │ ├── jq-module │ │ ├── jquery.particleground.min.js │ │ ├── paigusu.min.js │ │ └── zyupload │ │ │ ├── zyupload-1.0.0.min.css │ │ │ └── zyupload-1.0.0.min.js │ ├── jquery-3.4.1 │ │ └── jquery-3.4.1.min.js │ └── layui-v2.5.7 │ │ ├── css │ │ ├── layui.css │ │ ├── layui.mobile.css │ │ └── modules │ │ │ ├── code.css │ │ │ ├── laydate │ │ │ └── default │ │ │ │ └── laydate.css │ │ │ └── layer │ │ │ └── default │ │ │ ├── icon-ext.png │ │ │ ├── icon.png │ │ │ ├── layer.css │ │ │ ├── loading-0.gif │ │ │ ├── loading-1.gif │ │ │ └── loading-2.gif │ │ ├── font │ │ ├── iconfont.eot │ │ ├── iconfont.svg │ │ ├── iconfont.ttf │ │ ├── iconfont.woff │ │ └── iconfont.woff2 │ │ ├── images │ │ └── face │ │ │ ├── 0.gif │ │ │ ├── 1.gif │ │ │ ├── 10.gif │ │ │ ├── 11.gif │ │ │ ├── 12.gif │ │ │ ├── 13.gif │ │ │ ├── 14.gif │ │ │ ├── 15.gif │ │ │ ├── 16.gif │ │ │ ├── 17.gif │ │ │ ├── 18.gif │ │ │ ├── 19.gif │ │ │ ├── 2.gif │ │ │ ├── 20.gif │ │ │ ├── 21.gif │ │ │ ├── 22.gif │ │ │ ├── 23.gif │ │ │ ├── 24.gif │ │ │ ├── 25.gif │ │ │ ├── 26.gif │ │ │ ├── 27.gif │ │ │ ├── 28.gif │ │ │ ├── 29.gif │ │ │ ├── 3.gif │ │ │ ├── 30.gif │ │ │ ├── 31.gif │ │ │ ├── 32.gif │ │ │ ├── 33.gif │ │ │ ├── 34.gif │ │ │ ├── 35.gif │ │ │ ├── 36.gif │ │ │ ├── 37.gif │ │ │ ├── 38.gif │ │ │ ├── 39.gif │ │ │ ├── 4.gif │ │ │ ├── 40.gif │ │ │ ├── 41.gif │ │ │ ├── 42.gif │ │ │ ├── 43.gif │ │ │ ├── 44.gif │ │ │ ├── 45.gif │ │ │ ├── 46.gif │ │ │ ├── 47.gif │ │ │ ├── 48.gif │ │ │ ├── 49.gif │ │ │ ├── 5.gif │ │ │ ├── 50.gif │ │ │ ├── 51.gif │ │ │ ├── 52.gif │ │ │ ├── 53.gif │ │ │ ├── 54.gif │ │ │ ├── 55.gif │ │ │ ├── 56.gif │ │ │ ├── 57.gif │ │ │ ├── 58.gif │ │ │ ├── 59.gif │ │ │ ├── 6.gif │ │ │ ├── 60.gif │ │ │ ├── 61.gif │ │ │ ├── 62.gif │ │ │ ├── 63.gif │ │ │ ├── 64.gif │ │ │ ├── 65.gif │ │ │ ├── 66.gif │ │ │ ├── 67.gif │ │ │ ├── 68.gif │ │ │ ├── 69.gif │ │ │ ├── 7.gif │ │ │ ├── 70.gif │ │ │ ├── 71.gif │ │ │ ├── 8.gif │ │ │ └── 9.gif │ │ ├── lay │ │ └── modules │ │ │ ├── carousel.js │ │ │ ├── code.js │ │ │ ├── colorpicker.js │ │ │ ├── element.js │ │ │ ├── flow.js │ │ │ ├── form.js │ │ │ ├── jquery.js │ │ │ ├── laydate.js │ │ │ ├── layedit.js │ │ │ ├── layer.js │ │ │ ├── laypage.js │ │ │ ├── laytpl.js │ │ │ ├── mobile.js │ │ │ ├── rate.js │ │ │ ├── slider.js │ │ │ ├── table.js │ │ │ ├── transfer.js │ │ │ ├── tree.js │ │ │ ├── upload.js │ │ │ └── util.js │ │ ├── layui.all.js │ │ └── layui.js └── page │ ├── 404.html │ ├── area.html │ ├── button.html │ ├── color-select.html │ ├── crontab.html │ ├── editor.html │ ├── form-step.html │ ├── form.html │ ├── icon-picker.html │ ├── icon.html │ ├── layer.html │ ├── login.html │ ├── setting.html │ ├── setting │ ├── clients.html │ ├── default.html │ ├── filter.html │ ├── folder.html │ ├── mail.html │ ├── notify.html │ ├── sites.html │ ├── sms.html │ ├── user-password.html │ ├── user.html │ └── weixin.html │ ├── status │ ├── hoststat.html │ ├── overview.html │ ├── reseedlog.html │ └── syslog.html │ ├── table-select.html │ ├── table.html │ ├── table │ ├── add.html │ └── edit.html │ ├── upload.html │ └── welcome.html ├── runtime ├── .gitignore ├── logs │ └── .gitignore └── views │ └── .gitignore ├── src ├── .gitignore ├── Library │ ├── IFile.php │ ├── Rpc.php │ ├── Selector.php │ └── Table.php ├── Notify │ ├── Bark.php │ ├── INotify.php │ ├── IYUUWechat.php │ ├── NotifyFactory.php │ └── ServerChan.php ├── Plugins │ └── .gitignore ├── Reseed │ ├── AutoReseed.php │ ├── Events │ │ ├── ClientHashSuccessEvent.php │ │ ├── ClientLinkSuccessEvent.php │ │ ├── InfoHashResponseEvent.php │ │ └── SupportSitesSuccessEvent.php │ ├── Listener │ │ ├── ClientHashSuccessListener.php │ │ ├── ClientLinkSuccessListener.php │ │ ├── InfoHashResponseListener.php │ │ └── SupportSitesSuccessListener.php │ ├── MoveTorrent.php │ └── Oauth.php ├── Rss │ ├── AbstractRss.php │ ├── beitai.php │ ├── btschool.php │ ├── chdbits.php │ ├── discfan.php │ ├── dmhy.php │ ├── dragonhd.php │ ├── eastgame.php │ ├── haidan.php │ ├── hd4fans.php │ ├── hdai.php │ ├── hdarea.php │ ├── hdatmos.php │ ├── hdbits.php │ ├── hdchina.php │ ├── hdcity.php │ ├── hddolby.php │ ├── hdfans.php │ ├── hdhome.php │ ├── hdpost.php │ ├── hdsky.php │ ├── hdtime.php │ ├── hdtorrents.php │ ├── hdzone.php │ ├── hitpt.php │ ├── joyhd.php │ ├── keepfrds.php │ ├── leaguehd.php │ ├── mteam.php │ ├── nanyangpt.php │ ├── nicept.php │ ├── npupt.php │ ├── opencd.php │ ├── oshen.php │ ├── ourbits.php │ ├── ptba.php │ ├── pter.php │ ├── pthome.php │ ├── ptmsg.php │ ├── ptpbd.php │ ├── ptsbao.php │ ├── pttime.php │ ├── site52pt.php │ ├── soulvoice.php │ ├── ssd.php │ ├── tjupt.php │ ├── torrentccf.php │ ├── ttg.php │ ├── upxin.php │ └── yingk.php ├── Spiders │ ├── SitesBase.php │ ├── beitai.php │ ├── btschool.php │ ├── byr.php │ ├── discfan.php │ ├── dragonhd.php │ ├── eastgame.php │ ├── hd4fans.php │ ├── hdarea.php │ ├── hdatmos.php │ ├── hdbd.php │ ├── hddolby.php │ ├── hdfans.php │ ├── hdhome.php │ ├── hdtime.php │ ├── hdzone.php │ ├── hitpt.php │ ├── joyhd.php │ ├── keepfrds.php │ ├── mteam.php │ ├── nanyangpt.php │ ├── nicept.php │ ├── npupt.php │ ├── opencd.php │ ├── oshen.php │ ├── pter.php │ ├── pthome.php │ ├── ptmsg.php │ ├── ptsbao.php │ ├── pttime.php │ ├── site52pt.php │ ├── soulvoice.php │ ├── ssd.php │ ├── tjupt.php │ ├── torrentccf.php │ └── upxin.php └── helper.php ├── start.cmd ├── start.php ├── support ├── Request.php ├── Response.php ├── bootstrap.php └── helpers.php ├── todo.md ├── vendor ├── autoload.php ├── composer │ ├── ClassLoader.php │ ├── InstalledVersions.php │ ├── LICENSE │ ├── autoload_classmap.php │ ├── autoload_files.php │ ├── autoload_namespaces.php │ ├── autoload_psr4.php │ ├── autoload_real.php │ ├── autoload_static.php │ ├── installed.json │ ├── installed.php │ └── platform_check.php ├── curl │ └── curl │ │ ├── .php-cs-fixer.dist.php │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ └── src │ │ └── Curl │ │ └── Curl.php ├── doctrine │ └── inflector │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── docs │ │ └── en │ │ │ └── index.rst │ │ └── lib │ │ └── Doctrine │ │ └── Inflector │ │ ├── CachedWordInflector.php │ │ ├── GenericLanguageInflectorFactory.php │ │ ├── Inflector.php │ │ ├── InflectorFactory.php │ │ ├── Language.php │ │ ├── LanguageInflectorFactory.php │ │ ├── NoopWordInflector.php │ │ ├── Rules │ │ ├── English │ │ │ ├── Inflectible.php │ │ │ ├── InflectorFactory.php │ │ │ ├── Rules.php │ │ │ └── Uninflected.php │ │ ├── French │ │ │ ├── Inflectible.php │ │ │ ├── InflectorFactory.php │ │ │ ├── Rules.php │ │ │ └── Uninflected.php │ │ ├── NorwegianBokmal │ │ │ ├── Inflectible.php │ │ │ ├── InflectorFactory.php │ │ │ ├── Rules.php │ │ │ └── Uninflected.php │ │ ├── Pattern.php │ │ ├── Patterns.php │ │ ├── Portuguese │ │ │ ├── Inflectible.php │ │ │ ├── InflectorFactory.php │ │ │ ├── Rules.php │ │ │ └── Uninflected.php │ │ ├── Ruleset.php │ │ ├── Spanish │ │ │ ├── Inflectible.php │ │ │ ├── InflectorFactory.php │ │ │ ├── Rules.php │ │ │ └── Uninflected.php │ │ ├── Substitution.php │ │ ├── Substitutions.php │ │ ├── Transformation.php │ │ ├── Transformations.php │ │ ├── Turkish │ │ │ ├── Inflectible.php │ │ │ ├── InflectorFactory.php │ │ │ ├── Rules.php │ │ │ └── Uninflected.php │ │ └── Word.php │ │ ├── RulesetInflector.php │ │ └── WordInflector.php ├── graham-campbell │ └── result-type │ │ ├── LICENSE │ │ ├── composer.json │ │ └── src │ │ ├── Error.php │ │ ├── Result.php │ │ └── Success.php ├── ledccn │ └── bittorrentclient │ │ ├── .gitignore │ │ ├── composer.json │ │ ├── readme.md │ │ └── src │ │ ├── AbstractClient.php │ │ ├── ClientException.php │ │ ├── qBittorrent │ │ ├── config.json │ │ └── qBittorrent.php │ │ └── transmission │ │ ├── config.json │ │ └── transmission.php ├── monolog │ └── monolog │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── UPGRADE.md │ │ ├── composer.json │ │ └── src │ │ └── Monolog │ │ ├── Attribute │ │ └── AsMonologProcessor.php │ │ ├── DateTimeImmutable.php │ │ ├── ErrorHandler.php │ │ ├── Formatter │ │ ├── ChromePHPFormatter.php │ │ ├── ElasticaFormatter.php │ │ ├── ElasticsearchFormatter.php │ │ ├── FlowdockFormatter.php │ │ ├── FluentdFormatter.php │ │ ├── FormatterInterface.php │ │ ├── GelfMessageFormatter.php │ │ ├── GoogleCloudLoggingFormatter.php │ │ ├── HtmlFormatter.php │ │ ├── JsonFormatter.php │ │ ├── LineFormatter.php │ │ ├── LogglyFormatter.php │ │ ├── LogmaticFormatter.php │ │ ├── LogstashFormatter.php │ │ ├── MongoDBFormatter.php │ │ ├── NormalizerFormatter.php │ │ ├── ScalarFormatter.php │ │ └── WildfireFormatter.php │ │ ├── Handler │ │ ├── AbstractHandler.php │ │ ├── AbstractProcessingHandler.php │ │ ├── AbstractSyslogHandler.php │ │ ├── AmqpHandler.php │ │ ├── BrowserConsoleHandler.php │ │ ├── BufferHandler.php │ │ ├── ChromePHPHandler.php │ │ ├── CouchDBHandler.php │ │ ├── CubeHandler.php │ │ ├── Curl │ │ │ └── Util.php │ │ ├── DeduplicationHandler.php │ │ ├── DoctrineCouchDBHandler.php │ │ ├── DynamoDbHandler.php │ │ ├── ElasticaHandler.php │ │ ├── ElasticsearchHandler.php │ │ ├── ErrorLogHandler.php │ │ ├── FallbackGroupHandler.php │ │ ├── FilterHandler.php │ │ ├── FingersCrossed │ │ │ ├── ActivationStrategyInterface.php │ │ │ ├── ChannelLevelActivationStrategy.php │ │ │ └── ErrorLevelActivationStrategy.php │ │ ├── FingersCrossedHandler.php │ │ ├── FirePHPHandler.php │ │ ├── FleepHookHandler.php │ │ ├── FlowdockHandler.php │ │ ├── FormattableHandlerInterface.php │ │ ├── FormattableHandlerTrait.php │ │ ├── GelfHandler.php │ │ ├── GroupHandler.php │ │ ├── Handler.php │ │ ├── HandlerInterface.php │ │ ├── HandlerWrapper.php │ │ ├── IFTTTHandler.php │ │ ├── InsightOpsHandler.php │ │ ├── LogEntriesHandler.php │ │ ├── LogglyHandler.php │ │ ├── LogmaticHandler.php │ │ ├── MailHandler.php │ │ ├── MandrillHandler.php │ │ ├── MissingExtensionException.php │ │ ├── MongoDBHandler.php │ │ ├── NativeMailerHandler.php │ │ ├── NewRelicHandler.php │ │ ├── NoopHandler.php │ │ ├── NullHandler.php │ │ ├── OverflowHandler.php │ │ ├── PHPConsoleHandler.php │ │ ├── ProcessHandler.php │ │ ├── ProcessableHandlerInterface.php │ │ ├── ProcessableHandlerTrait.php │ │ ├── PsrHandler.php │ │ ├── PushoverHandler.php │ │ ├── RedisHandler.php │ │ ├── RedisPubSubHandler.php │ │ ├── RollbarHandler.php │ │ ├── RotatingFileHandler.php │ │ ├── SamplingHandler.php │ │ ├── SendGridHandler.php │ │ ├── Slack │ │ │ └── SlackRecord.php │ │ ├── SlackHandler.php │ │ ├── SlackWebhookHandler.php │ │ ├── SocketHandler.php │ │ ├── SqsHandler.php │ │ ├── StreamHandler.php │ │ ├── SwiftMailerHandler.php │ │ ├── SymfonyMailerHandler.php │ │ ├── SyslogHandler.php │ │ ├── SyslogUdp │ │ │ └── UdpSocket.php │ │ ├── SyslogUdpHandler.php │ │ ├── TelegramBotHandler.php │ │ ├── TestHandler.php │ │ ├── WebRequestRecognizerTrait.php │ │ ├── WhatFailureGroupHandler.php │ │ └── ZendMonitorHandler.php │ │ ├── LogRecord.php │ │ ├── Logger.php │ │ ├── Processor │ │ ├── GitProcessor.php │ │ ├── HostnameProcessor.php │ │ ├── IntrospectionProcessor.php │ │ ├── MemoryPeakUsageProcessor.php │ │ ├── MemoryProcessor.php │ │ ├── MemoryUsageProcessor.php │ │ ├── MercurialProcessor.php │ │ ├── ProcessIdProcessor.php │ │ ├── ProcessorInterface.php │ │ ├── PsrLogMessageProcessor.php │ │ ├── TagProcessor.php │ │ ├── UidProcessor.php │ │ └── WebProcessor.php │ │ ├── Registry.php │ │ ├── ResettableInterface.php │ │ ├── SignalHandler.php │ │ ├── Test │ │ └── TestCase.php │ │ └── Utils.php ├── nikic │ └── fast-route │ │ ├── .gitignore │ │ ├── .hhconfig │ │ ├── .travis.yml │ │ ├── FastRoute.hhi │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── phpunit.xml │ │ ├── psalm.xml │ │ ├── src │ │ ├── BadRouteException.php │ │ ├── DataGenerator.php │ │ ├── DataGenerator │ │ │ ├── CharCountBased.php │ │ │ ├── GroupCountBased.php │ │ │ ├── GroupPosBased.php │ │ │ ├── MarkBased.php │ │ │ └── RegexBasedAbstract.php │ │ ├── Dispatcher.php │ │ ├── Dispatcher │ │ │ ├── CharCountBased.php │ │ │ ├── GroupCountBased.php │ │ │ ├── GroupPosBased.php │ │ │ ├── MarkBased.php │ │ │ └── RegexBasedAbstract.php │ │ ├── Route.php │ │ ├── RouteCollector.php │ │ ├── RouteParser.php │ │ ├── RouteParser │ │ │ └── Std.php │ │ ├── bootstrap.php │ │ └── functions.php │ │ └── test │ │ ├── Dispatcher │ │ ├── CharCountBasedTest.php │ │ ├── DispatcherTest.php │ │ ├── GroupCountBasedTest.php │ │ ├── GroupPosBasedTest.php │ │ └── MarkBasedTest.php │ │ ├── HackTypechecker │ │ ├── HackTypecheckerTest.php │ │ └── fixtures │ │ │ ├── all_options.php │ │ │ ├── empty_options.php │ │ │ └── no_options.php │ │ ├── RouteCollectorTest.php │ │ ├── RouteParser │ │ └── StdTest.php │ │ └── bootstrap.php ├── phpoption │ └── phpoption │ │ ├── LICENSE │ │ ├── composer.json │ │ └── src │ │ └── PhpOption │ │ ├── LazyOption.php │ │ ├── None.php │ │ ├── Option.php │ │ └── Some.php ├── psr │ ├── container │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ └── src │ │ │ ├── ContainerExceptionInterface.php │ │ │ ├── ContainerInterface.php │ │ │ └── NotFoundExceptionInterface.php │ └── log │ │ ├── LICENSE │ │ ├── Psr │ │ └── Log │ │ │ ├── AbstractLogger.php │ │ │ ├── InvalidArgumentException.php │ │ │ ├── LogLevel.php │ │ │ ├── LoggerAwareInterface.php │ │ │ ├── LoggerAwareTrait.php │ │ │ ├── LoggerInterface.php │ │ │ ├── LoggerTrait.php │ │ │ ├── NullLogger.php │ │ │ └── Test │ │ │ ├── DummyTest.php │ │ │ ├── LoggerInterfaceTest.php │ │ │ └── TestLogger.php │ │ ├── README.md │ │ └── composer.json ├── rhilip │ └── bencode │ │ ├── .github │ │ ├── dependabot.yml │ │ └── workflows │ │ │ └── test.yml │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── phpunit.xml │ │ ├── src │ │ ├── Bencode.php │ │ ├── ParseException.php │ │ └── TorrentFile.php │ │ └── tests │ │ ├── DecodeTest.php │ │ ├── EncodeTest.php │ │ ├── TorrentHybridMultiTest.php │ │ ├── TorrentHybridSingleTest.php │ │ ├── TorrentV1MultiTest.php │ │ ├── TorrentV1SingleTest.php │ │ ├── TorrentV2MultiTest.php │ │ ├── TorrentV2SingleTest.php │ │ ├── asserts │ │ ├── hybrid-multi.torrent │ │ ├── hybrid-single.torrent │ │ ├── v1-multi.torrent │ │ ├── v1-single.torrent │ │ ├── v2-multi.torrent │ │ └── v2-single.torrent │ │ └── traits │ │ ├── TorrentFileCommonTrait.php │ │ ├── TorrentFileV1Trait.php │ │ └── TorrentFileV2Trait.php ├── symfony │ ├── console │ │ ├── Application.php │ │ ├── Attribute │ │ │ └── AsCommand.php │ │ ├── CHANGELOG.md │ │ ├── CI │ │ │ └── GithubActionReporter.php │ │ ├── Color.php │ │ ├── Command │ │ │ ├── Command.php │ │ │ ├── CompleteCommand.php │ │ │ ├── DumpCompletionCommand.php │ │ │ ├── HelpCommand.php │ │ │ ├── LazyCommand.php │ │ │ ├── ListCommand.php │ │ │ ├── LockableTrait.php │ │ │ └── SignalableCommandInterface.php │ │ ├── CommandLoader │ │ │ ├── CommandLoaderInterface.php │ │ │ ├── ContainerCommandLoader.php │ │ │ └── FactoryCommandLoader.php │ │ ├── Completion │ │ │ ├── CompletionInput.php │ │ │ ├── CompletionSuggestions.php │ │ │ ├── Output │ │ │ │ ├── BashCompletionOutput.php │ │ │ │ └── CompletionOutputInterface.php │ │ │ └── Suggestion.php │ │ ├── ConsoleEvents.php │ │ ├── Cursor.php │ │ ├── DependencyInjection │ │ │ └── AddConsoleCommandPass.php │ │ ├── Descriptor │ │ │ ├── ApplicationDescription.php │ │ │ ├── Descriptor.php │ │ │ ├── DescriptorInterface.php │ │ │ ├── JsonDescriptor.php │ │ │ ├── MarkdownDescriptor.php │ │ │ ├── TextDescriptor.php │ │ │ └── XmlDescriptor.php │ │ ├── Event │ │ │ ├── ConsoleCommandEvent.php │ │ │ ├── ConsoleErrorEvent.php │ │ │ ├── ConsoleEvent.php │ │ │ ├── ConsoleSignalEvent.php │ │ │ └── ConsoleTerminateEvent.php │ │ ├── EventListener │ │ │ └── ErrorListener.php │ │ ├── Exception │ │ │ ├── CommandNotFoundException.php │ │ │ ├── ExceptionInterface.php │ │ │ ├── InvalidArgumentException.php │ │ │ ├── InvalidOptionException.php │ │ │ ├── LogicException.php │ │ │ ├── MissingInputException.php │ │ │ ├── NamespaceNotFoundException.php │ │ │ └── RuntimeException.php │ │ ├── Formatter │ │ │ ├── NullOutputFormatter.php │ │ │ ├── NullOutputFormatterStyle.php │ │ │ ├── OutputFormatter.php │ │ │ ├── OutputFormatterInterface.php │ │ │ ├── OutputFormatterStyle.php │ │ │ ├── OutputFormatterStyleInterface.php │ │ │ ├── OutputFormatterStyleStack.php │ │ │ └── WrappableOutputFormatterInterface.php │ │ ├── Helper │ │ │ ├── DebugFormatterHelper.php │ │ │ ├── DescriptorHelper.php │ │ │ ├── Dumper.php │ │ │ ├── FormatterHelper.php │ │ │ ├── Helper.php │ │ │ ├── HelperInterface.php │ │ │ ├── HelperSet.php │ │ │ ├── InputAwareHelper.php │ │ │ ├── ProcessHelper.php │ │ │ ├── ProgressBar.php │ │ │ ├── ProgressIndicator.php │ │ │ ├── QuestionHelper.php │ │ │ ├── SymfonyQuestionHelper.php │ │ │ ├── Table.php │ │ │ ├── TableCell.php │ │ │ ├── TableCellStyle.php │ │ │ ├── TableRows.php │ │ │ ├── TableSeparator.php │ │ │ └── TableStyle.php │ │ ├── Input │ │ │ ├── ArgvInput.php │ │ │ ├── ArrayInput.php │ │ │ ├── Input.php │ │ │ ├── InputArgument.php │ │ │ ├── InputAwareInterface.php │ │ │ ├── InputDefinition.php │ │ │ ├── InputInterface.php │ │ │ ├── InputOption.php │ │ │ ├── StreamableInputInterface.php │ │ │ └── StringInput.php │ │ ├── LICENSE │ │ ├── Logger │ │ │ └── ConsoleLogger.php │ │ ├── Output │ │ │ ├── BufferedOutput.php │ │ │ ├── ConsoleOutput.php │ │ │ ├── ConsoleOutputInterface.php │ │ │ ├── ConsoleSectionOutput.php │ │ │ ├── NullOutput.php │ │ │ ├── Output.php │ │ │ ├── OutputInterface.php │ │ │ ├── StreamOutput.php │ │ │ └── TrimmedBufferOutput.php │ │ ├── Question │ │ │ ├── ChoiceQuestion.php │ │ │ ├── ConfirmationQuestion.php │ │ │ └── Question.php │ │ ├── README.md │ │ ├── Resources │ │ │ ├── bin │ │ │ │ └── hiddeninput.exe │ │ │ └── completion.bash │ │ ├── SignalRegistry │ │ │ └── SignalRegistry.php │ │ ├── SingleCommandApplication.php │ │ ├── Style │ │ │ ├── OutputStyle.php │ │ │ ├── StyleInterface.php │ │ │ └── SymfonyStyle.php │ │ ├── Terminal.php │ │ ├── Tester │ │ │ ├── ApplicationTester.php │ │ │ ├── CommandCompletionTester.php │ │ │ ├── CommandTester.php │ │ │ ├── Constraint │ │ │ │ └── CommandIsSuccessful.php │ │ │ └── TesterTrait.php │ │ └── composer.json │ ├── deprecation-contracts │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ └── function.php │ ├── polyfill-ctype │ │ ├── Ctype.php │ │ ├── LICENSE │ │ ├── README.md │ │ ├── bootstrap.php │ │ ├── bootstrap80.php │ │ └── composer.json │ ├── polyfill-intl-grapheme │ │ ├── Grapheme.php │ │ ├── LICENSE │ │ ├── README.md │ │ ├── bootstrap.php │ │ ├── bootstrap80.php │ │ └── composer.json │ ├── polyfill-intl-normalizer │ │ ├── LICENSE │ │ ├── Normalizer.php │ │ ├── README.md │ │ ├── Resources │ │ │ ├── stubs │ │ │ │ └── Normalizer.php │ │ │ └── unidata │ │ │ │ ├── canonicalComposition.php │ │ │ │ ├── canonicalDecomposition.php │ │ │ │ ├── combiningClass.php │ │ │ │ └── compatibilityDecomposition.php │ │ ├── bootstrap.php │ │ ├── bootstrap80.php │ │ └── composer.json │ ├── polyfill-mbstring │ │ ├── LICENSE │ │ ├── Mbstring.php │ │ ├── README.md │ │ ├── Resources │ │ │ └── unidata │ │ │ │ ├── lowerCase.php │ │ │ │ ├── titleCaseRegexp.php │ │ │ │ └── upperCase.php │ │ ├── bootstrap.php │ │ ├── bootstrap80.php │ │ └── composer.json │ ├── polyfill-php73 │ │ ├── LICENSE │ │ ├── Php73.php │ │ ├── README.md │ │ ├── Resources │ │ │ └── stubs │ │ │ │ └── JsonException.php │ │ ├── bootstrap.php │ │ └── composer.json │ ├── polyfill-php80 │ │ ├── LICENSE │ │ ├── Php80.php │ │ ├── PhpToken.php │ │ ├── README.md │ │ ├── Resources │ │ │ └── stubs │ │ │ │ ├── Attribute.php │ │ │ │ ├── PhpToken.php │ │ │ │ ├── Stringable.php │ │ │ │ ├── UnhandledMatchError.php │ │ │ │ └── ValueError.php │ │ ├── bootstrap.php │ │ └── composer.json │ ├── service-contracts │ │ ├── LICENSE │ │ ├── README.md │ │ ├── ResetInterface.php │ │ ├── ServiceLocatorTrait.php │ │ ├── ServiceProviderInterface.php │ │ ├── ServiceSubscriberInterface.php │ │ ├── ServiceSubscriberTrait.php │ │ ├── Test │ │ │ └── ServiceLocatorTest.php │ │ └── composer.json │ └── string │ │ ├── AbstractString.php │ │ ├── AbstractUnicodeString.php │ │ ├── ByteString.php │ │ ├── CHANGELOG.md │ │ ├── CodePointString.php │ │ ├── Exception │ │ ├── ExceptionInterface.php │ │ ├── InvalidArgumentException.php │ │ └── RuntimeException.php │ │ ├── Inflector │ │ ├── EnglishInflector.php │ │ ├── FrenchInflector.php │ │ └── InflectorInterface.php │ │ ├── LICENSE │ │ ├── LazyString.php │ │ ├── README.md │ │ ├── Resources │ │ ├── data │ │ │ ├── wcswidth_table_wide.php │ │ │ └── wcswidth_table_zero.php │ │ └── functions.php │ │ ├── Slugger │ │ ├── AsciiSlugger.php │ │ └── SluggerInterface.php │ │ ├── UnicodeString.php │ │ └── composer.json ├── vlucas │ └── phpdotenv │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── composer.json │ │ ├── phpstan.src.neon.dist │ │ └── src │ │ ├── Dotenv.php │ │ ├── Exception │ │ ├── ExceptionInterface.php │ │ ├── InvalidEncodingException.php │ │ ├── InvalidFileException.php │ │ ├── InvalidPathException.php │ │ └── ValidationException.php │ │ ├── Loader │ │ ├── Loader.php │ │ ├── LoaderInterface.php │ │ └── Resolver.php │ │ ├── Parser │ │ ├── Entry.php │ │ ├── EntryParser.php │ │ ├── Lexer.php │ │ ├── Lines.php │ │ ├── Parser.php │ │ ├── ParserInterface.php │ │ └── Value.php │ │ ├── Repository │ │ ├── Adapter │ │ │ ├── AdapterInterface.php │ │ │ ├── ApacheAdapter.php │ │ │ ├── ArrayAdapter.php │ │ │ ├── EnvConstAdapter.php │ │ │ ├── GuardedWriter.php │ │ │ ├── ImmutableWriter.php │ │ │ ├── MultiReader.php │ │ │ ├── MultiWriter.php │ │ │ ├── PutenvAdapter.php │ │ │ ├── ReaderInterface.php │ │ │ ├── ReplacingWriter.php │ │ │ ├── ServerConstAdapter.php │ │ │ └── WriterInterface.php │ │ ├── AdapterRepository.php │ │ ├── RepositoryBuilder.php │ │ └── RepositoryInterface.php │ │ ├── Store │ │ ├── File │ │ │ ├── Paths.php │ │ │ └── Reader.php │ │ ├── FileStore.php │ │ ├── StoreBuilder.php │ │ ├── StoreInterface.php │ │ └── StringStore.php │ │ ├── Util │ │ ├── Regex.php │ │ └── Str.php │ │ └── Validator.php ├── webman │ ├── console │ │ ├── .gitignore │ │ ├── README.md │ │ ├── composer.json │ │ └── src │ │ │ ├── Application.php │ │ │ ├── Command.php │ │ │ ├── Commands │ │ │ ├── AppPluginCreateCommand.php │ │ │ ├── AppPluginInstallCommand.php │ │ │ ├── AppPluginUninstallCommand.php │ │ │ ├── BuildBinCommand.php │ │ │ ├── BuildPharCommand.php │ │ │ ├── ConnectionsCommand.php │ │ │ ├── FixDisbaleFunctionsCommand.php │ │ │ ├── InstallCommand.php │ │ │ ├── MakeBootstrapCommand.php │ │ │ ├── MakeCommandCommand.php │ │ │ ├── MakeControllerCommand.php │ │ │ ├── MakeMiddlewareCommand.php │ │ │ ├── MakeModelCommand.php │ │ │ ├── PluginCreateCommand.php │ │ │ ├── PluginDisableCommand.php │ │ │ ├── PluginEnableCommand.php │ │ │ ├── PluginExportCommand.php │ │ │ ├── PluginInstallCommand.php │ │ │ ├── PluginUninstallCommand.php │ │ │ ├── ReStartCommand.php │ │ │ ├── ReloadCommand.php │ │ │ ├── RouteListCommand.php │ │ │ ├── StartCommand.php │ │ │ ├── StatusCommand.php │ │ │ ├── StopCommand.php │ │ │ └── VersionCommand.php │ │ │ ├── Install.php │ │ │ ├── Util.php │ │ │ ├── config │ │ │ └── plugin │ │ │ │ └── webman │ │ │ │ └── console │ │ │ │ └── app.php │ │ │ └── webman │ └── event │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ └── src │ │ ├── BootStrap.php │ │ ├── Event.php │ │ ├── EventListCommand.php │ │ ├── Install.php │ │ └── config │ │ └── plugin │ │ └── webman │ │ └── event │ │ ├── app.php │ │ ├── bootstrap.php │ │ └── command.php └── workerman │ ├── crontab │ ├── README.md │ ├── composer.json │ ├── example │ │ └── test.php │ └── src │ │ ├── Crontab.php │ │ └── Parser.php │ ├── webman-framework │ ├── .gitignore │ ├── README.md │ ├── composer.json │ └── src │ │ ├── App.php │ │ ├── Bootstrap.php │ │ ├── Config.php │ │ ├── Container.php │ │ ├── Context.php │ │ ├── Exception │ │ ├── ExceptionHandler.php │ │ ├── ExceptionHandlerInterface.php │ │ ├── FileException.php │ │ └── NotFoundException.php │ │ ├── File.php │ │ ├── FileSessionHandler.php │ │ ├── Http │ │ ├── Request.php │ │ ├── Response.php │ │ └── UploadFile.php │ │ ├── Install.php │ │ ├── Middleware.php │ │ ├── MiddlewareInterface.php │ │ ├── Route.php │ │ ├── Route │ │ └── Route.php │ │ ├── Session │ │ ├── FileSessionHandler.php │ │ ├── RedisClusterSessionHandler.php │ │ └── RedisSessionHandler.php │ │ ├── Util.php │ │ ├── View.php │ │ └── support │ │ ├── App.php │ │ ├── Cache.php │ │ ├── Container.php │ │ ├── Context.php │ │ ├── Db.php │ │ ├── Log.php │ │ ├── Model.php │ │ ├── Plugin.php │ │ ├── Redis.php │ │ ├── Request.php │ │ ├── Response.php │ │ ├── Translation.php │ │ ├── View.php │ │ ├── bootstrap │ │ ├── LaravelDb.php │ │ └── Session.php │ │ ├── exception │ │ ├── BusinessException.php │ │ └── Handler.php │ │ └── view │ │ ├── Blade.php │ │ ├── Raw.php │ │ ├── ThinkPHP.php │ │ └── Twig.php │ └── workerman │ ├── .github │ └── FUNDING.yml │ ├── .gitignore │ ├── Autoloader.php │ ├── Connection │ ├── AsyncTcpConnection.php │ ├── AsyncUdpConnection.php │ ├── ConnectionInterface.php │ ├── TcpConnection.php │ └── UdpConnection.php │ ├── Events │ ├── Ev.php │ ├── Event.php │ ├── EventInterface.php │ ├── Libevent.php │ ├── React │ │ ├── Base.php │ │ ├── ExtEventLoop.php │ │ ├── ExtLibEventLoop.php │ │ └── StreamSelectLoop.php │ ├── Select.php │ ├── Swoole.php │ └── Uv.php │ ├── Lib │ ├── Constants.php │ └── Timer.php │ ├── MIT-LICENSE.txt │ ├── Protocols │ ├── Frame.php │ ├── Http.php │ ├── Http │ │ ├── Chunk.php │ │ ├── Request.php │ │ ├── Response.php │ │ ├── ServerSentEvents.php │ │ ├── Session.php │ │ ├── Session │ │ │ ├── FileSessionHandler.php │ │ │ ├── RedisClusterSessionHandler.php │ │ │ ├── RedisSessionHandler.php │ │ │ └── SessionHandlerInterface.php │ │ └── mime.types │ ├── ProtocolInterface.php │ ├── Text.php │ ├── Websocket.php │ └── Ws.php │ ├── README.md │ ├── Timer.php │ ├── Worker.php │ └── composer.json ├── webman ├── windows.bat ├── windows.php ├── windows7_start.cmd └── windows_start.cmd /.dockerignore: -------------------------------------------------------------------------------- 1 | .git 2 | * 3 | -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- 1 | APP_DEBUG=true 2 | 3 | SERVER_PROCESS_GROUP='' 4 | SERVER_PROCESS_USER='' 5 | 6 | DB_CONNECTION=mysql 7 | DB_HOST=127.0.0.1 8 | DB_PORT=3306 9 | DB_DATABASE=test 10 | DB_USERNAME=root 11 | DB_PASSWORD=123456 12 | 13 | SESSION_DRIVER=file 14 | 15 | REDIS_HOST=127.0.0.1 16 | REDIS_PASSWORD=null 17 | REDIS_PORT=6379 18 | REDIS_DATABASE=0 -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.git 2 | /.idea 3 | /.vscode 4 | /composer 5 | /db 6 | /php 7 | *.log 8 | /.env 9 | /._.DS_Store 10 | .DS_Store 11 | *.DS_Store 12 | /php-cs-fixer.phar 13 | .php_cs.cache 14 | -------------------------------------------------------------------------------- /.htaccess: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/common/event/EventListenerInterface.php: -------------------------------------------------------------------------------- 1 | parse($param); 24 | } 25 | } 26 | 27 | return '计划任务命令解析类 ' . $className . ' 不存在'; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /app/domain/Command/move.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | webman 9 | 10 | 11 | 12 | hello 13 | 14 | 15 | -------------------------------------------------------------------------------- /bin/.gitignore: -------------------------------------------------------------------------------- 1 | !.gitignore 2 | -------------------------------------------------------------------------------- /bin/iyuu.php: -------------------------------------------------------------------------------- 1 | run(); 28 | -------------------------------------------------------------------------------- /bin/spiders.php: -------------------------------------------------------------------------------- 1 | env('APP_DEBUG', false), 7 | 'default_timezone' => 'Asia/Shanghai', 8 | 'error_reporting' => E_ALL, 9 | 'request_class' => Request::class, 10 | 'public_path' => base_path() . DIRECTORY_SEPARATOR . 'public', 11 | 'runtime_path' => base_path(false) . DIRECTORY_SEPARATOR . 'runtime', 12 | 'controller_suffix' => '', 13 | //关闭控制器复用,每个请求都会触发对应控制器的__construct()构造函数 14 | 'controller_reuse' => false, 15 | ]; 16 | -------------------------------------------------------------------------------- /config/autoload.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | return [ 16 | 'files' => [ 17 | base_path() . '/app/functions.php', 18 | base_path() . '/support/Request.php', 19 | base_path() . '/support/Response.php', 20 | ] 21 | ]; 22 | -------------------------------------------------------------------------------- /config/bootstrap.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | return [ 16 | support\bootstrap\Session::class, 17 | ]; 18 | -------------------------------------------------------------------------------- /config/container.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | return new Webman\Container; 16 | -------------------------------------------------------------------------------- /config/dependence.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | return [ 16 | 17 | ]; 18 | -------------------------------------------------------------------------------- /config/event.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | return [ 16 | '' => app\common\exception\Handler::class, 17 | ]; 18 | -------------------------------------------------------------------------------- /config/middleware.php: -------------------------------------------------------------------------------- 1 | [ 7 | app\middleware\AuthCheck::class, 8 | ] 9 | ]; 10 | -------------------------------------------------------------------------------- /config/plugin/webman/event/app.php: -------------------------------------------------------------------------------- 1 | true, 4 | ]; -------------------------------------------------------------------------------- /config/plugin/webman/event/bootstrap.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | return [ 16 | Webman\Event\BootStrap::class, 17 | ]; 18 | -------------------------------------------------------------------------------- /config/plugin/webman/event/command.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | return [ 16 | 'default' => [ 17 | 'host' => env('REDIS_HOST', '127.0.0.1'), 18 | 'password' => env('REDIS_PASSWORD', null), 19 | 'port' => env('REDIS_PORT', 6379), 20 | 'database' => env('REDIS_DB', 0), 21 | ], 22 | ]; 23 | -------------------------------------------------------------------------------- /config/route.php: -------------------------------------------------------------------------------- 1 | method()) === 'OPTIONS' ? response('', 204) : json(['code' => 404, 'msg' => '404 not found']); 11 | $response->withHeaders([ 12 | 'Access-Control-Allow-Credentials' => 'true', 13 | 'Access-Control-Allow-Origin' => "*", 14 | 'Access-Control-Allow-Methods' => '*', 15 | 'Access-Control-Allow-Headers' => '*', 16 | ]); 17 | return $response; 18 | }); 19 | -------------------------------------------------------------------------------- /config/server.php: -------------------------------------------------------------------------------- 1 | defined('IYUU_LISTEN_IPV6') ? 'http://[::]:8787' : 'http://0.0.0.0:8787', 4 | 'transport' => 'tcp', 5 | 'context' => [], 6 | 'name' => 'IYUUPlus', 7 | 'count' => env('SERVER_PROCESS_COUNT', 2), 8 | 'user' => env('SERVER_PROCESS_USER', ''), 9 | 'group' => env('SERVER_PROCESS_GROUP', ''), 10 | 'event_loop' => '', 11 | 'stop_timeout' => 2, 12 | 'pid_file' => runtime_path() . '/webman.pid', 13 | 'log_file' => runtime_path() . '/workerman.log', 14 | 'status_file' => runtime_path() . '/webman.status', 15 | 'stdout_file' => runtime_path() . '/logs/stdout.log', 16 | 'max_request' => 1000, 17 | 'max_package_size' => 10 * 1024 * 1024 18 | ]; 19 | -------------------------------------------------------------------------------- /config/static.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | /** 16 | * 静态文件设置 17 | */ 18 | return [ 19 | 'enable' => true, // 是否支持静态文件 20 | 'middleware' => [ // 静态文件中间件 21 | app\middleware\StaticFile::class, 22 | ], 23 | ]; 24 | -------------------------------------------------------------------------------- /config/translation.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | /** 16 | * 多语言配置 17 | */ 18 | return [ 19 | // 默认语言 20 | 'locale' => 'zh_CN', 21 | // 回退语言 22 | 'fallback_locale' => ['zh_CN', 'en'], 23 | // 语言文件存放的文件夹 24 | 'path' => base_path() . '/resource/translations', 25 | ]; 26 | -------------------------------------------------------------------------------- /config/view.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | use support\view\Raw; 16 | use support\view\Twig; 17 | use support\view\Blade; 18 | use support\view\ThinkPHP; 19 | 20 | return [ 21 | 'handler' => Raw::class 22 | ]; 23 | -------------------------------------------------------------------------------- /docker/build.amd64.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | docker build -f Dockerfile -t iyuuplus:latest . 3 | docker run -it -v /root/plus:/IYUU/db -p 8787:8787 --network bridge --name IYUUPlus --restart always -d iyuuplus:latest 4 | docker exec -it IYUUPlus sh -------------------------------------------------------------------------------- /docker/build.arm64.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | #ARM平台通用脚本 3 | docker build -f Dockerfile -t iyuuplus:arm64v8 . 4 | docker run -it -v /root/plus:/IYUU/db -p 8787:8787 --network bridge --name IYUUPlus --restart always -d iyuuplus:arm64v8 5 | docker exec -it IYUUPlus sh -------------------------------------------------------------------------------- /docker/build.n1.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | docker build -t iyuuplus:arm64v8 . 3 | docker run -it -v /root/plus:/IYUU/db -v /var/lib/transmission/torrents:/torrents -v /var/lib/qbittorrent/.local/share/data/qBittorrent/BT_backup:/BT_backup -p 8787:8787 --network bridge --name IYUUPlus --restart always -d iyuuplus:arm64v8 4 | docker exec -it IYUUPlus sh -------------------------------------------------------------------------------- /docker/example.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/bin 3 | ## 相关命令 4 | # 1. 手动执行辅种 5 | docker exec IYUUPlus php ./bin/iyuu.php 6 | 7 | # 2. 手动删除辅种缓存 8 | docker exec -it IYUUPlus rm -rf ./runtime/torrent/cachehash 9 | 10 | # 3. 手动删除转移缓存 11 | docker exec -it IYUUPlus rm -rf ./runtime/torrent/cachemove 12 | 13 | # 4. 查看当前定时任务 14 | docker exec -it IYUUPlus crontab -l 15 | 16 | # 5. 修改定时任务(推荐修改docker容器的环境变量:参数cron) 17 | docker exec -it IYUUPlus crontab -e 18 | 19 | # 6. 进入容器内交互终端 20 | docker exec -it IYUUPlus sh -------------------------------------------------------------------------------- /docker/push.sh: -------------------------------------------------------------------------------- 1 | docker image tag iyuuplus:arm64v8 iyuucn/iyuuplus:arm64v8 2 | docker image push iyuucn/iyuuplus:arm64v8 -------------------------------------------------------------------------------- /docs/help.md: -------------------------------------------------------------------------------- 1 | IYUUPlus安装篇--群晖docker 2 | https://www.iyuu.cn/archives/426/ 3 | 4 | IYUUPlus安装篇--威联通docker 5 | https://www.iyuu.cn/archives/447/ 6 | 7 | IYUUPlus安装篇--Arm平台命令行安装 8 | https://www.iyuu.cn/archives/427/ 9 | 10 | IYUUPlus安装篇--Windows 11 | https://www.iyuu.cn/archives/429/ 12 | 13 | IYUUPlus使用篇-转移做种客户端 14 | https://www.iyuu.cn/archives/451/ -------------------------------------------------------------------------------- /gg.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | pwd_dir=$(cd $(dirname $0); pwd) 3 | echo $pwd_dir 4 | cd $(dirname $0) 5 | git fetch --all 6 | git reset --hard origin/master -------------------------------------------------------------------------------- /nssm/win32/install.cmd: -------------------------------------------------------------------------------- 1 | nssm install IYUUPlus -------------------------------------------------------------------------------- /nssm/win32/nssm.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/nssm/win32/nssm.exe -------------------------------------------------------------------------------- /nssm/win32/remove.cmd: -------------------------------------------------------------------------------- 1 | nssm stop IYUUPlus 2 | nssm remove IYUUPlus -------------------------------------------------------------------------------- /nssm/win64/install.cmd: -------------------------------------------------------------------------------- 1 | nssm install IYUUPlus -------------------------------------------------------------------------------- /nssm/win64/nssm.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/nssm/win64/nssm.exe -------------------------------------------------------------------------------- /nssm/win64/remove.cmd: -------------------------------------------------------------------------------- 1 | nssm stop IYUUPlus 2 | nssm remove IYUUPlus -------------------------------------------------------------------------------- /public/.gitattributes: -------------------------------------------------------------------------------- 1 | *.js linguist-language=JavaScript 2 | 3 | *.css linguist-language=JavaScript 4 | 5 | *.html linguist-language=JavaScript 6 | -------------------------------------------------------------------------------- /public/.gitignore: -------------------------------------------------------------------------------- 1 | /.idea -------------------------------------------------------------------------------- /public/404.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 404 Not Found - webman 4 | 5 | 6 |
7 |

404 Not Found

8 |
9 |
10 |
webman
11 | 12 | 13 | -------------------------------------------------------------------------------- /public/api/upload.json: -------------------------------------------------------------------------------- 1 | { 2 | "code": 1, 3 | "msg": "上传成功", 4 | "data": { 5 | "url": [ 6 | "../images/logo.png", 7 | "../images/captcha.jpg" 8 | ] 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/favicon.ico -------------------------------------------------------------------------------- /public/images/captcha.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/images/captcha.jpg -------------------------------------------------------------------------------- /public/images/home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/images/home.png -------------------------------------------------------------------------------- /public/images/icon-login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/images/icon-login.png -------------------------------------------------------------------------------- /public/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/images/logo.png -------------------------------------------------------------------------------- /public/js/lay-module/treetable-lay/treetable.css: -------------------------------------------------------------------------------- 1 | .treeTable-empty { 2 | width: 20px; 3 | display: inline-block; 4 | } 5 | 6 | .treeTable-icon { 7 | cursor: pointer; 8 | } 9 | 10 | .treeTable-icon .layui-icon-triangle-d:before { 11 | content: "\e623"; 12 | } 13 | 14 | .treeTable-icon.open .layui-icon-triangle-d:before { 15 | content: "\e625"; 16 | background-color: transparent; 17 | } 18 | 19 | -------------------------------------------------------------------------------- /public/js/lay-module/wangEditor/fonts/w-e-icon.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/js/lay-module/wangEditor/fonts/w-e-icon.woff -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/HELP-US-OUT.txt: -------------------------------------------------------------------------------- 1 | I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project, 2 | Fort Awesome (https://fortawesome.com). It makes it easy to put the perfect icons on your website. Choose from our awesome, 3 | comprehensive icon sets or copy and paste your own. 4 | 5 | Please. Check it out. 6 | 7 | -Dave Gandy 8 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/font-awesome-4.7.0/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/font-awesome-4.7.0/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/font-awesome-4.7.0/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/font-awesome-4.7.0/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/font-awesome-4.7.0/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/animated.less: -------------------------------------------------------------------------------- 1 | // Animated Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .@{fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .@{fa-css-prefix}-pull-left { float: left; } 11 | .@{fa-css-prefix}-pull-right { float: right; } 12 | 13 | .@{fa-css-prefix} { 14 | &.@{fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.@{fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .@{fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables.less"; 7 | @import "mixins.less"; 8 | @import "path.less"; 9 | @import "core.less"; 10 | @import "larger.less"; 11 | @import "fixed-width.less"; 12 | @import "list.less"; 13 | @import "bordered-pulled.less"; 14 | @import "animated.less"; 15 | @import "rotated-flipped.less"; 16 | @import "stacked.less"; 17 | @import "icons.less"; 18 | @import "screen-reader.less"; 19 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), 9 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 10 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 11 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/screen-reader.less: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { .sr-only(); } 5 | .sr-only-focusable { .sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/_animated.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .#{$fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .#{$fa-css-prefix}-pull-left { float: left; } 11 | .#{$fa-css-prefix}-pull-right { float: right; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .#{$fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), 9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/_screen-reader.scss: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { @include sr-only(); } 5 | .sr-only-focusable { @include sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /public/lib/font-awesome-4.7.0/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "animated"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | @import "screen-reader"; 19 | -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/css/modules/layer/default/icon-ext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/css/modules/layer/default/icon-ext.png -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/css/modules/layer/default/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/css/modules/layer/default/icon.png -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/css/modules/layer/default/loading-0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/css/modules/layer/default/loading-0.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/css/modules/layer/default/loading-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/css/modules/layer/default/loading-1.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/css/modules/layer/default/loading-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/css/modules/layer/default/loading-2.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/font/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/font/iconfont.eot -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/font/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/font/iconfont.ttf -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/font/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/font/iconfont.woff -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/font/iconfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/font/iconfont.woff2 -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/0.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/1.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/10.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/10.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/11.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/11.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/12.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/12.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/13.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/13.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/14.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/14.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/15.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/15.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/16.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/17.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/17.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/18.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/18.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/19.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/19.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/2.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/20.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/20.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/21.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/21.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/22.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/22.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/23.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/23.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/24.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/24.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/25.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/25.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/26.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/26.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/27.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/27.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/28.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/28.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/29.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/29.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/3.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/30.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/30.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/31.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/31.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/32.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/32.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/33.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/33.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/34.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/34.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/35.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/35.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/36.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/36.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/37.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/37.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/38.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/38.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/39.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/39.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/4.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/4.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/40.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/40.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/41.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/41.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/42.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/42.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/43.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/43.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/44.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/44.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/45.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/45.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/46.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/46.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/47.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/47.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/48.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/48.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/49.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/49.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/5.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/5.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/50.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/50.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/51.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/51.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/52.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/52.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/53.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/53.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/54.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/54.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/55.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/55.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/56.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/56.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/57.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/57.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/58.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/58.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/59.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/59.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/6.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/6.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/60.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/60.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/61.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/61.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/62.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/62.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/63.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/63.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/64.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/64.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/65.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/65.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/66.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/66.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/67.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/67.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/68.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/68.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/69.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/69.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/7.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/7.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/70.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/70.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/71.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/71.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/8.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/8.gif -------------------------------------------------------------------------------- /public/lib/layui-v2.5.7/images/face/9.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/public/lib/layui-v2.5.7/images/face/9.gif -------------------------------------------------------------------------------- /runtime/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !logs 3 | !views 4 | !.gitignore 5 | -------------------------------------------------------------------------------- /runtime/logs/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /runtime/views/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /src/.gitignore: -------------------------------------------------------------------------------- 1 | !.gitignore 2 | -------------------------------------------------------------------------------- /src/Notify/INotify.php: -------------------------------------------------------------------------------- 1 | sites = $sites; 21 | } 22 | 23 | /** 24 | * @return array 25 | */ 26 | public function getSites(): array 27 | { 28 | return $this->sites; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /src/Reseed/Listener/ClientHashSuccessListener.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/btschool.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/chdbits.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/discfan.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/dmhy.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/dragonhd.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/eastgame.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/haidan.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/hd4fans.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/hdai.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/hdarea.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/hdatmos.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/hdchina.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/hdcity.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/Rss/hddolby.php: -------------------------------------------------------------------------------- 1 | passkey = isset($config['downHash']) && $config['downHash'] ? $config['downHash'] : ''; 24 | if (empty($this->passkey)) { 25 | die($this->site . ' 没有配置密钥,初始化错误。' . PHP_EOL); 26 | } 27 | } 28 | 29 | /** 30 | * 抽象方法,在类中实现 31 | * 解码html为种子数组 32 | * @param string $html 33 | * @return array 34 | */ 35 | public function decode($html = '') 36 | { 37 | echo "正在解码RSS资源..." . PHP_EOL; 38 | return $this->NexusPHP($html); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/Rss/hdfans.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/hdsky.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/Rss/hdtime.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/hdzone.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/hitpt.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/joyhd.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/keepfrds.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/leaguehd.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/mteam.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/Rss/nanyangpt.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/nicept.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/npupt.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/opencd.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/oshen.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/ourbits.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/ptba.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/pter.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/pthome.php: -------------------------------------------------------------------------------- 1 | passkey = isset($config['downHash']) && $config['downHash'] ? $config['downHash'] : ''; 24 | if (empty($this->passkey)) { 25 | die($this->site . ' 没有配置密钥,初始化错误。' . PHP_EOL); 26 | } 27 | } 28 | 29 | /** 30 | * 抽象方法,在类中实现 31 | * 解码html为种子数组 32 | * @param string $html 33 | * @return array 34 | */ 35 | public function decode($html = '') 36 | { 37 | echo "正在解码RSS资源..." . PHP_EOL; 38 | return $this->NexusPHP($html); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/Rss/ptmsg.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/ptsbao.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/pttime.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/site52pt.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/soulvoice.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/ssd.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/tjupt.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/torrentccf.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/upxin.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Rss/yingk.php: -------------------------------------------------------------------------------- 1 | NexusPHP($html); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/Spiders/beitai.php: -------------------------------------------------------------------------------- 1 | ') + strlen('
'); 18 | $h2_len = strpos($html, ' 0) { 20 | //存在副标题 21 | $title = substr($html, $h2_offset, $h2_len); 22 | //二次过滤 23 | $title = Selector::remove($title, "//a"); 24 | $title = strip_tags($title); 25 | } else { 26 | $title = ''; 27 | } 28 | 29 | return $title; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/Spiders/tjupt.php: -------------------------------------------------------------------------------- 1 | '); 11 | /** 12 | * H&R 标志 13 | */ 14 | public static $HR = array('class="hitandrun"', 'alt="H&R"', 'title="H&R"'); 15 | } 16 | -------------------------------------------------------------------------------- /src/Spiders/torrentccf.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace support; 16 | 17 | /** 18 | * Class Request 19 | * @package support 20 | */ 21 | class Request extends \Webman\Http\Request 22 | { 23 | 24 | } -------------------------------------------------------------------------------- /support/Response.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace support; 16 | 17 | /** 18 | * Class Response 19 | * @package support 20 | */ 21 | class Response extends \Webman\Http\Response 22 | { 23 | 24 | } -------------------------------------------------------------------------------- /todo.md: -------------------------------------------------------------------------------- 1 | ## TODO清单: 2 | 3 | - [x] 辅种结束,写结束日志 4 | - [x] 一键清理辅种缓存 5 | - [x] 一键清理转移缓存 6 | - [x] 任务热刷新 7 | - [x] [站点设置]已添加的,屏蔽选择 8 | - [x] 一键更新到最新版 9 | - [x] 跨平台的配置导入导出(任务热刷新) 10 | - [x] 分批次请求辅种,解决客户端做种多辅种失败的问题(有的客户端内做种60000个) 11 | - [x] 增加开关,未配置的站点不显示日志 12 | - [x] 开启关闭计划任务 13 | - [x] 及时清理log(减少空间占用) 14 | - [x] 支持用户定义辅种代理服务器 15 | - [x] 增加微信通知使能开关:控制下载任务的微信通知 16 | - [x] 辅种任务自动校验 17 | - [x] 辅种任务自动开始做种 18 | - [x] 停止执行中的计划任务 19 | - [x] 前端实时显示任务运行状态(Ajax) 20 | - [ ] 辅种时,支持目录、分类的筛选器/过滤器 21 | - [ ] 替换tracker 22 | - [ ] 检查做种任务与数据对应关系 23 | - [ ] 一键导入PT助手的cookie配置 24 | - [ ] 增量更新漏掉的种子 25 | - [ ] 自动验证站点已删除的种子 26 | - [ ] 自动追剧(订阅/追更/链接/豆瓣) -------------------------------------------------------------------------------- /vendor/autoload.php: -------------------------------------------------------------------------------- 1 | array($vendorDir . '/curl/curl/src'), 10 | ); 11 | -------------------------------------------------------------------------------- /vendor/curl/curl/.php-cs-fixer.dist.php: -------------------------------------------------------------------------------- 1 | in(__DIR__) 5 | ; 6 | 7 | $config = new PhpCsFixer\Config(); 8 | return $config->setRules([ 9 | '@PSR12' => true, 10 | 'ordered_imports' => ['sort_algorithm' => 'alpha'], 11 | 'no_unused_imports' => true, 12 | 'visibility_required' => ['elements' => ['property', 'method']] 13 | ]) 14 | ->setFinder($finder) 15 | ; -------------------------------------------------------------------------------- /vendor/doctrine/inflector/README.md: -------------------------------------------------------------------------------- 1 | # Doctrine Inflector 2 | 3 | Doctrine Inflector is a small library that can perform string manipulations 4 | with regard to uppercase/lowercase and singular/plural forms of words. 5 | 6 | [![Build Status](https://github.com/doctrine/inflector/workflows/Continuous%20Integration/badge.svg)](https://github.com/doctrine/inflector/actions?query=workflow%3A%22Continuous+Integration%22+branch%3A4.0.x) 7 | [![Code Coverage](https://codecov.io/gh/doctrine/inflector/branch/2.0.x/graph/badge.svg)](https://codecov.io/gh/doctrine/inflector/branch/2.0.x) 8 | -------------------------------------------------------------------------------- /vendor/doctrine/inflector/lib/Doctrine/Inflector/CachedWordInflector.php: -------------------------------------------------------------------------------- 1 | wordInflector = $wordInflector; 18 | } 19 | 20 | public function inflect(string $word): string 21 | { 22 | return $this->cache[$word] ?? $this->cache[$word] = $this->wordInflector->inflect($word); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /vendor/doctrine/inflector/lib/Doctrine/Inflector/Language.php: -------------------------------------------------------------------------------- 1 | patterns = $patterns; 22 | 23 | $patterns = array_map(static function (Pattern $pattern): string { 24 | return $pattern->getPattern(); 25 | }, $this->patterns); 26 | 27 | $this->regex = '/^(?:' . implode('|', $patterns) . ')$/i'; 28 | } 29 | 30 | public function matches(string $word): bool 31 | { 32 | return preg_match($this->regex, $word, $regs) === 1; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /vendor/doctrine/inflector/lib/Doctrine/Inflector/Rules/Portuguese/InflectorFactory.php: -------------------------------------------------------------------------------- 1 | from = $from; 18 | $this->to = $to; 19 | } 20 | 21 | public function getFrom(): Word 22 | { 23 | return $this->from; 24 | } 25 | 26 | public function getTo(): Word 27 | { 28 | return $this->to; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /vendor/doctrine/inflector/lib/Doctrine/Inflector/Rules/Transformations.php: -------------------------------------------------------------------------------- 1 | transformations = $transformations; 17 | } 18 | 19 | public function inflect(string $word): string 20 | { 21 | foreach ($this->transformations as $transformation) { 22 | if ($transformation->getPattern()->matches($word)) { 23 | return $transformation->inflect($word); 24 | } 25 | } 26 | 27 | return $word; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /vendor/doctrine/inflector/lib/Doctrine/Inflector/Rules/Turkish/InflectorFactory.php: -------------------------------------------------------------------------------- 1 | word = $word; 15 | } 16 | 17 | public function getWord(): string 18 | { 19 | return $this->word; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /vendor/doctrine/inflector/lib/Doctrine/Inflector/WordInflector.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Monolog\Handler\FingersCrossed; 13 | 14 | /** 15 | * Interface for activation strategies for the FingersCrossedHandler. 16 | * 17 | * @author Johannes M. Schmitt 18 | * 19 | * @phpstan-import-type Record from \Monolog\Logger 20 | */ 21 | interface ActivationStrategyInterface 22 | { 23 | /** 24 | * Returns whether the given record activates the handler. 25 | * 26 | * @phpstan-param Record $record 27 | */ 28 | public function isHandlerActivated(array $record): bool; 29 | } 30 | -------------------------------------------------------------------------------- /vendor/monolog/monolog/src/Monolog/Handler/MissingExtensionException.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Monolog\Handler; 13 | 14 | /** 15 | * Exception can be thrown if an extension for a handler is missing 16 | * 17 | * @author Christian Bergau 18 | */ 19 | class MissingExtensionException extends \Exception 20 | { 21 | } 22 | -------------------------------------------------------------------------------- /vendor/monolog/monolog/src/Monolog/Handler/WebRequestRecognizerTrait.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Monolog\Handler; 13 | 14 | trait WebRequestRecognizerTrait 15 | { 16 | /** 17 | * Checks if PHP's serving a web request 18 | * @return bool 19 | */ 20 | protected function isWebRequest(): bool 21 | { 22 | return 'cli' !== \PHP_SAPI && 'phpdbg' !== \PHP_SAPI; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /vendor/monolog/monolog/src/Monolog/Processor/ProcessIdProcessor.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Monolog\Processor; 13 | 14 | /** 15 | * Adds value of getmypid into records 16 | * 17 | * @author Andreas Hörnicke 18 | */ 19 | class ProcessIdProcessor implements ProcessorInterface 20 | { 21 | /** 22 | * {@inheritDoc} 23 | */ 24 | public function __invoke(array $record): array 25 | { 26 | $record['extra']['process_id'] = getmypid(); 27 | 28 | return $record; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /vendor/monolog/monolog/src/Monolog/Processor/ProcessorInterface.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Monolog\Processor; 13 | 14 | /** 15 | * An optional interface to allow labelling Monolog processors. 16 | * 17 | * @author Nicolas Grekas 18 | * 19 | * @phpstan-import-type Record from \Monolog\Logger 20 | */ 21 | interface ProcessorInterface 22 | { 23 | /** 24 | * @return array The processed record 25 | * 26 | * @phpstan-param Record $record 27 | * @phpstan-return Record 28 | */ 29 | public function __invoke(array $record); 30 | } 31 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/.gitignore: -------------------------------------------------------------------------------- 1 | /vendor/ 2 | .idea/ 3 | 4 | # ignore lock file since we have no extra dependencies 5 | composer.lock 6 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/.hhconfig: -------------------------------------------------------------------------------- 1 | assume_php=false 2 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: php 3 | 4 | php: 5 | - 5.4 6 | - 5.5 7 | - 5.6 8 | - 7.0 9 | - 7.1 10 | - 7.2 11 | - hhvm 12 | 13 | script: 14 | - ./vendor/bin/phpunit 15 | 16 | before_install: 17 | - travis_retry composer self-update 18 | 19 | install: 20 | - composer install 21 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nikic/fast-route", 3 | "description": "Fast request router for PHP", 4 | "keywords": ["routing", "router"], 5 | "license": "BSD-3-Clause", 6 | "authors": [ 7 | { 8 | "name": "Nikita Popov", 9 | "email": "nikic@php.net" 10 | } 11 | ], 12 | "autoload": { 13 | "psr-4": { 14 | "FastRoute\\": "src/" 15 | }, 16 | "files": ["src/functions.php"] 17 | }, 18 | "require": { 19 | "php": ">=5.4.0" 20 | }, 21 | "require-dev": { 22 | "phpunit/phpunit": "^4.8.35|~5.7" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 | ./test/ 16 | 17 | 18 | 19 | 20 | 21 | ./src/ 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/src/BadRouteException.php: -------------------------------------------------------------------------------- 1 | $route) { 18 | $regexes[] = $regex; 19 | $routeMap[$offset] = [$route->handler, $route->variables]; 20 | 21 | $offset += count($route->variables); 22 | } 23 | 24 | $regex = '~^(?:' . implode('|', $regexes) . ')$~'; 25 | return ['regex' => $regex, 'routeMap' => $routeMap]; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/src/DataGenerator/MarkBased.php: -------------------------------------------------------------------------------- 1 | $route) { 18 | $regexes[] = $regex . '(*MARK:' . $markName . ')'; 19 | $routeMap[$markName] = [$route->handler, $route->variables]; 20 | 21 | ++$markName; 22 | } 23 | 24 | $regex = '~^(?|' . implode('|', $regexes) . ')$~'; 25 | return ['regex' => $regex, 'routeMap' => $routeMap]; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/src/Dispatcher.php: -------------------------------------------------------------------------------- 1 | 'value', ...]] 19 | * 20 | * @param string $httpMethod 21 | * @param string $uri 22 | * 23 | * @return array 24 | */ 25 | public function dispatch($httpMethod, $uri); 26 | } 27 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/src/bootstrap.php: -------------------------------------------------------------------------------- 1 | markTestSkipped('PHP 5.6 required for MARK support'); 12 | } 13 | } 14 | 15 | protected function getDispatcherClass() 16 | { 17 | return 'FastRoute\\Dispatcher\\MarkBased'; 18 | } 19 | 20 | protected function getDataGeneratorClass() 21 | { 22 | return 'FastRoute\\DataGenerator\\MarkBased'; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/test/HackTypechecker/fixtures/empty_options.php: -------------------------------------------------------------------------------- 1 | {}, shape()); 7 | } 8 | 9 | function empty_options_cached(): \FastRoute\Dispatcher { 10 | return \FastRoute\cachedDispatcher($collector ==> {}, shape()); 11 | } 12 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/test/HackTypechecker/fixtures/no_options.php: -------------------------------------------------------------------------------- 1 | {}); 7 | } 8 | 9 | function no_options_cached(): \FastRoute\Dispatcher { 10 | return \FastRoute\cachedDispatcher($collector ==> {}); 11 | } 12 | -------------------------------------------------------------------------------- /vendor/nikic/fast-route/test/bootstrap.php: -------------------------------------------------------------------------------- 1 | =7.4.0" 16 | }, 17 | "autoload": { 18 | "psr-4": { 19 | "Psr\\Container\\": "src/" 20 | } 21 | }, 22 | "extra": { 23 | "branch-alias": { 24 | "dev-master": "2.0.x-dev" 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /vendor/psr/container/src/ContainerExceptionInterface.php: -------------------------------------------------------------------------------- 1 | logger = $logger; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /vendor/psr/log/Psr/Log/NullLogger.php: -------------------------------------------------------------------------------- 1 | logger) { }` 11 | * blocks. 12 | */ 13 | class NullLogger extends AbstractLogger 14 | { 15 | /** 16 | * Logs with an arbitrary level. 17 | * 18 | * @param mixed $level 19 | * @param string $message 20 | * @param array $context 21 | * 22 | * @return void 23 | * 24 | * @throws \Psr\Log\InvalidArgumentException 25 | */ 26 | public function log($level, $message, array $context = array()) 27 | { 28 | // noop 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /vendor/psr/log/Psr/Log/Test/DummyTest.php: -------------------------------------------------------------------------------- 1 | =5.3.0" 15 | }, 16 | "autoload": { 17 | "psr-4": { 18 | "Psr\\Log\\": "Psr/Log/" 19 | } 20 | }, 21 | "extra": { 22 | "branch-alias": { 23 | "dev-master": "1.1.x-dev" 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /vendor/rhilip/bencode/.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | - package-ecosystem: composer 4 | directory: "/" 5 | schedule: 6 | interval: daily 7 | time: "21:00" 8 | open-pull-requests-limit: 10 9 | -------------------------------------------------------------------------------- /vendor/rhilip/bencode/.gitignore: -------------------------------------------------------------------------------- 1 | # Created by .ignore support plugin (hsz.mobi) 2 | ### Composer template 3 | composer.phar 4 | /vendor/ 5 | composer.lock 6 | -------------------------------------------------------------------------------- /vendor/rhilip/bencode/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rhilip/bencode", 3 | "description": "A pure and simple PHP library for encoding and decoding Bencode data", 4 | "keywords": ["bittorrent", "torrent", "bencode"], 5 | "type": "library", 6 | "license": "MIT", 7 | "authors": [ 8 | { 9 | "name": "Rhilip", 10 | "email": "rhilipruan@gmail.com" 11 | } 12 | ], 13 | "require": { 14 | "php": "^7.3|^8.0" 15 | }, 16 | "require-dev": { 17 | "phpunit/phpunit": "^9.0" 18 | }, 19 | "autoload": { 20 | "psr-4": { 21 | "Rhilip\\Bencode\\": "src" 22 | } 23 | }, 24 | "suggest": { 25 | "php-64bit": "Running 64 bit is recommended to prevent integer overflow" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /vendor/rhilip/bencode/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | ./src 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /vendor/rhilip/bencode/src/ParseException.php: -------------------------------------------------------------------------------- 1 | '1e2dbc73590ba3bea3cee6e3053d98da86e6c842', 17 | TorrentFile::PROTOCOL_V2 => '3f6fb45188917a8aed604ba7f399843f7891f68748bef89b7692465656ca6076' 18 | ]; 19 | } 20 | -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/TorrentHybridSingleTest.php: -------------------------------------------------------------------------------- 1 | 'be2a86eff99608a56c506157dd5c9bc8779aa81d', 17 | TorrentFile::PROTOCOL_V2 => 'fd0e265c50a080759b61e7a66cf9c9a00af0256815e96a4c3564f733127dda46' 18 | ]; 19 | } 20 | -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/TorrentV1SingleTest.php: -------------------------------------------------------------------------------- 1 | 'd0e710431bed8cb4b1860b9a7a40a20df8de8266', 19 | TorrentFile::PROTOCOL_V2 => null 20 | ]; 21 | } 22 | -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/TorrentV2MultiTest.php: -------------------------------------------------------------------------------- 1 | null, 19 | TorrentFile::PROTOCOL_V2 => '832d96b4f8b422aa75f8d40975b1a408154bc1a2bdffccf7b689386cde125a30' 20 | ]; 21 | } 22 | -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/TorrentV2SingleTest.php: -------------------------------------------------------------------------------- 1 | null, 19 | TorrentFile::PROTOCOL_V2 => 'a58e747f0ce2c2073c6fd635d4afdd5c6162574d6c9184318f884f553c3ed65b' 20 | ]; 21 | } 22 | -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/asserts/hybrid-multi.torrent: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/vendor/rhilip/bencode/tests/asserts/hybrid-multi.torrent -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/asserts/hybrid-single.torrent: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/vendor/rhilip/bencode/tests/asserts/hybrid-single.torrent -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/asserts/v1-multi.torrent: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/vendor/rhilip/bencode/tests/asserts/v1-multi.torrent -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/asserts/v1-single.torrent: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/vendor/rhilip/bencode/tests/asserts/v1-single.torrent -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/asserts/v2-multi.torrent: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/vendor/rhilip/bencode/tests/asserts/v2-multi.torrent -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/asserts/v2-single.torrent: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/vendor/rhilip/bencode/tests/asserts/v2-single.torrent -------------------------------------------------------------------------------- /vendor/rhilip/bencode/tests/traits/TorrentFileV1Trait.php: -------------------------------------------------------------------------------- 1 | expectException(ParseException::class); 13 | $this->expectExceptionMessage('Invalid pieces length'); 14 | 15 | $this->torrent->setInfoField('pieces', $this->torrent->getRootField('pieces') . 'somestring'); 16 | $this->torrent->parse(); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/symfony/console/Command/SignalableCommandInterface.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Command; 13 | 14 | /** 15 | * Interface for command reacting to signal. 16 | * 17 | * @author Grégoire Pineau 18 | */ 19 | interface SignalableCommandInterface 20 | { 21 | /** 22 | * Returns the list of signals to subscribe. 23 | */ 24 | public function getSubscribedSignals(): array; 25 | 26 | /** 27 | * The method will be called when the application is signaled. 28 | */ 29 | public function handleSignal(int $signal): void; 30 | } 31 | -------------------------------------------------------------------------------- /vendor/symfony/console/Completion/Output/CompletionOutputInterface.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Completion\Output; 13 | 14 | use Symfony\Component\Console\Completion\CompletionSuggestions; 15 | use Symfony\Component\Console\Output\OutputInterface; 16 | 17 | /** 18 | * Transforms the {@see CompletionSuggestions} object into output readable by the shell completion. 19 | * 20 | * @author Wouter de Jong 21 | */ 22 | interface CompletionOutputInterface 23 | { 24 | public function write(CompletionSuggestions $suggestions, OutputInterface $output): void; 25 | } 26 | -------------------------------------------------------------------------------- /vendor/symfony/console/Completion/Suggestion.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Completion; 13 | 14 | /** 15 | * Represents a single suggested value. 16 | * 17 | * @author Wouter de Jong 18 | */ 19 | class Suggestion 20 | { 21 | private $value; 22 | 23 | public function __construct(string $value) 24 | { 25 | $this->value = $value; 26 | } 27 | 28 | public function getValue(): string 29 | { 30 | return $this->value; 31 | } 32 | 33 | public function __toString(): string 34 | { 35 | return $this->getValue(); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /vendor/symfony/console/Descriptor/DescriptorInterface.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Descriptor; 13 | 14 | use Symfony\Component\Console\Output\OutputInterface; 15 | 16 | /** 17 | * Descriptor interface. 18 | * 19 | * @author Jean-François Simon 20 | */ 21 | interface DescriptorInterface 22 | { 23 | public function describe(OutputInterface $output, object $object, array $options = []); 24 | } 25 | -------------------------------------------------------------------------------- /vendor/symfony/console/Exception/ExceptionInterface.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Exception; 13 | 14 | /** 15 | * ExceptionInterface. 16 | * 17 | * @author Jérôme Tamarelle 18 | */ 19 | interface ExceptionInterface extends \Throwable 20 | { 21 | } 22 | -------------------------------------------------------------------------------- /vendor/symfony/console/Exception/InvalidArgumentException.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Exception; 13 | 14 | /** 15 | * @author Jérôme Tamarelle 16 | */ 17 | class InvalidArgumentException extends \InvalidArgumentException implements ExceptionInterface 18 | { 19 | } 20 | -------------------------------------------------------------------------------- /vendor/symfony/console/Exception/InvalidOptionException.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Exception; 13 | 14 | /** 15 | * Represents an incorrect option name or value typed in the console. 16 | * 17 | * @author Jérôme Tamarelle 18 | */ 19 | class InvalidOptionException extends \InvalidArgumentException implements ExceptionInterface 20 | { 21 | } 22 | -------------------------------------------------------------------------------- /vendor/symfony/console/Exception/LogicException.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Exception; 13 | 14 | /** 15 | * @author Jérôme Tamarelle 16 | */ 17 | class LogicException extends \LogicException implements ExceptionInterface 18 | { 19 | } 20 | -------------------------------------------------------------------------------- /vendor/symfony/console/Exception/MissingInputException.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Exception; 13 | 14 | /** 15 | * Represents failure to read input from stdin. 16 | * 17 | * @author Gabriel Ostrolucký 18 | */ 19 | class MissingInputException extends RuntimeException implements ExceptionInterface 20 | { 21 | } 22 | -------------------------------------------------------------------------------- /vendor/symfony/console/Exception/NamespaceNotFoundException.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Exception; 13 | 14 | /** 15 | * Represents an incorrect namespace typed in the console. 16 | * 17 | * @author Pierre du Plessis 18 | */ 19 | class NamespaceNotFoundException extends CommandNotFoundException 20 | { 21 | } 22 | -------------------------------------------------------------------------------- /vendor/symfony/console/Exception/RuntimeException.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Exception; 13 | 14 | /** 15 | * @author Jérôme Tamarelle 16 | */ 17 | class RuntimeException extends \RuntimeException implements ExceptionInterface 18 | { 19 | } 20 | -------------------------------------------------------------------------------- /vendor/symfony/console/Formatter/WrappableOutputFormatterInterface.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Formatter; 13 | 14 | /** 15 | * Formatter interface for console output that supports word wrapping. 16 | * 17 | * @author Roland Franssen 18 | */ 19 | interface WrappableOutputFormatterInterface extends OutputFormatterInterface 20 | { 21 | /** 22 | * Formats a message according to the given styles, wrapping at `$width` (0 means no wrapping). 23 | */ 24 | public function formatAndWrap(?string $message, int $width); 25 | } 26 | -------------------------------------------------------------------------------- /vendor/symfony/console/Helper/InputAwareHelper.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Helper; 13 | 14 | use Symfony\Component\Console\Input\InputAwareInterface; 15 | use Symfony\Component\Console\Input\InputInterface; 16 | 17 | /** 18 | * An implementation of InputAwareInterface for Helpers. 19 | * 20 | * @author Wouter J 21 | */ 22 | abstract class InputAwareHelper extends Helper implements InputAwareInterface 23 | { 24 | protected $input; 25 | 26 | /** 27 | * {@inheritdoc} 28 | */ 29 | public function setInput(InputInterface $input) 30 | { 31 | $this->input = $input; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /vendor/symfony/console/Helper/TableRows.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Helper; 13 | 14 | /** 15 | * @internal 16 | */ 17 | class TableRows implements \IteratorAggregate 18 | { 19 | private $generator; 20 | 21 | public function __construct(\Closure $generator) 22 | { 23 | $this->generator = $generator; 24 | } 25 | 26 | public function getIterator(): \Traversable 27 | { 28 | return ($this->generator)(); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /vendor/symfony/console/Helper/TableSeparator.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Helper; 13 | 14 | /** 15 | * Marks a row as being a separator. 16 | * 17 | * @author Fabien Potencier 18 | */ 19 | class TableSeparator extends TableCell 20 | { 21 | public function __construct(array $options = []) 22 | { 23 | parent::__construct('', $options); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /vendor/symfony/console/Input/InputAwareInterface.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\Console\Input; 13 | 14 | /** 15 | * InputAwareInterface should be implemented by classes that depends on the 16 | * Console Input. 17 | * 18 | * @author Wouter J 19 | */ 20 | interface InputAwareInterface 21 | { 22 | /** 23 | * Sets the Console Input. 24 | */ 25 | public function setInput(InputInterface $input); 26 | } 27 | -------------------------------------------------------------------------------- /vendor/symfony/console/Resources/bin/hiddeninput.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/vendor/symfony/console/Resources/bin/hiddeninput.exe -------------------------------------------------------------------------------- /vendor/symfony/deprecation-contracts/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | composer.lock 3 | phpunit.xml 4 | -------------------------------------------------------------------------------- /vendor/symfony/deprecation-contracts/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | CHANGELOG 2 | ========= 3 | 4 | The changelog is maintained for all Symfony contracts at the following URL: 5 | https://github.com/symfony/contracts/blob/main/CHANGELOG.md 6 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-ctype/README.md: -------------------------------------------------------------------------------- 1 | Symfony Polyfill / Ctype 2 | ======================== 3 | 4 | This component provides `ctype_*` functions to users who run php versions without the ctype extension. 5 | 6 | More information can be found in the 7 | [main Polyfill README](https://github.com/symfony/polyfill/blob/main/README.md). 8 | 9 | License 10 | ======= 11 | 12 | This library is released under the [MIT license](LICENSE). 13 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-intl-normalizer/README.md: -------------------------------------------------------------------------------- 1 | Symfony Polyfill / Intl: Normalizer 2 | =================================== 3 | 4 | This component provides a fallback implementation for the 5 | [`Normalizer`](https://php.net/Normalizer) class provided 6 | by the [Intl](https://php.net/intl) extension. 7 | 8 | More information can be found in the 9 | [main Polyfill README](https://github.com/symfony/polyfill/blob/main/README.md). 10 | 11 | License 12 | ======= 13 | 14 | This library is released under the [MIT license](LICENSE). 15 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-intl-normalizer/Resources/stubs/Normalizer.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | use Symfony\Polyfill\Intl\Normalizer as p; 13 | 14 | if (\PHP_VERSION_ID >= 80000) { 15 | return require __DIR__.'/bootstrap80.php'; 16 | } 17 | 18 | if (!function_exists('normalizer_is_normalized')) { 19 | function normalizer_is_normalized($string, $form = p\Normalizer::FORM_C) { return p\Normalizer::isNormalized($string, $form); } 20 | } 21 | if (!function_exists('normalizer_normalize')) { 22 | function normalizer_normalize($string, $form = p\Normalizer::FORM_C) { return p\Normalizer::normalize($string, $form); } 23 | } 24 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-intl-normalizer/bootstrap80.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | use Symfony\Polyfill\Intl\Normalizer as p; 13 | 14 | if (!function_exists('normalizer_is_normalized')) { 15 | function normalizer_is_normalized(?string $string, ?int $form = p\Normalizer::FORM_C): bool { return p\Normalizer::isNormalized((string) $string, (int) $form); } 16 | } 17 | if (!function_exists('normalizer_normalize')) { 18 | function normalizer_normalize(?string $string, ?int $form = p\Normalizer::FORM_C): string|false { return p\Normalizer::normalize((string) $string, (int) $form); } 19 | } 20 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-mbstring/README.md: -------------------------------------------------------------------------------- 1 | Symfony Polyfill / Mbstring 2 | =========================== 3 | 4 | This component provides a partial, native PHP implementation for the 5 | [Mbstring](https://php.net/mbstring) extension. 6 | 7 | More information can be found in the 8 | [main Polyfill README](https://github.com/symfony/polyfill/blob/main/README.md). 9 | 10 | License 11 | ======= 12 | 13 | This library is released under the [MIT license](LICENSE). 14 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-php73/README.md: -------------------------------------------------------------------------------- 1 | Symfony Polyfill / Php73 2 | ======================== 3 | 4 | This component provides functions added to PHP 7.3 core: 5 | 6 | - [`array_key_first`](https://php.net/array_key_first) 7 | - [`array_key_last`](https://php.net/array_key_last) 8 | - [`hrtime`](https://php.net/function.hrtime) 9 | - [`is_countable`](https://php.net/is_countable) 10 | - [`JsonException`](https://php.net/JsonException) 11 | 12 | More information can be found in the 13 | [main Polyfill README](https://github.com/symfony/polyfill/blob/main/README.md). 14 | 15 | License 16 | ======= 17 | 18 | This library is released under the [MIT license](LICENSE). 19 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-php73/Resources/stubs/JsonException.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | if (\PHP_VERSION_ID < 70300) { 13 | class JsonException extends Exception 14 | { 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-php80/Resources/stubs/PhpToken.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | if (\PHP_VERSION_ID < 80000 && extension_loaded('tokenizer')) { 13 | class PhpToken extends Symfony\Polyfill\Php80\PhpToken 14 | { 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | if (\PHP_VERSION_ID < 80000) { 13 | interface Stringable 14 | { 15 | /** 16 | * @return string 17 | */ 18 | public function __toString(); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | if (\PHP_VERSION_ID < 80000) { 13 | class UnhandledMatchError extends Error 14 | { 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | if (\PHP_VERSION_ID < 80000) { 13 | class ValueError extends Error 14 | { 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /vendor/symfony/service-contracts/README.md: -------------------------------------------------------------------------------- 1 | Symfony Service Contracts 2 | ========================= 3 | 4 | A set of abstractions extracted out of the Symfony components. 5 | 6 | Can be used to build on semantics that the Symfony components proved useful - and 7 | that already have battle tested implementations. 8 | 9 | See https://github.com/symfony/contracts/blob/master/README.md for more information. 10 | -------------------------------------------------------------------------------- /vendor/symfony/string/Exception/ExceptionInterface.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\String\Exception; 13 | 14 | interface ExceptionInterface extends \Throwable 15 | { 16 | } 17 | -------------------------------------------------------------------------------- /vendor/symfony/string/Exception/InvalidArgumentException.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\String\Exception; 13 | 14 | class InvalidArgumentException extends \InvalidArgumentException implements ExceptionInterface 15 | { 16 | } 17 | -------------------------------------------------------------------------------- /vendor/symfony/string/Exception/RuntimeException.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\String\Exception; 13 | 14 | class RuntimeException extends \RuntimeException implements ExceptionInterface 15 | { 16 | } 17 | -------------------------------------------------------------------------------- /vendor/symfony/string/README.md: -------------------------------------------------------------------------------- 1 | String Component 2 | ================ 3 | 4 | The String component provides an object-oriented API to strings and deals 5 | with bytes, UTF-8 code points and grapheme clusters in a unified way. 6 | 7 | Resources 8 | --------- 9 | 10 | * [Documentation](https://symfony.com/doc/current/components/string.html) 11 | * [Contributing](https://symfony.com/doc/current/contributing/index.html) 12 | * [Report issues](https://github.com/symfony/symfony/issues) and 13 | [send Pull Requests](https://github.com/symfony/symfony/pulls) 14 | in the [main Symfony repository](https://github.com/symfony/symfony) 15 | -------------------------------------------------------------------------------- /vendor/symfony/string/Slugger/SluggerInterface.php: -------------------------------------------------------------------------------- 1 | 7 | * 8 | * For the full copyright and license information, please view the LICENSE 9 | * file that was distributed with this source code. 10 | */ 11 | 12 | namespace Symfony\Component\String\Slugger; 13 | 14 | use Symfony\Component\String\AbstractUnicodeString; 15 | 16 | /** 17 | * Creates a URL-friendly slug from a given string. 18 | * 19 | * @author Titouan Galopin 20 | */ 21 | interface SluggerInterface 22 | { 23 | /** 24 | * Creates a slug for the given string and locale, using appropriate transliteration when needed. 25 | */ 26 | public function slug(string $string, string $separator = '-', string $locale = null): AbstractUnicodeString; 27 | } 28 | -------------------------------------------------------------------------------- /vendor/vlucas/phpdotenv/phpstan.src.neon.dist: -------------------------------------------------------------------------------- 1 | parameters: 2 | level: max 3 | ignoreErrors: 4 | - '#Unable to resolve the template type#' 5 | - '#Anonymous function should have native return typehint ".+".#' 6 | - '#Only booleans are allowed in a negated boolean, int\|false given.#' 7 | -------------------------------------------------------------------------------- /vendor/vlucas/phpdotenv/src/Exception/ExceptionInterface.php: -------------------------------------------------------------------------------- 1 | 18 | */ 19 | public function load(RepositoryInterface $repository, array $entries); 20 | } 21 | -------------------------------------------------------------------------------- /vendor/vlucas/phpdotenv/src/Parser/ParserInterface.php: -------------------------------------------------------------------------------- 1 | 13 | */ 14 | public static function create(); 15 | } 16 | -------------------------------------------------------------------------------- /vendor/vlucas/phpdotenv/src/Repository/Adapter/ReaderInterface.php: -------------------------------------------------------------------------------- 1 | 15 | */ 16 | public function read(string $name); 17 | } 18 | -------------------------------------------------------------------------------- /vendor/vlucas/phpdotenv/src/Repository/Adapter/WriterInterface.php: -------------------------------------------------------------------------------- 1 | content = $content; 26 | } 27 | 28 | /** 29 | * Read the content of the environment file(s). 30 | * 31 | * @return string 32 | */ 33 | public function read() 34 | { 35 | return $this->content; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /vendor/webman/console/.gitignore: -------------------------------------------------------------------------------- 1 | build 2 | vendor 3 | .idea 4 | .vscode 5 | .phpunit* 6 | composer.lock -------------------------------------------------------------------------------- /vendor/webman/console/README.md: -------------------------------------------------------------------------------- 1 | # console 2 | webman console 3 | https://www.workerman.net/plugin/1 4 | -------------------------------------------------------------------------------- /vendor/webman/event/README.md: -------------------------------------------------------------------------------- 1 | # event 2 | webman event plugin 3 | 4 | https://www.workerman.net/plugin/64 5 | -------------------------------------------------------------------------------- /vendor/webman/event/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "webman/event", 3 | "type": "library", 4 | "license": "MIT", 5 | "description": "Webman event plugin", 6 | "require": { 7 | }, 8 | "autoload": { 9 | "psr-4": { 10 | "Webman\\Event\\": "src" 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /vendor/webman/event/src/config/plugin/webman/event/app.php: -------------------------------------------------------------------------------- 1 | true, 4 | ]; -------------------------------------------------------------------------------- /vendor/webman/event/src/config/plugin/webman/event/bootstrap.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | return [ 16 | Webman\Event\BootStrap::class, 17 | ]; 18 | -------------------------------------------------------------------------------- /vendor/webman/event/src/config/plugin/webman/event/command.php: -------------------------------------------------------------------------------- 1 | onWorkerStart = function () { 20 | // Execute the function in the first second of every minute. 21 | new Crontab('1 * * * * *', function(){ 22 | echo date('Y-m-d H:i:s')."\n"; 23 | }); 24 | }; 25 | 26 | Worker::runAll(); 27 | ``` 28 | 29 | Run with commands `php start.php start` or php `start.php start -d` 30 | -------------------------------------------------------------------------------- /vendor/workerman/crontab/example/test.php: -------------------------------------------------------------------------------- 1 | onWorkerStart = function () { 10 | // Execute the function in the first second of every minute. 11 | new Crontab('1 * * * * *', function(){ 12 | echo date('Y-m-d H:i:s')."\n"; 13 | }); 14 | }; 15 | 16 | Worker::runAll(); 17 | -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/.gitignore: -------------------------------------------------------------------------------- 1 | composer.lock 2 | vendor 3 | vendor/ 4 | .idea 5 | .idea/ -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/README.md: -------------------------------------------------------------------------------- 1 | # webman-framework 2 | Note: This repository is the core code of the webman framework. If you want to build an application using webman, visit the main [webman](https://github.com/walkor/webman) repository. 3 | 4 | ## LICENSE 5 | MIT 6 | -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/Bootstrap.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace Webman; 16 | 17 | use Workerman\Worker; 18 | 19 | interface Bootstrap 20 | { 21 | /** 22 | * onWorkerStart 23 | * 24 | * @param Worker|null $worker 25 | * @return mixed 26 | */ 27 | public static function start(?Worker $worker); 28 | } 29 | -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/Exception/FileException.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace Webman\Exception; 16 | 17 | use RuntimeException; 18 | 19 | /** 20 | * Class FileException 21 | * @package Webman\Exception 22 | */ 23 | class FileException extends RuntimeException 24 | { 25 | } -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/Exception/NotFoundException.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace Webman\Exception; 16 | 17 | use Psr\Container\NotFoundExceptionInterface; 18 | 19 | /** 20 | * Class NotFoundException 21 | * @package Webman\Exception 22 | */ 23 | class NotFoundException extends \Exception implements NotFoundExceptionInterface 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/FileSessionHandler.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | namespace Webman; 15 | 16 | /** 17 | * This deprecated class will certainly be removed in the future. 18 | * Please use Webman\Session\FileSessionHandler 19 | * @deprecated 20 | * @package Webman 21 | */ 22 | class FileSessionHandler extends Session\FileSessionHandler 23 | { 24 | 25 | } 26 | -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/Session/FileSessionHandler.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace Webman\Session; 16 | 17 | use Workerman\Protocols\Http\Session\FileSessionHandler as FileHandler; 18 | 19 | /** 20 | * Class FileSessionHandler 21 | * @package Webman 22 | */ 23 | class FileSessionHandler extends FileHandler 24 | { 25 | 26 | } 27 | -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/Session/RedisClusterSessionHandler.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace Webman\Session; 16 | 17 | use Workerman\Protocols\Http\Session\RedisClusterSessionHandler as RedisClusterHandler; 18 | 19 | class RedisClusterSessionHandler extends RedisClusterHandler 20 | { 21 | 22 | } 23 | -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/Session/RedisSessionHandler.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace Webman\Session; 16 | 17 | use Workerman\Protocols\Http\Session\RedisSessionHandler as RedisHandler; 18 | 19 | /** 20 | * Class FileSessionHandler 21 | * @package Webman 22 | */ 23 | class RedisSessionHandler extends RedisHandler 24 | { 25 | 26 | } 27 | -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/View.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace Webman; 16 | 17 | interface View 18 | { 19 | /** 20 | * Render. 21 | * @param string $template 22 | * @param array $vars 23 | * @param string|null $app 24 | * @return string 25 | */ 26 | public static function render(string $template, array $vars, string $app = null): string; 27 | } 28 | -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/support/Context.php: -------------------------------------------------------------------------------- 1 | 11 | * @copyright walkor 12 | * @link http://www.workerman.net/ 13 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 14 | */ 15 | 16 | namespace support; 17 | 18 | /** 19 | * Class Context 20 | * @package Webman 21 | */ 22 | class Context extends \Webman\Context 23 | { 24 | 25 | } 26 | -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/support/Request.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace support; 16 | 17 | /** 18 | * Class Request 19 | * @package support 20 | */ 21 | class Request extends \Webman\Http\Request 22 | { 23 | 24 | } -------------------------------------------------------------------------------- /vendor/workerman/webman-framework/src/support/Response.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | 15 | namespace support; 16 | 17 | /** 18 | * Class Response 19 | * @package support 20 | */ 21 | class Response extends \Webman\Http\Response 22 | { 23 | 24 | } -------------------------------------------------------------------------------- /vendor/workerman/workerman/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | open_collective: workerman 4 | patreon: walkor 5 | -------------------------------------------------------------------------------- /vendor/workerman/workerman/.gitignore: -------------------------------------------------------------------------------- 1 | logs 2 | .buildpath 3 | .project 4 | .settings 5 | .idea 6 | .DS_Store 7 | -------------------------------------------------------------------------------- /vendor/workerman/workerman/Events/React/ExtEventLoop.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | namespace Workerman\Events\React; 15 | 16 | /** 17 | * Class ExtEventLoop 18 | * @package Workerman\Events\React 19 | */ 20 | class ExtEventLoop extends Base 21 | { 22 | 23 | public function __construct() 24 | { 25 | $this->_eventLoop = new \React\EventLoop\ExtEventLoop(); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /vendor/workerman/workerman/Events/React/ExtLibEventLoop.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | namespace Workerman\Events\React; 15 | use Workerman\Events\EventInterface; 16 | 17 | /** 18 | * Class ExtLibEventLoop 19 | * @package Workerman\Events\React 20 | */ 21 | class ExtLibEventLoop extends Base 22 | { 23 | public function __construct() 24 | { 25 | $this->_eventLoop = new \React\EventLoop\ExtLibeventLoop(); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /vendor/workerman/workerman/Events/React/StreamSelectLoop.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | namespace Workerman\Events\React; 15 | 16 | /** 17 | * Class StreamSelectLoop 18 | * @package Workerman\Events\React 19 | */ 20 | class StreamSelectLoop extends Base 21 | { 22 | public function __construct() 23 | { 24 | $this->_eventLoop = new \React\EventLoop\StreamSelectLoop(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /vendor/workerman/workerman/Lib/Timer.php: -------------------------------------------------------------------------------- 1 | 10 | * @copyright walkor 11 | * @link http://www.workerman.net/ 12 | * @license http://www.opensource.org/licenses/mit-license.php MIT License 13 | */ 14 | namespace Workerman\Lib; 15 | 16 | /** 17 | * Do not use Workerman\Lib\Timer. 18 | * Please use Workerman\Timer. 19 | * This class is only used for compatibility with workerman 3.* 20 | * @package Workerman\Lib 21 | */ 22 | class Timer extends \Workerman\Timer {} -------------------------------------------------------------------------------- /windows.bat: -------------------------------------------------------------------------------- 1 | CHCP 65001 2 | php windows.php 3 | pause -------------------------------------------------------------------------------- /windows7_start.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ledccn/IYUUPlus/ba878b9299c5d944d1c05035716d143fc591c6f1/windows7_start.cmd --------------------------------------------------------------------------------