@basementuniverse/kanbn 2.0.0 → 2.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 (87) hide show
  1. package/README.md +2 -1
  2. package/docs/advanced-configuration.md +23 -0
  3. package/docs/commands/add.txt +9 -0
  4. package/docs/commands/archive.txt +5 -0
  5. package/docs/commands/board.txt +5 -0
  6. package/docs/commands/boards.txt +34 -0
  7. package/docs/commands/burndown.txt +6 -0
  8. package/docs/commands/comment.txt +5 -0
  9. package/docs/commands/edit.txt +5 -0
  10. package/docs/commands/find.txt +11 -0
  11. package/docs/commands/gantt.txt +5 -0
  12. package/docs/commands/help.txt +1 -0
  13. package/docs/commands/history.txt +5 -0
  14. package/docs/commands/init.txt +13 -0
  15. package/docs/commands/move.txt +9 -0
  16. package/docs/commands/remove.txt +12 -1
  17. package/docs/commands/rename.txt +5 -0
  18. package/docs/commands/restore.txt +6 -0
  19. package/docs/commands/sort.txt +5 -0
  20. package/docs/commands/sprint.txt +9 -0
  21. package/docs/commands/status.txt +10 -1
  22. package/docs/commands/task.txt +5 -0
  23. package/docs/commands/validate.txt +15 -0
  24. package/docs/index-structure.md +26 -0
  25. package/docs/index.md +3 -1
  26. package/docs/multiple-boards.md +258 -0
  27. package/docs/quick-start.md +21 -1
  28. package/docs/task-structure.md +22 -1
  29. package/example/README.md +23 -0
  30. package/example/boards/.kanbn/design.md +31 -0
  31. package/example/boards/.kanbn/index.md +44 -0
  32. package/example/boards/.kanbn/tasks/add-usage-alert-emails.md +19 -0
  33. package/example/boards/.kanbn/tasks/build-tenant-settings-page.md +43 -0
  34. package/example/boards/.kanbn/tasks/create-organization-switcher.md +44 -0
  35. package/example/boards/.kanbn/tasks/design-onboarding-checklist.md +22 -0
  36. package/example/boards/.kanbn/tasks/refresh-marketing-site.md +28 -0
  37. package/example/boards/.kanbn/tasks/ship-billing-portal.md +29 -0
  38. package/package.json +9 -7
  39. package/routes/add.json +35 -11
  40. package/routes/archive.json +10 -2
  41. package/routes/board.json +11 -3
  42. package/routes/boards.json +30 -0
  43. package/routes/burndown.json +23 -7
  44. package/routes/comment.json +14 -4
  45. package/routes/edit.json +32 -10
  46. package/routes/find.json +37 -12
  47. package/routes/gantt.json +20 -6
  48. package/routes/history.json +39 -25
  49. package/routes/init.json +3 -1
  50. package/routes/move.json +22 -6
  51. package/routes/remove.json +15 -4
  52. package/routes/rename.json +11 -3
  53. package/routes/restore.json +8 -2
  54. package/routes/sort.json +35 -11
  55. package/routes/sprint.json +14 -4
  56. package/routes/status.json +23 -7
  57. package/routes/task.json +10 -2
  58. package/routes/validate.json +18 -5
  59. package/skills/kanbn-plan/SKILL.md +10 -1
  60. package/skills/kanbn-replan/SKILL.md +6 -1
  61. package/src/board.js +1 -1
  62. package/src/controller/add.js +52 -46
  63. package/src/controller/archive.js +8 -4
  64. package/src/controller/board.js +8 -9
  65. package/src/controller/boards.js +140 -0
  66. package/src/controller/burndown.js +9 -5
  67. package/src/controller/comment.js +9 -5
  68. package/src/controller/edit.js +9 -5
  69. package/src/controller/find.js +12 -9
  70. package/src/controller/gantt.js +8 -4
  71. package/src/controller/history.js +8 -4
  72. package/src/controller/init.js +39 -4
  73. package/src/controller/move.js +69 -15
  74. package/src/controller/remove.js +34 -11
  75. package/src/controller/rename.js +8 -4
  76. package/src/controller/restore.js +23 -8
  77. package/src/controller/sort.js +19 -3
  78. package/src/controller/sprint.js +31 -7
  79. package/src/controller/status.js +8 -4
  80. package/src/controller/task.js +22 -9
  81. package/src/controller/validate.js +60 -7
  82. package/src/git-user-name.js +19 -0
  83. package/src/main.d.ts +184 -6
  84. package/src/main.js +1333 -63
  85. package/src/parse-index.js +14 -0
  86. package/src/parse-task.js +16 -0
  87. package/src/utility.js +140 -0
