todoosy 0.1.0 → 0.2.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.
@@ -1 +1 @@
1
- {"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../src/linter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAW,UAAU,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAkB9D,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,CAyK9D"}
1
+ {"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../src/linter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAW,UAAU,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AA+C9D,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,CAuN9D"}
package/dist/linter.js CHANGED
@@ -2,18 +2,45 @@
2
2
  * Todoosy Linter
3
3
  */
4
4
  import { parse } from './parser.js';
5
- const INVALID_DATE_REGEX = /\bdue\s+(\S+)/gi;
6
5
  const VALID_DATE_FORMATS = [
7
6
  /^\d{4}-\d{2}-\d{2}$/, // YYYY-MM-DD
8
7
  /^\d{1,2}\/\d{1,2}\/\d{4}$/, // MM/DD/YYYY
9
8
  /^\d{1,2}\/\d{1,2}\/\d{2}$/, // MM/DD/YY
10
9
  ];
10
+ const MONTH_NAMES = new Set([
11
+ 'january', 'jan',
12
+ 'february', 'feb',
13
+ 'march', 'mar',
14
+ 'april', 'apr',
15
+ 'may',
16
+ 'june', 'jun',
17
+ 'july', 'jul',
18
+ 'august', 'aug',
19
+ 'september', 'sep',
20
+ 'october', 'oct',
21
+ 'november', 'nov',
22
+ 'december', 'dec',
23
+ ]);
24
+ // Regex for text dates: Month Day or Month Day Year
25
+ const TEXT_DATE_REGEX = /^(january|jan|february|feb|march|mar|april|apr|may|june|jun|july|jul|august|aug|september|sep|october|oct|november|nov|december|dec)\s+(\d{1,2})(?:\s+(\d{4}))?$/i;
11
26
  const PRIORITY_REGEX = /\bp(\d+)\b/gi;
12
27
  const ESTIMATE_REGEX = /\b(\d+)([mhd])\b/gi;
13
28
  const INVALID_PRIORITY_REGEX = /\bp([^0-9\s)][^\s)]*)\b/gi;
14
29
  const INVALID_ESTIMATE_REGEX = /\b(\d+)([^mhd\s)0-9][^\s)]*)\b/gi;
15
30
  function isValidDate(dateStr) {
16
- return VALID_DATE_FORMATS.some(regex => regex.test(dateStr));
31
+ // Check standard formats
32
+ if (VALID_DATE_FORMATS.some(regex => regex.test(dateStr))) {
33
+ return true;
34
+ }
35
+ // Check text date format
36
+ if (TEXT_DATE_REGEX.test(dateStr)) {
37
+ const match = dateStr.match(TEXT_DATE_REGEX);
38
+ if (match) {
39
+ const day = parseInt(match[2], 10);
40
+ return day >= 1 && day <= 31;
41
+ }
42
+ }
43
+ return false;
17
44
  }
