mdjournal 1.0.15 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/LICENSE +26 -0
  2. package/README.md +290 -164
  3. package/dist/README.md +335 -0
  4. package/dist/client/assets/index-CWshDATd.js +402 -0
  5. package/dist/client/dist/assets/index-CWshDATd.js +402 -0
  6. package/dist/client/dist/index.html +1 -1
  7. package/dist/client/index.html +1 -1
  8. package/dist/docs/api-reference.html +2295 -0
  9. package/dist/docs/config-spec.md +322 -0
  10. package/dist/docs/extension-spec.md +676 -0
  11. package/dist/docs/index.md +261 -0
  12. package/dist/docs/integration-spec.md +518 -0
  13. package/dist/docs/markdown-format-spec.md +779 -0
  14. package/dist/docs/openapi.yaml +1009 -0
  15. package/dist/docs/requirements.md +837 -0
  16. package/dist/docs/screenshot.png +0 -0
  17. package/dist/packages/contract/mdjournal/domains/CalendarApi.d.ts +19 -0
  18. package/dist/packages/contract/mdjournal/domains/CalendarApi.d.ts.map +1 -0
  19. package/dist/packages/contract/mdjournal/domains/CalendarApi.js +7 -0
  20. package/dist/packages/contract/mdjournal/domains/CalendarApi.js.map +1 -0
  21. package/dist/packages/contract/mdjournal/domains/ConfigApi.d.ts +29 -0
  22. package/dist/packages/contract/mdjournal/domains/ConfigApi.d.ts.map +1 -0
  23. package/dist/packages/contract/mdjournal/domains/ConfigApi.js +7 -0
  24. package/dist/packages/contract/mdjournal/domains/ConfigApi.js.map +1 -0
  25. package/dist/packages/contract/mdjournal/domains/GitApi.d.ts +14 -0
  26. package/dist/packages/contract/mdjournal/domains/GitApi.d.ts.map +1 -0
  27. package/dist/packages/contract/mdjournal/domains/GitApi.js +7 -0
  28. package/dist/packages/contract/mdjournal/domains/GitApi.js.map +1 -0
  29. package/dist/packages/contract/mdjournal/domains/ReportApi.d.ts +24 -0
  30. package/dist/packages/contract/mdjournal/domains/ReportApi.d.ts.map +1 -0
  31. package/dist/packages/contract/mdjournal/domains/ReportApi.js +7 -0
  32. package/dist/packages/contract/mdjournal/domains/ReportApi.js.map +1 -0
  33. package/dist/packages/contract/mdjournal/domains/index.d.ts +24 -0
  34. package/dist/packages/contract/mdjournal/domains/index.d.ts.map +1 -0
  35. package/dist/packages/contract/mdjournal/domains/index.js +7 -0
  36. package/dist/packages/contract/mdjournal/domains/index.js.map +1 -0
  37. package/dist/packages/contract/mdjournal/errors/index.d.ts +19 -0
  38. package/dist/packages/contract/mdjournal/errors/index.d.ts.map +1 -0
  39. package/dist/packages/contract/mdjournal/errors/index.js +29 -0
  40. package/dist/packages/contract/mdjournal/errors/index.js.map +1 -0
  41. package/dist/packages/contract/mdjournal/index.d.ts +8 -0
  42. package/dist/packages/contract/mdjournal/index.d.ts.map +1 -0
  43. package/dist/packages/contract/mdjournal/index.js +8 -0
  44. package/dist/packages/contract/mdjournal/index.js.map +1 -0
  45. package/dist/packages/contract/mdjournal/schemas/index.d.ts +7 -0
  46. package/dist/packages/contract/mdjournal/schemas/index.d.ts.map +1 -0
  47. package/dist/packages/contract/mdjournal/schemas/index.js +7 -0
  48. package/dist/packages/contract/mdjournal/schemas/index.js.map +1 -0
  49. package/dist/packages/contract/mdjournal/schemas/types.d.ts +357 -0
  50. package/dist/packages/contract/mdjournal/schemas/types.d.ts.map +1 -0
  51. package/dist/packages/contract/mdjournal/schemas/types.js +7 -0
  52. package/dist/packages/contract/mdjournal/schemas/types.js.map +1 -0
  53. package/dist/packages/contract/mdjournal/schemas/validators.d.ts +1576 -0
  54. package/dist/packages/contract/mdjournal/schemas/validators.d.ts.map +1 -0
  55. package/dist/packages/contract/mdjournal/schemas/validators.js +952 -0
  56. package/dist/packages/contract/mdjournal/schemas/validators.js.map +1 -0
  57. package/dist/server/src/cli.d.ts.map +1 -0
  58. package/dist/server/src/cli.js.map +1 -0
  59. package/dist/server/src/index.d.ts.map +1 -0
  60. package/dist/{index.js → server/src/index.js} +21 -11
  61. package/dist/server/src/index.js.map +1 -0
  62. package/dist/server/src/mdjournal/domains/CalendarDomain.d.ts +19 -0
  63. package/dist/server/src/mdjournal/domains/CalendarDomain.d.ts.map +1 -0
  64. package/dist/server/src/mdjournal/domains/CalendarDomain.js +88 -0
  65. package/dist/server/src/mdjournal/domains/CalendarDomain.js.map +1 -0
  66. package/dist/server/src/mdjournal/domains/CalendarDomain.test.d.ts +2 -0
  67. package/dist/server/src/mdjournal/domains/CalendarDomain.test.d.ts.map +1 -0
  68. package/dist/server/src/mdjournal/domains/CalendarDomain.test.js +111 -0
  69. package/dist/server/src/mdjournal/domains/CalendarDomain.test.js.map +1 -0
  70. package/dist/server/src/mdjournal/domains/ConfigDomain.d.ts +27 -0
  71. package/dist/server/src/mdjournal/domains/ConfigDomain.d.ts.map +1 -0
  72. package/dist/server/src/mdjournal/domains/ConfigDomain.js +59 -0
  73. package/dist/server/src/mdjournal/domains/ConfigDomain.js.map +1 -0
  74. package/dist/server/src/mdjournal/domains/ConfigDomain.test.d.ts +2 -0
  75. package/dist/server/src/mdjournal/domains/ConfigDomain.test.d.ts.map +1 -0
  76. package/dist/server/src/mdjournal/domains/ConfigDomain.test.js +177 -0
  77. package/dist/server/src/mdjournal/domains/ConfigDomain.test.js.map +1 -0
  78. package/dist/server/src/mdjournal/domains/GitDomain.d.ts +15 -0
  79. package/dist/server/src/mdjournal/domains/GitDomain.d.ts.map +1 -0
  80. package/dist/server/src/mdjournal/domains/GitDomain.js +16 -0
  81. package/dist/server/src/mdjournal/domains/GitDomain.js.map +1 -0
  82. package/dist/server/src/mdjournal/domains/GitDomain.test.d.ts +2 -0
  83. package/dist/server/src/mdjournal/domains/GitDomain.test.d.ts.map +1 -0
  84. package/dist/server/src/mdjournal/domains/GitDomain.test.js +112 -0
  85. package/dist/server/src/mdjournal/domains/GitDomain.test.js.map +1 -0
  86. package/dist/server/src/mdjournal/domains/ReportDomain.d.ts +23 -0
  87. package/dist/server/src/mdjournal/domains/ReportDomain.d.ts.map +1 -0
  88. package/dist/server/src/mdjournal/domains/ReportDomain.js +117 -0
  89. package/dist/server/src/mdjournal/domains/ReportDomain.js.map +1 -0
  90. package/dist/server/src/mdjournal/domains/ReportDomain.test.d.ts +2 -0
  91. package/dist/server/src/mdjournal/domains/ReportDomain.test.d.ts.map +1 -0
  92. package/dist/server/src/mdjournal/domains/ReportDomain.test.js +207 -0
  93. package/dist/server/src/mdjournal/domains/ReportDomain.test.js.map +1 -0
  94. package/dist/server/src/mdjournal/domains/errors.d.ts +17 -0
  95. package/dist/server/src/mdjournal/domains/errors.d.ts.map +1 -0
  96. package/dist/server/src/mdjournal/domains/errors.js +27 -0
  97. package/dist/server/src/mdjournal/domains/errors.js.map +1 -0
  98. package/dist/server/src/mdjournal/domains/index.d.ts +15 -0
  99. package/dist/server/src/mdjournal/domains/index.d.ts.map +1 -0
  100. package/dist/server/src/mdjournal/domains/index.js +11 -0
  101. package/dist/server/src/mdjournal/domains/index.js.map +1 -0
  102. package/dist/server/src/mdjournal/index.d.ts +17 -0
  103. package/dist/server/src/mdjournal/index.d.ts.map +1 -0
  104. package/dist/server/src/mdjournal/index.js +34 -0
  105. package/dist/server/src/mdjournal/index.js.map +1 -0
  106. package/dist/server/src/mdjournal/routes.generated.d.ts +28 -0
  107. package/dist/server/src/mdjournal/routes.generated.d.ts.map +1 -0
  108. package/dist/server/src/mdjournal/routes.generated.js +403 -0
  109. package/dist/server/src/mdjournal/routes.generated.js.map +1 -0
  110. package/dist/server/src/types/index.d.ts.map +1 -0
  111. package/dist/server/src/types/index.js.map +1 -0
  112. package/dist/server/src/utils/configValidator.d.ts.map +1 -0
  113. package/dist/server/src/utils/configValidator.js.map +1 -0
  114. package/dist/server/src/utils/configValidator.test.d.ts +2 -0
  115. package/dist/server/src/utils/configValidator.test.d.ts.map +1 -0
  116. package/dist/server/src/utils/configValidator.test.js +359 -0
  117. package/dist/server/src/utils/configValidator.test.js.map +1 -0
  118. package/dist/server/src/utils/fileManager.d.ts.map +1 -0
  119. package/dist/server/src/utils/fileManager.js.map +1 -0
  120. package/dist/server/src/utils/git.d.ts.map +1 -0
  121. package/dist/server/src/utils/git.js.map +1 -0
  122. package/dist/server/src/utils/index.d.ts.map +1 -0
  123. package/dist/server/src/utils/index.js.map +1 -0
  124. package/dist/server/src/utils/markdown.d.ts.map +1 -0
  125. package/dist/server/src/utils/markdown.js.map +1 -0
  126. package/dist/server/src/utils/markdown.test.d.ts +2 -0
  127. package/dist/server/src/utils/markdown.test.d.ts.map +1 -0
  128. package/dist/server/src/utils/markdown.test.js +291 -0
  129. package/dist/server/src/utils/markdown.test.js.map +1 -0
  130. package/dist/server/src/utils/slack.d.ts.map +1 -0
  131. package/dist/server/src/utils/slack.js.map +1 -0
  132. package/dist/server/src/utils/validator.d.ts.map +1 -0
  133. package/dist/server/src/utils/validator.js.map +1 -0
  134. package/dist/server/src/utils/validator.test.d.ts +2 -0
  135. package/dist/server/src/utils/validator.test.d.ts.map +1 -0
  136. package/dist/server/src/utils/validator.test.js +307 -0
  137. package/dist/server/src/utils/validator.test.js.map +1 -0
  138. package/package.json +37 -15
  139. package/dist/cli.d.ts.map +0 -1
  140. package/dist/cli.js.map +0 -1
  141. package/dist/client/assets/index-DlkkIyB6.js +0 -402
  142. package/dist/client/dist/assets/index-DlkkIyB6.js +0 -402
  143. package/dist/index.d.ts.map +0 -1
  144. package/dist/index.js.map +0 -1
  145. package/dist/routes/calendar.d.ts +0 -8
  146. package/dist/routes/calendar.d.ts.map +0 -1
  147. package/dist/routes/calendar.js +0 -115
  148. package/dist/routes/calendar.js.map +0 -1
  149. package/dist/routes/config.d.ts +0 -11
  150. package/dist/routes/config.d.ts.map +0 -1
  151. package/dist/routes/config.js +0 -120
  152. package/dist/routes/config.js.map +0 -1
  153. package/dist/routes/gcal.d.ts +0 -10
  154. package/dist/routes/gcal.d.ts.map +0 -1
  155. package/dist/routes/gcal.js +0 -100
  156. package/dist/routes/gcal.js.map +0 -1
  157. package/dist/routes/git.d.ts +0 -8
  158. package/dist/routes/git.d.ts.map +0 -1
  159. package/dist/routes/git.js +0 -28
  160. package/dist/routes/git.js.map +0 -1
  161. package/dist/routes/index.d.ts +0 -9
  162. package/dist/routes/index.d.ts.map +0 -1
  163. package/dist/routes/index.js +0 -9
  164. package/dist/routes/index.js.map +0 -1
  165. package/dist/routes/reports.d.ts +0 -10
  166. package/dist/routes/reports.d.ts.map +0 -1
  167. package/dist/routes/reports.js +0 -175
  168. package/dist/routes/reports.js.map +0 -1
  169. package/dist/types/index.d.ts.map +0 -1
  170. package/dist/types/index.js.map +0 -1
  171. package/dist/utils/configValidator.d.ts.map +0 -1
  172. package/dist/utils/configValidator.js.map +0 -1
  173. package/dist/utils/fileManager.d.ts.map +0 -1
  174. package/dist/utils/fileManager.js.map +0 -1
  175. package/dist/utils/git.d.ts.map +0 -1
  176. package/dist/utils/git.js.map +0 -1
  177. package/dist/utils/index.d.ts.map +0 -1
  178. package/dist/utils/index.js.map +0 -1
  179. package/dist/utils/markdown.d.ts.map +0 -1
  180. package/dist/utils/markdown.js.map +0 -1
  181. package/dist/utils/slack.d.ts.map +0 -1
  182. package/dist/utils/slack.js.map +0 -1
  183. package/dist/utils/validator.d.ts.map +0 -1
  184. package/dist/utils/validator.js.map +0 -1
  185. /package/dist/{cli.d.ts → server/src/cli.d.ts} +0 -0
  186. /package/dist/{cli.js → server/src/cli.js} +0 -0
  187. /package/dist/{index.d.ts → server/src/index.d.ts} +0 -0
  188. /package/dist/{types → server/src/types}/index.d.ts +0 -0
  189. /package/dist/{types → server/src/types}/index.js +0 -0
  190. /package/dist/{utils → server/src/utils}/configValidator.d.ts +0 -0
  191. /package/dist/{utils → server/src/utils}/configValidator.js +0 -0
  192. /package/dist/{utils → server/src/utils}/fileManager.d.ts +0 -0
  193. /package/dist/{utils → server/src/utils}/fileManager.js +0 -0
  194. /package/dist/{utils → server/src/utils}/git.d.ts +0 -0
  195. /package/dist/{utils → server/src/utils}/git.js +0 -0
  196. /package/dist/{utils → server/src/utils}/index.d.ts +0 -0
  197. /package/dist/{utils → server/src/utils}/index.js +0 -0
  198. /package/dist/{utils → server/src/utils}/markdown.d.ts +0 -0
  199. /package/dist/{utils → server/src/utils}/markdown.js +0 -0
  200. /package/dist/{utils → server/src/utils}/slack.d.ts +0 -0
  201. /package/dist/{utils → server/src/utils}/slack.js +0 -0
  202. /package/dist/{utils → server/src/utils}/validator.d.ts +0 -0
  203. /package/dist/{utils → server/src/utils}/validator.js +0 -0