package/routes/add.json CHANGED
@@ -18,19 +18,43 @@
18
18
  "due",
19
19
  "plannedStart",
20
20
  "plannedFinish",
21
- "progress"
21
+ "progress",
22
+ "board"
22
23
  ],
23
24
  "alias": {
24
- "interactive": ["i"],
25
- "name": ["n"],
26
- "description": ["d"],
27
- "column": ["c"],
28
- "sub-task": ["s"],
29
- "tag": ["t"],
30
- "relation": ["r"],
31
- "due": ["e"],
32
- "assigned": ["a"],
33
- "untracked": ["u"]
25
+ "interactive": [
26
+ "i"
27
+ ],
28
+ "name": [
29
+ "n"
30
+ ],
31
+ "description": [
32
+ "d"
33
+ ],
34
+ "column": [
35
+ "c"
36
+ ],
37
+ "sub-task": [
38
+ "s"
39
+ ],
40
+ "tag": [
41
+ "t"
42
+ ],
43
+ "relation": [
44
+ "r"
45
+ ],
46
+ "due": [
47
+ "e"
48
+ ],
49
+ "assigned": [
50
+ "a"
51
+ ],
52
+ "untracked": [
53
+ "u"
54
+ ],
55
+ "board": [
56
+ "b"
57
+ ]
34
58
  }
35
59
  },
36
60
  "controller": "./src/controller/add",
@@ -9,8 +9,16 @@
9
9
  "list"
10
10
  ],
11
11
  "alias": {
12
- "list": ["l"]
13
- }
12
+ "list": [
13
+ "l"
14
+ ],
15
+ "board": [
16
+ "b"
17
+ ]
18
+ },
19
+ "string": [
20
+ "board"
21
+ ]
14
22
  },
15
23
  "controller": "./src/controller/archive",
16
24
  "help": "./docs/commands/archive.txt"
package/routes/board.json CHANGED
@@ -9,11 +9,19 @@
9
9
  "json"
10
10
  ],
11
11
  "string": [
12
- "view"
12
+ "view",
13
+ "board"
13
14
  ],
14
15
  "alias": {
15
- "view": ["v"],
16
- "json": ["j"]
16
+ "view": [
17
+ "v"
18
+ ],
19
+ "json": [
20
+ "j"
21
+ ],
22
+ "board": [
23
+ "b"
24
+ ]
17
25
  }
18
26
  },
19
27
  "controller": "./src/controller/board",
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "Boards",
3
+ "commands": [
4
+ "boards"
5
+ ],
6
+ "args": {
7
+ "boolean": [
8
+ "json",
9
+ "tasks",
10
+ "all",
11
+ "force"
12
+ ],
13
+ "string": [
14
+ "rename",
15
+ "delete",
16
+ "name"
17
+ ],
18
+ "alias": {
19
+ "json": ["j"],
20
+ "tasks": ["t"],
21
+ "all": ["a"],
22
+ "force": ["f"],
23
+ "rename": ["r"],
24
+ "delete": ["d"],
25
+ "name": ["n"]
26
+ }
27
+ },
28
+ "controller": "./src/controller/boards",
29
+ "help": "./docs/commands/boards.txt"
30
+ }
@@ -13,15 +13,31 @@
13
13
  "sprint",
14
14
  "assigned",
15
15
  "column",
16
- "normalise"
16
+ "normalise",
17
+ "board"
17
18
  ],
