kireji 0.9.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/README.md +3 -3
  2. package/package.json +1 -1
  3. package/src/app/kireji/description +1 -1
  4. package/src/app/kireji/editor/sections/type.d.ts +1 -0
  5. package/src/app/kireji/editor/tab-group/routeID-distribute.js +3 -0
  6. package/src/app/kireji/issue-tracker/filters/apply.js +29 -0
  7. package/src/app/kireji/issue-tracker/filters/boolean/part.json +10 -0
  8. package/src/app/kireji/issue-tracker/filters/boolean/point.js +7 -0
  9. package/src/app/kireji/issue-tracker/filters/boolean/view-update.js +1 -0
  10. package/src/app/kireji/issue-tracker/filters/constants.js +2 -0
  11. package/src/app/kireji/issue-tracker/filters/dropdown/constants.js +2 -0
  12. package/src/app/kireji/issue-tracker/filters/dropdown/none/part.json +1 -0
  13. package/src/app/kireji/issue-tracker/filters/dropdown/part.html_.js +15 -0
  14. package/src/app/kireji/issue-tracker/filters/dropdown/part.json +3 -0
  15. package/src/app/kireji/issue-tracker/filters/dropdown/priority/part.json +1 -0
  16. package/src/app/kireji/issue-tracker/filters/dropdown/status/part.json +1 -0
  17. package/src/app/kireji/issue-tracker/filters/dropdown/type.d.ts +12 -0
  18. package/src/app/kireji/issue-tracker/filters/dropdown/view-update.js +10 -0
  19. package/src/app/kireji/issue-tracker/filters/order/by/date/part.json +1 -0
  20. package/src/app/kireji/issue-tracker/filters/order/by/part.json +9 -0
  21. package/src/app/kireji/issue-tracker/filters/order/by/priority/part.json +1 -0
  22. package/src/app/kireji/issue-tracker/filters/order/by/status/part.json +1 -0
  23. package/src/app/kireji/issue-tracker/filters/order/by/title/part.json +1 -0
  24. package/src/app/kireji/issue-tracker/filters/order/by/type.d.ts +11 -0
  25. package/src/app/kireji/issue-tracker/filters/order/by/view-update.js +2 -0
  26. package/src/app/kireji/issue-tracker/filters/order/descending/part.json +3 -0
  27. package/src/app/kireji/issue-tracker/filters/order/descending/view-update.js +6 -0
  28. package/src/app/kireji/issue-tracker/filters/order/part.json +3 -0
  29. package/src/app/kireji/issue-tracker/filters/order/type.d.ts +10 -0
  30. package/src/app/kireji/issue-tracker/filters/part.css +149 -0
  31. package/src/app/kireji/issue-tracker/filters/part.html_.js +10 -3
  32. package/src/app/kireji/issue-tracker/filters/part.json +10 -1
  33. package/src/app/kireji/issue-tracker/filters/point.js +27 -0
  34. package/src/app/kireji/issue-tracker/filters/priority/a/part.json +3 -0
  35. package/src/app/kireji/issue-tracker/filters/priority/b/part.json +3 -0
  36. package/src/app/kireji/issue-tracker/filters/priority/c/part.json +3 -0
  37. package/src/app/kireji/issue-tracker/filters/priority/part.json +3 -0
  38. package/src/app/kireji/issue-tracker/filters/priority/type.d.ts +11 -0
  39. package/src/app/kireji/issue-tracker/filters/status/doing/part.json +3 -0
  40. package/src/app/kireji/issue-tracker/filters/status/done/part.json +3 -0
  41. package/src/app/kireji/issue-tracker/filters/status/part.json +8 -0
  42. package/src/app/kireji/issue-tracker/filters/status/to-do/part.json +3 -0
  43. package/src/app/kireji/issue-tracker/filters/status/type.d.ts +11 -0
  44. package/src/app/kireji/issue-tracker/filters/type.d.ts +13 -2
  45. package/src/app/kireji/issue-tracker/filters/view-hydrate.js +15 -0
  46. package/src/app/kireji/issue-tracker/filters/view-update.js +1 -0
  47. package/src/app/kireji/issue-tracker/issues.html_.js +1 -0
  48. package/src/app/kireji/issue-tracker/part.css_.js +1 -1
  49. package/src/app/kireji/issue-tracker/part.html_.js +1 -2
  50. package/src/app/kireji/issue-tracker/pathname-translate-canonical.js +0 -3
  51. package/src/app/kireji/issue-tracker/sections/issues/1776193480/title +1 -1
  52. package/src/app/kireji/issue-tracker/sections/issues/1776205544/links_.js +1 -0
  53. package/src/app/kireji/issue-tracker/sections/issues/1776208669/links_.js +1 -0
  54. package/src/app/kireji/issue-tracker/sections/issues/1776208910/description +7 -1
  55. package/src/app/kireji/issue-tracker/sections/issues/1776209115/links_.js +3 -0
  56. package/src/app/kireji/issue-tracker/sections/issues/1776211364/description +1 -1
  57. package/src/app/kireji/issue-tracker/sections/issues/1776211364/links_.js +5 -1
  58. package/src/app/kireji/issue-tracker/sections/issues/1776212048/links_.js +3 -0
  59. package/src/app/kireji/issue-tracker/sections/issues/1776212294/links_.js +4 -0
  60. package/src/app/kireji/issue-tracker/sections/issues/1776212412/links_.js +3 -0
  61. package/src/app/kireji/issue-tracker/sections/issues/1776212585/links_.js +3 -0
  62. package/src/app/kireji/issue-tracker/sections/issues/1776212811/links_.js +3 -0
  63. package/src/app/kireji/issue-tracker/sections/issues/1776262432/description +1 -0
  64. package/src/app/kireji/issue-tracker/sections/issues/1776262432/links_.js +8 -0
  65. package/src/app/kireji/issue-tracker/sections/issues/1776262432/part.json +3 -0
  66. package/src/app/kireji/issue-tracker/sections/issues/1776262432/priority +1 -0
  67. package/src/app/kireji/issue-tracker/sections/issues/1776262432/status +1 -0
  68. package/src/app/kireji/issue-tracker/sections/issues/1776262432/title +1 -0
  69. package/src/app/kireji/issue-tracker/sections/issues/1776263309/description +3 -0
  70. package/src/app/kireji/issue-tracker/sections/issues/1776263309/links_.js +3 -0
  71. package/src/app/kireji/issue-tracker/sections/issues/1776263309/part.json +3 -0
  72. package/src/app/kireji/issue-tracker/sections/issues/1776263309/priority +1 -0
  73. package/src/app/kireji/issue-tracker/sections/issues/1776263309/status +1 -0
  74. package/src/app/kireji/issue-tracker/sections/issues/1776263309/title +1 -0
  75. package/src/app/kireji/issue-tracker/sections/issues/1776282415/description +1 -0
  76. package/src/app/kireji/issue-tracker/sections/issues/1776282415/links_.js +3 -0
  77. package/src/app/kireji/issue-tracker/sections/issues/1776282415/part.json +3 -0
  78. package/src/app/kireji/issue-tracker/sections/issues/1776282415/priority +1 -0
  79. package/src/app/kireji/issue-tracker/sections/issues/1776282415/status +1 -0
  80. package/src/app/kireji/issue-tracker/sections/issues/1776282415/title +1 -0
  81. package/src/app/kireji/issue-tracker/sections/issues/1776307785/affects_.js +3 -0
  82. package/src/app/kireji/issue-tracker/sections/issues/1776307785/description +1 -0
  83. package/src/app/kireji/issue-tracker/sections/issues/1776307785/part.json +3 -0
  84. package/src/app/kireji/issue-tracker/sections/issues/1776307785/priority +1 -0
  85. package/src/app/kireji/issue-tracker/sections/issues/1776307785/status +1 -0
  86. package/src/app/kireji/issue-tracker/sections/issues/1776307785/title +1 -0
  87. package/src/app/kireji/issue-tracker/sections/issues/1776316907/affects_.js +3 -0
  88. package/src/app/kireji/issue-tracker/sections/issues/1776316907/description +5 -0
  89. package/src/app/kireji/issue-tracker/sections/issues/1776316907/part.json +3 -0
  90. package/src/app/kireji/issue-tracker/sections/issues/1776316907/priority +1 -0
  91. package/src/app/kireji/issue-tracker/sections/issues/1776316907/status +1 -0
  92. package/src/app/kireji/issue-tracker/sections/issues/1776316907/title +1 -0
  93. package/src/app/kireji/issue-tracker/sections/issues/1776319745/affects_.js +3 -0
  94. package/src/app/kireji/issue-tracker/sections/issues/1776319745/description +7 -0
  95. package/src/app/kireji/issue-tracker/sections/issues/1776319745/part.json +3 -0
  96. package/src/app/kireji/issue-tracker/sections/issues/1776319745/priority +1 -0
  97. package/src/app/kireji/issue-tracker/sections/issues/1776319745/status +1 -0
  98. package/src/app/kireji/issue-tracker/sections/issues/1776319745/title +1 -0
  99. package/src/app/kireji/issue-tracker/sections/issues/1776320694/affects_.js +3 -0
  100. package/src/app/kireji/issue-tracker/sections/issues/1776320694/description +3 -0
  101. package/src/app/kireji/issue-tracker/sections/issues/1776320694/links_.js +3 -0
  102. package/src/app/kireji/issue-tracker/sections/issues/1776320694/part.json +3 -0
  103. package/src/app/kireji/issue-tracker/sections/issues/1776320694/priority +1 -0
  104. package/src/app/kireji/issue-tracker/sections/issues/1776320694/status +1 -0
  105. package/src/app/kireji/issue-tracker/sections/issues/1776320694/title +1 -0
  106. package/src/app/kireji/issue-tracker/sections/issues/1776321398/affects_.js +3 -0
  107. package/src/app/kireji/issue-tracker/sections/issues/1776321398/description +1 -0
  108. package/src/app/kireji/issue-tracker/sections/issues/1776321398/links_.js +3 -0
  109. package/src/app/kireji/issue-tracker/sections/issues/1776321398/part.json +3 -0
  110. package/src/app/kireji/issue-tracker/sections/issues/1776321398/priority +1 -0
  111. package/src/app/kireji/issue-tracker/sections/issues/1776321398/status +1 -0
  112. package/src/app/kireji/issue-tracker/sections/issues/1776321398/title +1 -0
  113. package/src/app/kireji/issue-tracker/sections/issues/1776321594/affects_.js +4 -0
  114. package/src/app/kireji/issue-tracker/sections/issues/1776321594/description +8 -0
  115. package/src/app/kireji/issue-tracker/sections/issues/1776321594/part.json +3 -0
  116. package/src/app/kireji/issue-tracker/sections/issues/1776321594/priority +1 -0
  117. package/src/app/kireji/issue-tracker/sections/issues/1776321594/status +1 -0
  118. package/src/app/kireji/issue-tracker/sections/issues/1776321594/title +1 -0
  119. package/src/app/kireji/issue-tracker/sections/issues/1776323037/affects_.js +3 -0
  120. package/src/app/kireji/issue-tracker/sections/issues/1776323037/description +1 -0
  121. package/src/app/kireji/issue-tracker/sections/issues/1776323037/part.json +3 -0
  122. package/src/app/kireji/issue-tracker/sections/issues/1776323037/priority +1 -0
  123. package/src/app/kireji/issue-tracker/sections/issues/1776323037/status +1 -0
  124. package/src/app/kireji/issue-tracker/sections/issues/1776323037/title +1 -0
  125. package/src/app/kireji/issue-tracker/sections/issues/issue/card.html_.js +2 -2
  126. package/src/app/kireji/issue-tracker/sections/issues/issue/date-nice.js +1 -0
  127. package/src/app/kireji/issue-tracker/sections/issues/issue/part.html_.js +3 -2
  128. package/src/app/kireji/issue-tracker/sections/issues/issue/part.json +3 -0
  129. package/src/app/kireji/issue-tracker/sections/issues/issue/type.d.ts +2 -0
  130. package/src/app/kireji/issue-tracker/static.css +125 -33
  131. package/src/app/kireji/issue-tracker/type.d.ts +3 -0
  132. package/src/app/kireji/meta-description +1 -1
  133. package/src/build.js +5 -2
  134. package/src/description +1 -1
  135. package/src/landing-model.json +19 -1
  136. package/src/parts/abstract/match/routeID-collect.js +1 -1
  137. package/src/parts/abstract/match/routeID-distribute.js +3 -3
  138. package/src/parts/abstract/mesh/build.js +7 -2
  139. package/src/parts/abstract/mesh/data-get.js +4 -3
  140. package/src/parts/abstract/mesh/ray-cast.js +2 -2
  141. package/src/parts/abstract/mesh/routeID-distribute.js +3 -0
  142. package/src/parts/abstract/mesh/type.d.ts +5 -1
  143. package/src/parts/abstract/mix/model_.js +2 -2
  144. package/src/parts/abstract/mix/routeID-distribute.js +2 -2
  145. package/src/parts/abstract/part/build.js +20 -12
  146. package/src/parts/abstract/part/part-.xcf +0 -0
  147. package/src/parts/abstract/part/part.json +6 -3
  148. package/src/parts/abstract/part/part.xcf +0 -0
  149. package/src/parts/abstract/part/routeID-set.js +1 -1
  150. package/src/parts/abstract/part/type.d.ts +13 -7
  151. package/src/parts/abstract/part-mask/routeID-distribute.js +3 -0
  152. package/src/parts/abstract/permutation/routeID-distribute.js +3 -0
  153. package/src/parts/core/gpu/buffer-create.js +12 -0
  154. package/src/parts/core/gpu/part.json +7 -1
  155. package/src/parts/core/gpu/type.d.ts +4 -0
  156. package/src/parts/core/hot-keys/combo_.js +2 -0
  157. package/src/parts/desktop/color/part.html_.js +1 -1
  158. package/src/parts/desktop/era/modern/part.css +5 -10
  159. package/src/parts/desktop/era/part.html_.js +1 -1
  160. package/src/parts/desktop/era/vintage/static.css +5 -7
  161. package/src/schema.kireji.json +2 -2
  162. package/src/schema.part.json +8 -1
  163. package/src/static.css +2 -1
  164. package/src/type.d.ts +6 -4
  165. package/src/parts/core/gpu/webgpu.d.ts +0 -251
