summaryrefslogtreecommitdiffhomepage
path: root/vhosts/blog/nuldoc-src/revision.ts
diff options
context:
space:
mode:
Diffstat (limited to 'vhosts/blog/nuldoc-src/revision.ts')
-rw-r--r--vhosts/blog/nuldoc-src/revision.ts27
1 files changed, 27 insertions, 0 deletions
diff --git a/vhosts/blog/nuldoc-src/revision.ts b/vhosts/blog/nuldoc-src/revision.ts
new file mode 100644
index 00000000..e04b7ba1
--- /dev/null
+++ b/vhosts/blog/nuldoc-src/revision.ts
@@ -0,0 +1,27 @@
+export type Date = {
+ year: number;
+ month: number;
+ day: number;
+};
+
+export function stringToDate(s: string): Date {
+ const match = s.match(/(\d{4})-(\d{2})-(\d{2})/);
+ if (match === null) {
+ throw new Error();
+ }
+ const [_, y, m, d] = match;
+ return { year: parseInt(y), month: parseInt(m), day: parseInt(d) };
+}
+
+export function dateToString(date: Date): string {
+ const y = `${date.year}`.padStart(4, "0");
+ const m = `${date.month}`.padStart(2, "0");
+ const d = `${date.day}`.padStart(2, "0");
+ return `${y}-${m}-${d}`;
+}
+
+export type Revision = {
+ number: number;
+ date: Date;
+ remark: string;
+};