18
19
  "alias": {
19
- "json": ["j"],
20
- "date": ["d"],
21
- "sprint": ["p"],
22
- "assigned": ["a"],
23
- "column": ["c"],
24
- "normalise": ["n"]
20
+ "json": [
21
+ "j"
22
+ ],
23
+ "date": [
24
+ "d"
25
+ ],
26
+ "sprint": [
27
+ "p"
28
+ ],
29
+ "assigned": [
30
+ "a"
31
+ ],
32
+ "column": [
33
+ "c"
34
+ ],
35
+ "normalise": [
36
+ "n"
37
+ ],
38
+ "board": [
39
+ "b"
40
+ ]
25
41
  }
26
42
  },
27
43
  "controller": "./src/controller/burndown",
@@ -9,12 +9,22 @@
9
9
  "interactive"
10
10
  ],
11
11
  "string": [
12
- "text"
12
+ "text",
13
+ "board"
13
14
  ],
14
15
  "alias": {
15
- "interactive": ["i"],
16
- "author": ["a"],
17
- "text": ["t"]
16
+ "interactive": [
17
+ "i"
18
+ ],
19
+ "author": [
20
+ "a"
21
+ ],
22
+ "text": [
23
+ "t"
24
+ ],
25
+ "board": [
26
+ "b"
27
+ ]
18
28
  }
19
29
  },
20
30
  "controller": "./src/controller/comment",
package/routes/edit.json CHANGED
@@ -22,18 +22,40 @@
22
22
  "plannedStart",
23
23
  "plannedFinish",
24
24
  "progress",
25
- "unset"
25
+ "unset",
26
+ "board"
26
27
  ],
27
28
  "alias": {
28
- "interactive": ["i"],
29
- "name": ["n"],
30
- "description": ["d"],
31
- "column": ["c"],
32
- "sub-task": ["s"],
33
- "tag": ["t"],
34
- "relation": ["r"],
35
- "due": ["e"],
36
- "assigned": ["a"]
29
+ "interactive": [
30
+ "i"
31
+ ],
32
+ "name": [
33
+ "n"
34
+ ],
35
+ "description": [
36
+ "d"
37
+ ],
38
+ "column": [
39
+ "c"
40
+ ],
41
+ "sub-task": [
42
+ "s"
43
+ ],
44
+ "tag": [
45
+ "t"
46
+ ],
47
+ "relation": [
48
+ "r"
49
+ ],
50
+ "due": [
51
+ "e"
52
+ ],
53
+ "assigned": [
54
+ "a"
55
+ ],
56
+ "board": [
57
+ "b"
58
+ ]
37
59
  }
38
60
  },
39
61
  "controller": "./src/controller/edit",
package/routes/find.json CHANGED
@@ -8,7 +8,8 @@
8
8
  "boolean": [
9
9
  "interactive",
10
10
  "quiet",
11
- "json"
11
+ "json",
12
+ "all-boards"
12
13
  ],
13
14
  "string": [
14
15
  "id",
@@ -32,19 +33,43 @@
32
33
  "plannedFinish",
33
34
  "workload",
34
35
  "progress",
35
- "assigned"
36
+ "assigned",
37
+ "board"
36
38
  ],
37
39
  "alias": {
38
- "interactive": ["i"],
39
- "name": ["n"],
40
- "description": ["d"],
41
- "column": ["c"],
42
- "quiet": ["q"],
43
- "due": ["e"],
44
- "sub-task": ["s"],
45
- "tag": ["t"],
46
- "relation": ["r"],
47
- "json": ["j"]
40
+ "interactive": [
41
+ "i"
42
+ ],
43
+ "name": [
44
+ "n"
45
+ ],
46
+ "description": [
47
+ "d"
48
+ ],
49
+ "column": [
50
+ "c"
51
+ ],
52
+ "quiet": [
53
+ "q"
54
+ ],
55
+ "due": [
56
+ "e"
57
+ ],
58
+ "sub-task": [
59
+ "s"
60
+ ],
61
+ "tag": [
62
+ "t"
63
+ ],
64
+ "relation": [
65
+ "r"
66
+ ],
67
+ "json": [
68
+ "j"
69
+ ],
70
+ "board": [
71
+ "b"
72
+ ]
48
73
  }
49
74
  },
50
75
  "controller": "./src/controller/find",
package/routes/gantt.json CHANGED
@@ -12,14 +12,28 @@
12
12
  "assigned",
13
13
  "column",
14
14
  "date",
15
- "now"
15
+ "now",
16
+ "board"
16
17
  ],