18
45
  export function lint(text, scheme) {
19
46
  const { ast } = parse(text);
@@ -27,25 +54,49 @@ export function lint(text, scheme) {
27
54
  const lineIndex = item.line - 1;
28
55
  const rawLine = item.raw_line;
29
56
  // Check for Misc section
30
- if (item.type === 'heading' && item.title_text === 'Misc' && item.level === 1) {
31
- if (miscSectionLine === null) {
57
+ if (item.type === 'heading') {
58
+ if (miscSectionLine !== null) {
59
+ // Any heading after Misc (including duplicate Misc) is an error
60
+ headingsAfterMisc.push({ line: item.line, span: item.item_span });
61
+ }
62
+ else if (item.title_text === 'Misc' && item.level === 1) {
32
63
  miscSectionLine = item.line;
33
64
  miscSectionSpan = item.item_span;
34
65
  }
35
66
  }
36
- else if (item.type === 'heading' && miscSectionLine !== null) {
37
- // Heading after Misc
38
- headingsAfterMisc.push({ line: item.line, span: item.item_span });
39
- }
40
67
  // Check for invalid date formats in parentheses
41
68
  const parenMatches = rawLine.matchAll(/\(([^)]+)\)/g);
42
69
  for (const match of parenMatches) {
43
70
  const content = match[1];
44
71
  const parenStart = item.item_span[0] + (match.index || 0);
45
- // Check for due dates
72
+ // Check for due dates - try text date format first (captures more), then standard format
73
+ // Text date: due Month Day [Year]
74
+ const textDueMatches = content.matchAll(/\bdue\s+((?:january|jan|february|feb|march|mar|april|apr|may|june|jun|july|jul|august|aug|september|sep|october|oct|november|nov|december|dec)\s+\d{1,2}(?:\s+\d{4})?)/gi);
75
+ const textDueIndices = new Set();
76
+ for (const textDueMatch of textDueMatches) {
77
+ textDueIndices.add(textDueMatch.index || 0);
78
+ const dateStr = textDueMatch[1];
79
+ if (!isValidDate(dateStr)) {
80
+ const tokenStart = parenStart + 1 + (textDueMatch.index || 0);
81
+ warnings.push({
82
+ code: 'INVALID_DATE_FORMAT',
83
+ message: `Invalid due date format: ${dateStr}`,
84
+ line: item.line,
85
+ column: tokenStart - item.item_span[0] + 1,
86
+ span: [tokenStart + 4, tokenStart + 4 + dateStr.length],
87
+ });
88
+ }
89
+ }
90
+ // Standard date formats (single token)
46
91
  const dueMatches = content.matchAll(/\bdue\s+([^\s,)]+)/gi);
47
92
  for (const dueMatch of dueMatches) {
93
+ // Skip if this was already matched as a text date
94
+ if (textDueIndices.has(dueMatch.index || 0))
95
+ continue;
48
96
  const dateStr = dueMatch[1];
97
+ // Skip if this looks like the start of a text date (month name)
98
+ if (MONTH_NAMES.has(dateStr.toLowerCase()))
99
+ continue;
49
100
  if (!isValidDate(dateStr)) {
50
101
  const tokenStart = parenStart + 1 + (dueMatch.index || 0);
51
102
  warnings.push({
@@ -63,9 +114,30 @@ export function lint(text, scheme) {
63
114
  for (const pMatch of allParenMatches) {
64
115
  const pContent = pMatch[1];
65
116
  const pStart = item.item_span[0] + (pMatch.index || 0);
117
+ // Check text dates first
118
+ const textDueDatesInGroup = pContent.matchAll(/\bdue\s+((?:january|jan|february|feb|march|mar|april|apr|may|june|jun|july|jul|august|aug|september|sep|october|oct|november|nov|december|dec)\s+\d{1,2}(?:\s+\d{4})?)/gi);
119
+ const textDuePositions = new Set();
120
+ for (const tdm of textDueDatesInGroup) {
121
+ const ds = tdm[1];
122
+ if (isValidDate(ds)) {
123
+ textDuePositions.add(tdm.index || 0);
124
+ const dStart = pStart + 1 + (tdm.index || 0);
125
+ allDueDates.push({
126
+ dateStr: ds,
127
+ span: [dStart, dStart + tdm[0].length],
128
+ });
129
+ }
130
+ }
131
+ // Check standard dates
66
132
  const dueDatesInGroup = pContent.matchAll(/\bdue\s+([^\s,)]+)/gi);
67
133
  for (const dm of dueDatesInGroup) {
134
+ // Skip if already matched as text date
135
+ if (textDuePositions.has(dm.index || 0))
136
+ continue;
68
137
  const ds = dm[1];
138
+ // Skip if it's a month name (part of text date)
139
+ if (MONTH_NAMES.has(ds.toLowerCase()))
140
+ continue;
69
141
  if (isValidDate(ds)) {
70
142
  const dStart = pStart + 1 + (dm.index || 0);
71
143
  allDueDates.push({
@@ -1 +1 @@
1
- {"version":3,"file":"linter.js","sourceRoot":"","sources":["../src/linter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linter.js","sourceRoot":"","sources":["../src/linter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAmD,OAAO,EAAE,MAAM,YAAY,CAAC;AAUhG,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,GAAG,CAAC;IACT,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAsLD,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CA0M/C"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAmD,OAAO,EAAE,MAAM,YAAY,CAAC;AAyBhG,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,GAAG,CAAC;IACT,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAiRD,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CA0M/C"}
package/dist/parser.js CHANGED
@@ -8,6 +8,39 @@ const DUE_US_REGEX = /^due\s+(\d{1,2})\/(\d{1,2})\/(\d{4})$/i;
8
8
  const DUE_US_SHORT_REGEX = /^due\s+(\d{1,2})\/(\d{1,2})\/(\d{2})$/i;
9
9
  const PRIORITY_REGEX = /^p(\d+)$/i;
10
10
  const ESTIMATE_REGEX = /^(\d+)([mhd])$/i;
11
+ const MONTH_NAMES = {
12
+ january: 1, jan: 1,
13
+ february: 2, feb: 2,
14
+ march: 3, mar: 3,
15
+ april: 4, apr: 4,
16
+ may: 5,
17
+ june: 6, jun: 6,
18
+ july: 7, jul: 7,
19
+ august: 8, aug: 8,
20
+ september: 9, sep: 9,
21
+ october: 10, oct: 10,
22
+ november: 11, nov: 11,
23
+ december: 12, dec: 12,
24
+ };
25
+ function inferYear(month, day) {
26
+ const now = new Date();
27
+ const currentYear = now.getFullYear();
28
+ const currentMonth = now.getMonth() + 1;
29
+ const currentDay = now.getDate();
30
+ // Calculate months difference
31
+ let monthsDiff = (currentMonth - month) + (currentDay > day ? 0 : 0);
32
+ if (currentMonth > month || (currentMonth === month && currentDay > day)) {
33
+ monthsDiff = (currentMonth - month) + (currentDay > day ? 0 : -1);
34
+ // More precise: is the date more than 3 months in the past?
35
+ const candidateDate = new Date(currentYear, month - 1, day);
36
+ const threeMonthsAgo = new Date(now);
37
+ threeMonthsAgo.setMonth(threeMonthsAgo.getMonth() - 3);
38
+ if (candidateDate < threeMonthsAgo) {
39
+ return currentYear + 1;
40
+ }
41
+ }
42
+ return currentYear;
43
+ }
11
44
  function parseDate(dateStr) {
12
45
  const isoMatch = dateStr.match(/^(\d{4})-(\d{2})-(\d{2})$/);
13
46
  if (isoMatch) {
@@ -29,33 +62,96 @@ function parseDate(dateStr) {
29
62
  }
30
63
  return { date: null, valid: false, raw: dateStr };
31
64
  }
65
+ function parseTextDate(parts) {
66
+ if (parts.length < 2) {
67
+ return { date: null, valid: false, partsConsumed: 0 };
68
+ }
69
+ const monthStr = parts[0].toLowerCase();
70
+ const month = MONTH_NAMES[monthStr];
71
+ if (month === undefined) {
72
+ return { date: null, valid: false, partsConsumed: 0 };
73
+ }
74
+ const dayStr = parts[1];
75
+ const dayMatch = dayStr.match(/^(\d{1,2})$/);
76
+ if (!dayMatch) {
77
+ return { date: null, valid: false, partsConsumed: 0 };
78
+ }
79
+ const day = parseInt(dayMatch[1], 10);
80
+ if (day < 1 || day > 31) {
81
+ return { date: null, valid: false, partsConsumed: 0 };
82
+ }
83
+ // Check for year
84
+ if (parts.length >= 3) {
85
+ const yearStr = parts[2];
86
+ const yearMatch = yearStr.match(/^(\d{4})$/);
87
+ if (yearMatch) {
88
+ const year = parseInt(yearMatch[1], 10);
89
+ const monthPadded = String(month).padStart(2, '0');
90
+ const dayPadded = String(day).padStart(2, '0');
91
+ return { date: `${year}-${monthPadded}-${dayPadded}`, valid: true, partsConsumed: 3 };
92
+ }
93
+ }
94
+ // No year provided, infer it
95
+ const year = inferYear(month, day);
96
+ const monthPadded = String(month).padStart(2, '0');
97
+ const dayPadded = String(day).padStart(2, '0');
98
+ return { date: `${year}-${monthPadded}-${dayPadded}`, valid: true, partsConsumed: 2 };
99
+ }
32
100
  function parseTokensInParenGroup(content, groupStart) {
33
101
  const tokens = [];
34
102
  // Split by comma and/or whitespace
35
103
  const parts = content.split(/[,\s]+/).filter(p => p.length > 0);
36
104
  let currentPos = 0;
37
- for (const part of parts) {
105
+ const skipIndices = new Set();
106
+ for (let i = 0; i < parts.length; i++) {
107
+ if (skipIndices.has(i))
108
+ continue;
109
+ const part = parts[i];
38
110
  const partStart = content.indexOf(part, currentPos);
39
111
  const absoluteStart = groupStart + 1 + partStart; // +1 for opening paren
40
112
  const absoluteEnd = absoluteStart + part.length;
41
113
  currentPos = partStart + part.length;
42
114
  // Check for due date
43
115
  if (part.toLowerCase() === 'due') {
44
- // Look for the next part as the date
45
- continue;
46
- }
47
- // Check if previous part was 'due'
48
- const prevPartIndex = parts.indexOf(part) - 1;
49
- if (prevPartIndex >= 0 && parts[prevPartIndex].toLowerCase() === 'due') {
50
- const dateResult = parseDate(part);
51
- if (dateResult.valid) {
52
- tokens.push({
53
- type: 'due',
54
- value: dateResult.date,
55
- raw: `due ${part}`,
56
- start: absoluteStart - 4, // Include 'due '
57
- end: absoluteEnd,
58
- });
116
+ // Look for the next part(s) as the date
117
+ const remainingParts = parts.slice(i + 1);
118
+ if (remainingParts.length > 0) {
119
+ // First try standard date formats (single part)
120
+ const dateResult = parseDate(remainingParts[0]);
121
+ if (dateResult.valid) {
122
+ const nextPartStart = content.indexOf(remainingParts[0], currentPos);
123
+ const nextAbsoluteEnd = groupStart + 1 + nextPartStart + remainingParts[0].length;
124
+ tokens.push({
125
+ type: 'due',
126
+ value: dateResult.date,
127
+ raw: `due ${remainingParts[0]}`,
128
+ start: absoluteStart,
129
+ end: nextAbsoluteEnd,
130
+ });
131
+ skipIndices.add(i + 1);
132
+ continue;
133
+ }
134
+ // Try text date formats (multiple parts: Month Day [Year])
135
+ const textDateResult = parseTextDate(remainingParts);
136
+ if (textDateResult.valid) {
137
+ // Calculate the end position
138
+ let rawParts = [`due`];
139
+ let endPos = currentPos;
140
+ for (let j = 0; j < textDateResult.partsConsumed; j++) {
141
+ rawParts.push(remainingParts[j]);
142
+ skipIndices.add(i + 1 + j);
143
+ endPos = content.indexOf(remainingParts[j], endPos) + remainingParts[j].length;
144
+ }
145
+ const finalAbsoluteEnd = groupStart + 1 + endPos;
146
+ tokens.push({
147
+ type: 'due',
148
+ value: textDateResult.date,
149
+ raw: rawParts.join(' '),
150
+ start: absoluteStart,
151
+ end: finalAbsoluteEnd,
152
+ });
153
+ continue;
154
+ }
59
155
  }
60
156
  continue;
61
157
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "todoosy",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Todoosy - Markdown-based todo system parser, formatter, linter, and query engine",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",