@@ -1 +1,5 @@
1
- return [kirejiIssues[1776207644], kirejiIssues[1776205152]]
1
+ return [
2
+ kirejiIssues[1776262432],
3
+ kirejiIssues[1776207644],
4
+ kirejiIssues[1776205152],
5
+ ]
@@ -0,0 +1,3 @@
1
+ return [
2
+ kirejiIssues[1776262432],
3
+ ]
@@ -0,0 +1,4 @@
1
+ return [
2
+ kirejiIssues[1776262432],
3
+ kirejiIssues[1776320694],
4
+ ]
@@ -0,0 +1,3 @@
1
+ return [
2
+ kirejiIssues[1776262432],
3
+ ]
@@ -0,0 +1,3 @@
1
+ return [
2
+ kirejiIssues[1776262432],
3
+ ]
@@ -0,0 +1,3 @@
1
+ return [
2
+ kirejiIssues[1776262432],
3
+ ]
@@ -0,0 +1 @@
1
+ Implement the full operating system experience for the Demo Ecosystem. This issue links together a collection of smaller issues that relate to various features of the operating system that need to be completed in order to make it feel well-rounded.
@@ -0,0 +1,8 @@
1
+ return [
2
+ kirejiIssues[1776212811],
3
+ kirejiIssues[1776212585],
4
+ kirejiIssues[1776212412],
5
+ kirejiIssues[1776212294],
6
+ kirejiIssues[1776212048],
7
+ kirejiIssues[1776211364]
8
+ ]
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "issue.."
3
+ }
@@ -0,0 +1 @@
1
+ Complete Operating System
@@ -0,0 +1,3 @@
1
+ Mobile user interface/usability requires some additional feature support on top of the desktop architecture. This means making special consideration for the lack of a keyboard and the tap feature. Where possible, employ the same usability solutions across both platforms for a consistent look-and-feel across devices. For example, a tall and narrow browser window should look the same as the equivalent portrait layout on a mobile device. Where possible, let click-and-drag on screen feel and behave like tab-and-drag on mobile.
2
+
3
+ This is an overall issue that links together all mobile-specific issues.
@@ -0,0 +1,3 @@
1
+ return [
2
+ kirejiIssues[1776209115],
3
+ ]
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "issue.."
3
+ }
@@ -0,0 +1 @@
1
+ Improve Mobile Usability
@@ -0,0 +1 @@
1
+ In the Issue Tracker app, implement filters over the issue list. Make sure that the filters and list look and feel good in both vintage and modern era for both light and dark color modes on both mobile and desktop.
@@ -0,0 +1,3 @@
1
+ return [
2
+ _.app.kireji.issueTracker
3
+ ]
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "issue.."
3
+ }
@@ -0,0 +1,3 @@
1
+ return [
2
+ _.app.kireji.issueTracker
3
+ ]
@@ -0,0 +1 @@
1
+ In both vintage and modern modes, the issue modal of the issue tracker doesn't look finished. It's especially clear in vintage, though; the exit button in the top right can lead to accidentally clicking the actual exit button, closing the tracker app completely. Tidy up the UI and make the modal feel like a complete feature.
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "issue.."
3
+ }
@@ -0,0 +1 @@
1
+ Improve Issue Modal
@@ -0,0 +1,3 @@
1
+ return [
2
+ _.parts.abstract.part
3
+ ]
@@ -0,0 +1,5 @@
1
+ Right now, there is sometimes visible FOUC when loading server-rendered pages because of missing early-load artwork.
2
+
3
+ All .png and .gif files should have a corresponding, maximally compressed early-load png preview.
4
+
5
+ The problem is especially noticable on glowstick.click.
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "issue.."
3
+ }
@@ -0,0 +1,3 @@
1
+ return [
2
+ _.app.kireji.issueTracker
3
+ ]
@@ -0,0 +1,7 @@
1
+ Right now, the project-specific issues are mixed directly with the project's own issues.
2
+
3
+ We know which issues are which thanks to a pass that detects the origin of all parts during the packing stage of the build process. This can be used to separate the two.
4
+
5
+ Syncronize the name of the project using the repo name, which is also known during the build process. The framework project is always called kireji. Consider renaming all generic "ecosystem" items (such as the root of the domain outliner) with the project name.
6
+
7
+ In the issue tracker, let the user filter by project and see at a glance whether the issue belongs to the repo project or the framework.
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "issue.."
3
+ }
@@ -0,0 +1 @@
1
+ Add Projects to Issue Tracker
@@ -0,0 +1,3 @@
1
+ return [
2
+ _.parts.desktop.taskBar.tray.stats
3
+ ]
@@ -0,0 +1,3 @@
1
+ The FPS meter doesn't look complete. A better idea might be to have a diagnostics/debug overlay which can be toggled using a switch in the properties app.
2
+
3
+ It can then be set to enabled in the landing model for debugging and that landing model change can be left uncommitted.
@@ -0,0 +1,3 @@
1
+ return [
2
+ kirejiIssues[1776212294],
3
+ ]
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "issue.."
3
+ }
@@ -0,0 +1 @@
1
+ Improve FPS Meter
@@ -0,0 +1,3 @@
1
+ return [
2
+ _.app.kireji.editor.sections.issues
3
+ ]
@@ -0,0 +1 @@
1
+ At build time (or at selection time, whichever is optimal), establish the relationship between parts and the issues that affect them. Then, render the list of issue links (visually consistent with the issue tracker summary) in the Issues section of the part's Kireji editor summary.
@@ -0,0 +1,3 @@
1
+ return [
2
+ kirejiIssues[1776212294],
3
+ ]
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "issue.."
3
+ }
@@ -0,0 +1 @@
1
+ Improve FPS Meter
@@ -0,0 +1,4 @@
1
+ return [
2
+ _,
3
+ _.parts.abstract.part
4
+ ]
@@ -0,0 +1,8 @@
1
+ Currently, the project is read-only. The following problems need to be solved in order to implement the full IDE:
2
+
3
+ 1. How will modifications be stored so that they are not quickly lost? The user's local storage?
4
+ 2. How will modifications be made portable? JSON object export? Full git integration?
5
+ 3. How will the user be shown that the version of the project they are currently working in cannot be shared as a link (for example, a warning bar across the top of the screen)?
6
+ 4. How will the system know when and how to rebuild parts and hydrate views and states when parts are added, edited, moved or removed in real-time? Is there a mathematical way to structure this nicely? Do we start with obvious things (like CSS and HTML snippets) and expand upon the logic from there? Do we build an cause-effect network at build time for propagating an update signal?
7
+ 5. What should happen if the user breaks the entire framework by editing the framework parts? Will there be some sort of fallback? What if the ability to fallback is also borked? Will the editable framework actually be a second running copy of the read-only framework inside of a frame or something so that the preview can be cancelled? How can we enable recovery of a broken instance of the framework so that users don't lose work?
8
+ 6. Should the framework parts and the project parts be held separately (i.e. user can override framework parts from the project to augment the framework but cannot delete the framework's original parts)? If so, this would require keeping a copy of both the framework's versions of files and the project's versions which I don't really prefer.
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "issue.."
3
+ }
@@ -0,0 +1 @@
1
+ Kireji Part Editor (IDE)
@@ -0,0 +1,3 @@
1
+ return [
2
+ _.app.kireji.issueTracker.filters
3
+ ]
@@ -0,0 +1 @@
1
+ The current order of statuses seems is ["doing", "done", "to-do"] (alphabetic). Instead, it should use the same explicit order as the filters do; to-do should come at the beginning.
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "issue.."
3
+ }
@@ -0,0 +1 @@
1
+ Fix Issue Tracker Status Sort Order
@@ -1,8 +1,8 @@
1
1
  return (
2
2
  `<a ${_.pointAttr()} href=${kirejiIssue.canonicalURL} class="issue-row" data-id="${kirejiIssue.key}" data-priority="${kirejiIssue.priority}" data-status="${kirejiIssue.status}">` + (
3
- // `<span class="issue-id">${issue.key}</span>` +
4
3
  `<span class="issue-title">${kirejiIssue.title}</span>` +
5
4
  `<span class="issue-priority">${kirejiIssue.priority}</span>` +
6
- `<span class="issue-status">${kirejiIssue.status}</span>`
5
+ `<span class="issue-status">${kirejiIssue.status}</span>` +
6
+ `<span class="issue-date">${kirejiIssue.niceDate(kirejiIssue.key)}</span>`
7
7
  ) + "</a>"
8
8
  )