17
18
  "alias": {
18
- "json": ["j"],
19
- "assigned": ["a"],
20
- "column": ["c"],
21
- "date": ["d"],
22
- "now": ["n"]
19
+ "json": [
20
+ "j"
21
+ ],
22
+ "assigned": [
23
+ "a"
24
+ ],
25
+ "column": [
26
+ "c"
27
+ ],
28
+ "date": [
29
+ "d"
30
+ ],
31
+ "now": [
32
+ "n"
33
+ ],
34
+ "board": [
35
+ "b"
36
+ ]
23
37
  }
24
38
  },
25
39
  "controller": "./src/controller/gantt",
@@ -1,27 +1,41 @@
1
1
  {
2
- "name": "Task History",
3
- "commands": [
4
- "history",
5
- "hi"
6
- ],
7
- "args": {
8
- "boolean": [
9
- "json"
10
- ],
11
- "string": [
12
- "date",
13
- "sprint",
14
- "assigned",
15
- "task"
16
- ],
17
- "alias": {
18
- "json": ["j"],
19
- "date": ["d"],
20
- "sprint": ["p"],
21
- "assigned": ["a"],
22
- "task": ["t"]
23
- }
24
- },
25
- "controller": "./src/controller/history",
26
- "help": "./docs/commands/history.txt"
2
+ "name": "Task History",
3
+ "commands": [
4
+ "history",
5
+ "hi"
6
+ ],
7
+ "args": {
8
+ "boolean": [
9
+ "json"
10
+ ],
11
+ "string": [
12
+ "date",
13
+ "sprint",
14
+ "assigned",
15
+ "task",
16
+ "board"
17
+ ],
18
+ "alias": {
19
+ "json": [
20
+ "j"
21
+ ],
22
+ "date": [
23
+ "d"
24
+ ],
25
+ "sprint": [
26
+ "p"
27
+ ],
28
+ "assigned": [
29
+ "a"
30
+ ],
31
+ "task": [
32
+ "t"
33
+ ],
34
+ "board": [
35
+ "b"
36
+ ]
37
+ }
38
+ },
39
+ "controller": "./src/controller/history",
40
+ "help": "./docs/commands/history.txt"
27
41
  }
package/routes/init.json CHANGED
@@ -8,7 +8,8 @@
8
8
  "string": [
9
9
  "name",
10
10
  "description",
11
- "column"
11
+ "column",
12
+ "board"
12
13
  ],
13
14
  "boolean": [
14
15
  "interactive"
@@ -17,6 +18,7 @@
17
18
  "name": ["n"],
18
19
  "description": ["d"],
19
20
  "column": ["c"],
21
+ "board": ["b"],
20
22
  "interactive": ["i"]
21
23
  }
22
24
  },
package/routes/move.json CHANGED
@@ -7,17 +7,33 @@
7
7
  "args": {
8
8
  "boolean": [
9
9
  "interactive",
10
- "relative"
10
+ "relative",
11
+ "add"
11
12
  ],
12
13
  "string": [
13
14
  "column",
14
- "position"
15
+ "position",
16
+ "board"
15
17
  ],
16
18
  "alias": {
17
- "interactive": ["i"],
18
- "column": ["c"],
19
- "position": ["p"],
20
- "relative": ["r"]
19
+ "interactive": [
20
+ "i"
21
+ ],
22
+ "column": [
23
+ "c"
24
+ ],
25
+ "position": [
26
+ "p"
27
+ ],
28
+ "relative": [
29
+ "r"
30
+ ],
31
+ "board": [
32
+ "b"
33
+ ]
34
+ },
35
+ "default": {
36
+ "add": true
21
37
  }
22
38
  },
23
39
  "controller": "./src/controller/move",
@@ -7,12 +7,23 @@
7
7
  "args": {
8
8
  "boolean": [
9
9
  "force",
10
- "index"
10
+ "index",
11
+ "all-boards"
11
12
  ],
12
13
  "alias": {
13
- "force": ["f"],
14
- "index": ["x"]
15
- }
14
+ "force": [
15
+ "f"
16
+ ],
17
+ "index": [
18
+ "x"
19
+ ],
20
+ "board": [
21
+ "b"
22
+ ]
23
+ },
24
+ "string": [
25
+ "board"
26
+ ]
16
27
  },
