@taskmark/ui 0.1.0 → 0.2.1

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 (691) hide show
  1. package/README.md +17 -5
  2. package/app/board/actions.ts +62 -0
  3. package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/app → app}/board/page.tsx +13 -0
  4. package/app/layout.tsx +87 -0
  5. package/{dist/standalone/dist/standalone/dist/standalone/app → app}/page.tsx +4 -0
  6. package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/app → app}/setup/page.tsx +5 -0
  7. package/bin/taskmark.js +59 -13
  8. package/{dist/standalone/dist/standalone/components → components}/board/project-status-metrics-strip.tsx +4 -2
  9. package/{dist/standalone/dist/standalone/app/board/page.tsx → components/board/static-board-app.tsx} +35 -104
  10. package/{dist/standalone/dist/standalone/dist/standalone/components → components}/board/work-item-sheet.tsx +37 -4
  11. package/dist/standalone/.next/BUILD_ID +1 -1
  12. package/dist/standalone/.next/build-manifest.json +8 -7
  13. package/dist/standalone/.next/required-server-files.json +6 -0
  14. package/dist/standalone/.next/server/app/_global-error/page/build-manifest.json +5 -4
  15. package/dist/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  16. package/dist/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  17. package/dist/standalone/.next/server/app/_global-error.html +1 -1
  18. package/dist/standalone/.next/server/app/_global-error.rsc +1 -1
  19. package/dist/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  20. package/dist/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  21. package/dist/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  22. package/dist/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  23. package/dist/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  24. package/dist/standalone/.next/server/app/_not-found/page/build-manifest.json +5 -4
  25. package/dist/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  26. package/dist/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  27. package/dist/standalone/.next/server/app/_not-found.html +1 -1
  28. package/dist/standalone/.next/server/app/_not-found.rsc +4 -4
  29. package/dist/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
  30. package/dist/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  31. package/dist/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  32. package/dist/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  33. package/dist/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  34. package/dist/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  35. package/dist/standalone/.next/server/app/board/page/build-manifest.json +5 -4
  36. package/dist/standalone/.next/server/app/board/page/server-reference-manifest.json +6 -6
  37. package/dist/standalone/.next/server/app/board/page.js +3 -3
  38. package/dist/standalone/.next/server/app/board/page.js.nft.json +1 -1
  39. package/dist/standalone/.next/server/app/board/page_client-reference-manifest.js +1 -1
  40. package/dist/standalone/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  41. package/dist/standalone/.next/server/app/page/build-manifest.json +5 -4
  42. package/dist/standalone/.next/server/app/page.js.nft.json +1 -1
  43. package/dist/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  44. package/dist/standalone/.next/server/app/setup/page/build-manifest.json +5 -4
  45. package/dist/standalone/.next/server/app/setup/page.js +1 -1
  46. package/dist/standalone/.next/server/app/setup/page.js.nft.json +1 -1
  47. package/dist/standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  48. package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__056osos._.js +3 -0
  49. package/dist/standalone/.next/server/chunks/ssr/{[root-of-the-server]__03_ho7w._.js → [root-of-the-server]__09zm1qv._.js} +5 -5
  50. package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__0gn-ti0._.js +1 -1
  51. package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__0op8wkj._.js +1 -1
  52. package/dist/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0ptadz9._.js → [root-of-the-server]__0srwu25._.js} +3 -3
  53. package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zq2v_u._.js +1 -1
  54. package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__12ufd6u._.js +6 -0
  55. package/dist/standalone/.next/server/chunks/ssr/{[root-of-the-server]__10pik1x._.js → [root-of-the-server]__18cyjiz._.js} +2 -2
  56. package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__1ig72i1._.js +2 -2
  57. package/dist/standalone/.next/server/chunks/ssr/_05k6qx-._.js +3 -0
  58. package/dist/standalone/.next/server/chunks/ssr/_0aho3h6._.js +1 -1
  59. package/dist/standalone/.next/server/chunks/ssr/_0xl0vrn._.js +3 -0
  60. package/dist/standalone/.next/server/chunks/ssr/_17p0g27._.js +3 -0
  61. package/dist/standalone/.next/server/chunks/ssr/_1ln4p7u._.js +1 -1
  62. package/dist/standalone/.next/server/chunks/ssr/_1nr_jtr._.js +3 -0
  63. package/dist/standalone/.next/server/chunks/ssr/_1qgmrdc._.js +3 -0
  64. package/dist/standalone/.next/server/chunks/ssr/{_1u3jg4m._.js → _1yb3kog._.js} +1 -1
  65. package/dist/standalone/.next/server/chunks/ssr/app_board_actions_ts_0f5ys15._.js +3 -0
  66. package/dist/standalone/.next/server/chunks/ssr/node_modules_0h91jdk._.js +1 -1
  67. package/dist/standalone/.next/server/middleware-build-manifest.js +8 -7
  68. package/dist/standalone/.next/server/pages/404.html +1 -1
  69. package/dist/standalone/.next/server/pages/500.html +1 -1
  70. package/dist/standalone/.next/server/server-reference-manifest.js +1 -1
  71. package/dist/standalone/.next/server/server-reference-manifest.json +6 -6
  72. package/dist/standalone/.next/static/chunks/018wh8zp6bjth.js +1 -0
  73. package/dist/standalone/.next/static/chunks/{3-2jy1bmsuo5l.js → 01fxdzfqp-khv.js} +1 -1
  74. package/dist/standalone/.next/static/chunks/06t7fr3j7axc1.js +1 -0
  75. package/dist/standalone/.next/static/chunks/0g8oss7mvdgy2.js +1 -0
  76. package/dist/standalone/.next/static/chunks/{42tcxcpa-z9hi.js → 0tckbkthn_lz5.js} +1 -1
  77. package/dist/standalone/.next/static/chunks/1b4b87nf50pwj.js +1 -0
  78. package/dist/standalone/.next/static/chunks/1etzx8zdgoji7.js +2 -0
  79. package/dist/standalone/.next/static/chunks/1ob9-gyputghy.js +1 -0
  80. package/dist/standalone/.next/static/chunks/{3w2ohvdljvkpj.js → 2r5ngr5zaimmw.js} +1 -1
  81. package/dist/standalone/.next/static/chunks/2z9l0n877if48.css +1 -0
  82. package/dist/standalone/.next/static/chunks/40bad20ki94w3.js +1 -0
  83. package/dist/standalone/.next/static/chunks/turbopack-3ekz2izuoc92r.js +1 -0
  84. package/dist/standalone/README.md +17 -5
  85. package/dist/standalone/app/board/actions.ts +24 -173
  86. package/dist/standalone/app/board/page.tsx +13 -0
  87. package/dist/standalone/app/layout.tsx +50 -5
  88. package/dist/standalone/app/page.tsx +4 -0
  89. package/dist/standalone/app/setup/page.tsx +5 -0
  90. package/dist/standalone/bin/taskmark.js +59 -13
  91. package/dist/standalone/components/board/project-status-metrics-strip.tsx +4 -2
  92. package/dist/standalone/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/board/page.tsx → components/board/static-board-app.tsx} +35 -104
  93. package/dist/standalone/components/board/work-item-sheet.tsx +37 -4
  94. package/dist/standalone/lib/site.ts +8 -0
  95. package/dist/standalone/lib/taskmark/build-snapshot.ts +198 -0
  96. package/dist/standalone/lib/taskmark/cookies.ts +16 -0
  97. package/dist/standalone/{dist/standalone/dist/standalone/dist/standalone/app/board/actions.ts → lib/taskmark/detail-load.ts} +59 -90
  98. package/dist/standalone/lib/taskmark/load-snapshot-server.ts +11 -0
  99. package/dist/standalone/lib/taskmark/project-metrics-shared.ts +21 -0
  100. package/dist/standalone/lib/taskmark/project-metrics.ts +6 -18
  101. package/dist/standalone/lib/taskmark/snapshot-client.ts +67 -0
  102. package/dist/standalone/lib/taskmark/snapshot-types.ts +37 -0
  103. package/dist/standalone/lib/taskmark/static-mode.ts +15 -0
  104. package/dist/standalone/next.config.ts +13 -2
  105. package/dist/standalone/package-lock.json +541 -232
  106. package/dist/standalone/package.json +25 -11
  107. package/dist/standalone/public/apple-touch-icon.png +0 -0
  108. package/dist/standalone/public/favicon-96x96.png +0 -0
  109. package/dist/standalone/public/favicon.ico +0 -0
  110. package/dist/standalone/public/favicon.svg +1 -0
  111. package/dist/standalone/public/og/og-default.png +0 -0
  112. package/dist/standalone/public/site.webmanifest +21 -0
  113. package/dist/standalone/public/taskmark-snapshot.json +1 -0
  114. package/dist/standalone/public/web-app-manifest-192x192.png +0 -0
  115. package/dist/standalone/public/web-app-manifest-512x512.png +0 -0
  116. package/dist/standalone/scripts/build-static.mjs +182 -0
  117. package/dist/standalone/scripts/write-board-snapshot.ts +20 -0
  118. package/dist/standalone/server.js +1 -1
  119. package/dist/standalone/tsconfig.json +1 -1
  120. package/dist/standalone/tsconfig.tsbuildinfo +1 -1
  121. package/dist/standalone/yarn.lock +56 -0
  122. package/lib/site.ts +8 -0
  123. package/lib/taskmark/build-snapshot.ts +198 -0
  124. package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/cookies.ts +16 -0
  125. package/{dist/standalone/dist/standalone/dist/standalone/app/board/actions.ts → lib/taskmark/detail-load.ts} +59 -90
  126. package/lib/taskmark/load-snapshot-server.ts +11 -0
  127. package/lib/taskmark/project-metrics-shared.ts +21 -0
  128. package/{dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/project-metrics.ts +6 -18
  129. package/lib/taskmark/snapshot-client.ts +67 -0
  130. package/lib/taskmark/snapshot-types.ts +37 -0
  131. package/lib/taskmark/static-mode.ts +15 -0
  132. package/next.config.ts +19 -0
  133. package/package.json +25 -11
  134. package/public/apple-touch-icon.png +0 -0
  135. package/public/favicon-96x96.png +0 -0
  136. package/public/favicon.ico +0 -0
  137. package/public/favicon.svg +1 -0
  138. package/public/og/og-default.png +0 -0
  139. package/public/site.webmanifest +21 -0
  140. package/public/taskmark-snapshot.json +1 -0
  141. package/public/web-app-manifest-192x192.png +0 -0
  142. package/public/web-app-manifest-512x512.png +0 -0
  143. package/scripts/build-static.mjs +182 -0
  144. package/scripts/write-board-snapshot.ts +20 -0
  145. package/{dist/standalone/dist/standalone/dist/standalone/tsconfig.json → tsconfig.json} +1 -1
  146. package/dist/standalone/.next/server/chunks/ssr/[externals]_node_path_1pmhwj3._.js +0 -3
  147. package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ahb350._.js +0 -6
  148. package/dist/standalone/.next/server/chunks/ssr/_0d5ymu2._.js +0 -3
  149. package/dist/standalone/.next/server/chunks/ssr/_0ltlf7m._.js +0 -3
  150. package/dist/standalone/.next/server/chunks/ssr/_1ewgzdg._.js +0 -3
  151. package/dist/standalone/.next/server/chunks/ssr/_1y1lrmo._.js +0 -3
  152. package/dist/standalone/.next/server/chunks/ssr/components_setup_setup-wizard_tsx_19mu5ru._.js +0 -3
  153. package/dist/standalone/.next/static/chunks/12kmjf-wk-m-0.js +0 -2
  154. package/dist/standalone/.next/static/chunks/15g-piqywkucg.css +0 -1
  155. package/dist/standalone/.next/static/chunks/2ao0tkrplrup7.js +0 -1
  156. package/dist/standalone/.next/static/chunks/3a8w_qvn2gpqt.js +0 -1
  157. package/dist/standalone/.next/static/chunks/3sz1w0ssobbwn.js +0 -1
  158. package/dist/standalone/.next/static/chunks/turbopack-0xo65f5j55qxe.js +0 -1
  159. package/dist/standalone/dist/standalone/AGENTS.md +0 -5
  160. package/dist/standalone/dist/standalone/CLAUDE.md +0 -1
  161. package/dist/standalone/dist/standalone/README.md +0 -74
  162. package/dist/standalone/dist/standalone/app/board/actions.ts +0 -211
  163. package/dist/standalone/dist/standalone/app/layout.tsx +0 -42
  164. package/dist/standalone/dist/standalone/app/page.tsx +0 -13
  165. package/dist/standalone/dist/standalone/app/setup/page.tsx +0 -62
  166. package/dist/standalone/dist/standalone/bin/lib/resolve-board.mjs +0 -108
  167. package/dist/standalone/dist/standalone/bin/taskmark.js +0 -232
  168. package/dist/standalone/dist/standalone/components/board/work-item-sheet.tsx +0 -604
  169. package/dist/standalone/dist/standalone/dist/standalone/AGENTS.md +0 -5
  170. package/dist/standalone/dist/standalone/dist/standalone/CLAUDE.md +0 -1
  171. package/dist/standalone/dist/standalone/dist/standalone/README.md +0 -74
  172. package/dist/standalone/dist/standalone/dist/standalone/app/board/page.tsx +0 -271
  173. package/dist/standalone/dist/standalone/dist/standalone/app/favicon.ico +0 -0
  174. package/dist/standalone/dist/standalone/dist/standalone/app/globals.css +0 -128
  175. package/dist/standalone/dist/standalone/dist/standalone/app/layout.tsx +0 -42
  176. package/dist/standalone/dist/standalone/dist/standalone/app/setup/actions.ts +0 -113
  177. package/dist/standalone/dist/standalone/dist/standalone/app/setup/page.tsx +0 -62
  178. package/dist/standalone/dist/standalone/dist/standalone/bin/lib/resolve-board.mjs +0 -108
  179. package/dist/standalone/dist/standalone/dist/standalone/bin/taskmark.js +0 -232
  180. package/dist/standalone/dist/standalone/dist/standalone/components/board/app-bar.tsx +0 -99
  181. package/dist/standalone/dist/standalone/dist/standalone/components/board/attribution-avatars.tsx +0 -176
  182. package/dist/standalone/dist/standalone/dist/standalone/components/board/child-progress-bar.tsx +0 -40
  183. package/dist/standalone/dist/standalone/dist/standalone/components/board/date-tooltip.tsx +0 -93
  184. package/dist/standalone/dist/standalone/dist/standalone/components/board/detail-children-list.tsx +0 -70
  185. package/dist/standalone/dist/standalone/dist/standalone/components/board/epic-list.tsx +0 -363
  186. package/dist/standalone/dist/standalone/dist/standalone/components/board/hide-completed-toggle.tsx +0 -39
  187. package/dist/standalone/dist/standalone/dist/standalone/components/board/list-filters-bar.tsx +0 -78
  188. package/dist/standalone/dist/standalone/dist/standalone/components/board/list-pagination.tsx +0 -124
  189. package/dist/standalone/dist/standalone/dist/standalone/components/board/list-search-box.tsx +0 -59
  190. package/dist/standalone/dist/standalone/dist/standalone/components/board/list-view-switcher.tsx +0 -74
  191. package/dist/standalone/dist/standalone/dist/standalone/components/board/markdown-content.tsx +0 -91
  192. package/dist/standalone/dist/standalone/dist/standalone/components/board/metric-stat-card.tsx +0 -55
  193. package/dist/standalone/dist/standalone/dist/standalone/components/board/overall-work-items-list.tsx +0 -356
  194. package/dist/standalone/dist/standalone/dist/standalone/components/board/parent-filter-combobox.tsx +0 -89
  195. package/dist/standalone/dist/standalone/dist/standalone/components/board/parent-tag-badge.tsx +0 -46
  196. package/dist/standalone/dist/standalone/dist/standalone/components/board/project-contributors-panel.tsx +0 -86
  197. package/dist/standalone/dist/standalone/dist/standalone/components/board/project-status-metrics-strip.tsx +0 -88
  198. package/dist/standalone/dist/standalone/dist/standalone/components/board/sortable-table-head.tsx +0 -69
  199. package/dist/standalone/dist/standalone/dist/standalone/components/board/status-badge.tsx +0 -82
  200. package/dist/standalone/dist/standalone/dist/standalone/components/board/story-list.tsx +0 -336
  201. package/dist/standalone/dist/standalone/dist/standalone/components/board/tags-multiselect-filter.tsx +0 -70
  202. package/dist/standalone/dist/standalone/dist/standalone/components/board/task-list.tsx +0 -307
  203. package/dist/standalone/dist/standalone/dist/standalone/components/board/timeframe-filter.tsx +0 -676
  204. package/dist/standalone/dist/standalone/dist/standalone/components/board/work-item-detail-body.tsx +0 -392
  205. package/dist/standalone/dist/standalone/dist/standalone/components/board/work-items-list.tsx +0 -372
  206. package/dist/standalone/dist/standalone/dist/standalone/components/brand-logo.tsx +0 -39
  207. package/dist/standalone/dist/standalone/dist/standalone/components/setup/setup-wizard.tsx +0 -180
  208. package/dist/standalone/dist/standalone/dist/standalone/components/ui/alert-dialog.tsx +0 -187
  209. package/dist/standalone/dist/standalone/dist/standalone/components/ui/alert.tsx +0 -101
  210. package/dist/standalone/dist/standalone/dist/standalone/components/ui/avatar.tsx +0 -109
  211. package/dist/standalone/dist/standalone/dist/standalone/components/ui/badge.tsx +0 -52
  212. package/dist/standalone/dist/standalone/dist/standalone/components/ui/breadcrumb.tsx +0 -122
  213. package/dist/standalone/dist/standalone/dist/standalone/components/ui/button.tsx +0 -64
  214. package/dist/standalone/dist/standalone/dist/standalone/components/ui/calendar.tsx +0 -237
  215. package/dist/standalone/dist/standalone/dist/standalone/components/ui/card.tsx +0 -103
  216. package/dist/standalone/dist/standalone/dist/standalone/components/ui/combobox.tsx +0 -297
  217. package/dist/standalone/dist/standalone/dist/standalone/components/ui/dialog.tsx +0 -159
  218. package/dist/standalone/dist/standalone/dist/standalone/components/ui/field.tsx +0 -238
  219. package/dist/standalone/dist/standalone/dist/standalone/components/ui/input-group.tsx +0 -158
  220. package/dist/standalone/dist/standalone/dist/standalone/components/ui/input.tsx +0 -20
  221. package/dist/standalone/dist/standalone/dist/standalone/components/ui/item.tsx +0 -201
  222. package/dist/standalone/dist/standalone/dist/standalone/components/ui/label.tsx +0 -20
  223. package/dist/standalone/dist/standalone/dist/standalone/components/ui/pagination.tsx +0 -133
  224. package/dist/standalone/dist/standalone/dist/standalone/components/ui/popover.tsx +0 -90
  225. package/dist/standalone/dist/standalone/dist/standalone/components/ui/progress.tsx +0 -83
  226. package/dist/standalone/dist/standalone/dist/standalone/components/ui/resizable.tsx +0 -55
  227. package/dist/standalone/dist/standalone/dist/standalone/components/ui/select.tsx +0 -199
  228. package/dist/standalone/dist/standalone/dist/standalone/components/ui/separator.tsx +0 -25
  229. package/dist/standalone/dist/standalone/dist/standalone/components/ui/sheet.tsx +0 -137
  230. package/dist/standalone/dist/standalone/dist/standalone/components/ui/sidebar.tsx +0 -723
  231. package/dist/standalone/dist/standalone/dist/standalone/components/ui/skeleton.tsx +0 -13
  232. package/dist/standalone/dist/standalone/dist/standalone/components/ui/slider.tsx +0 -56
  233. package/dist/standalone/dist/standalone/dist/standalone/components/ui/sonner.tsx +0 -54
  234. package/dist/standalone/dist/standalone/dist/standalone/components/ui/spinner.tsx +0 -17
  235. package/dist/standalone/dist/standalone/dist/standalone/components/ui/switch.tsx +0 -32
  236. package/dist/standalone/dist/standalone/dist/standalone/components/ui/table.tsx +0 -116
  237. package/dist/standalone/dist/standalone/dist/standalone/components/ui/tabs.tsx +0 -82
  238. package/dist/standalone/dist/standalone/dist/standalone/components/ui/textarea.tsx +0 -18
  239. package/dist/standalone/dist/standalone/dist/standalone/components/ui/tooltip.tsx +0 -66
  240. package/dist/standalone/dist/standalone/dist/standalone/components.json +0 -28
  241. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/AGENTS.md +0 -5
  242. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/CLAUDE.md +0 -1
  243. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/README.md +0 -74
  244. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/favicon.ico +0 -0
  245. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/globals.css +0 -128
  246. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/layout.tsx +0 -42
  247. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/page.tsx +0 -13
  248. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/setup/actions.ts +0 -113
  249. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/bin/lib/resolve-board.mjs +0 -108
  250. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/bin/taskmark.js +0 -232
  251. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/app-bar.tsx +0 -99
  252. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/attribution-avatars.tsx +0 -176
  253. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/child-progress-bar.tsx +0 -40
  254. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/date-tooltip.tsx +0 -93
  255. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/detail-children-list.tsx +0 -70
  256. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/epic-list.tsx +0 -363
  257. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/hide-completed-toggle.tsx +0 -39
  258. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/list-filters-bar.tsx +0 -78
  259. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/list-pagination.tsx +0 -124
  260. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/list-search-box.tsx +0 -59
  261. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/list-view-switcher.tsx +0 -74
  262. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/markdown-content.tsx +0 -91
  263. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/metric-stat-card.tsx +0 -55
  264. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/overall-work-items-list.tsx +0 -356
  265. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/parent-filter-combobox.tsx +0 -89
  266. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/parent-tag-badge.tsx +0 -46
  267. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/project-contributors-panel.tsx +0 -86
  268. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/project-status-metrics-strip.tsx +0 -88
  269. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/sortable-table-head.tsx +0 -69
  270. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/status-badge.tsx +0 -82
  271. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/story-list.tsx +0 -336
  272. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/tags-multiselect-filter.tsx +0 -70
  273. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/task-list.tsx +0 -307
  274. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/timeframe-filter.tsx +0 -676
  275. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/work-item-detail-body.tsx +0 -392
  276. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/work-item-sheet.tsx +0 -604
  277. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/work-items-list.tsx +0 -372
  278. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/brand-logo.tsx +0 -39
  279. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/setup/setup-wizard.tsx +0 -180
  280. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/alert-dialog.tsx +0 -187
  281. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/alert.tsx +0 -101
  282. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/avatar.tsx +0 -109
  283. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/badge.tsx +0 -52
  284. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/breadcrumb.tsx +0 -122
  285. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/button.tsx +0 -64
  286. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/calendar.tsx +0 -237
  287. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/card.tsx +0 -103
  288. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/combobox.tsx +0 -297
  289. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/dialog.tsx +0 -159
  290. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/field.tsx +0 -238
  291. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/input-group.tsx +0 -158
  292. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/input.tsx +0 -20
  293. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/item.tsx +0 -201
  294. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/label.tsx +0 -20
  295. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/pagination.tsx +0 -133
  296. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/popover.tsx +0 -90
  297. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/progress.tsx +0 -83
  298. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/resizable.tsx +0 -55
  299. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/select.tsx +0 -199
  300. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/separator.tsx +0 -25
  301. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/sheet.tsx +0 -137
  302. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/sidebar.tsx +0 -723
  303. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/skeleton.tsx +0 -13
  304. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/slider.tsx +0 -56
  305. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/sonner.tsx +0 -54
  306. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/spinner.tsx +0 -17
  307. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/switch.tsx +0 -32
  308. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/table.tsx +0 -116
  309. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/tabs.tsx +0 -82
  310. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/textarea.tsx +0 -18
  311. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/tooltip.tsx +0 -66
  312. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components.json +0 -28
  313. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/AGENTS.md +0 -5
  314. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/CLAUDE.md +0 -1
  315. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/README.md +0 -97
  316. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/board/actions.ts +0 -211
  317. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/favicon.ico +0 -0
  318. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/globals.css +0 -128
  319. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/layout.tsx +0 -42
  320. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/page.tsx +0 -13
  321. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/setup/actions.ts +0 -113
  322. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/app/setup/page.tsx +0 -62
  323. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/bin/lib/resolve-board.mjs +0 -108
  324. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/bin/taskmark.js +0 -230
  325. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/app-bar.tsx +0 -99
  326. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/attribution-avatars.tsx +0 -176
  327. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/child-progress-bar.tsx +0 -40
  328. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/date-tooltip.tsx +0 -93
  329. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/detail-children-list.tsx +0 -70
  330. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/epic-list.tsx +0 -363
  331. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/hide-completed-toggle.tsx +0 -39
  332. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/list-filters-bar.tsx +0 -78
  333. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/list-pagination.tsx +0 -124
  334. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/list-search-box.tsx +0 -59
  335. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/list-view-switcher.tsx +0 -74
  336. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/markdown-content.tsx +0 -91
  337. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/metric-stat-card.tsx +0 -55
  338. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/overall-work-items-list.tsx +0 -356
  339. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/parent-filter-combobox.tsx +0 -89
  340. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/parent-tag-badge.tsx +0 -46
  341. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/project-contributors-panel.tsx +0 -86
  342. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/project-status-metrics-strip.tsx +0 -88
  343. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/sortable-table-head.tsx +0 -69
  344. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/status-badge.tsx +0 -82
  345. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/story-list.tsx +0 -336
  346. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/tags-multiselect-filter.tsx +0 -70
  347. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/task-list.tsx +0 -307
  348. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/timeframe-filter.tsx +0 -676
  349. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/work-item-detail-body.tsx +0 -392
  350. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/work-item-sheet.tsx +0 -604
  351. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/board/work-items-list.tsx +0 -372
  352. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/brand-logo.tsx +0 -39
  353. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/setup/setup-wizard.tsx +0 -180
  354. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/alert-dialog.tsx +0 -187
  355. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/alert.tsx +0 -101
  356. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/avatar.tsx +0 -109
  357. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/badge.tsx +0 -52
  358. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/breadcrumb.tsx +0 -122
  359. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/button.tsx +0 -64
  360. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/calendar.tsx +0 -237
  361. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/card.tsx +0 -103
  362. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/combobox.tsx +0 -297
  363. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/dialog.tsx +0 -159
  364. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/field.tsx +0 -238
  365. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/input-group.tsx +0 -158
  366. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/input.tsx +0 -20
  367. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/item.tsx +0 -201
  368. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/label.tsx +0 -20
  369. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/pagination.tsx +0 -133
  370. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/popover.tsx +0 -90
  371. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/progress.tsx +0 -83
  372. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/resizable.tsx +0 -55
  373. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/select.tsx +0 -199
  374. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/separator.tsx +0 -25
  375. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/sheet.tsx +0 -137
  376. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/sidebar.tsx +0 -723
  377. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/skeleton.tsx +0 -13
  378. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/slider.tsx +0 -56
  379. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/sonner.tsx +0 -54
  380. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/spinner.tsx +0 -17
  381. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/switch.tsx +0 -32
  382. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/table.tsx +0 -116
  383. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/tabs.tsx +0 -82
  384. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/textarea.tsx +0 -18
  385. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components/ui/tooltip.tsx +0 -66
  386. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/components.json +0 -28
  387. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/eslint.config.mjs +0 -18
  388. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/project-metrics.ts +0 -296
  389. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/next.config.ts +0 -8
  390. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/package-lock.json +0 -11201
  391. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/package.json +0 -58
  392. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/server.js +0 -44
  393. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/tsconfig.json +0 -34
  394. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/tsconfig.tsbuildinfo +0 -1
  395. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/yarn.lock +0 -5265
  396. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/eslint.config.mjs +0 -18
  397. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/hooks/use-mobile.ts +0 -19
  398. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/hooks/use-paginated-rows.ts +0 -54
  399. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/hooks/use-persisted-hide-completed.ts +0 -29
  400. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/hooks/use-table-sort.ts +0 -22
  401. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/format-date.ts +0 -75
  402. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/format-duration.ts +0 -72
  403. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/format-list-date.ts +0 -2
  404. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/active-project.ts +0 -16
  405. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/autoconfig.ts +0 -118
  406. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/constants.ts +0 -43
  407. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/cookies.ts +0 -153
  408. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/count-leaves.ts +0 -204
  409. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/detail-types.ts +0 -131
  410. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/discover.ts +0 -153
  411. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/epic-types.ts +0 -41
  412. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/flat-work-item-types.ts +0 -122
  413. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/frontmatter.ts +0 -45
  414. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/general-epic.ts +0 -25
  415. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/hide-completed-cookie.ts +0 -40
  416. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/identity.ts +0 -182
  417. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/item-types.ts +0 -46
  418. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/list-filters.ts +0 -327
  419. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/list-view-mode.ts +0 -137
  420. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/pagination.ts +0 -51
  421. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-detail.ts +0 -227
  422. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-epics.ts +0 -153
  423. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-flat-lists.ts +0 -353
  424. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-items.ts +0 -318
  425. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-sections.ts +0 -135
  426. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-stories.ts +0 -237
  427. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/pick-folder.ts +0 -141
  428. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/project-label.ts +0 -11
  429. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/project-metrics.ts +0 -296
  430. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/projects.ts +0 -55
  431. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/resolve-work-item.ts +0 -219
  432. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/story-types.ts +0 -46
  433. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/table-sort.ts +0 -344
  434. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/timeframe-filters.ts +0 -258
  435. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/timing.ts +0 -32
  436. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/types.ts +0 -28
  437. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/validate.ts +0 -72
  438. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/workspace.ts +0 -53
  439. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib/utils.ts +0 -6
  440. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/next.config.ts +0 -8
  441. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/package-lock.json +0 -11682
  442. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/package.json +0 -60
  443. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/postcss.config.mjs +0 -7
  444. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public/file.svg +0 -1
  445. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public/globe.svg +0 -1
  446. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public/next.svg +0 -1
  447. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public/tm_dark.png +0 -0
  448. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public/tm_light.png +0 -0
  449. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public/vercel.svg +0 -1
  450. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public/window.svg +0 -1
  451. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/scripts/prepare-standalone.mjs +0 -50
  452. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/server.js +0 -44
  453. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/tsconfig.json +0 -34
  454. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/tsconfig.tsbuildinfo +0 -1
  455. package/dist/standalone/dist/standalone/dist/standalone/dist/standalone/yarn.lock +0 -5265
  456. package/dist/standalone/dist/standalone/dist/standalone/eslint.config.mjs +0 -18
  457. package/dist/standalone/dist/standalone/dist/standalone/hooks/use-mobile.ts +0 -19
  458. package/dist/standalone/dist/standalone/dist/standalone/hooks/use-paginated-rows.ts +0 -54
  459. package/dist/standalone/dist/standalone/dist/standalone/hooks/use-persisted-hide-completed.ts +0 -29
  460. package/dist/standalone/dist/standalone/dist/standalone/hooks/use-table-sort.ts +0 -22
  461. package/dist/standalone/dist/standalone/dist/standalone/lib/format-date.ts +0 -75
  462. package/dist/standalone/dist/standalone/dist/standalone/lib/format-duration.ts +0 -72
  463. package/dist/standalone/dist/standalone/dist/standalone/lib/format-list-date.ts +0 -2
  464. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/active-project.ts +0 -16
  465. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/autoconfig.ts +0 -118
  466. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/constants.ts +0 -43
  467. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/cookies.ts +0 -153
  468. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/count-leaves.ts +0 -204
  469. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/detail-types.ts +0 -131
  470. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/discover.ts +0 -153
  471. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/epic-types.ts +0 -41
  472. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/flat-work-item-types.ts +0 -122
  473. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/frontmatter.ts +0 -45
  474. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/general-epic.ts +0 -25
  475. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/hide-completed-cookie.ts +0 -40
  476. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/identity.ts +0 -182
  477. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/item-types.ts +0 -46
  478. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/list-filters.ts +0 -327
  479. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/list-view-mode.ts +0 -137
  480. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/pagination.ts +0 -51
  481. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-detail.ts +0 -227
  482. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-epics.ts +0 -153
  483. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-flat-lists.ts +0 -353
  484. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-items.ts +0 -318
  485. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-sections.ts +0 -135
  486. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/parse-stories.ts +0 -237
  487. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/pick-folder.ts +0 -141
  488. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/project-label.ts +0 -11
  489. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/projects.ts +0 -55
  490. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/resolve-work-item.ts +0 -219
  491. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/story-types.ts +0 -46
  492. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/table-sort.ts +0 -344
  493. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/timeframe-filters.ts +0 -258
  494. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/timing.ts +0 -32
  495. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/types.ts +0 -28
  496. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/validate.ts +0 -72
  497. package/dist/standalone/dist/standalone/dist/standalone/lib/taskmark/workspace.ts +0 -53
  498. package/dist/standalone/dist/standalone/dist/standalone/lib/utils.ts +0 -6
  499. package/dist/standalone/dist/standalone/dist/standalone/next.config.ts +0 -8
  500. package/dist/standalone/dist/standalone/dist/standalone/package-lock.json +0 -11682
  501. package/dist/standalone/dist/standalone/dist/standalone/package.json +0 -60
  502. package/dist/standalone/dist/standalone/dist/standalone/postcss.config.mjs +0 -7
  503. package/dist/standalone/dist/standalone/dist/standalone/public/file.svg +0 -1
  504. package/dist/standalone/dist/standalone/dist/standalone/public/globe.svg +0 -1
  505. package/dist/standalone/dist/standalone/dist/standalone/public/next.svg +0 -1
  506. package/dist/standalone/dist/standalone/dist/standalone/public/tm_dark.png +0 -0
  507. package/dist/standalone/dist/standalone/dist/standalone/public/tm_light.png +0 -0
  508. package/dist/standalone/dist/standalone/dist/standalone/public/vercel.svg +0 -1
  509. package/dist/standalone/dist/standalone/dist/standalone/public/window.svg +0 -1
  510. package/dist/standalone/dist/standalone/dist/standalone/scripts/prepare-standalone.mjs +0 -50
  511. package/dist/standalone/dist/standalone/dist/standalone/server.js +0 -44
  512. package/dist/standalone/dist/standalone/dist/standalone/tsconfig.tsbuildinfo +0 -1
  513. package/dist/standalone/dist/standalone/dist/standalone/yarn.lock +0 -5265
  514. package/dist/standalone/dist/standalone/eslint.config.mjs +0 -18
  515. package/dist/standalone/dist/standalone/hooks/use-mobile.ts +0 -19
  516. package/dist/standalone/dist/standalone/hooks/use-paginated-rows.ts +0 -54
  517. package/dist/standalone/dist/standalone/hooks/use-persisted-hide-completed.ts +0 -29
  518. package/dist/standalone/dist/standalone/hooks/use-table-sort.ts +0 -22
  519. package/dist/standalone/dist/standalone/lib/format-date.ts +0 -75
  520. package/dist/standalone/dist/standalone/lib/format-duration.ts +0 -72
  521. package/dist/standalone/dist/standalone/lib/format-list-date.ts +0 -2
  522. package/dist/standalone/dist/standalone/lib/taskmark/active-project.ts +0 -16
  523. package/dist/standalone/dist/standalone/lib/taskmark/autoconfig.ts +0 -118
  524. package/dist/standalone/dist/standalone/lib/taskmark/constants.ts +0 -43
  525. package/dist/standalone/dist/standalone/lib/taskmark/cookies.ts +0 -153
  526. package/dist/standalone/dist/standalone/lib/taskmark/count-leaves.ts +0 -204
  527. package/dist/standalone/dist/standalone/lib/taskmark/detail-types.ts +0 -131
  528. package/dist/standalone/dist/standalone/lib/taskmark/discover.ts +0 -153
  529. package/dist/standalone/dist/standalone/lib/taskmark/epic-types.ts +0 -41
  530. package/dist/standalone/dist/standalone/lib/taskmark/flat-work-item-types.ts +0 -122
  531. package/dist/standalone/dist/standalone/lib/taskmark/frontmatter.ts +0 -45
  532. package/dist/standalone/dist/standalone/lib/taskmark/general-epic.ts +0 -25
  533. package/dist/standalone/dist/standalone/lib/taskmark/hide-completed-cookie.ts +0 -40
  534. package/dist/standalone/dist/standalone/lib/taskmark/identity.ts +0 -182
  535. package/dist/standalone/dist/standalone/lib/taskmark/item-types.ts +0 -46
  536. package/dist/standalone/dist/standalone/lib/taskmark/list-filters.ts +0 -327
  537. package/dist/standalone/dist/standalone/lib/taskmark/list-view-mode.ts +0 -137
  538. package/dist/standalone/dist/standalone/lib/taskmark/pagination.ts +0 -51
  539. package/dist/standalone/dist/standalone/lib/taskmark/parse-detail.ts +0 -227
  540. package/dist/standalone/dist/standalone/lib/taskmark/parse-epics.ts +0 -153
  541. package/dist/standalone/dist/standalone/lib/taskmark/parse-flat-lists.ts +0 -353
  542. package/dist/standalone/dist/standalone/lib/taskmark/parse-items.ts +0 -318
  543. package/dist/standalone/dist/standalone/lib/taskmark/parse-sections.ts +0 -135
  544. package/dist/standalone/dist/standalone/lib/taskmark/parse-stories.ts +0 -237
  545. package/dist/standalone/dist/standalone/lib/taskmark/pick-folder.ts +0 -141
  546. package/dist/standalone/dist/standalone/lib/taskmark/project-label.ts +0 -11
  547. package/dist/standalone/dist/standalone/lib/taskmark/project-metrics.ts +0 -296
  548. package/dist/standalone/dist/standalone/lib/taskmark/projects.ts +0 -55
  549. package/dist/standalone/dist/standalone/lib/taskmark/resolve-work-item.ts +0 -219
  550. package/dist/standalone/dist/standalone/lib/taskmark/story-types.ts +0 -46
  551. package/dist/standalone/dist/standalone/lib/taskmark/table-sort.ts +0 -344
  552. package/dist/standalone/dist/standalone/lib/taskmark/timeframe-filters.ts +0 -258
  553. package/dist/standalone/dist/standalone/lib/taskmark/timing.ts +0 -32
  554. package/dist/standalone/dist/standalone/lib/taskmark/types.ts +0 -28
  555. package/dist/standalone/dist/standalone/lib/taskmark/validate.ts +0 -72
  556. package/dist/standalone/dist/standalone/lib/taskmark/workspace.ts +0 -53
  557. package/dist/standalone/dist/standalone/lib/utils.ts +0 -6
  558. package/dist/standalone/dist/standalone/next.config.ts +0 -8
  559. package/dist/standalone/dist/standalone/package-lock.json +0 -11682
  560. package/dist/standalone/dist/standalone/package.json +0 -60
  561. package/dist/standalone/dist/standalone/postcss.config.mjs +0 -7
  562. package/dist/standalone/dist/standalone/public/file.svg +0 -1
  563. package/dist/standalone/dist/standalone/public/globe.svg +0 -1
  564. package/dist/standalone/dist/standalone/public/next.svg +0 -1
  565. package/dist/standalone/dist/standalone/public/tm_dark.png +0 -0
  566. package/dist/standalone/dist/standalone/public/tm_light.png +0 -0
  567. package/dist/standalone/dist/standalone/public/vercel.svg +0 -1
  568. package/dist/standalone/dist/standalone/public/window.svg +0 -1
  569. package/dist/standalone/dist/standalone/scripts/prepare-standalone.mjs +0 -50
  570. package/dist/standalone/dist/standalone/server.js +0 -44
  571. package/dist/standalone/dist/standalone/tsconfig.json +0 -34
  572. package/dist/standalone/dist/standalone/tsconfig.tsbuildinfo +0 -1
  573. package/dist/standalone/dist/standalone/yarn.lock +0 -5265
  574. package/dist/standalone/node_modules/next/dist/compiled/next-server/app-route-turbo.runtime.prod.js +0 -6
  575. package/dist/standalone/node_modules/react/cjs/react.development.js +0 -1284
  576. /package/{dist/standalone/dist/standalone/app → app}/favicon.ico +0 -0
  577. /package/{dist/standalone/dist/standalone/app → app}/globals.css +0 -0
  578. /package/{dist/standalone/dist/standalone/app → app}/setup/actions.ts +0 -0
  579. /package/{dist/standalone/dist/standalone/components → components}/board/app-bar.tsx +0 -0
  580. /package/{dist/standalone/dist/standalone/components → components}/board/attribution-avatars.tsx +0 -0
  581. /package/{dist/standalone/dist/standalone/components → components}/board/child-progress-bar.tsx +0 -0
  582. /package/{dist/standalone/dist/standalone/components → components}/board/date-tooltip.tsx +0 -0
  583. /package/{dist/standalone/dist/standalone/components → components}/board/detail-children-list.tsx +0 -0
  584. /package/{dist/standalone/dist/standalone/components → components}/board/epic-list.tsx +0 -0
  585. /package/{dist/standalone/dist/standalone/components → components}/board/hide-completed-toggle.tsx +0 -0
  586. /package/{dist/standalone/dist/standalone/components → components}/board/list-filters-bar.tsx +0 -0
  587. /package/{dist/standalone/dist/standalone/components → components}/board/list-pagination.tsx +0 -0
  588. /package/{dist/standalone/dist/standalone/components → components}/board/list-search-box.tsx +0 -0
  589. /package/{dist/standalone/dist/standalone/components → components}/board/list-view-switcher.tsx +0 -0
  590. /package/{dist/standalone/dist/standalone/components → components}/board/markdown-content.tsx +0 -0
  591. /package/{dist/standalone/dist/standalone/components → components}/board/metric-stat-card.tsx +0 -0
  592. /package/{dist/standalone/dist/standalone/components → components}/board/overall-work-items-list.tsx +0 -0
  593. /package/{dist/standalone/dist/standalone/components → components}/board/parent-filter-combobox.tsx +0 -0
  594. /package/{dist/standalone/dist/standalone/components → components}/board/parent-tag-badge.tsx +0 -0
  595. /package/{dist/standalone/dist/standalone/components → components}/board/project-contributors-panel.tsx +0 -0
  596. /package/{dist/standalone/dist/standalone/components → components}/board/sortable-table-head.tsx +0 -0
  597. /package/{dist/standalone/dist/standalone/components → components}/board/status-badge.tsx +0 -0
  598. /package/{dist/standalone/dist/standalone/components → components}/board/story-list.tsx +0 -0
  599. /package/{dist/standalone/dist/standalone/components → components}/board/tags-multiselect-filter.tsx +0 -0
  600. /package/{dist/standalone/dist/standalone/components → components}/board/task-list.tsx +0 -0
  601. /package/{dist/standalone/dist/standalone/components → components}/board/timeframe-filter.tsx +0 -0
  602. /package/{dist/standalone/dist/standalone/components → components}/board/work-item-detail-body.tsx +0 -0
  603. /package/{dist/standalone/dist/standalone/components → components}/board/work-items-list.tsx +0 -0
  604. /package/{dist/standalone/dist/standalone/components → components}/brand-logo.tsx +0 -0
  605. /package/{dist/standalone/dist/standalone/components → components}/setup/setup-wizard.tsx +0 -0
  606. /package/{dist/standalone/dist/standalone/components → components}/ui/alert-dialog.tsx +0 -0
  607. /package/{dist/standalone/dist/standalone/components → components}/ui/alert.tsx +0 -0
  608. /package/{dist/standalone/dist/standalone/components → components}/ui/avatar.tsx +0 -0
  609. /package/{dist/standalone/dist/standalone/components → components}/ui/badge.tsx +0 -0
  610. /package/{dist/standalone/dist/standalone/components → components}/ui/breadcrumb.tsx +0 -0
  611. /package/{dist/standalone/dist/standalone/components → components}/ui/button.tsx +0 -0
  612. /package/{dist/standalone/dist/standalone/components → components}/ui/calendar.tsx +0 -0
  613. /package/{dist/standalone/dist/standalone/components → components}/ui/card.tsx +0 -0
  614. /package/{dist/standalone/dist/standalone/components → components}/ui/combobox.tsx +0 -0
  615. /package/{dist/standalone/dist/standalone/components → components}/ui/dialog.tsx +0 -0
  616. /package/{dist/standalone/dist/standalone/components → components}/ui/field.tsx +0 -0
  617. /package/{dist/standalone/dist/standalone/components → components}/ui/input-group.tsx +0 -0
  618. /package/{dist/standalone/dist/standalone/components → components}/ui/input.tsx +0 -0
  619. /package/{dist/standalone/dist/standalone/components → components}/ui/item.tsx +0 -0
  620. /package/{dist/standalone/dist/standalone/components → components}/ui/label.tsx +0 -0
  621. /package/{dist/standalone/dist/standalone/components → components}/ui/pagination.tsx +0 -0
  622. /package/{dist/standalone/dist/standalone/components → components}/ui/popover.tsx +0 -0
  623. /package/{dist/standalone/dist/standalone/components → components}/ui/progress.tsx +0 -0
  624. /package/{dist/standalone/dist/standalone/components → components}/ui/resizable.tsx +0 -0
  625. /package/{dist/standalone/dist/standalone/components → components}/ui/select.tsx +0 -0
  626. /package/{dist/standalone/dist/standalone/components → components}/ui/separator.tsx +0 -0
  627. /package/{dist/standalone/dist/standalone/components → components}/ui/sheet.tsx +0 -0
  628. /package/{dist/standalone/dist/standalone/components → components}/ui/sidebar.tsx +0 -0
  629. /package/{dist/standalone/dist/standalone/components → components}/ui/skeleton.tsx +0 -0
  630. /package/{dist/standalone/dist/standalone/components → components}/ui/slider.tsx +0 -0
  631. /package/{dist/standalone/dist/standalone/components → components}/ui/sonner.tsx +0 -0
  632. /package/{dist/standalone/dist/standalone/components → components}/ui/spinner.tsx +0 -0
  633. /package/{dist/standalone/dist/standalone/components → components}/ui/switch.tsx +0 -0
  634. /package/{dist/standalone/dist/standalone/components → components}/ui/table.tsx +0 -0
  635. /package/{dist/standalone/dist/standalone/components → components}/ui/tabs.tsx +0 -0
  636. /package/{dist/standalone/dist/standalone/components → components}/ui/textarea.tsx +0 -0
  637. /package/{dist/standalone/dist/standalone/components → components}/ui/tooltip.tsx +0 -0
  638. /package/{dist/standalone/dist/standalone/components.json → components.json} +0 -0
  639. /package/dist/standalone/.next/static/{yYMAgTQ-mApv2yRSEYmVO → Z9wFjRvfV46l9lmHXB7G1}/_buildManifest.js +0 -0
  640. /package/dist/standalone/.next/static/{yYMAgTQ-mApv2yRSEYmVO → Z9wFjRvfV46l9lmHXB7G1}/_clientMiddlewareManifest.js +0 -0
  641. /package/dist/standalone/.next/static/{yYMAgTQ-mApv2yRSEYmVO → Z9wFjRvfV46l9lmHXB7G1}/_ssgManifest.js +0 -0
  642. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/hooks → hooks}/use-mobile.ts +0 -0
  643. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/hooks → hooks}/use-paginated-rows.ts +0 -0
  644. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/hooks → hooks}/use-persisted-hide-completed.ts +0 -0
  645. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/hooks → hooks}/use-table-sort.ts +0 -0
  646. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/format-date.ts +0 -0
  647. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/format-duration.ts +0 -0
  648. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/format-list-date.ts +0 -0
  649. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/active-project.ts +0 -0
  650. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/autoconfig.ts +0 -0
  651. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/constants.ts +0 -0
  652. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/count-leaves.ts +0 -0
  653. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/detail-types.ts +0 -0
  654. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/discover.ts +0 -0
  655. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/epic-types.ts +0 -0
  656. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/flat-work-item-types.ts +0 -0
  657. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/frontmatter.ts +0 -0
  658. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/general-epic.ts +0 -0
  659. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/hide-completed-cookie.ts +0 -0
  660. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/identity.ts +0 -0
  661. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/item-types.ts +0 -0
  662. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/list-filters.ts +0 -0
  663. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/list-view-mode.ts +0 -0
  664. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/pagination.ts +0 -0
  665. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/parse-detail.ts +0 -0
  666. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/parse-epics.ts +0 -0
  667. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/parse-flat-lists.ts +0 -0
  668. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/parse-items.ts +0 -0
  669. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/parse-sections.ts +0 -0
  670. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/parse-stories.ts +0 -0
  671. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/pick-folder.ts +0 -0
  672. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/project-label.ts +0 -0
  673. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/projects.ts +0 -0
  674. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/resolve-work-item.ts +0 -0
  675. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/story-types.ts +0 -0
  676. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/table-sort.ts +0 -0
  677. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/timeframe-filters.ts +0 -0
  678. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/timing.ts +0 -0
  679. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/types.ts +0 -0
  680. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/validate.ts +0 -0
  681. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/taskmark/workspace.ts +0 -0
  682. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/lib → lib}/utils.ts +0 -0
  683. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/postcss.config.mjs → postcss.config.mjs} +0 -0
  684. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public → public}/file.svg +0 -0
  685. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public → public}/globe.svg +0 -0
  686. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public → public}/next.svg +0 -0
  687. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public → public}/tm_dark.png +0 -0
  688. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public → public}/tm_light.png +0 -0
  689. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public → public}/vercel.svg +0 -0
  690. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/public → public}/window.svg +0 -0
  691. /package/{dist/standalone/dist/standalone/dist/standalone/dist/standalone/dist/standalone/scripts → scripts}/prepare-standalone.mjs +0 -0