@@ -0,0 +1 @@
1
+ return new Date(UNIX_TIMESTAMP * 1000).toLocaleString("en-US", { dateStyle: "medium" })
@@ -1,3 +1,4 @@
1
+ const linkedIssues = kirejiIssue.links.map(linked => linked["card.html"]).join("")
1
2
  return (
2
3
  `<h1>${kirejiIssue.title}</h1>` +
3
4
  `<button ${kirejiIssue.pointAttr("close")} class=exit-button>✕</button>` +
@@ -6,7 +7,7 @@ return (
6
7
  `<b>Priority:</b> <span class="issue-priority">${kirejiIssue.priority}</span>\n\n` +
7
8
  `<b>Status:</b> <span class="issue-status">${kirejiIssue.status}</span>\n\n` +
8
9
  `<b>Description:</b>\n${kirejiIssue.description}\n\n` +
9
- `<b>Affected Parts:</b>\n<span class="issue-affects">${kirejiIssue.affects.map(affected => affected.host).join(", ") || "None"}</span>\n\n` +
10
- `<b>Linked Issues:</b>\n<span class="issue-links">${kirejiIssue.links.map(linked => linked["card.html"]).join("<br>") || "None"}</span>`
10
+ `<b>Affected Parts:</b>\n<span class="issue-affects">${kirejiIssue.affects.map(affected => affected === _ ? "ecosystem" : affected.host).join(", ") || "None"}</span>\n\n` +
11
+ `<b>Linked Issues:</b>${linkedIssues ? `\n<span class="issue-links">${linkedIssues}</span>` : " None"}`
11
12
  ) + "</p>"
12
13
  )
