imdone-core 1.54.10 → 2.0.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 (71) hide show
  1. package/README.md +2 -2
  2. package/lib/cli.js +114 -0
  3. package/lib/index.js +23 -0
  4. package/package.json +48 -66
  5. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -37
  6. package/.github/workflows/ci.yml +0 -24
  7. package/.imdoneignore +0 -12
  8. package/.mocharc.json +0 -10
  9. package/.prettierrc +0 -6
  10. package/CHANGELOG.md +0 -160
  11. package/_navbar.md +0 -1
  12. package/cli.js +0 -74
  13. package/index-markdown.js +0 -55
  14. package/index.html +0 -184
  15. package/index.js +0 -1
  16. package/lib/ProjectContext.js +0 -42
  17. package/lib/adapters/date-time.js +0 -20
  18. package/lib/adapters/file-gateway.js +0 -127
  19. package/lib/adapters/git-download.js +0 -35
  20. package/lib/adapters/markdown.js +0 -168
  21. package/lib/adapters/parsers/DateLanguageParser.js +0 -10
  22. package/lib/adapters/parsers/content-transformer.js +0 -111
  23. package/lib/adapters/parsers/file/LocalFileParserFactory.js +0 -37
  24. package/lib/adapters/parsers/file/ReadStreamCodeParser.js +0 -126
  25. package/lib/adapters/parsers/file/ReadStreamMarkdownParser.js +0 -17
  26. package/lib/adapters/parsers/file/ReadStreamTaskParser.js +0 -104
  27. package/lib/adapters/parsers/function-parser.js +0 -29
  28. package/lib/adapters/parsers/task/CardContentParser.js +0 -376
  29. package/lib/adapters/parsers/task/CheckStyleTaskParser.js +0 -28
  30. package/lib/adapters/parsers/task/CodeStyleTaskParser.js +0 -24
  31. package/lib/adapters/parsers/task/HashStyleTaskParser.js +0 -27
  32. package/lib/adapters/parsers/task/MarkdownStyleTaskParser.js +0 -24
  33. package/lib/adapters/parsers/task/TaskParser.js +0 -38
  34. package/lib/adapters/readers/FileSystemProjectReader.js +0 -45
  35. package/lib/adapters/storage/config.js +0 -49
  36. package/lib/adapters/storage/tags.js +0 -30
  37. package/lib/adapters/yaml.js +0 -6
  38. package/lib/card.js +0 -300
  39. package/lib/config.js +0 -214
  40. package/lib/constants.js +0 -97
  41. package/lib/context/ApplicationContext.js +0 -32
  42. package/lib/context/StreamingApplicationContext.js +0 -31
  43. package/lib/controlers/SaveViewController.js +0 -10
  44. package/lib/default-settings.js +0 -37
  45. package/lib/domain/entities/FileProjectContext.js +0 -10
  46. package/lib/domain/entities/View.js +0 -30
  47. package/lib/domain/usecases/GetViewsUsecase.js +0 -50
  48. package/lib/domain/usecases/OpenProjectUsecase.js +0 -13
  49. package/lib/domain/usecases/SaveViewUsecase.js +0 -57
  50. package/lib/file.js +0 -1395
  51. package/lib/languages.js +0 -114
  52. package/lib/list.js +0 -105
  53. package/lib/migrate-config.js +0 -165
  54. package/lib/mixins/repo-fs-store.js +0 -424
  55. package/lib/mixins/repo-watched-fs-store.js +0 -195
  56. package/lib/plugins/archive-plugin.js +0 -70
  57. package/lib/plugins/default-board-actions-plugin.js +0 -56
  58. package/lib/plugins/default-board-properties-plugin.js +0 -101
  59. package/lib/plugins/epic-plugin.js +0 -176
  60. package/lib/plugins/extension-plugin.js +0 -87
  61. package/lib/plugins/persist-tags-plugin.js +0 -13
  62. package/lib/plugins/plugin-manager.js +0 -421
  63. package/lib/plugins/plugin-registry.js +0 -61
  64. package/lib/project-factory.js +0 -45
  65. package/lib/project.js +0 -911
  66. package/lib/repository.js +0 -1746
  67. package/lib/task.js +0 -798
  68. package/lib/tools.js +0 -250
  69. package/lib/usecases/get-imdone-url.js +0 -6
  70. package/lib/usecases/get-project-tags.js +0 -16
  71. package/lib/usecases/get-tasks-in-file.js +0 -29