@@ -1,353 +0,0 @@
1
- import type { DiscoveredProject } from "@/lib/taskmark/types"
2
- import type {
3
- EpicWorkItemsList,
4
- FlatWorkItemList,
5
- FlatWorkItemRow,
6
- ProjectStoriesFlatList,
7
- ProjectTasksFlatList,
8
- StoryWithEpicRow,
9
- TaskWithParentsRow,
10
- WorkItemsViewList,
11
- WorkItemsViewRow,
12
- } from "@/lib/taskmark/flat-work-item-types"
13
- import { compareByStatusThenPriority } from "@/lib/taskmark/list-view-mode"
14
- import { parseEpicsForProject } from "@/lib/taskmark/parse-epics"
15
- import { parseItemsForEpic, parseItemsForStory } from "@/lib/taskmark/parse-items"
16
- import { parseStoriesForEpic } from "@/lib/taskmark/parse-stories"
17
-
18
- /**
19
- * Flat table of every epic, story, and task/bug on the active board.
20
- */
21
- export function parseAllWorkItemsForProject(
22
- project: DiscoveredProject
23
- ): FlatWorkItemList {
24
- const epicList = parseEpicsForProject(project)
25
- const rows: FlatWorkItemRow[] = []
26
- const errors: FlatWorkItemList["errors"] = epicList.errors.map((e) => ({
27
- filePath: e.filePath,
28
- message: e.message,
29
- }))
30
-
31
- for (const epic of epicList.epics) {
32
- rows.push({
33
- kind: "epic",
34
- id: epic.id,
35
- title: epic.title,
36
- status: epic.status,
37
- priority: epic.priority,
38
- size: epic.size,
39
- points: epic.points,
40
- estimateMinutes: epic.estimateMinutes,
41
- actualMinutes: epic.actualMinutes,
42
- actualMs: epic.actualMs,
43
- epicId: epic.id,
44
- epicTitle: epic.title,
45
- storyId: null,
46
- storyTitle: null,
47
- filePath: epic.filePath,
48
- project: epic.project,
49
- })
50
-
51
- const storyList = parseStoriesForEpic(project, epic.id)
52
- for (const err of storyList.errors) {
53
- errors.push({ filePath: err.filePath, message: err.message })
54
- }
55
-
56
- for (const story of storyList.stories) {
57
- rows.push({
58
- kind: "story",
59
- id: story.id,
60
- title: story.title,
61
- status: story.status,
62
- priority: story.priority,
63
- size: story.size,
64
- points: story.points,
65
- estimateMinutes: story.estimateMinutes,
66
- actualMinutes: story.actualMinutes,
67
- actualMs: story.actualMs,
68
- epicId: epic.id,
69
- epicTitle: epic.title,
70
- storyId: story.id,
71
- storyTitle: story.title,
72
- filePath: story.filePath,
73
- project: story.project,
74
- })
75
-
76
- const items = parseItemsForStory(project, epic.id, story.id)
77
- for (const err of items.errors) {
78
- errors.push({ filePath: err.filePath, message: err.message })
79
- }
80
- for (const item of items.items) {
81
- rows.push({
82
- kind: item.type,
83
- id: item.id,
84
- title: item.title,
85
- status: item.status,
86
- priority: item.priority,
87
- size: item.size,
88
- points: item.points,
89
- estimateMinutes: item.estimateMinutes,
90
- actualMinutes: item.actualMinutes,
91
- actualMs: item.actualMs,
92
- epicId: epic.id,
93
- epicTitle: epic.title,
94
- storyId: story.id,
95
- storyTitle: story.title,
96
- filePath: item.filePath,
97
- project: item.project,
98
- })
99
- }
100
- }
101
-
102
- const epicItems = parseItemsForEpic(project, epic.id)
103
- for (const err of epicItems.errors) {
104
- errors.push({ filePath: err.filePath, message: err.message })
105
- }
106
- for (const item of epicItems.items) {
107
- rows.push({
108
- kind: item.type,
109
- id: item.id,
110
- title: item.title,
111
- status: item.status,
112
- priority: item.priority,
113
- size: item.size,
114
- points: item.points,
115
- estimateMinutes: item.estimateMinutes,
116
- actualMinutes: item.actualMinutes,
117
- actualMs: item.actualMs,
118
- epicId: epic.id,
119
- epicTitle: epic.title,
120
- storyId: null,
121
- storyTitle: null,
122
- filePath: item.filePath,
123
- project: item.project,
124
- })
125
- }
126
- }
127
-
128
- return { project, rows, errors }
129
- }
130
-
131
- /** All stories across every epic, with epic id/title for UI tags. */
132
- export function parseAllStoriesForProject(
133
- project: DiscoveredProject
134
- ): ProjectStoriesFlatList {
135
- const epicList = parseEpicsForProject(project)
136
- const stories: StoryWithEpicRow[] = []
137
- const errors: ProjectStoriesFlatList["errors"] = epicList.errors.map((e) => ({
138
- filePath: e.filePath,
139
- message: e.message,
140
- }))
141
-
142
- for (const epic of epicList.epics) {
143
- const storyList = parseStoriesForEpic(project, epic.id)
144
- for (const err of storyList.errors) {
145
- errors.push({ filePath: err.filePath, message: err.message })
146
- }
147
- for (const story of storyList.stories) {
148
- stories.push({
149
- id: story.id,
150
- title: story.title,
151
- status: story.status,
152
- priority: story.priority,
153
- size: story.size,
154
- points: story.points,
155
- estimateMinutes: story.estimateMinutes,
156
- actualMinutes: story.actualMinutes,
157
- actualMs: story.actualMs,
158
- epicId: epic.id,
159
- epicTitle: epic.title,
160
- workItemCount: story.workItemCount,
161
- filePath: story.filePath,
162
- project: story.project,
163
- })
164
- }
165
- }
166
-
167
- stories.sort((a, b) => a.id.localeCompare(b.id))
168
- return { project, stories, errors }
169
- }
170
-
171
- /** All tasks/bugs across the board, with epic and story UI tags. */
172
- export function parseAllTasksForProject(
173
- project: DiscoveredProject
174
- ): ProjectTasksFlatList {
175
- const epicList = parseEpicsForProject(project)
176
- const items: TaskWithParentsRow[] = []
177
- const errors: ProjectTasksFlatList["errors"] = epicList.errors.map((e) => ({
178
- filePath: e.filePath,
179
- message: e.message,
180
- }))
181
-
182
- for (const epic of epicList.epics) {
183
- const storyList = parseStoriesForEpic(project, epic.id)
184
- for (const err of storyList.errors) {
185
- errors.push({ filePath: err.filePath, message: err.message })
186
- }
187
-
188
- for (const story of storyList.stories) {
189
- const storyItems = parseItemsForStory(project, epic.id, story.id)
190
- for (const err of storyItems.errors) {
191
- errors.push({ filePath: err.filePath, message: err.message })
192
- }
193
- for (const item of storyItems.items) {
194
- items.push({
195
- id: item.id,
196
- type: item.type,
197
- title: item.title,
198
- status: item.status,
199
- priority: item.priority,
200
- size: item.size,
201
- points: item.points,
202
- estimateMinutes: item.estimateMinutes,
203
- actualMinutes: item.actualMinutes,
204
- actualMs: item.actualMs,
205
- epicId: epic.id,
206
- epicTitle: epic.title,
207
- storyId: story.id,
208
- storyTitle: story.title,
209
- filePath: item.filePath,
210
- project: item.project,
211
- })
212
- }
213
- }
214
-
215
- const epicItems = parseItemsForEpic(project, epic.id)
216
- for (const err of epicItems.errors) {
217
- errors.push({ filePath: err.filePath, message: err.message })
218
- }
219
- for (const item of epicItems.items) {
220
- items.push({
221
- id: item.id,
222
- type: item.type,
223
- title: item.title,
224
- status: item.status,
225
- priority: item.priority,
226
- size: item.size,
227
- points: item.points,
228
- estimateMinutes: item.estimateMinutes,
229
- actualMinutes: item.actualMinutes,
230
- actualMs: item.actualMs,
231
- epicId: epic.id,
232
- epicTitle: epic.title,
233
- storyId: null,
234
- storyTitle: null,
235
- filePath: item.filePath,
236
- project: item.project,
237
- })
238
- }
239
- }
240
-
241
- items.sort((a, b) => a.id.localeCompare(b.id))
242
- return { project, items, errors }
243
- }
244
-
245
- /**
246
- * Overall / Work items: stories + epic-direct tasks/bugs under one epic
247
- * (excludes tasks/bugs that live under a story). Sorted by status then priority.
248
- */
249
- export function parseWorkItemsForEpic(
250
- project: DiscoveredProject,
251
- epicId: string,
252
- epicTitle?: string | null
253
- ): EpicWorkItemsList {
254
- const rows: WorkItemsViewRow[] = []
255
- const errors: EpicWorkItemsList["errors"] = []
256
- const title = epicTitle ?? null
257
-
258
- const storyList = parseStoriesForEpic(project, epicId)
259
- for (const err of storyList.errors) {
260
- errors.push({ filePath: err.filePath, message: err.message })
261
- }
262
- const resolvedTitle = title ?? storyList.epicTitle
263
- for (const story of storyList.stories) {
264
- rows.push({
265
- kind: "story",
266
- id: story.id,
267
- title: story.title,
268
- status: story.status,
269
- priority: story.priority,
270
- size: story.size,
271
- points: story.points,
272
- estimateMinutes: story.estimateMinutes,
273
- actualMinutes: story.actualMinutes,
274
- actualMs: story.actualMs,
275
- epicId,
276
- epicTitle: resolvedTitle ?? epicId,
277
- tags: story.tags,
278
- reporters: story.reporters,
279
- resolvers: story.resolvers,
280
- created: story.created,
281
- completedAt: story.completedAt,
282
- workItemCount: story.workItemCount,
283
- doneWorkItemCount: story.doneWorkItemCount,
284
- filePath: story.filePath,
285
- project: story.project,
286
- })
287
- }
288
-
289
- const epicItems = parseItemsForEpic(project, epicId)
290
- for (const err of epicItems.errors) {
291
- errors.push({ filePath: err.filePath, message: err.message })
292
- }
293
- for (const item of epicItems.items) {
294
- rows.push({
295
- kind: item.type,
296
- id: item.id,
297
- title: item.title,
298
- status: item.status,
299
- priority: item.priority,
300
- size: item.size,
301
- points: item.points,
302
- estimateMinutes: item.estimateMinutes,
303
- actualMinutes: item.actualMinutes,
304
- actualMs: item.actualMs,
305
- epicId,
306
- epicTitle: resolvedTitle ?? epicId,
307
- tags: item.tags,
308
- reporters: item.reporters,
309
- resolvers: item.resolvers,
310
- created: item.created,
311
- completedAt: item.completedAt,
312
- workItemCount: 0,
313
- doneWorkItemCount: 0,
314
- filePath: item.filePath,
315
- project: item.project,
316
- })
317
- }
318
-
319
- rows.sort(compareByStatusThenPriority)
320
- return {
321
- project,
322
- epicId,
323
- epicTitle: resolvedTitle,
324
- rows,
325
- errors,
326
- }
327
- }
328
-
329
- /**
330
- * Work items tab: all stories + epic-direct tasks/bugs only
331
- * (excludes tasks/bugs that live under a story). Sorted by status then priority.
332
- */
333
- export function parseWorkItemsViewForProject(
334
- project: DiscoveredProject
335
- ): WorkItemsViewList {
336
- const epicList = parseEpicsForProject(project)
337
- const rows: WorkItemsViewRow[] = []
338
- const errors: WorkItemsViewList["errors"] = epicList.errors.map((e) => ({
339
- filePath: e.filePath,
340
- message: e.message,
341
- }))
342
-
343
- for (const epic of epicList.epics) {
344
- const epicWorkItems = parseWorkItemsForEpic(project, epic.id, epic.title)
345
- for (const err of epicWorkItems.errors) {
346
- errors.push({ filePath: err.filePath, message: err.message })
347
- }
348
- rows.push(...epicWorkItems.rows)
349
- }
350
-
351
- rows.sort(compareByStatusThenPriority)
352
- return { project, rows, errors }
353
- }
@@ -1,318 +0,0 @@
1
- import fs from "node:fs"
2
- import path from "node:path"
3
-
4
- import type { DiscoveredProject } from "@/lib/taskmark/types"
5
- import type {
6
- ItemParseError,
7
- ItemSummary,
8
- ItemType,
9
- StoryItemList,
10
- } from "@/lib/taskmark/item-types"
11
- import {
12
- asNumberOrNull,
13
- asString,
14
- asStringArray,
15
- extractFrontmatter,
16
- } from "@/lib/taskmark/frontmatter"
17
- import { asContributorList } from "@/lib/taskmark/identity"
18
- import { findEpicFolder } from "@/lib/taskmark/parse-stories"
19
- import { readTimingFields } from "@/lib/taskmark/timing"
20
-
21
- type StoryFolder = {
22
- dirName: string
23
- storyFile: string
24
- id: string
25
- title: string
26
- epicDirName: string
27
- }
28
-
29
- function readStoryFolderMeta(
30
- storyDir: string,
31
- dirName: string,
32
- epicDirName: string
33
- ): StoryFolder | null {
34
- const storyFile = path.join(storyDir, "story.md")
35
- if (!fs.existsSync(storyFile)) return null
36
-
37
- let raw: string
38
- try {
39
- raw = fs.readFileSync(storyFile, "utf8")
40
- } catch {
41
- return null
42
- }
43
-
44
- let frontmatter: Record<string, unknown> | null
45
- try {
46
- frontmatter = extractFrontmatter(raw)
47
- } catch {
48
- return null
49
- }
50
- if (!frontmatter) return null
51
-
52
- const id = asString(frontmatter.id)
53
- const title = asString(frontmatter.title)
54
- if (!id) return null
55
-
56
- return { dirName, storyFile, id, title, epicDirName }
57
- }
58
-
59
- /** Resolve the story folder under an epic for a given story id. */
60
- export function findStoryFolder(
61
- boardPath: string,
62
- epicId: string,
63
- storyId: string
64
- ): StoryFolder | null {
65
- const epic = findEpicFolder(boardPath, epicId)
66
- if (!epic) return null
67
-
68
- const storiesDir = path.join(boardPath, "epics", epic.dirName, "stories")
69
- let entries: fs.Dirent[]
70
- try {
71
- entries = fs.readdirSync(storiesDir, { withFileTypes: true })
72
- } catch {
73
- return null
74
- }
75
-
76
- for (const entry of entries) {
77
- if (!entry.isDirectory() || entry.name.startsWith(".")) continue
78
- const meta = readStoryFolderMeta(
79
- path.join(storiesDir, entry.name),
80
- entry.name,
81
- epic.dirName
82
- )
83
- if (meta?.id === storyId) return meta
84
- }
85
- return null
86
- }
87
-
88
- function listItemMarkdownFiles(itemsParentDir: string): string[] {
89
- const itemsDir = path.join(itemsParentDir, "items")
90
- let entries: fs.Dirent[]
91
- try {
92
- entries = fs.readdirSync(itemsDir, { withFileTypes: true })
93
- } catch {
94
- return []
95
- }
96
-
97
- const files: string[] = []
98
- for (const entry of entries) {
99
- if (!entry.isFile() || entry.name.startsWith(".")) continue
100
- if (!entry.name.endsWith(".md")) continue
101
- files.push(path.join(itemsDir, entry.name))
102
- }
103
- return files.sort()
104
- }
105
-
106
- function resolveItemType(
107
- frontmatter: Record<string, unknown>,
108
- id: string
109
- ): ItemType {
110
- const raw = asString(frontmatter.type).toLowerCase()
111
- if (raw === "bug") return "bug"
112
- if (raw === "task") return "task"
113
- if (id.startsWith("B-")) return "bug"
114
- return "task"
115
- }
116
-
117
- function parseItemFile(
118
- filePath: string,
119
- project: DiscoveredProject,
120
- parentId: string,
121
- epicId: string
122
- ): { item?: ItemSummary; error?: ItemParseError } {
123
- let raw: string
124
- try {
125
- raw = fs.readFileSync(filePath, "utf8")
126
- } catch (err) {
127
- return {
128
- error: {
129
- filePath,
130
- projectId: project.id,
131
- projectName: project.name,
132
- storyId: parentId,
133
- message: err instanceof Error ? err.message : "Failed to read file",
134
- },
135
- }
136
- }
137
-
138
- let frontmatter: Record<string, unknown> | null
139
- try {
140
- frontmatter = extractFrontmatter(raw)
141
- } catch (err) {
142
- return {
143
- error: {
144
- filePath,
145
- projectId: project.id,
146
- projectName: project.name,
147
- storyId: parentId,
148
- message:
149
- err instanceof Error ? err.message : "Invalid YAML frontmatter",
150
- },
151
- }
152
- }
153
-
154
- if (!frontmatter) {
155
- return {
156
- error: {
157
- filePath,
158
- projectId: project.id,
159
- projectName: project.name,
160
- storyId: parentId,
161
- message: "Missing or invalid YAML frontmatter",
162
- },
163
- }
164
- }
165
-
166
- const id = asString(frontmatter.id)
167
- const title = asString(frontmatter.title)
168
- if (!id || !title) {
169
- return {
170
- error: {
171
- filePath,
172
- projectId: project.id,
173
- projectName: project.name,
174
- storyId: parentId,
175
- message: "Frontmatter requires id and title",
176
- },
177
- }
178
- }
179
-
180
- return {
181
- item: {
182
- id,
183
- type: resolveItemType(frontmatter, id),
184
- title,
185
- status: asString(frontmatter.status, "unknown"),
186
- priority: asString(frontmatter.priority, "medium"),
187
- size: asString(frontmatter.size, "—"),
188
- points: asNumberOrNull(frontmatter.points),
189
- ...readTimingFields(frontmatter),
190
- tags: asStringArray(frontmatter.tags),
191
- reporters: asContributorList(frontmatter.reporters),
192
- resolvers: asContributorList(frontmatter.resolvers),
193
- created: asString(frontmatter.created),
194
- completedAt: asString(frontmatter.completed_at),
195
- parent: asString(frontmatter.parent, parentId),
196
- epic: asString(frontmatter.epic, epicId),
197
- filePath,
198
- project: {
199
- id: project.id,
200
- name: project.name,
201
- projectPath: project.projectPath,
202
- boardPath: project.boardPath,
203
- },
204
- },
205
- }
206
- }
207
-
208
- /**
209
- * Parse all tasks/bugs under a selected story for a project's board root.
210
- */
211
- export function parseItemsForStory(
212
- project: DiscoveredProject,
213
- epicId: string,
214
- storyId: string
215
- ): StoryItemList {
216
- const folder = findStoryFolder(project.boardPath, epicId, storyId)
217
- if (!folder) {
218
- const epic = findEpicFolder(project.boardPath, epicId)
219
- return {
220
- project,
221
- epicId,
222
- storyId,
223
- storyTitle: null,
224
- items: [],
225
- errors: [
226
- {
227
- filePath: epic
228
- ? path.join(project.boardPath, "epics", epic.dirName, "stories")
229
- : path.join(project.boardPath, "epics"),
230
- projectId: project.id,
231
- projectName: project.name,
232
- storyId,
233
- message: epic
234
- ? `Story ${storyId} not found under epic ${epicId}`
235
- : `Epic ${epicId} not found under this board`,
236
- },
237
- ],
238
- }
239
- }
240
-
241
- const storyDir = path.join(
242
- project.boardPath,
243
- "epics",
244
- folder.epicDirName,
245
- "stories",
246
- folder.dirName
247
- )
248
- const files = listItemMarkdownFiles(storyDir)
249
- const items: ItemSummary[] = []
250
- const errors: ItemParseError[] = []
251
-
252
- for (const filePath of files) {
253
- const result = parseItemFile(filePath, project, storyId, epicId)
254
- if (result.item) items.push(result.item)
255
- if (result.error) errors.push(result.error)
256
- }
257
-
258
- items.sort((a, b) => a.id.localeCompare(b.id))
259
-
260
- return {
261
- project,
262
- epicId,
263
- storyId,
264
- storyTitle: folder.title || null,
265
- items,
266
- errors,
267
- }
268
- }
269
-
270
- /**
271
- * Parse tasks/bugs living directly under an epic (epics/{E}/items/), no story.
272
- */
273
- export function parseItemsForEpic(
274
- project: DiscoveredProject,
275
- epicId: string
276
- ): StoryItemList {
277
- const epic = findEpicFolder(project.boardPath, epicId)
278
- if (!epic) {
279
- return {
280
- project,
281
- epicId,
282
- storyId: epicId,
283
- storyTitle: null,
284
- items: [],
285
- errors: [
286
- {
287
- filePath: path.join(project.boardPath, "epics"),
288
- projectId: project.id,
289
- projectName: project.name,
290
- storyId: epicId,
291
- message: `Epic ${epicId} not found under this board`,
292
- },
293
- ],
294
- }
295
- }
296
-
297
- const epicDir = path.join(project.boardPath, "epics", epic.dirName)
298
- const files = listItemMarkdownFiles(epicDir)
299
- const items: ItemSummary[] = []
300
- const errors: ItemParseError[] = []
301
-
302
- for (const filePath of files) {
303
- const result = parseItemFile(filePath, project, epicId, epicId)
304
- if (result.item) items.push(result.item)
305
- if (result.error) errors.push(result.error)
306
- }
307
-
308
- items.sort((a, b) => a.id.localeCompare(b.id))
309
-
310
- return {
311
- project,
312
- epicId,
313
- storyId: epicId,
314
- storyTitle: "Epic-direct",
315
- items,
316
- errors,
317
- }
318
- }