@@ -4,6 +4,9 @@
4
4
  "close": [
5
5
  "POINTER_EVENT",
6
6
  "TARGET_ELEMENT"
7
+ ],
8
+ "date-nice": [
9
+ "UNIX_TIMESTAMP"
7
10
  ]
8
11
  }
9
12
  }
@@ -8,6 +8,8 @@ declare interface IKirejiIssue
8
8
  readonly affects: IPartAny[]
9
9
  readonly links: IKirejiIssue[]
10
10
  readonly "card.html": string
11
+ /** Outputs unix timestamps as a human-readable date, for consistent date formats across the notebook. */
12
+ readonly niceDate(UNIX_TIMESTAMP: string | number): string
11
13
  }
12
14
 
13
15
  declare const kirejiIssue: IKirejiIssue
@@ -1,22 +1,18 @@
1
- body:not(.dark) #issue-tracker_kireji_app {
1
+ body.modern:not(.dark) #issue-tracker_kireji_app {
2
2
  background-color: white;
3
3
  }
4
4
 
5
5
  #issue-tracker_kireji_app {
6
- --max-width: 696px;
7
- --outer-pad: calc((var(--app-width) - var(--rounded-width)) / 2);
8
- --rounded-width: calc(min(calc(round(down, var(--app-width), var(--spacing)) - (2 * var(--spacing))), var(--max-width)) - 4px);
9
- padding: var(--padding) var(--outer-pad);
10
6
  display: flex;