@@ -0,0 +1,952 @@
1
+ /**
2
+ * Auto-generated JSON Schemas from OpenAPI specification
3
+ * Generated from: mdJournal API v1.0.0
4
+ * DO NOT EDIT MANUALLY
5
+ */
6
+ export const Error = {
7
+ "$id": "Error",
8
+ "type": "object",
9
+ "properties": {
10
+ "code": {
11
+ "type": "string",
12
+ "description": "エラーコード"
13
+ },
14
+ "message": {
15
+ "type": "string",
16
+ "description": "エラーメッセージ"
17
+ }
18
+ },
19
+ "required": [
20
+ "code",
21
+ "message"
22
+ ]
23
+ };
24
+ export const ReportStats = {
25
+ "$id": "ReportStats",
26
+ "type": "object",
27
+ "description": "日報の統計情報。ファイル保存時にサーバーが計算し、\nYAML frontmatterとしてMarkdownファイル先頭に保存されます。\n",
28
+ "properties": {
29
+ "planHours": {
30
+ "type": "number",
31
+ "description": "計画時間(時間)",
32
+ "format": "float"
33
+ },
34
+ "resultHours": {
35
+ "type": "number",
36
+ "description": "実績時間(時間)",
37
+ "format": "float"
38
+ },
39
+ "todoCount": {
40
+ "type": "integer",
41
+ "description": "TODO総数"
42
+ },
43
+ "todoCompleted": {
44
+ "type": "integer",
45
+ "description": "完了TODO数"
46
+ },
47
+ "todoInProgress": {
48
+ "type": "integer",
49
+ "description": "進行中TODO数"
50
+ },
51
+ "projectHours": {
52
+ "type": "object",
53
+ "description": "プロジェクト別実績時間(時間)",
54
+ "additionalProperties": {
55
+ "type": "number",
56
+ "format": "float"
57
+ }
58
+ },
59
+ "updatedAt": {
60
+ "type": "string",
61
+ "description": "最終更新日時",
62
+ "format": "date-time"
63
+ }
64
+ },
65
+ "required": [
66
+ "planHours",
67
+ "resultHours",
68
+ "todoCount",
69
+ "todoCompleted",
70
+ "todoInProgress",
71
+ "projectHours",
72
+ "updatedAt"
73
+ ]
74
+ };
75
+ export const ReportResponse = {
76
+ "$id": "ReportResponse",
77
+ "type": "object",
78
+ "properties": {
79
+ "date": {
80
+ "type": "string",
81
+ "description": "日報の日付",
82
+ "format": "date"
83
+ },
84
+ "content": {
85
+ "type": "string",
86
+ "description": "日報のMarkdownコンテンツ(frontmatterを除いた本文部分)\n"
87
+ },
88
+ "stats": {
89
+ "$ref": "ReportStats#"
90
+ }
91
+ },
92
+ "required": [
93
+ "date",
94
+ "content",
95
+ "stats"
96
+ ]
97
+ };
98
+ export const ReportSaveRequest = {
99
+ "$id": "ReportSaveRequest",
100
+ "type": "object",
101
+ "properties": {
102
+ "content": {
103
+ "type": "string",
104
+ "description": "日報のMarkdownコンテンツ(frontmatterなしの本文のみ)。\nサーバーが統計情報を計算してfrontmatterを付与して保存します。\n"
105
+ },
106
+ "git": {
107
+ "$ref": "GitOptions#"
108
+ },
109
+ "slack": {
110
+ "$ref": "SlackOptions#"
111
+ }
112
+ },
113
+ "required": [
114
+ "content"
115
+ ]
116
+ };
117
+ export const GitOptions = {
118
+ "$id": "GitOptions",
119
+ "type": "object",
120
+ "description": "Git操作オプション",
121
+ "properties": {
122
+ "commit": {
123
+ "type": "boolean",
124
+ "description": "保存後にコミットするか",
125
+ "default": false
126
+ },
127
+ "push": {
128
+ "type": "boolean",
129
+ "description": "コミット後にプッシュするか(commitがtrueの場合のみ有効)",
130
+ "default": false
131
+ },
132
+ "message": {
133
+ "type": "string",
134
+ "description": "コミットメッセージ(省略時は自動生成)"
135
+ }
136
+ }
137
+ };
138
+ export const SlackOptions = {
139
+ "$id": "SlackOptions",
140
+ "type": "object",
141
+ "description": "Slack投稿オプション",
142
+ "properties": {
143
+ "post": {
144
+ "type": "boolean",
145
+ "description": "Slackに投稿するか",
146
+ "default": false
147
+ }
148
+ }
149
+ };
150
+ export const GitResult = {
151
+ "$id": "GitResult",
152
+ "type": "object",
153
+ "description": "Git操作結果",
154
+ "properties": {
155
+ "committed": {
156
+ "type": "boolean",
157
+ "description": "コミットが成功したか"
158
+ },
159
+ "pushed": {
160
+ "type": "boolean",
161
+ "description": "プッシュが成功したか"
162
+ },
163
+ "commitHash": {
164
+ "type": "string",
165
+ "description": "コミットハッシュ"
166
+ },
167
+ "error": {
168
+ "type": "string",
169
+ "description": "エラーメッセージ(失敗時)"
170
+ }
171
+ }
172
+ };
173
+ export const SlackResult = {
174
+ "$id": "SlackResult",
175
+ "type": "object",
176
+ "description": "Slack投稿結果",
177
+ "properties": {
178
+ "posted": {
179
+ "type": "boolean",
180
+ "description": "投稿が成功したか"
181
+ },
182
+ "error": {
183
+ "type": "string",
184
+ "description": "エラーメッセージ(失敗時)"
185
+ }
186
+ }
187
+ };
188
+ export const ReportSaveResponse = {
189
+ "$id": "ReportSaveResponse",
190
+ "type": "object",
191
+ "properties": {
192
+ "date": {
193
+ "type": "string",
194
+ "description": "保存した日報の日付",
195
+ "format": "date"
196
+ },
197
+ "saved": {
198
+ "type": "boolean",
199
+ "description": "保存が成功したか"
200
+ },
201
+ "stats": {
202
+ "$ref": "ReportStats#"
203
+ },
204
+ "git": {
205
+ "$ref": "GitResult#"
206
+ },
207
+ "slack": {
208
+ "$ref": "SlackResult#"
209
+ }
210
+ },
211
+ "required": [
212
+ "date",
213
+ "saved",
214
+ "stats"
215
+ ]
216
+ };
217
+ export const CalendarData = {
218
+ "$id": "CalendarData",
219
+ "type": "object",
220
+ "properties": {
221
+ "year": {
222
+ "type": "integer",
223
+ "description": "年"
224
+ },
225
+ "month": {
226
+ "type": "integer",
227
+ "description": "月"
228
+ },
229
+ "days": {
230
+ "type": "array",
231
+ "description": "日別統計データ。各日報ファイルのfrontmatterから取得するため高速。\n",
232
+ "items": {
233
+ "$ref": "DayStats#"
234
+ }
235
+ },
236
+ "summary": {
237
+ "$ref": "CalendarSummary#"
238
+ }
239
+ },
240
+ "required": [
241
+ "year",
242
+ "month",
243
+ "days"
244
+ ]
245
+ };
246
+ export const DayStats = {
247
+ "$id": "DayStats",
248
+ "type": "object",
249
+ "properties": {
250
+ "date": {
251
+ "type": "string",
252
+ "description": "日付",
253
+ "format": "date"
254
+ },
255
+ "hasReport": {
256
+ "type": "boolean",
257
+ "description": "日報が存在するか"
258
+ },
259
+ "planHours": {
260
+ "type": "number",
261
+ "description": "計画時間(時間)",
262
+ "format": "float"
263
+ },
264
+ "resultHours": {
265
+ "type": "number",
266
+ "description": "実績時間(時間)",
267
+ "format": "float"
268
+ },
269
+ "todoCount": {
270
+ "type": "integer",
271
+ "description": "TODO総数"
272
+ },
273
+ "todoCompleted": {
274
+ "type": "integer",
275
+ "description": "完了TODO数"
276
+ }
277
+ },
278
+ "required": [
279
+ "date",
280
+ "hasReport"
281
+ ]
282
+ };
283
+ export const CalendarSummary = {
284
+ "$id": "CalendarSummary",
285
+ "type": "object",
286
+ "description": "月間サマリー",
287
+ "properties": {
288
+ "totalPlanHours": {
289
+ "type": "number",
290
+ "description": "計画時間合計",
291
+ "format": "float"
292
+ },
293
+ "totalResultHours": {
294
+ "type": "number",
295
+ "description": "実績時間合計",
296
+ "format": "float"
297
+ },
298
+ "workDays": {
299
+ "type": "integer",
300
+ "description": "稼働日数(日報が存在する日数)"
301
+ },
302
+ "todoCompleted": {
303
+ "type": "integer",
304
+ "description": "完了TODO数"
305
+ },
306
+ "projectHours": {
307
+ "type": "object",
308
+ "description": "プロジェクト別実績時間合計(時間)",
309
+ "additionalProperties": {
310
+ "type": "number",
311
+ "format": "float"
312
+ }
313
+ }
314
+ }
315
+ };
316
+ export const YearMonthsResponse = {
317
+ "$id": "YearMonthsResponse",
318
+ "type": "object",
319
+ "properties": {
320
+ "yearMonths": {
321
+ "type": "array",
322
+ "description": "日報が存在する年月のリスト(新しい順)",
323
+ "items": {
324
+ "$ref": "YearMonth#"
325
+ }
326
+ }
327
+ },
328
+ "required": [
329
+ "yearMonths"
330
+ ]
331
+ };
332
+ export const YearMonth = {
333
+ "$id": "YearMonth",
334
+ "type": "object",
335
+ "properties": {
336
+ "year": {
337
+ "type": "integer",
338
+ "description": "年"
339
+ },
340
+ "month": {
341
+ "type": "integer",
342
+ "description": "月(1-12)"
343
+ }
344
+ },
345
+ "required": [
346
+ "year",
347
+ "month"
348
+ ]
349
+ };
350
+ export const Config = {
351
+ "$id": "Config",
352
+ "type": "object",
353
+ "properties": {
354
+ "projects": {
355
+ "type": "array",
356
+ "description": "プロジェクトマスタ",
357
+ "items": {
358
+ "$ref": "Project#"
359
+ }
360
+ },
361
+ "routines": {
362
+ "$ref": "Routines#"
363
+ },
364
+ "timeline": {
365
+ "$ref": "TimelineConfig#"
366
+ },
367
+ "slack": {
368
+ "$ref": "SlackConfig#"
369
+ }
370
+ }
371
+ };
372
+ export const Project = {
373
+ "$id": "Project",
374
+ "type": "object",
375
+ "properties": {
376
+ "code": {
377
+ "type": "string",
378
+ "description": "プロジェクトコード"
379
+ },
380
+ "name": {
381
+ "type": "string",
382
+ "description": "プロジェクト名"
383
+ },
384
+ "color": {
385
+ "type": "string",
386
+ "description": "プロジェクトカラー(HEX形式)",
387
+ "pattern": "^#[0-9A-Fa-f]{6}$"
388
+ },
389
+ "category": {
390
+ "type": "string",
391
+ "description": "カテゴリ",
392
+ "enum": [
393
+ "internal",
394
+ "client",
395
+ "personal"
396
+ ]
397
+ },
398
+ "client": {
399
+ "type": "string",
400
+ "description": "クライアント名"
401
+ },
402
+ "active": {
403
+ "type": "boolean",
404
+ "description": "アクティブフラグ"
405
+ }
406
+ },
407
+ "required": [
408
+ "code",
409
+ "name",
410
+ "color",
411
+ "category",
412
+ "active"
413
+ ]
414
+ };
415
+ export const TimelineConfig = {
416
+ "$id": "TimelineConfig",
417
+ "type": "object",
418
+ "description": "タイムライン表示設定",
419
+ "properties": {
420
+ "hourHeight": {
421
+ "type": "integer",
422
+ "description": "1時間あたりの高さ(ピクセル)"
423
+ },
424
+ "maxHours": {
425
+ "type": "integer",
426
+ "description": "最大表示時間"
427
+ },
428
+ "defaultStartHour": {
429
+ "type": "integer",
430
+ "description": "デフォルト開始時刻"
431
+ },
432
+ "defaultEndHour": {
433
+ "type": "integer",
434
+ "description": "デフォルト終了時刻"
435
+ },
436
+ "snapMinutes": {
437
+ "type": "integer",
438
+ "description": "ドラッグ時のスナップ単位(分)"
439
+ }
440
+ }
441
+ };
442
+ export const SlackConfig = {
443
+ "$id": "SlackConfig",
444
+ "type": "object",
445
+ "description": "Slack連携設定",
446
+ "properties": {
447
+ "enabled": {
448
+ "type": "boolean",
449
+ "description": "Slack連携が有効か"
450
+ }
451
+ }
452
+ };
453
+ export const Routines = {
454
+ "$id": "Routines",
455
+ "type": "object",
456
+ "properties": {
457
+ "weekly": {
458
+ "$ref": "WeeklyRoutine#"
459
+ },
460
+ "adhoc": {
461
+ "type": "array",
462
+ "items": {
463
+ "$ref": "RoutineItem#"
464
+ }
465
+ },
466
+ "monthly": {
467
+ "$ref": "MonthlyRoutine#"
468
+ },
469
+ "quarterly": {
470
+ "type": "array",
471
+ "items": {
472
+ "$ref": "QuarterlyRoutine#"
473
+ }
474
+ },
475
+ "yearly": {
476
+ "type": "array",
477
+ "items": {
478
+ "$ref": "YearlyRoutine#"
479
+ }
480
+ }
481
+ }
482
+ };
483
+ export const WeeklyRoutine = {
484
+ "$id": "WeeklyRoutine",
485
+ "type": "object",
486
+ "description": "週次ルーチン(曜日別)",
487
+ "properties": {
488
+ "monday": {
489
+ "type": "array",
490
+ "items": {
491
+ "$ref": "RoutineItem#"
492
+ }
493
+ },
494
+ "tuesday": {
495
+ "type": "array",
496
+ "items": {
497
+ "$ref": "RoutineItem#"
498
+ }
499
+ },
500
+ "wednesday": {
501
+ "type": "array",
502
+ "items": {
503
+ "$ref": "RoutineItem#"
504
+ }
505
+ },
506
+ "thursday": {
507
+ "type": "array",
508
+ "items": {
509
+ "$ref": "RoutineItem#"
510
+ }
511
+ },
512
+ "friday": {
513
+ "type": "array",
514
+ "items": {
515
+ "$ref": "RoutineItem#"
516
+ }
517
+ },
518
+ "saturday": {
519
+ "type": "array",
520
+ "items": {
521
+ "$ref": "RoutineItem#"
522
+ }
523
+ },
524
+ "sunday": {
525
+ "type": "array",
526
+ "items": {
527
+ "$ref": "RoutineItem#"
528
+ }
529
+ }
530
+ }
531
+ };
532
+ export const MonthlyRoutine = {
533
+ "$id": "MonthlyRoutine",
534
+ "type": "object",
535
+ "description": "月次ルーチン",
536
+ "properties": {
537
+ "start_of_month": {
538
+ "type": "array",
539
+ "items": {
540
+ "$ref": "MonthlyRoutineItem#"
541
+ }
542
+ },
543
+ "end_of_month": {
544
+ "type": "array",
545
+ "items": {
546
+ "$ref": "MonthlyRoutineItem#"
547
+ }
548
+ },
549
+ "schedule": {
550
+ "type": "array",
551
+ "items": {
552
+ "$ref": "RoutineItem#"
553
+ }
554
+ }
555
+ }
556
+ };
557
+ export const QuarterlyRoutine = {
558
+ "$id": "QuarterlyRoutine",
559
+ "type": "object",
560
+ "properties": {
561
+ "months": {
562
+ "type": "array",
563
+ "description": "実行月",
564
+ "items": {
565
+ "type": "integer"
566
+ }
567
+ },
568
+ "tasks": {
569
+ "type": "array",
570
+ "items": {
571
+ "$ref": "MonthlyRoutineItem#"
572
+ }
573
+ },
574
+ "schedule": {
575
+ "type": "array",
576
+ "items": {
577
+ "$ref": "RoutineItem#"
578
+ }
579
+ }
580
+ },
581
+ "required": [
582
+ "months",
583
+ "tasks"
584
+ ]
585
+ };
586
+ export const YearlyRoutine = {
587
+ "$id": "YearlyRoutine",
588
+ "type": "object",
589
+ "properties": {
590
+ "month": {
591
+ "type": "integer",
592
+ "description": "実行月"
593
+ },
594
+ "day": {
595
+ "type": "integer",
596
+ "description": "実行日"
597
+ },
598
+ "project": {
599
+ "type": "string"
600
+ },
601
+ "task": {
602
+ "type": "string"
603
+ },
604
+ "time": {
605
+ "type": "string",
606
+ "description": "開始時刻(HH:MM形式)"
607
+ }
608
+ },
609
+ "required": [
610
+ "month",
611
+ "day",
612
+ "project",
613
+ "task"
614
+ ]
615
+ };
616
+ export const RoutineItem = {
617
+ "$id": "RoutineItem",
618
+ "type": "object",
619
+ "properties": {
620
+ "id": {
621
+ "type": "string",
622
+ "description": "ルーチンID"
623
+ },
624
+ "time": {
625
+ "type": "string",
626
+ "description": "開始時刻(HH:MM形式)",
627
+ "pattern": "^([01]?[0-9]|2[0-3]):[0-5][0-9]$"
628
+ },
629
+ "project": {
630
+ "type": "string",
631
+ "description": "プロジェクトコード"
632
+ },
633
+ "task": {
634
+ "type": "string",
635
+ "description": "タスク名"
636
+ },
637
+ "duration": {
638
+ "type": "integer",
639
+ "description": "所要時間(分)"
640
+ },
641
+ "category": {
642
+ "type": "string",
643
+ "description": "タスク形式かTODO形式か",
644
+ "enum": [
645
+ "plan",
646
+ "todo"
647
+ ]
648
+ }
649
+ },
650
+ "required": [
651
+ "project",
652
+ "task"
653
+ ]
654
+ };
655
+ export const MonthlyRoutineItem = {
656
+ "$id": "MonthlyRoutineItem",
657
+ "type": "object",
658
+ "properties": {
659
+ "project": {
660
+ "type": "string",
661
+ "description": "プロジェクトコード"
662
+ },
663
+ "task": {
664
+ "type": "string",
665
+ "description": "タスク名"
666
+ },
667
+ "category": {
668
+ "type": "string",
669
+ "description": "タスク形式かTODO形式か",
670
+ "enum": [
671
+ "plan",
672
+ "todo"
673
+ ]
674
+ }
675
+ },
676
+ "required": [
677
+ "project",
678
+ "task"
679
+ ]
680
+ };
681
+ export const RoutinesMarkdownResponse = {
682
+ "$id": "RoutinesMarkdownResponse",
683
+ "type": "object",
684
+ "properties": {
685
+ "content": {
686
+ "type": "string",
687
+ "description": "Markdown形式のルーチン設定。\n"
688
+ },
689
+ "source": {
690
+ "type": "string",
691
+ "description": "データソース。`markdown` は `data/routines.md` から読み込み、\n`yaml` は `config/routines.yaml` から変換したことを示します。\n",
692
+ "enum": [
693
+ "markdown",
694
+ "yaml"
695
+ ]
696
+ }
697
+ },
698
+ "required": [
699
+ "content",
700
+ "source"
701
+ ]
702
+ };
703
+ export const RoutinesMarkdownRequest = {
704
+ "$id": "RoutinesMarkdownRequest",
705
+ "type": "object",
706
+ "properties": {
707
+ "content": {
708
+ "type": "string",
709
+ "description": "保存するMarkdown形式のルーチン設定。\n"
710
+ }
711
+ },
712
+ "required": [
713
+ "content"
714
+ ]
715
+ };
716
+ export const ExtendedGitStatus = {
717
+ "$id": "ExtendedGitStatus",
718
+ "type": "object",
719
+ "properties": {
720
+ "branch": {
721
+ "type": "string",
722
+ "description": "現在のブランチ名"
723
+ },
724
+ "uncommitted": {
725
+ "$ref": "UncommittedChanges#"
726
+ },
727
+ "unpushed": {
728
+ "$ref": "UnpushedCommits#"
729
+ },
730
+ "lastCommit": {
731
+ "$ref": "CommitInfo#"
732
+ }
733
+ },
734
+ "required": [
735
+ "branch",
736
+ "uncommitted",
737
+ "unpushed"
738
+ ]
739
+ };
740
+ export const UncommittedChanges = {
741
+ "$id": "UncommittedChanges",
742
+ "type": "object",
743
+ "properties": {
744
+ "count": {
745
+ "type": "integer",
746
+ "description": "未コミットファイル数"
747
+ },
748
+ "files": {
749
+ "type": "array",
750
+ "items": {
751
+ "$ref": "FileStatus#"
752
+ }
753
+ }
754
+ },
755
+ "required": [
756
+ "count",
757
+ "files"
758
+ ]
759
+ };
760
+ export const FileStatus = {
761
+ "$id": "FileStatus",
762
+ "type": "object",
763
+ "properties": {
764
+ "path": {
765
+ "type": "string",
766
+ "description": "ファイルパス"
767
+ },
768
+ "status": {
769
+ "type": "string",
770
+ "description": "ステータス(M:変更, A:追加, D:削除など)"
771
+ }
772
+ },
773
+ "required": [
774
+ "path",
775
+ "status"
776
+ ]
777
+ };
778
+ export const UnpushedCommits = {
779
+ "$id": "UnpushedCommits",
780
+ "type": "object",
781
+ "properties": {
782
+ "count": {
783
+ "type": "integer",
784
+ "description": "未プッシュコミット数"
785
+ },
786
+ "commits": {
787
+ "type": "array",
788
+ "items": {
789
+ "$ref": "UnpushedCommit#"
790
+ }
791
+ }
792
+ },
793
+ "required": [
794
+ "count",
795
+ "commits"
796
+ ]
797
+ };
798
+ export const UnpushedCommit = {
799
+ "$id": "UnpushedCommit",
800
+ "type": "object",
801
+ "properties": {
802
+ "hash": {
803
+ "type": "string",
804
+ "description": "コミットハッシュ(短縮形)"
805
+ },
806
+ "message": {
807
+ "type": "string",
808
+ "description": "コミットメッセージ"
809
+ },
810
+ "date": {
811
+ "type": "string",
812
+ "description": "コミット日時"
813
+ },
814
+ "files": {
815
+ "type": "array",
816
+ "description": "コミットに含まれるファイル一覧",
817
+ "items": {
818
+ "type": "string"
819
+ }
820
+ }
821
+ },
822
+ "required": [
823
+ "hash",
824
+ "message",
825
+ "date",
826
+ "files"
827
+ ]
828
+ };
829
+ export const CommitInfo = {
830
+ "$id": "CommitInfo",
831
+ "type": "object",
832
+ "properties": {
833
+ "hash": {
834
+ "type": "string",
835
+ "description": "コミットハッシュ"
836
+ },
837
+ "message": {
838
+ "type": "string",
839
+ "description": "コミットメッセージ"
840
+ },
841
+ "date": {
842
+ "type": "string",
843
+ "description": "コミット日時"
844
+ }
845
+ },
846
+ "required": [
847
+ "hash",
848
+ "message",
849
+ "date"
850
+ ]
851
+ };
852
+ // Parameter schemas
853
+ export const Report_getReportParams = {
854
+ "$id": "Report_getReportParams",
855
+ "type": "object",
856
+ "properties": {
857
+ "date": {
858
+ "type": "string",
859
+ "format": "date"
860
+ }
861
+ },
862
+ "required": [
863
+ "date"
864
+ ]
865
+ };
866
+ export const Report_saveReportParams = {
867
+ "$id": "Report_saveReportParams",
868
+ "type": "object",
869
+ "properties": {
870
+ "date": {
871
+ "type": "string",
872
+ "format": "date"
873
+ }
874
+ },
875
+ "required": [
876
+ "date"
877
+ ]
878
+ };
879
+ export const Report_deleteReportParams = {
880
+ "$id": "Report_deleteReportParams",
881
+ "type": "object",
882
+ "properties": {
883
+ "date": {
884
+ "type": "string",
885
+ "format": "date"
886
+ }
887
+ },
888
+ "required": [
889
+ "date"
890
+ ]
891
+ };
892
+ export const Calendar_getCalendarDataParams = {
893
+ "$id": "Calendar_getCalendarDataParams",
894
+ "type": "object",
895
+ "properties": {
896
+ "year": {
897
+ "type": "integer",
898
+ "minimum": 2000,
899
+ "maximum": 2100
900
+ },
901
+ "month": {
902
+ "type": "integer",
903
+ "minimum": 1,
904
+ "maximum": 12
905
+ }
906
+ },
907
+ "required": [
908
+ "year",
909
+ "month"
910
+ ]
911
+ };
912
+ // All schemas for registration
913
+ export const allSchemas = [
914
+ Error,
915
+ ReportStats,
916
+ ReportResponse,
917
+ ReportSaveRequest,
918
+ GitOptions,
919
+ SlackOptions,
920
+ GitResult,
921
+ SlackResult,
922
+ ReportSaveResponse,
923
+ CalendarData,
924
+ DayStats,
925
+ CalendarSummary,
926
+ YearMonthsResponse,
927
+ YearMonth,
928
+ Config,
929
+ Project,
930
+ TimelineConfig,
931
+ SlackConfig,
932
+ Routines,
933
+ WeeklyRoutine,
934
+ MonthlyRoutine,
935
+ QuarterlyRoutine,
936
+ YearlyRoutine,
937
+ RoutineItem,
938
+ MonthlyRoutineItem,
939
+ RoutinesMarkdownResponse,
940
+ RoutinesMarkdownRequest,
941
+ ExtendedGitStatus,
942
+ UncommittedChanges,
943
+ FileStatus,
944
+ UnpushedCommits,
945
+ UnpushedCommit,
946
+ CommitInfo,
947
+ Report_getReportParams,
948
+ Report_saveReportParams,
949
+ Report_deleteReportParams,
950
+ Calendar_getCalendarDataParams,
951
+ ];
952
+ //# sourceMappingURL=validators.js.map