package/lib/languages.js DELETED
@@ -1,114 +0,0 @@
1
- 'use strict';
2
-
3
- var cBlock = {"start":"/*", "end":"*/", "ignore":"*"};
4
- var htmlBlock = {"start": "<!--", "end": "-->", "ignore": "-"};
5
- var gamsBlock = {"start": "$ontext", "end": "$offtext", "ignore": "-"};
6
- module.exports = {
7
- ".boot": {"name": "boot", "symbol": ";"},
8
- ".coffee": {"name": "coffeescript", "symbol": "#"},
9
- ".litcoffee": {"name": "coffeescript", "symbol": "#", "literate": true},
10
- "Cakefile": {"name": "coffeescript", "symbol": "#"},
11
- ".rb": {"name": "ruby", "symbol": "#"},
12
- ".py": {"name": "python", "symbol": "#"},
13
- ".jl": {"name": "julia", "symbol": "#", "block": {"start": "#=", "end": "=#", "ignore": "#"}},
14
- ".tex": {"name": "tex", "symbol": "%"},
15
- ".latex": {"name": "tex", "symbol": "%"},
16
- ".swift": {"name": "swift", "symbol": "//", "block": cBlock},
17
- ".js": {"name": "javascript", "symbol": "//", "block": cBlock},
18
- ".es6": {"name": "javascript", "symbol": "//", "block": cBlock},
19
- ".es": {"name": "javascript", "symbol": "//", "block": cBlock},
20
- ".ex": {"name": "elixir", "symbol": "#"},
21
- ".exs": {"name": "elixir", "symbol": "#"},
22
- ".jsx": {"name": "jsx", "symbol": "//", "block": cBlock},
23
- ".java": {"name": "java", "symbol": "//", "block": cBlock},
24
- ".properties": {"name": "properties", "symbol": "#"},
25
- ".sbt": {"name": "sbt", "symbol": "//", "block": cBlock},
26
- ".groovy": {"name": "groovy", "symbol": "//", "block": cBlock},
27
- ".scss": {"name": "scss", "symbol": "//"},
28
- ".css": {"name": "css", "symbol": "//", "block": cBlock},
29
- ".cpp": {"name": "cpp", "symbol": "//", "block": cBlock},
30
- ".cxx": {"name": "cpp", "symbol": "//", "block": cBlock},
31
- ".cc": {"name": "cpp", "symbol": "//", "block": cBlock},
32
- ".hpp": {"name": "cpp", "symbol": "//", "block": cBlock},
33
- ".hxx": {"name": "cpp", "symbol": "//", "block": cBlock},
34
- ".hh": {"name": "cpp", "symbol": "//", "block": cBlock},
35
- ".ino": {"name": "cpp", "symbol": "//", "block": cBlock},
36
- ".php": {"name": "php", "symbol": "//", "block": htmlBlock},
37
- ".idr": {"name": "idris", "symbol": "--"},
38
- ".hs": {"name": "haskell", "symbol": "--"},
39
- ".lhs": {"name": "haskell", "symbol": "--"},
40
- ".elm": {"name": "elm", "symbol": "--"},
41
- ".erl": {"name": "erlang", "symbol": "%"},
42
- ".hrl": {"name": "erlang", "symbol": "%"},
43
- ".less": {"name": "less", "symbol": "//", "block": cBlock},
44
- ".c": {"name": "c", "symbol":"//", "block": cBlock},
45
- ".h": {"name": "objectivec", "symbol": "//", "block": cBlock},
46
- ".m": {"name": "objectivec", "symbol": "//", "block": cBlock},
47
- ".mm": {"name": "objectivec", "symbol": "//", "block": cBlock},
48
- ".m4": {"name": "m4", "symbol": "#"},
49
- ".scala": {"name": "scala", "symbol": "//", "block": cBlock},
50
- ".cs": {"name": "cs", "symbol": "//", "block": cBlock},
51
- ".as": {"name": "actionscript", "symbol": "//"},
52
- ".scpt": {"name": "applescript", "symbol": "--"},
53
- ".applescript": {"name": "applescript", "symbol": "--"},
54
- ".sh": {"name": "bash", "symbol": "#"},
55
- ".clj": {"name": "clojure", "symbol": ";"},
56
- ".cljc": {"name": "clojure", "symbol": ";"},
57
- ".cljs": {"name": "clojurescript", "symbol": ";"},
58
- ".cmake": {"name": "cmake", "symbol": "#"},
59
- ".d": {"name": "d", "symbol": "//"},
60
- ".p": {"name": "delphi", "symbol": "//"},
61
- ".pp": {"name": "delphi", "symbol": "//"},
62
- ".pas": {"name": "delphi", "symbol": "//"},
63
- ".bat": {"name": "dos", "symbol": "@?rem"},
64
- ".btm": {"name": "dos", "symbol": "@?rem"},
65
- ".cmd": {"name": "dos", "symbol": "@?rem"},
66
- ".gms": {"name": "gams", "symbol": "*", "block": gamsBlock},
67
- ".go": {"name": "go", "symbol": "//", "block": cBlock},
68
- ".ini": {"name": "ini", "symbol": ";"},
69
- ".lisp": {"name": "lisp", "symbol": ";"},
70
- ".mel": {"name": "mel", "symbol": "//"},
71
- ".pl": {"name": "perl", "symbol": "#"},
72
- ".pm": {"name": "perl", "symbol": "#"},
73
- ".pod": {"name": "perl", "symbol": "#"},
74
- ".t": {"name": "perl", "symbol": "#"},
75
- ".pl6": {"name": "perl6", "symbol": "#"},
76
- ".pm6": {"name": "perl6", "symbol": "#"},
77
- ".r": {"name": "r", "symbol": "#"},
78
- ".rc": {"name": "rust", "symbol": "//"},
79
- ".rs": {"name": "rust", "symbol": "//"},
80
- ".sql": {"name": "sql", "symbol": "--"},
81
- ".pks": {"name": "pks", "symbol": "--", "block": cBlock},
82
- ".pkb": {"name": "pkb", "symbol": "--", "block": cBlock},
83
- ".vala": {"name": "vala", "symbol": "//"},
84
- ".vapi": {"name": "vala", "symbol": "//"},
85
- ".vbe": {"name": "vbscript", "symbol": "'"},
86
- ".vbs": {"name": "vbscript", "symbol": "'"},
87
- ".wsc": {"name": "vbscript", "symbol": "'"},
88
- ".wsf": {"name": "vbscript", "symbol": "'"},
89
- ".vhdl": {"name": "vhdl", "symbol": "--"},
90
- ".bas": {"name": "basic", "symbol": "REM"},
91
- ".ps1": {"name": "powershell", "symbol": "#", "block": {"start":"<#", "end":"#>", "ignore":"#"} },
92
- ".lua": {"name": "lua", "symbol": "--", "block": {"start": "--[[", "end":"--]]"} },
93
- ".hx": {"name": "haxe", "symbol": "//", "block": cBlock},
94
- ".eg": {"name": "earl-grey", "symbol": ";;"},
95
- ".jade": {"name": "jade", "symbol": "//-"},
96
- ".pug": {"name": "jade", "symbol": "//-"},
97
- ".styl": {"name": "stylus", "symbol": "//"},
98
- ".ts": {"name": "typescript", "symbol": "//", "block": cBlock},
99
- ".html": {"name": "html", "symbol": "//", "block": htmlBlock },
100
- ".haml": {"name": "haml", "symbol": "-#"},
101
- ".yaml": {"name": "yaml", "symbol": "#"},
102
- ".yml": {"name": "yaml", "symbol": "#"},
103
- ".cls": {"name": "apex class", "symbol": "//", "block": cBlock},
104
- ".trigger": {"name": "apex trigger", "symbol": "//", "block": cBlock},
105
- ".page": {"name": "visualforce page", "symbol": "//", "block": htmlBlock },
106
- ".component": {"name": "visualforce component", "symbol": "//", "block": htmlBlock },
107
- ".cmp": {"name": "lightning component", "symbol": "//", "block": htmlBlock },
108
- ".vm": {"name": "velocity", "symbol": "##", "block": {"start": "#**", "end": "*#", "ignore": "*"} },
109
- ".vue": {"name": "vue component", "symbol": "//-", "block": cBlock},
110
- ".lock": {"name": "yarn lock", "symbol": "#"},
111
- ".re": {"name": "reasonml", "block": cBlock},
112
- ".kt": {"name": "kotlin", "symbol": "//", "block": cBlock},
113
- ".dart": {"name": "dart", "symbol": "//", "block": cBlock},
114
- };
package/lib/list.js DELETED
@@ -1,105 +0,0 @@
1
- 'use strict';
2
-
3
- const uniqid = require('uniqid')
4
- // BACKLOG Create list groups to show and hide for projects/repos. gh:96 id:11
5
- // <!--
6
- // order:-610
7
- // -->
8
-
9
- /**
10
- * Description
11
- * @method List
12
- * @param {} name
13
- * @param {} hidden
14
- * @return
15
- */
16
- function List({ name, hidden, ignore, filter, id }) {
17
- this.name = name;
18
- this.hidden = hidden || false
19
- this.ignore = ignore || false
20
- this.id = id || uniqid()
21
- if (filter) this.filter = filter
22
- this.tasks = [];
23
- }
24
-
25
- /**
26
- * Description
27
- * @method isList
28
- * @param {} list
29
- * @return BinaryExpression
30
- */
31
- List.isList = function(list) {
32
- return list instanceof List;
33
- };
34
-
35
- /**
36
- * Description
37
- * @method isHidden
38
- * @return MemberExpression
39
- */
40
- List.prototype.isHidden = function() {
41
- return this.hidden;
42
- };
43
-
44
- /**
45
- * Description
46
- * @method getName
47
- * @return MemberExpression
48
- */
49
- List.prototype.getName = function() {
50
- return this.name;
51
- };
52
-
53
- /**
54
- * Description
55
- * @method getTasks
56
- * @return MemberExpression
57
- */
58
- List.prototype.getTasks = function() {
59
- return this.tasks;
60
- };
61
-
62
- /**
63
- * Description
64
- * @method addTask
65
- * @param {} task
66
- * @return
67
- */
68
- List.prototype.addTask = function(task) {
69
- if (!this.tasks.find(_task => _task.equals(task))) {
70
- this.tasks.push(task);
71
- }
72
- };
73
-
74
- /**
75
- * Description
76
- * @method setTasks
77
- * @param {} tasks
78
- * @return
79
- */
80
- List.prototype.setTasks = function(tasks) {
81
- this.tasks = tasks;
82
- };
83
-
84
- /**
85
- * Description
86
- * @method hasTasks
87
- * @return BinaryExpression
88
- */
89
- List.prototype.hasTasks = function() {
90
- return this.tasks.length > 0;
91
- };
92
-
93
- /**
94
- * Description
95
- * @method toConfig
96
- * @return ObjectExpression
97
- */
98
- List.prototype.toConfig = function() {
99
- const list = { ...this }
100
- delete list.tasks
101
- if (list.filter == null) delete list.filter
102
- return list
103
- };
104
-
105
- module.exports = List;
@@ -1,165 +0,0 @@
1
- const _cloneDeep = require('lodash.clonedeep')
2
- const _path = require('path')
3
- const uniqid = require('uniqid')
4
- const defaultSettingsObject = require('./default-settings')
5
-
6
- module.exports = function (repo, defaultSettings = defaultSettingsObject) {
7
- const path = repo.path
8
- return function (config = repo.config) {
9
- const settings = config.settings
10
- if (!settings) {
11
- config.settings = defaultSettings
12
- }
13
- if (config && config.settings) {
14
- const lists = config.lists
15
- .filter((list) => !list.filter)
16
- .map((list) => list.name)
17
-
18
- // Set the default journalType
19
- if (config.settings.appendNewCardsTo && !config.settings.journalType) {
20
- config.settings.journalType = 'Single File'
21
- }
22
-
23
- // convert exports to actions
24
- if (config.settings.exports) {
25
- config.settings.actions = config.settings.exports
26
- delete config.settings.exports
27
- }
28
-
29
- // Make sure all all-caps lists are available in code
30
- config.lists.forEach((list) => {
31
- if (
32
- config.code.include_lists.includes(list.name) ||
33
- list.name !== list.name.toUpperCase()
34
- )
35
- return
36
- config.code.include_lists.push(list.name)
37
- })
38
-
39
- if (!config.settings.cards) {
40
- config.settings.cards = {}
41
- }
42
- // metaSep
43
- if (config.settings.metaSep) {
44
- config.settings.cards.metaSep = config.settings.metaSep
45
- delete config.settings.metaSep
46
- }
47
- // defaultList
48
- if (config.settings.defaultList) {
49
- config.settings.cards.defaultList = config.settings.defaultList
50
- delete config.settings.defaultList
51
- }
52
-
53
- if (config.settings.cards.defaultList === undefined) {
54
- config.settings.cards.defaultList = lists ? lists.find(list => /todo/i.test(list)) :
55
- lists[0] || '';
56
- }
57
-
58
- // archiveCompleted
59
- if (config.settings.cards.archiveCompleted === undefined) {
60
- config.settings.cards.archiveCompleted = true
61
- }
62
-
63
- // archiveFolder
64
- if (config.settings.cards.archiveFolder === undefined) {
65
- config.settings.cards.archiveFolder = config.settings.journalPath ? _path.join(config.settings.journalPath, 'archive') : 'archive'
66
- }
67
-
68
- // showTagsAndMeta
69
- if (config.settings.cards.showTagsAndMeta === undefined) {
70
- config.settings.cards.showTagsAndMeta = true
71
- }
72
-
73
- if (!repo.listExists(config.settings.cards.defaultList) && lists) {
74
- config.settings.cards.defaultList = lists[0]
75
- }
76
-
77
- // taskPrefix (move to cards)
78
- if (config.settings.taskPrefix) {
79
- config.settings.cards.taskPrefix = config.settings.taskPrefix
80
- delete config.settings.taskPrefix
81
- }
82
- // maxLines (move to cards)
83
- if (config.settings.maxLines) {
84
- config.settings.cards.maxLines = config.settings.maxLines
85
- delete config.settings.maxLines
86
- }
87
- // tagPrefix (move to cards)
88
- if (config.settings.tagPrefix) {
89
- config.settings.cards.tagPrefix = config.settings.tagPrefix
90
- delete config.settings.tagPrefix
91
- }
92
- // addCheckBoxTasks (move to cards)
93
- if (config.settings.addCheckBoxTasks) {
94
- config.settings.cards.addCheckBoxTasks =
95
- config.settings.addCheckBoxTasks
96
- delete config.settings.addCheckBoxTasks
97
- }
98
- // addNewCardsToTop (move to cards)
99
- if (config.settings.addNewCardsToTop) {
100
- config.settings.cards.addNewCardsToTop =
101
- config.settings.addNewCardsToTop
102
- delete config.settings.addNewCardsToTop
103
- }
104
- // doneList (move to cards)
105
- if (config.settings.doneList) {
106
- config.settings.cards.doneList = config.settings.doneList
107
- delete config.settings.doneList
108
- }
109
- // Set up default doneList
110
- if (config.settings.cards.doneList === undefined) {
111
- config.settings.cards.doneList = lists ? lists.find(list => /done/i.test(list)) :
112
- lists[lists.length - 1] || '';
113
- }
114
- // Set up default doingList
115
- if (config.settings.cards.doingList === undefined) {
116
- config.settings.cards.doingList = lists ? lists.find(list => /doing|progress/i.test(list)) :
117
- lists[lists.length - 2] || '';
118
- }
119
- // Add name
120
- if (config.settings.name === undefined) {
121
- config.settings.name = _path.basename(path)
122
- }
123
-
124
- // Remove HASH_META_ORDER
125
- if (config.settings.newCardSyntax && config.settings.newCardSyntax === 'HASH_META_ORDER') {
126
- config.settings.newCardSyntax = 'HASHTAG'
127
- config.settings.cards.orderMeta = true
128
- }
129
-
130
- // Move defaultFilter out of views
131
- if (config.settings.views && config.settings.views.length > 0) {
132
- const defaultView = config.settings.views.find(({id}) => id === 'default')
133
- config.settings.defaultFilter = defaultView ? defaultView.filter : ''
134
- config.settings.views = config.settings.views.filter(({id}) => id !== 'default')
135
- }
136
-
137
- // Remove settings.filteredLists
138
- if (config.settings.filteredLists) {
139
- delete config.settings.filteredLists
140
- }
141
-
142
- // make sure all lists have an id
143
- config.lists.forEach((list) => {
144
- if (!list.id || (list.id + "").length < 4) list.id = uniqid()
145
- })
146
-
147
- // Make sure kudosProbability is set
148
- if (config.settings.kudosProbability === undefined) {
149
- config.settings.kudosProbability = 0.33
150
- }
151
-
152
- const defaultCardsSettings = _cloneDeep(defaultSettings.cards)
153
- const cardsSettings = _cloneDeep(config.settings.cards)
154
-
155
- delete defaultSettings.cards
156
- delete config.settings.cards
157
-
158
- config.settings = { ...defaultSettings, ...config.settings }
159
- config.settings.cards = {
160
- ...defaultCardsSettings,
161
- ...cardsSettings,
162
- }
163
- }
164
- }
165
- }