11
7
  flex-flow: column nowrap;
12
8
  }
13
9
 
10
+ body.modern #issue-tracker_kireji_app {
11
+ padding: var(--spacing);
12
+ }
13
+
14
14
  #kireji-issue-modal {
15
15
  position: absolute;
16
- left: calc(3 * var(--spacing));
17
- right: calc(3 * var(--spacing));
18
- top: calc(2 * var(--spacing));
19
- bottom: calc(2 * var(--spacing));
20
16
  background-color: var(--bg);
21
17
  padding: var(--spacing);
22
18
  display: flex;
@@ -24,6 +20,20 @@ body:not(.dark) #issue-tracker_kireji_app {
24
20
  flex-flow: column nowrap;
25
21
  }
26
22
 
23
+ body.modern #kireji-issue-modal {
24
+ left: calc(3 * var(--spacing));
25
+ right: calc(3 * var(--spacing));
26
+ top: calc(2 * var(--spacing));
27
+ bottom: calc(2 * var(--spacing));
28
+ }
29
+
30
+ body.vintage #kireji-issue-modal {
31
+ left: 0;
32
+ right: 0;
33
+ top: 0;
34
+ bottom: 0;
35
+ }
36
+
27
37
  #kireji-issue-modal .exit-button {
28
38
  position: absolute;
