Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 51
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
DefaultPlugin
0.00% covered (danger)
0.00%
0 / 51
0.00% covered (danger)
0.00%
0 / 2
6
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 get
0.00% covered (danger)
0.00%
0 / 50
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3declare(strict_types=1);
4
5namespace PeServer\App\Models\Domain;
6
7/**
8 * 標準プラグイン。
9 */
10readonly class DefaultPlugin
11{
12    /**
13     * 生成。
14     *
15     * @param non-empty-string $pluginId
16     * @param non-empty-string $pluginName
17     * @param non-empty-string $checkUrl
18     * @param non-empty-string $projectUrl
19     * @param string[] $descriptions
20     * @param string[] $categories
21     */
22    public function __construct(
23        public string $pluginId,
24        public string $pluginName,
25        public string $checkUrl,
26        public string $projectUrl,
27        public array $descriptions,
28        public array $categories
29    ) {
30    }
31
32    #region function
33
34    /**
35     * 一覧取得。
36     *
37     * @return self[]
38     */
39    public static function get(): array
40    {
41        return [
42            new self(
43                '4524fc23-ebb9-4c79-a26b-8f472c05095e',
44                'Pe.Plugins.DefaultTheme',
45                //@phpstan-ignore-next-line
46                '',
47                'https://github.com/sk-0520/Pe',
48                ['本体同梱標準テーマ。', 'ダウンロード先なし。',],
49                ['theme',]
50            ),
51            new self(
52                '67f0fa7d-52d3-4889-b595-be3703b224eb',
53                'Pe.Plugins.Reference.ClassicTheme',
54                'https://github.com/sk-0520/Pe/releases/download/<VERSION>/update-Pe.Plugins.Reference.ClassicTheme.json',
55                'https://github.com/sk-0520/Pe',
56                ['テーマの参考実装。', 'テーマをプラグインとして扱うのが💩と教えてくれた偉大なる参考実装。',],
57                ['theme',],
58            ),
59            new self(
60                '2e5c72c5-270f-4b05-afb9-c87f3966ecc5',
61                'Pe.Plugins.Reference.Clock',
62                'https://github.com/sk-0520/Pe/releases/download/<VERSION>/update-Pe.Plugins.Reference.Clock.json',
63                'https://github.com/sk-0520/Pe',
64                ['ランチャーボタン・ウィジェット・設定の参考実装。', '時計を表示する。',],
65                ['utility',],
66            ),
67            new self(
68                '799ce8bd-8f49-4e8f-9e47-4d4873084081',
69                'Pe.Plugins.Reference.Eyes',
70                'https://github.com/sk-0520/Pe/releases/download/<VERSION>/update-Pe.Plugins.Reference.Eyes.json',
71                'https://github.com/sk-0520/Pe',
72                ['ウィジェット・バックグラウンドの参考実装。', 'xeyes のおめめ。',],
73                ['toy',],
74            ),
75            new self(
76                '9dcf441d-9f8e-494f-89c1-814678bbc42c',
77                'Pe.Plugins.Reference.FileFinder',
78                'https://github.com/sk-0520/Pe/releases/download/<VERSION>/update-Pe.Plugins.Reference.FileFinder.json',
79                'https://github.com/sk-0520/Pe',
80                ['コマンド入力・設定の参考実装。', 'コマンド入力欄に入力された文字列をファイルパスとして扱う。',],
81                ['file', 'search',],
82            ),
83            new self(
84                '4fa1a634-6b32-4762-8ae8-3e1cf6df9db1',
85                'Pe.Plugins.Reference.Html',
86                'https://github.com/sk-0520/Pe/releases/download/<VERSION>/update-Pe.Plugins.Reference.Html.json',
87                'https://github.com/sk-0520/Pe',
88                ['WebView ウィジェットの参考実装。', '常に IME 死んでるマン。',],
89                ['utility',],
90            ),
91        ];
92    }
93
94    #endregion
95}