@refrakt-md/plan 0.9.5 → 0.9.7

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 (103) hide show
  1. package/dist/cards.d.ts +23 -0
  2. package/dist/cards.d.ts.map +1 -0
  3. package/dist/cards.js +150 -0
  4. package/dist/cards.js.map +1 -0
  5. package/dist/cli-plugin.d.ts.map +1 -1
  6. package/dist/cli-plugin.js +68 -5
  7. package/dist/cli-plugin.js.map +1 -1
  8. package/dist/commands/build.d.ts.map +1 -1
  9. package/dist/commands/build.js +13 -0
  10. package/dist/commands/build.js.map +1 -1
  11. package/dist/commands/create.js +3 -3
  12. package/dist/commands/create.js.map +1 -1
  13. package/dist/commands/history.d.ts +21 -0
  14. package/dist/commands/history.d.ts.map +1 -0
  15. package/dist/commands/history.js +261 -0
  16. package/dist/commands/history.js.map +1 -0
  17. package/dist/commands/init.d.ts +7 -2
  18. package/dist/commands/init.d.ts.map +1 -1
  19. package/dist/commands/init.js +149 -26
  20. package/dist/commands/init.js.map +1 -1
  21. package/dist/commands/next.d.ts.map +1 -1
  22. package/dist/commands/next.js +22 -6
  23. package/dist/commands/next.js.map +1 -1
  24. package/dist/commands/plan-behaviors.js +2 -1
  25. package/dist/commands/plan-behaviors.js.map +1 -1
  26. package/dist/commands/render-pipeline.d.ts.map +1 -1
  27. package/dist/commands/render-pipeline.js +148 -128
  28. package/dist/commands/render-pipeline.js.map +1 -1
  29. package/dist/commands/serve.d.ts.map +1 -1
  30. package/dist/commands/serve.js +54 -0
  31. package/dist/commands/serve.js.map +1 -1
  32. package/dist/commands/templates.js +13 -13
  33. package/dist/commands/templates.js.map +1 -1
  34. package/dist/commands/update.d.ts.map +1 -1
  35. package/dist/commands/update.js +39 -11
  36. package/dist/commands/update.js.map +1 -1
  37. package/dist/commands/validate.d.ts.map +1 -1
  38. package/dist/commands/validate.js +119 -1
  39. package/dist/commands/validate.js.map +1 -1
  40. package/dist/config.d.ts.map +1 -1
  41. package/dist/config.js +86 -23
  42. package/dist/config.js.map +1 -1
  43. package/dist/diff.d.ts +35 -0
  44. package/dist/diff.d.ts.map +1 -0
  45. package/dist/diff.js +88 -0
  46. package/dist/diff.js.map +1 -0
  47. package/dist/entity-tabs-behavior.d.ts +13 -0
  48. package/dist/entity-tabs-behavior.d.ts.map +1 -0
  49. package/dist/entity-tabs-behavior.js +94 -0
  50. package/dist/entity-tabs-behavior.js.map +1 -0
  51. package/dist/history.d.ts +89 -0
  52. package/dist/history.d.ts.map +1 -0
  53. package/dist/history.js +336 -0
  54. package/dist/history.js.map +1 -0
  55. package/dist/index.d.ts +2 -1
  56. package/dist/index.d.ts.map +1 -1
  57. package/dist/index.js +11 -1
  58. package/dist/index.js.map +1 -1
  59. package/dist/pipeline.d.ts +11 -11
  60. package/dist/pipeline.d.ts.map +1 -1
  61. package/dist/pipeline.js +468 -202
  62. package/dist/pipeline.js.map +1 -1
  63. package/dist/relationships.d.ts +36 -0
  64. package/dist/relationships.d.ts.map +1 -0
  65. package/dist/relationships.js +128 -0
  66. package/dist/relationships.js.map +1 -0
  67. package/dist/scanner-core.d.ts +10 -0
  68. package/dist/scanner-core.d.ts.map +1 -0
  69. package/dist/scanner-core.js +230 -0
  70. package/dist/scanner-core.js.map +1 -0
  71. package/dist/scanner.d.ts +2 -1
  72. package/dist/scanner.d.ts.map +1 -1
  73. package/dist/scanner.js +7 -124
  74. package/dist/scanner.js.map +1 -1
  75. package/dist/tags/bug.d.ts.map +1 -1
  76. package/dist/tags/bug.js +22 -1
  77. package/dist/tags/bug.js.map +1 -1
  78. package/dist/tags/decision.d.ts.map +1 -1
  79. package/dist/tags/decision.js +23 -1
  80. package/dist/tags/decision.js.map +1 -1
  81. package/dist/tags/milestone.d.ts.map +1 -1
  82. package/dist/tags/milestone.js +7 -4
  83. package/dist/tags/milestone.js.map +1 -1
  84. package/dist/tags/plan-history.d.ts +4 -0
  85. package/dist/tags/plan-history.d.ts.map +1 -0
  86. package/dist/tags/plan-history.js +46 -0
  87. package/dist/tags/plan-history.js.map +1 -0
  88. package/dist/tags/spec.d.ts.map +1 -1
  89. package/dist/tags/spec.js +4 -5
  90. package/dist/tags/spec.js.map +1 -1
  91. package/dist/tags/work.d.ts.map +1 -1
  92. package/dist/tags/work.js +28 -7
  93. package/dist/tags/work.js.map +1 -1
  94. package/dist/types.d.ts +20 -0
  95. package/dist/types.d.ts.map +1 -1
  96. package/dist/util.d.ts +2 -0
  97. package/dist/util.d.ts.map +1 -1
  98. package/dist/util.js +10 -0
  99. package/dist/util.js.map +1 -1
  100. package/package.json +26 -9
  101. package/styles/default.css +0 -586
  102. package/styles/minimal.css +0 -386
  103. package/styles/tokens.css +0 -13