29
39
  right: var(--spacing);
@@ -41,10 +51,14 @@ body.modern #kireji-issue-modal {
41
51
  border-radius: calc(var(--spacing) / 2);
42
52
  }
43
53
 
44
- body:not(.dark) #kireji-issue-modal {
54
+ body.modern:not(.dark) #kireji-issue-modal {
45
55
  background-color: white;
46
56
  }
47
57
 
58
+ body.vintage #kireji-issue-modal {
59
+ background-color: var(--bg);
60
+ }
61
+
48
62
  #issue-tracker_kireji_app:has(#kireji-issue-modal:not(:empty)) {
49
63
  pointer-events: none;
50
64
  color: var(--fg-mode);
@@ -75,10 +89,13 @@ body:not(.dark) #kireji-issue-modal {
75
89
  overflow: hidden;
76
90
  text-overflow: ellipsis;
77
91
  white-space: pre;
92
+ }
93
+
94
+ body.modern #issue-tracker_kireji_app .issue-title {
78
95
  font-weight: 500;
79
96
  }
80
97
 
81
- #issue-tracker_kireji_app .issue-table>scroller->scroll-content {
98
+ #issue-tracker_kireji_app :is(.issue-table>scroller->scroll-content, .issue-links) {
82
99
  display: flex;
