awema-pl/module-docs
用于wiki输出的包
Requires
- illuminate/support: ~5|~6|~7|~8|~9
- league/commonmark: ^1.5.4
- symfony/yaml: ^4.2
Requires (Dev)
- mikey179/vfsstream: ^1.6
README
Awema包文档阅读器
安装
通过Composer
$ composer require awema-pl/module-docs
该包将自动注册自身。
您可以使用以下命令发布视图
php artisan vendor:publish --provider="AwemaPL\Docs\DocsServiceProvider" --tag="views"
您可以使用以下命令发布配置文件
php artisan vendor:publish --provider="AwemaPL\Docs\DocsServiceProvider" --tag="config"
添加文档路由
添加到 routes\web.php
Docs::routes();
使用示例
use Docs; Docs::all($withDocs = true); Docs::get(['package1' => ['1.0', '2.6'], 'package2' => '1.3', 'package3'], 'package4', $withDocs = true); Docs::package('package1', $withDocs = true); Docs::versions('package1', $withDocs = true); Docs::version('package1', '1.0', $withDocs = true); Docs::files('package1', '1.0', $withDocs = true); Docs::file('package1', '1.0', 'file.md'); Docs::fileContent('package1', '1.0', 'file.md'); Docs::list(); Docs::list('package1'); Docs::list('package1', '1.0'); Docs::list('package1', '1.0', 'file.md');
方法
all()
Docs::all($withDocs = true);
输出
[ [ "name" => "package1", "versions" => [ [ "name" => "1.0", "files" => [ [ "name" => "index.md", "content" => "# Title" ], [ "name" => "doc1.md", "content" => "Doc 1 content" ] ] ], ... [ "name" => "2.6", "files" => [ ... ] ] ] ], ... [ "name" => "package4", "versions" => [ ... ] ] ]
输入参数 $withDocs
是布尔值,可选,默认为true。
如果 $withDocs == false
文件内容将为null
get()
Docs::get(['package1' => ['1.0', '2.6'], 'package2' => '1.3', 'package3'], 'package4', $withDocs = true);
最后一个布尔参数 $withDocs
是可选的,默认为true。
方法输出与all()相同,但将只包含在args中指定的包和版本。
如果包未列出,则结果将包含所有包。
如果未列出指定包的版本,则结果将包含该包的所有版本。
package()
Docs::package('package1', $withDocs = true);
输出
[ "name" => "package1", "versions" => [ [ "name" => "1.0", "files" => [ [ "name" => "index.md", "content" => "# Title" ], [ "name" => "doc1.md", "content" => "Doc 1 content" ] ] ], ... [ "name" => "2.6", "files" => [ ... ] ] ] ]
如果包不在文档中,结果将为null
。
最后一个布尔参数 $withDocs
是可选的,默认为true。
如果 $withDocs == false
文件content
将为null。
versions()
Docs::versions('package1', $withDocs = true);
输出
[ [ "name" => "1.0", "files" => [ [ "name" => "index.md", "content" => "# Title" ], [ "name" => "doc1.md", "content" => "Doc 1 content" ] ] ], ... [ "name" => "2.6", "files" => [ ... ] ] ]
如果包不在文档中,结果将为null
。
最后一个布尔参数 $withDocs
是可选的,默认为true。
如果 $withDocs == false
文件content
将为null。
version()
Docs::version('package1', '1.0', $withDocs = true);
输出
[ "name" => "1.0", "files" => [ [ "name" => "index.md", "content" => "# Title" ], [ "name" => "doc1.md", "content" => "Doc 1 content" ] ] ]
如果包或版本不在文档中,结果将为null
。
最后一个布尔参数 $withDocs
是可选的,默认为true。
如果 $withDocs == false
文件content
将为null。
files()
Docs::files('package1', '1.0', $withDocs = true);
输出
[ [ "name" => "index.md", "content" => "# Title" ], [ "name" => "doc1.md", "content" => "Doc 1 content" ] ]
如果包或版本不在文档中,结果将为null
。
最后一个布尔参数 $withDocs
是可选的,默认为true。
如果 $withDocs == false
文件content
将为null。
file()
Docs::file('package1', '1.0', 'file.md');
输出
[ "name" => "index.md", "content" => "# Title" ]
如果包或版本或文件不在文档中,结果将为null
。
fileContent()
Docs::fileContent('package1', '1.0', 'file.md');
结果是文件内容字符串或如果文件不存在则为null
。
list()
Docs::list();
输出是包名称数组
[ "package1", "package2", ... "package6" ]
Docs::list('package1');
输出是包版本名称数组
[ "0.1", "0.2", ... "2.18" ]
如果包不在文档中,结果将为null
。
Docs::list('package1', '1.0');
输出是包版本文件名称数组
[ "index.md", "doc1.md", ... "doc4.md" ]
如果包或版本不在文档中,结果将为null
。
Docs::list('package1', '1.0', 'file.md');
结果是文件内容字符串或如果文件不存在则为null
。
测试
您可以使用以下命令运行测试
composer test
贡献
请参阅contributing.md以获取详细信息和工作清单。
安全
如果您发现任何与安全相关的问题,请通过:author_email发送电子邮件而不是使用问题跟踪器。
鸣谢
许可
许可。有关更多信息,请参阅许可文件。