package/dist/config.js CHANGED
@@ -1,9 +1,18 @@
1
+ /** Shared projection config — moves title and blurb into the preamble container */
2
+ const preambleProjection = {
3
+ relocate: {
4
+ title: { into: 'preamble', position: 'append' },
5
+ blurb: { into: 'preamble', position: 'append' },
6
+ },
7
+ };
8
+ /** Shared slot order for plan entity runes */
9
+ const entitySlots = ['header-primary', 'preamble', 'header-secondary', 'content'];
1
10
  export const config = {
2
11
  Spec: {
3
12
  block: 'spec',
4
13
  defaultDensity: 'full',
5
- sections: { header: 'header', body: 'body' },
6
- contentWrapper: { tag: 'div', ref: 'body' },
14
+ slots: [...entitySlots],
15
+ sections: { 'header-primary': 'header', preamble: 'preamble', title: 'title', blurb: 'description', 'header-secondary': 'header', body: 'body' },
7
16
  modifiers: {
8
17
  id: { source: 'meta' },
9
18
  status: { source: 'meta', default: 'draft' },
@@ -14,11 +23,17 @@ export const config = {
14
23
  modified: { source: 'meta', noBemClass: true },
15
24
  },
16
25
  structure: {
17
- header: {
18
- tag: 'div', before: true,
26
+ 'header-primary': {
27
+ tag: 'div', slot: 'header-primary',
19
28
  children: [
20
29
  { tag: 'span', ref: 'id-badge', metaText: 'id', label: 'ID:', labelHidden: true, metaType: 'id', metaRank: 'primary' },
21
30
  { tag: 'span', ref: 'status-badge', metaText: 'status', label: 'Status:', labelHidden: true, metaType: 'status', metaRank: 'primary', sentimentMap: { draft: 'neutral', review: 'caution', accepted: 'positive', superseded: 'caution', deprecated: 'negative' } },
31
+ ],
32
+ },
33
+ preamble: { tag: 'div', slot: 'preamble' },
34
+ 'header-secondary': {
35
+ tag: 'div', slot: 'header-secondary',
36
+ children: [
22
37
  { tag: 'span', ref: 'version-badge', metaText: 'version', condition: 'version', textPrefix: 'v', metaType: 'tag', metaRank: 'secondary' },
23
38
  { tag: 'span', ref: 'supersedes-badge', metaText: 'supersedes', condition: 'supersedes', label: 'Supersedes:', metaType: 'id', metaRank: 'secondary' },
24
39
  { tag: 'time', ref: 'created-badge', metaText: 'created', condition: 'created', label: 'Created:', metaType: 'temporal', metaRank: 'secondary' },
@@ -26,14 +41,15 @@ export const config = {
26
41
  ],
27
42
  },
28
43
  },
44
+ projection: preambleProjection,
29
45
  editHints: { body: 'none', 'id-badge': 'none', 'status-badge': 'none', 'version-badge': 'none', 'supersedes-badge': 'none', 'created-badge': 'none', 'modified-badge': 'none' },
30
46
  },
31
47
  Work: {
32
48
  block: 'work',
33
49
  defaultDensity: 'full',
34
50
  checklist: true,
35
- sections: { header: 'header', body: 'body' },
36
- contentWrapper: { tag: 'div', ref: 'body' },
51
+ slots: [...entitySlots],
52
+ sections: { 'header-primary': 'header', preamble: 'preamble', title: 'title', blurb: 'description', 'header-secondary': 'header', body: 'body' },
37
53
  modifiers: {
38
54
  id: { source: 'meta' },
39
55
  status: { source: 'meta', default: 'draft' },
@@ -41,93 +57,120 @@ export const config = {
41
57
  complexity: { source: 'meta', default: 'unknown' },
42
58
  assignee: { source: 'meta', noBemClass: true },
43
59
  milestone: { source: 'meta', noBemClass: true },
60
+ source: { source: 'meta', noBemClass: true },
44
61
  tags: { source: 'meta', noBemClass: true },
45
62
  created: { source: 'meta', noBemClass: true },
46
63
  modified: { source: 'meta', noBemClass: true },
47
64
  },
48
65
  structure: {
49
- header: {
50
- tag: 'div', before: true,
66
+ 'header-primary': {
67
+ tag: 'div', slot: 'header-primary',
51
68
  children: [
52
69
  { tag: 'span', ref: 'id-badge', metaText: 'id', label: 'ID:', labelHidden: true, metaType: 'id', metaRank: 'primary' },
53
70
  { tag: 'span', ref: 'status-badge', metaText: 'status', label: 'Status:', labelHidden: true, metaType: 'status', metaRank: 'primary', sentimentMap: { draft: 'neutral', ready: 'neutral', 'in-progress': 'neutral', review: 'caution', done: 'positive', blocked: 'negative' } },
71
+ ],
72
+ },
73
+ preamble: { tag: 'div', slot: 'preamble' },
74
+ 'header-secondary': {
75
+ tag: 'div', slot: 'header-secondary',
76
+ children: [
54
77
  { tag: 'span', ref: 'priority-badge', metaText: 'priority', label: 'Priority:', metaType: 'category', metaRank: 'primary', sentimentMap: { critical: 'negative', high: 'caution', medium: 'neutral', low: 'neutral' } },
55
78
  { tag: 'span', ref: 'complexity-badge', metaText: 'complexity', label: 'Complexity:', metaType: 'quantity', metaRank: 'secondary' },
56
79
  { tag: 'span', ref: 'assignee-badge', metaText: 'assignee', label: 'Assignee:', condition: 'assignee', metaType: 'tag', metaRank: 'secondary' },
57
80
  { tag: 'span', ref: 'milestone-badge', metaText: 'milestone', label: 'Milestone:', condition: 'milestone', metaType: 'tag', metaRank: 'secondary' },
81
+ { tag: 'span', ref: 'source-badge', metaText: 'source', condition: 'source', label: 'Source:', metaType: 'id', metaRank: 'secondary' },
58
82
  { tag: 'time', ref: 'created-badge', metaText: 'created', condition: 'created', label: 'Created:', metaType: 'temporal', metaRank: 'secondary' },
59
83
  { tag: 'time', ref: 'modified-badge', metaText: 'modified', condition: 'modified', label: 'Modified:', metaType: 'temporal', metaRank: 'secondary' },
60
84
  ],
61
85
  },
62
86
  },
63
- editHints: { body: 'none', 'id-badge': 'none', 'status-badge': 'none', 'priority-badge': 'none', 'complexity-badge': 'none', 'assignee-badge': 'none', 'milestone-badge': 'none', 'created-badge': 'none', 'modified-badge': 'none' },
87
+ projection: preambleProjection,
88
+ editHints: { body: 'none', 'id-badge': 'none', 'status-badge': 'none', 'priority-badge': 'none', 'complexity-badge': 'none', 'assignee-badge': 'none', 'milestone-badge': 'none', 'source-badge': 'none', 'created-badge': 'none', 'modified-badge': 'none' },
64
89
  },
65
90
  Bug: {
66
91
  block: 'bug',
67
92
  defaultDensity: 'full',
68
93
  checklist: true,
69
- sections: { header: 'header', body: 'body' },
70
- contentWrapper: { tag: 'div', ref: 'body' },
94
+ slots: [...entitySlots],
95
+ sections: { 'header-primary': 'header', preamble: 'preamble', title: 'title', blurb: 'description', 'header-secondary': 'header', body: 'body' },
71
96
  modifiers: {
72
97
  id: { source: 'meta' },
73
98
  status: { source: 'meta', default: 'reported' },
74
99
  severity: { source: 'meta', default: 'major' },
75
100
  assignee: { source: 'meta', noBemClass: true },
76
101
  milestone: { source: 'meta', noBemClass: true },
102
+ source: { source: 'meta', noBemClass: true },
77
103
  tags: { source: 'meta', noBemClass: true },
78
104
  created: { source: 'meta', noBemClass: true },
79
105
  modified: { source: 'meta', noBemClass: true },
80
106
  },
81
107
  structure: {
82
- header: {
83
- tag: 'div', before: true,
108
+ 'header-primary': {
109
+ tag: 'div', slot: 'header-primary',
84
110
  children: [
85
111
  { tag: 'span', ref: 'id-badge', metaText: 'id', label: 'ID:', labelHidden: true, metaType: 'id', metaRank: 'primary' },
86
112
  { tag: 'span', ref: 'status-badge', metaText: 'status', label: 'Status:', labelHidden: true, metaType: 'status', metaRank: 'primary', sentimentMap: { reported: 'neutral', confirmed: 'caution', 'in-progress': 'neutral', fixed: 'positive', wontfix: 'neutral', duplicate: 'neutral' } },
113
+ ],
114
+ },
115
+ preamble: { tag: 'div', slot: 'preamble' },
116
+ 'header-secondary': {
117
+ tag: 'div', slot: 'header-secondary',
118
+ children: [
87
119
  { tag: 'span', ref: 'severity-badge', metaText: 'severity', label: 'Severity:', metaType: 'category', metaRank: 'primary', sentimentMap: { critical: 'negative', major: 'caution', minor: 'neutral', trivial: 'neutral' } },
88
120
  { tag: 'span', ref: 'assignee-badge', metaText: 'assignee', label: 'Assignee:', condition: 'assignee', metaType: 'tag', metaRank: 'secondary' },
89
121
  { tag: 'span', ref: 'milestone-badge', metaText: 'milestone', label: 'Milestone:', condition: 'milestone', metaType: 'tag', metaRank: 'secondary' },
122
+ { tag: 'span', ref: 'source-badge', metaText: 'source', condition: 'source', label: 'Source:', metaType: 'id', metaRank: 'secondary' },
90
123
  { tag: 'time', ref: 'created-badge', metaText: 'created', condition: 'created', label: 'Created:', metaType: 'temporal', metaRank: 'secondary' },
91
124
  { tag: 'time', ref: 'modified-badge', metaText: 'modified', condition: 'modified', label: 'Modified:', metaType: 'temporal', metaRank: 'secondary' },
92
125
  ],
93
126
  },
94
127
  },
95
- editHints: { body: 'none', 'id-badge': 'none', 'status-badge': 'none', 'severity-badge': 'none', 'assignee-badge': 'none', 'milestone-badge': 'none', 'created-badge': 'none', 'modified-badge': 'none' },
128
+ projection: preambleProjection,
129
+ editHints: { body: 'none', 'id-badge': 'none', 'status-badge': 'none', 'severity-badge': 'none', 'assignee-badge': 'none', 'milestone-badge': 'none', 'source-badge': 'none', 'created-badge': 'none', 'modified-badge': 'none' },
96
130
  },
97
131
  Decision: {
98
132
  block: 'decision',
99
133
  defaultDensity: 'full',
100
- sections: { header: 'header', body: 'body' },
101
- contentWrapper: { tag: 'div', ref: 'body' },
134
+ slots: [...entitySlots],
135
+ sections: { 'header-primary': 'header', preamble: 'preamble', title: 'title', blurb: 'description', 'header-secondary': 'header', body: 'body' },
102
136
  modifiers: {
103
137
  id: { source: 'meta' },
104
138
  status: { source: 'meta', default: 'proposed' },
105
139
  date: { source: 'meta', noBemClass: true },
106
140
  supersedes: { source: 'meta', noBemClass: true },
141
+ source: { source: 'meta', noBemClass: true },
107
142
  tags: { source: 'meta', noBemClass: true },
108
143
  created: { source: 'meta', noBemClass: true },
109
144
  modified: { source: 'meta', noBemClass: true },
110
145
  },
111
146
  structure: {
112
- header: {
113
- tag: 'div', before: true,
147
+ 'header-primary': {
148
+ tag: 'div', slot: 'header-primary',
114
149
  children: [
115
150
  { tag: 'span', ref: 'id-badge', metaText: 'id', label: 'ID:', labelHidden: true, metaType: 'id', metaRank: 'primary' },
116
151
  { tag: 'span', ref: 'status-badge', metaText: 'status', label: 'Status:', labelHidden: true, metaType: 'status', metaRank: 'primary', sentimentMap: { proposed: 'neutral', accepted: 'positive', superseded: 'caution', deprecated: 'negative' } },
152
+ ],
153
+ },
154
+ preamble: { tag: 'div', slot: 'preamble' },
155
+ 'header-secondary': {
156
+ tag: 'div', slot: 'header-secondary',
157
+ children: [
117
158
  { tag: 'time', ref: 'date-badge', metaText: 'date', label: 'Date:', condition: 'date', metaType: 'temporal', metaRank: 'secondary' },
118
159
  { tag: 'span', ref: 'supersedes-badge', metaText: 'supersedes', condition: 'supersedes', label: 'Supersedes:', metaType: 'id', metaRank: 'secondary' },
160
+ { tag: 'span', ref: 'source-badge', metaText: 'source', condition: 'source', label: 'Source:', metaType: 'id', metaRank: 'secondary' },
119
161
  { tag: 'time', ref: 'created-badge', metaText: 'created', condition: 'created', label: 'Created:', metaType: 'temporal', metaRank: 'secondary' },
120
162
  { tag: 'time', ref: 'modified-badge', metaText: 'modified', condition: 'modified', label: 'Modified:', metaType: 'temporal', metaRank: 'secondary' },
121
163
  ],
122
164
  },
123
165
  },
124
- editHints: { body: 'none', 'id-badge': 'none', 'status-badge': 'none', 'date-badge': 'none', 'supersedes-badge': 'none', 'created-badge': 'none', 'modified-badge': 'none' },
166
+ projection: preambleProjection,
167
+ editHints: { body: 'none', 'id-badge': 'none', 'status-badge': 'none', 'date-badge': 'none', 'supersedes-badge': 'none', 'source-badge': 'none', 'created-badge': 'none', 'modified-badge': 'none' },
125
168
  },
126
169
  Milestone: {
127
170
  block: 'milestone',
128
171
  defaultDensity: 'full',
129
- sections: { header: 'header', body: 'body' },
130
- contentWrapper: { tag: 'div', ref: 'body' },
172
+ slots: [...entitySlots],
173
+ sections: { 'header-primary': 'header', preamble: 'preamble', title: 'title', blurb: 'description', 'header-secondary': 'header', body: 'body' },
131
174
  modifiers: {
132
175
  name: { source: 'meta' },
133
176
  status: { source: 'meta', default: 'planning' },
@@ -136,17 +179,24 @@ export const config = {
136
179
  modified: { source: 'meta', noBemClass: true },
137
180
  },
138
181
  structure: {
139
- header: {
140
- tag: 'div', before: true,
182
+ 'header-primary': {
183
+ tag: 'div', slot: 'header-primary',
141
184
  children: [
142
185
  { tag: 'span', ref: 'name-badge', metaText: 'name', label: 'Name:', labelHidden: true, metaType: 'id', metaRank: 'primary' },
143
186
  { tag: 'span', ref: 'status-badge', metaText: 'status', label: 'Status:', labelHidden: true, metaType: 'status', metaRank: 'primary', sentimentMap: { planning: 'neutral', active: 'positive', complete: 'positive' } },
187
+ ],
188
+ },
189
+ preamble: { tag: 'div', slot: 'preamble' },
190
+ 'header-secondary': {
191
+ tag: 'div', slot: 'header-secondary',
192
+ children: [
144
193
  { tag: 'time', ref: 'target-badge', metaText: 'target', label: 'Target:', condition: 'target', metaType: 'temporal', metaRank: 'secondary' },
145
194
  { tag: 'time', ref: 'created-badge', metaText: 'created', condition: 'created', label: 'Created:', metaType: 'temporal', metaRank: 'secondary' },
146
195
  { tag: 'time', ref: 'modified-badge', metaText: 'modified', condition: 'modified', label: 'Modified:', metaType: 'temporal', metaRank: 'secondary' },
147
196
  ],
148
197
  },
149
198
  },
199
+ projection: preambleProjection,
150
200
  editHints: { body: 'none', 'name-badge': 'none', 'status-badge': 'none', 'target-badge': 'none', 'created-badge': 'none', 'modified-badge': 'none' },
151
201
  },
152
202
  Backlog: {
@@ -181,5 +231,18 @@ export const config = {
181
231
  limit: { source: 'meta', noBemClass: true },
182
232
  },
183
233
  },
234
+ PlanHistory: {
235
+ block: 'plan-history',
236
+ modifiers: {
237
+ id: { source: 'meta', noBemClass: true },
238
+ limit: { source: 'meta', noBemClass: true },
239
+ type: { source: 'meta', noBemClass: true },
240
+ since: { source: 'meta', noBemClass: true },
241
+ group: { source: 'meta', noBemClass: true },
242
+ },
243
+ },
244
+ PlanEntityTabs: {
245
+ block: 'plan-entity-tabs',
246
+ },
184
247
  };
185
248
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/diff.d.ts ADDED
@@ -0,0 +1,35 @@
1
+ export interface AttributeChange {
2
+ field: string;
3
+ from: string | null;
4
+ to: string | null;
5
+ }
6
+ export interface CriteriaChange {
7
+ text: string;
8
+ action: 'checked' | 'unchecked' | 'added' | 'removed';
9
+ }
10
+ export interface ParsedCheckbox {
11
+ text: string;
12
+ checked: boolean;
13
+ }
14
+ /**
15
+ * Parse attributes from a Markdoc opening tag line.
16
+ * Expects the line to look like: {% type key="value" key2="value2" ... %}
17
+ */
18
+ export declare function parseTagAttributes(line: string): Record<string, string>;
19
+ /**
20
+ * Extract all checkbox lines from file content.
21
+ */
22
+ export declare function parseCheckboxes(content: string): ParsedCheckbox[];
23
+ /**
24
+ * Detect whether a ## Resolution section exists in the content.
25
+ */
26
+ export declare function hasResolutionSection(content: string): boolean;
27
+ /**
28
+ * Diff two attribute maps and return the changes.
29
+ */
30
+ export declare function diffAttributes(prev: Record<string, string>, curr: Record<string, string>): AttributeChange[];
31
+ /**
32
+ * Diff two checkbox lists by text matching.
33
+ */
34
+ export declare function diffCriteria(prev: ParsedCheckbox[], curr: ParsedCheckbox[]): CriteriaChange[];
35
+ //# sourceMappingURL=diff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../src/diff.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,SAAS,CAAC;CACtD;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CACjB;AAOD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQvE;AAKD;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,EAAE,CAYjE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE7D;AAID;;GAEG;AACH,wBAAgB,cAAc,CAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC1B,eAAe,EAAE,CAYnB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC3B,IAAI,EAAE,cAAc,EAAE,EACtB,IAAI,EAAE,cAAc,EAAE,GACpB,cAAc,EAAE,CAyBlB"}
package/dist/diff.js ADDED
@@ -0,0 +1,88 @@
1
+ // ─── Pure Diffing Utilities ───
2
+ // Parsing and diffing functions for plan entity attributes and criteria.
3
+ // No Node.js API dependencies — safe for edge runtimes.
4
+ // ─── Parsing ───
5
+ /** Regex to parse the opening Markdoc tag on line 1: {% type key="value" ... %} */
6
+ const TAG_ATTR_RE = /(\w+)="([^"]*)"/g;
7
+ /**
8
+ * Parse attributes from a Markdoc opening tag line.
9
+ * Expects the line to look like: {% type key="value" key2="value2" ... %}
10
+ */
11
+ export function parseTagAttributes(line) {
12
+ const attrs = {};
13
+ let match;
14
+ TAG_ATTR_RE.lastIndex = 0;
15
+ while ((match = TAG_ATTR_RE.exec(line)) !== null) {
16
+ attrs[match[1]] = match[2];
17
+ }
18
+ return attrs;
19
+ }
20
+ /** Checkbox line pattern: - [ ] text or - [x] text (case-insensitive x) */
21
+ const CHECKBOX_RE = /^[\s]*-\s+\[([ xX])\]\s+(.+)/;
22
+ /**
23
+ * Extract all checkbox lines from file content.
24
+ */
25
+ export function parseCheckboxes(content) {
26
+ const results = [];
27
+ for (const line of content.split('\n')) {
28
+ const match = CHECKBOX_RE.exec(line);
29
+ if (match) {
30
+ results.push({
31
+ text: match[2].trim(),
32
+ checked: match[1] !== ' ',
33
+ });
34
+ }
35
+ }
36
+ return results;
37
+ }
38
+ /**
39
+ * Detect whether a ## Resolution section exists in the content.
40
+ */
41
+ export function hasResolutionSection(content) {
42
+ return /^##\s+Resolution\s*$/m.test(content);
43
+ }
44
+ // ─── Diffing ───
45
+ /**
46
+ * Diff two attribute maps and return the changes.
47
+ */
48
+ export function diffAttributes(prev, curr) {
49
+ const changes = [];
50
+ const allKeys = new Set([...Object.keys(prev), ...Object.keys(curr)]);
51
+ for (const key of allKeys) {
52
+ const oldVal = prev[key] ?? null;
53
+ const newVal = curr[key] ?? null;
54
+ if (oldVal !== newVal) {
55
+ changes.push({ field: key, from: oldVal, to: newVal });
56
+ }
57
+ }
58
+ return changes;
59
+ }
60
+ /**
61
+ * Diff two checkbox lists by text matching.
62
+ */
63
+ export function diffCriteria(prev, curr) {
64
+ const changes = [];
65
+ const prevByText = new Map(prev.map(c => [c.text, c.checked]));
66
+ const currByText = new Map(curr.map(c => [c.text, c.checked]));
67
+ // Check for removed or changed criteria
68
+ for (const [text, wasChecked] of prevByText) {
69
+ const isChecked = currByText.get(text);
70
+ if (isChecked === undefined) {
71
+ changes.push({ text, action: 'removed' });
72
+ }
73
+ else if (wasChecked && !isChecked) {
74
+ changes.push({ text, action: 'unchecked' });
75
+ }
76
+ else if (!wasChecked && isChecked) {
77
+ changes.push({ text, action: 'checked' });
78
+ }
79
+ }
80
+ // Check for added criteria
81
+ for (const [text] of currByText) {
82
+ if (!prevByText.has(text)) {
83
+ changes.push({ text, action: 'added' });
84
+ }
85
+ }
86
+ return changes;
87
+ }
88
+ //# sourceMappingURL=diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../src/diff.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { CleanupFn } from '@refrakt-md/behaviors';
2
+ /**
3
+ * Composite behavior for plan entity tab groups.
4
+ *
5
+ * Wraps tabsBehavior (ARIA wiring, keyboard nav, panel switching) and adds:
6
+ * - Anchor navigation coordination: when the user clicks a TOC link or
7
+ * section-nav entry pointing to a heading inside an inactive panel,
8
+ * activates that panel first so the browser can scroll to the target.
9
+ * - Exposes the active tab name as a data attribute on the container
10
+ * so CSS can dim the TOC when a non-Overview tab is active.
11
+ */
12
+ export declare function entityTabsBehavior(el: HTMLElement): CleanupFn;
13
+ //# sourceMappingURL=entity-tabs-behavior.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-tabs-behavior.d.ts","sourceRoot":"","sources":["../src/entity-tabs-behavior.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,WAAW,GAAG,SAAS,CAyF7D"}
@@ -0,0 +1,94 @@
1
+ import { tabsBehavior } from '@refrakt-md/behaviors';
2
+ /**
3
+ * Composite behavior for plan entity tab groups.
4
+ *
5
+ * Wraps tabsBehavior (ARIA wiring, keyboard nav, panel switching) and adds:
6
+ * - Anchor navigation coordination: when the user clicks a TOC link or
7
+ * section-nav entry pointing to a heading inside an inactive panel,
8
+ * activates that panel first so the browser can scroll to the target.
9
+ * - Exposes the active tab name as a data attribute on the container
10
+ * so CSS can dim the TOC when a non-Overview tab is active.
11
+ */
12
+ export function entityTabsBehavior(el) {
13
+ const tabsCleanup = tabsBehavior(el);
14
+ const cleanups = [];
15
+ const tabBar = el.querySelector('[data-name="tabs"]');
16
+ const panelsContainer = el.querySelector('[data-name="panels"]');
17
+ if (!tabBar || !panelsContainer)
18
+ return tabsCleanup;
19
+ const buttons = Array.from(tabBar.querySelectorAll('button[role="tab"]'));
20
+ const panels = Array.from(panelsContainer.querySelectorAll('[role="tabpanel"]'));
21
+ // Set initial active-tab data attribute
22
+ el.setAttribute('data-active-tab', buttons[0]?.getAttribute('data-tab') ?? 'overview');
23
+ // Watch for tab changes to update the data-active-tab attribute
24
+ const observer = new MutationObserver(() => {
25
+ const activeButton = buttons.find(b => b.getAttribute('aria-selected') === 'true');
26
+ if (activeButton) {
27
+ el.setAttribute('data-active-tab', activeButton.getAttribute('data-tab') ?? '');
28
+ }
29
+ });
30
+ for (const btn of buttons) {
31
+ observer.observe(btn, { attributes: true, attributeFilter: ['aria-selected'] });
32
+ }
33
+ cleanups.push(() => observer.disconnect());
34
+ /**
35
+ * Given a target element ID, find which panel contains it and activate that panel.
36
+ * Returns true if a panel switch occurred.
37
+ */
38
+ function activatePanelForTarget(targetId) {
39
+ const target = document.getElementById(targetId);
40
+ if (!target)
41
+ return false;
42
+ // Find which panel contains this target
43
+ const containingPanel = panels.find(p => p.contains(target));
44
+ if (!containingPanel)
45
+ return false;
46
+ // If already active, no switch needed
47
+ if (containingPanel.getAttribute('data-state') === 'active')
48
+ return false;
49
+ // Find the button index for this panel and click it
50
+ const panelIndex = panels.indexOf(containingPanel);
51
+ if (panelIndex >= 0 && buttons[panelIndex]) {
52
+ buttons[panelIndex].click();
53
+ return true;
54
+ }
55
+ return false;
56
+ }
57
+ // Intercept anchor clicks from TOC and section-nav
58
+ const onAnchorClick = (e) => {
59
+ const link = e.target.closest('a[href^="#"]');
60
+ if (!link)
61
+ return;
62
+ const targetId = link.getAttribute('href')?.slice(1);
63
+ if (!targetId)
64
+ return;
65
+ // Only intercept if the target is inside our tab panels
66
+ const target = document.getElementById(targetId);
67
+ if (!target || !panelsContainer.contains(target))
68
+ return;
69
+ if (activatePanelForTarget(targetId)) {
70
+ // Panel was switched — re-scroll after the panel becomes visible
71
+ e.preventDefault();
72
+ requestAnimationFrame(() => {
73
+ target.scrollIntoView({ behavior: 'smooth', block: 'start' });
74
+ });
75
+ }
76
+ };
77
+ document.addEventListener('click', onAnchorClick);
78
+ cleanups.push(() => document.removeEventListener('click', onAnchorClick));
79
+ // Handle back/forward navigation with hash changes
80
+ const onHashChange = () => {
81
+ const hash = window.location.hash.slice(1);
82
+ if (hash) {
83
+ activatePanelForTarget(hash);
84
+ }
85
+ };
86
+ window.addEventListener('hashchange', onHashChange);
87
+ cleanups.push(() => window.removeEventListener('hashchange', onHashChange));
88
+ return () => {
89
+ tabsCleanup();
90
+ el.removeAttribute('data-active-tab');
91
+ cleanups.forEach(fn => fn());
92
+ };
93
+ }
94
+ //# sourceMappingURL=entity-tabs-behavior.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-tabs-behavior.js","sourceRoot":"","sources":["../src/entity-tabs-behavior.ts"],"names":[],"mappings":"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"}