83
100
  flex-flow: column nowrap;
84
101
  width: 100%;
@@ -87,68 +104,124 @@ body:not(.dark) #kireji-issue-modal {
87
104
  #issue-tracker_kireji_app .issue-row {
88
105
  position: relative;
89
106
  display: flex;
90
- gap: var(--spacing);
91
- cursor: pointer;
92
107
  text-decoration: none;
93
108
  color: inherit;
94
- padding: calc(var(--spacing) / 2);
95
109
  }
96
110
 
97
- #issue-tracker_kireji_app .issue-row:hover {
98
- background-color: var(--accent-mode-est);
111
+ body.modern #issue-tracker_kireji_app .issue-row {
112
+ padding: calc(var(--spacing) / 2) 0;
113
+ }
114
+
115
+ body.modern #issue-tracker_kireji_app .issue-row:not(.header) {
99
116
  border-radius: calc(var(--spacing) / 3);
117
+ cursor: pointer;
100
118
  }
101
119
 
102
- #issue-tracker_kireji_app :is(.issue-status, .issue-priority) {
103
- width: var(--spacing);
104
- text-align: center;
105
- font-weight: 600;
106
- border-radius: calc(var(--spacing) / 4);
120
+ body.modern #issue-tracker_kireji_app .issue-row:not(.header):hover {
121
+ background-color: var(--accent-mode-est);
122
+ }
123
+
124
+ body.vintage #issue-tracker_kireji_app .issue-row>* {
125
+ padding: 4px;
126
+ }
127
+
128
+ #issue-tracker_kireji_app .issue-row>* {
129
+ line-height: var(--spacing);
130
+ }
131
+
132
+ body.vintage #issue-tracker_kireji_app .issue-row:not(.header):hover {
133
+ background-color: var(--accent);
134
+ color: white;
135
+ }
136
+
137
+ body.vintage.dark #issue-tracker_kireji_app .issue-row:not(.header):hover {
138
+ color: black;
139
+ }
140
+
141
+ #issue-tracker_kireji_app :is(.issue-status, .issue-priority, .issue-date) {
142
+ width: var(--column-width);
107
143
  display: inline-block;
108
144
  }
109
145
 
110
- #issue-tracker_kireji_app .issue-status {
146
+ #issue-tracker_kireji_app .issue-row>span {
147
+ position: relative;
148
+ }
149
+
150
+ body.vintage #issue-tracker_kireji_app .issue-date {
151
+ --column-width: calc(7 * var(--spacing));
152
+ }
153
+
154
+ body.modern #issue-tracker_kireji_app .issue-date {
155
+ --column-width: calc(7 * var(--spacing));
156
+ }
157
+
158
+ body.vintage #issue-tracker_kireji_app .issue-status {
159
+ --column-width: 76px;
160
+ }
161
+
162
+ body.modern #issue-tracker_kireji_app .issue-status {
163
+ --column-width: calc(6 * var(--spacing));
164
+ }
165
+
166
+ body.vintage #issue-tracker_kireji_app .issue-priority {
167
+ --column-width: 42px;
168
+ }
169
+
170
+ body.modern #issue-tracker_kireji_app .issue-priority {
171
+ --column-width: calc(4 * var(--spacing));
172
+ }
173
+
174
+ body.modern #issue-tracker_kireji_app :not(.header)>:is(.issue-status, .issue-priority, .issue-date) {
175
+ border-radius: calc(var(--spacing) / 4);
176
+ font-weight: 600;
177
+ font-size: calc(var(--spacing) * .7);
178
+ text-align: center;
179
+ line-height: inherit;
180
+ }
181
+
182
+ #issue-tracker_kireji_app :is(.issue-status, .issue-date) {
183
+ white-space: nowrap;
184
+ }
185
+
186
+ body.modern #issue-tracker_kireji_app :not(.header)>.issue-status {
111
187
  color: steelblue;