17
28
  "controller": "./src/controller/remove",
18
29
  "help": "./docs/commands/remove.txt"
@@ -9,11 +9,19 @@
9
9
  "interactive"
10
10
  ],
11
11
  "string": [
12
- "name"
12
+ "name",
13
+ "board"
13
14
  ],
14
15
  "alias": {
15
- "interactive": ["i"],
16
- "name": ["n"]
16
+ "interactive": [
17
+ "i"
18
+ ],
19
+ "name": [
20
+ "n"
21
+ ],
22
+ "board": [
23
+ "b"
24
+ ]
17
25
  }
18
26
  },
19
27
  "controller": "./src/controller/rename",
@@ -6,10 +6,16 @@
6
6
  ],
7
7
  "args": {
8
8
  "string": [
9
- "column"
9
+ "column",
10
+ "board"
10
11
  ],
11
12
  "alias": {
12
- "column": ["c"]
13
+ "column": [
14
+ "c"
15
+ ],
16
+ "board": [
17
+ "b"
18
+ ]
13
19
  }
14
20
  },
15
21
  "controller": "./src/controller/restore",
package/routes/sort.json CHANGED
@@ -31,19 +31,43 @@
31
31
  "plannedFinish",
32
32
  "workload",
33
33
  "progress",
34
- "assigned"
34
+ "assigned",
35
+ "board"
35
36
  ],
36
37
  "alias": {
37
- "interactive": ["i"],
38
- "name": ["n"],
39
- "description": ["d"],
40
- "sub-task": ["s"],
41
- "tag": ["t"],
42
- "relation": ["r"],
43
- "due": ["e"],
44
- "workload": ["w"],
45
- "ascending": ["a"],
46
- "descending": ["z"]
38
+ "interactive": [
39
+ "i"
40
+ ],
41
+ "name": [
42
+ "n"
43
+ ],
44
+ "description": [
45
+ "d"
46
+ ],
47
+ "sub-task": [
48
+ "s"
49
+ ],
50
+ "tag": [
51
+ "t"
52
+ ],
53
+ "relation": [
54
+ "r"
55
+ ],
56
+ "due": [
57
+ "e"
58
+ ],
59
+ "workload": [
60
+ "w"
61
+ ],
62
+ "ascending": [
63
+ "a"
64
+ ],
65
+ "descending": [
66
+ "z"
67
+ ],
68
+ "board": [
69
+ "b"
70
+ ]
47
71
  }
48
72
  },
49
73
  "controller": "./src/controller/sort",
@@ -10,12 +10,22 @@
10
10
  ],
11
11
  "string": [
12
12
  "name",
13
- "description"
13
+ "description",
14
+ "board"
14
15
  ],
15
16
  "alias": {
16
- "interactive": ["i"],
17
- "name": ["n"],
18
- "description": ["d"]
17
+ "interactive": [
18
+ "i"
19
+ ],
20
+ "name": [
21
+ "n"
22
+ ],
23
+ "description": [
24
+ "d"
25
+ ],
26
+ "board": [
27
+ "b"
28
+ ]
19
29
  }
20
30
  },
21
31
  "controller": "./src/controller/sprint",
@@ -13,15 +13,31 @@
13
13
  ],
14
14
  "string": [
15
15
  "sprint",
16
- "date"
16
+ "date",
17
+ "board"
17
18
  ],
18
19
  "alias": {
19
- "untracked": ["u"],
20
- "quiet": ["q"],
21
- "json": ["j"],
22
- "due": ["e"],
23
- "sprint": ["p"],
24
- "date": ["d"]
20
+ "untracked": [
21
+ "u"
22
+ ],
23
+ "quiet": [
24
+ "q"
25
+ ],
26
+ "json": [
27
+ "j"
28
+ ],
29
+ "due": [
30
+ "e"
31
+ ],
32
+ "sprint": [
33
+ "p"
34
+ ],
35
+ "date": [
36
+ "d"
37
+ ],
38
+ "board": [
39
+ "b"
40
+ ]
25
41
  }
26
42
  },
27
43
  "controller": "./src/controller/status",