112
188
  background-color: powderblue;
113
- width: calc(5 * var(--spacing));
114
- font-size: calc(var(--spacing) * .7);
115
- line-height: var(--spacing);
116
189
  }
117
190
 
118
- body.dark #issue-tracker_kireji_app .issue-status {
191
+ body.modern.dark #issue-tracker_kireji_app :not(.header)>.issue-status {
119
192
  color: powderblue;
120
193
  background-color: steelblue;
121
194
  }
122
195
 
123
- #issue-tracker_kireji_app [data-status="doing"] .issue-status {
196
+ body.modern #issue-tracker_kireji_app :not(.header)[data-status="doing"]>.issue-status {
124
197
  color: brown;
125
198
  background-color: wheat;
126
199
  }
127
200
 
128
- body.dark #issue-tracker_kireji_app [data-status="doing"] .issue-status {
201
+ body.modern.dark #issue-tracker_kireji_app :not(.header)[data-status="doing"]>.issue-status {
129
202
  color: wheat;
130
203
  background-color: peru;
131
204
  }
132
205
 
133
- #issue-tracker_kireji_app [data-status="done"] .issue-status {
206
+ body.modern #issue-tracker_kireji_app :not(.header)[data-status="done"]>.issue-status {
134
207
  color: seagreen;
135
208
  background-color: palegreen;
136
209
  }
137
210
 
138
- body.dark #issue-tracker_kireji_app [data-status="done"] .issue-status {
211
+ body.modern.dark #issue-tracker_kireji_app :not(.header)[data-status="done"]>.issue-status {
139
212
  color: palegreen;
140
213
  background-color: seagreen;
141
214
  }
142
215
 
143
- #issue-tracker_kireji_app [data-priority="A"] .issue-priority {
216
+ body.modern #issue-tracker_kireji_app :not(.header)[data-priority="A"]>.issue-priority {
144
217
  color: red;
145
218
  }
146
219
 
147
- #issue-tracker_kireji_app [data-priority="B"] .issue-priority {
220
+ body.modern #issue-tracker_kireji_app :not(.header)[data-priority="B"]>.issue-priority {
148
221
  color: orange;
149
222
  }
150
223
 
151
- #issue-tracker_kireji_app [data-priority="C"] .issue-priority {
224
+ body.modern #issue-tracker_kireji_app :not(.header)[data-priority="C"]>.issue-priority {
152
225
  color: green;
153
226
  }
154
227
 
@@ -156,8 +229,27 @@ body.dark #issue-tracker_kireji_app [data-status="done"] .issue-status {
156
229
  min-height: 0;
157
230
  position: relative;
158
231
  overflow: hidden;
232
+ flex: 1;
159
233
  }
160
234
 
161
235
  #kireji-issue-modal .issue-row {
162
236
  pointer-events: all;
237
+ }
238
+
239
+ body.vintage #issue-tracker_kireji_app {
240
+ padding: 2px;
241
+ box-shadow: var(--deep-inset);
242
+ }
243
+
244
+ body.vintage #issue-tracker_kireji_app :is(.issue-table, .issue-links) {
245
+ background: white;
246
+ }
247
+
248
+ body.vintage.dark #issue-tracker_kireji_app :is(.issue-table, .issue-links) {
249
+ background: black;
250
+ }
251
+
252
+ body.vintage #issue-tracker_kireji_app .issue-links {
253
+ padding: 2px;
254
+ box-shadow: var(--deep-inset);
163
255
  }
@@ -5,6 +5,9 @@ declare interface IKirejiIssueTrackerApp
5
5
  readonly scroller: IScroller<IKirejiIssueTrackerApp>
6
6
  readonly sections: IKirejiIssueSections
7
7
  readonly filters: IKirejiIssueFilters
8
+
9
+ // Serialized Properties.
10
+ readonly "issues.html": string
8
11
  }
9
12
 
10
13
  declare const kirejiIssueTracker: IKirejiIssueTrackerApp
@@ -1 +1 @@
1
- This is a work-in-progress IDE. Everything is currently read-only. Explore the component model and hash function that power the Kireji Demo App Ecosystem.
1
+ This is a work-in-progress IDE. Everything is currently read-only. Explore the component model and hash function that power the Kireji Demo Ecosystem.