kireji 0.8.2 → 0.10.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.
- package/README.md +3 -3
- package/package.json +1 -1
- package/src/app/kireji/description +1 -1
- package/src/app/kireji/editor/point.js +0 -1
- package/src/app/kireji/editor/sections/issues/part.html_.js +5 -0
- package/src/app/kireji/editor/sections/issues/part.json +3 -0
- package/src/app/kireji/editor/sections/issues/title +1 -0
- package/src/app/kireji/editor/sections/state/part.html_.js +8 -8
- package/src/app/kireji/editor/tab-group/build.js +0 -1
- package/src/app/kireji/editor/tab-group/view-update.js +0 -3
- package/src/app/kireji/issue-tracker/constants.js +3 -0
- package/src/app/kireji/issue-tracker/filters/apply.js +29 -0
- package/src/app/kireji/issue-tracker/filters/boolean/part.json +10 -0
- package/src/app/kireji/issue-tracker/filters/boolean/point.js +7 -0
- package/src/app/kireji/issue-tracker/filters/boolean/view-update.js +1 -0
- package/src/app/kireji/issue-tracker/filters/constants.js +2 -0
- package/src/app/kireji/issue-tracker/filters/dropdown/constants.js +2 -0
- package/src/app/kireji/issue-tracker/filters/dropdown/none/part.json +1 -0
- package/src/app/kireji/issue-tracker/filters/dropdown/part.html_.js +15 -0
- package/src/app/kireji/issue-tracker/filters/dropdown/part.json +3 -0
- package/src/app/kireji/issue-tracker/filters/dropdown/priority/part.json +1 -0
- package/src/app/kireji/issue-tracker/filters/dropdown/status/part.json +1 -0
- package/src/app/kireji/issue-tracker/filters/dropdown/type.d.ts +12 -0
- package/src/app/kireji/issue-tracker/filters/dropdown/view-update.js +10 -0
- package/src/app/kireji/issue-tracker/filters/order/by/date/part.json +1 -0
- package/src/app/kireji/issue-tracker/filters/order/by/part.json +9 -0
- package/src/app/kireji/issue-tracker/filters/order/by/priority/part.json +1 -0
- package/src/app/kireji/issue-tracker/filters/order/by/status/part.json +1 -0
- package/src/app/kireji/issue-tracker/filters/order/by/title/part.json +1 -0
- package/src/app/kireji/issue-tracker/filters/order/by/type.d.ts +11 -0
- package/src/app/kireji/issue-tracker/filters/order/by/view-update.js +2 -0
- package/src/app/kireji/issue-tracker/filters/order/descending/part.json +3 -0
- package/src/app/kireji/issue-tracker/filters/order/descending/view-update.js +6 -0
- package/src/app/kireji/issue-tracker/filters/order/part.json +3 -0
- package/src/app/kireji/issue-tracker/filters/order/type.d.ts +10 -0
- package/src/app/kireji/issue-tracker/filters/part.css +149 -0
- package/src/app/kireji/issue-tracker/filters/part.html_.js +13 -0
- package/src/app/kireji/issue-tracker/filters/part.json +12 -0
- package/src/app/kireji/issue-tracker/filters/point.js +27 -0
- package/src/app/kireji/issue-tracker/filters/priority/a/part.json +3 -0
- package/src/app/kireji/issue-tracker/filters/priority/b/part.json +3 -0
- package/src/app/kireji/issue-tracker/filters/priority/c/part.json +3 -0
- package/src/app/kireji/issue-tracker/filters/priority/part.json +3 -0
- package/src/app/kireji/issue-tracker/filters/priority/type.d.ts +11 -0
- package/src/app/kireji/issue-tracker/filters/status/doing/part.json +3 -0
- package/src/app/kireji/issue-tracker/filters/status/done/part.json +3 -0
- package/src/app/kireji/issue-tracker/filters/status/part.json +8 -0
- package/src/app/kireji/issue-tracker/filters/status/to-do/part.json +3 -0
- package/src/app/kireji/issue-tracker/filters/status/type.d.ts +11 -0
- package/src/app/kireji/issue-tracker/filters/type.d.ts +17 -0
- package/src/app/kireji/issue-tracker/filters/view-hydrate.js +15 -0
- package/src/app/kireji/issue-tracker/filters/view-update.js +1 -0
- package/src/app/kireji/issue-tracker/issues.html_.js +1 -0
- package/src/app/kireji/issue-tracker/menu-appear-on +1 -0
- package/src/app/kireji/issue-tracker/part.css_.js +1 -0
- package/src/app/kireji/issue-tracker/part.html_.js +4 -0
- package/src/app/kireji/issue-tracker/part.json +9 -0
- package/src/app/kireji/issue-tracker/pathname-canonical_.js +1 -0
- package/src/app/kireji/issue-tracker/pathname-translate-canonical.js +39 -0
- package/src/app/kireji/issue-tracker/scroller/part.json +3 -0
- package/src/app/kireji/issue-tracker/scroller/query +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776193480/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776193480/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776193480/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776193480/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776193941/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776193941/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776193941/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776193941/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776193941/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204452/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204452/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204452/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204452/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204550/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204550/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204550/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204550/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204640/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204640/description +5 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204640/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204640/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204640/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204640/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204869/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204869/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204869/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204869/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204869/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204979/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204979/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204979/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204979/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776204979/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205152/affects_.js +4 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205152/description +30 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205152/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205152/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205152/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205152/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205544/description +5 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205544/links_.js +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205544/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205544/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205973/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205973/description +6 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205973/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205973/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776205973/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206413/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206413/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206413/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206413/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206413/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206609/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206609/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206609/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206609/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206609/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206848/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206848/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206848/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206848/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776206848/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207072/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207072/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207072/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207072/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207212/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207212/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207212/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207212/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207331/affects_.js +5 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207331/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207331/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207331/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207331/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207644/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207644/links_.js +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207644/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207644/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207644/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776207644/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208336/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208336/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208336/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208336/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208336/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208669/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208669/links_.js +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208669/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208669/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208669/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208910/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208910/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208910/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776208910/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776209115/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776209115/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776209115/links_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776209115/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776209115/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776209268/description +5 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776209268/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776209268/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776209268/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776211364/affects_.js +6 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776211364/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776211364/links_.js +5 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776211364/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776211364/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776211364/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776211364/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212048/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212048/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212048/links_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212048/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212048/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212048/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212294/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212294/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212294/links_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212294/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212294/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212294/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212412/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212412/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212412/links_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212412/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212412/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212412/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212585/description +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212585/links_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212585/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212585/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212585/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212811/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212811/links_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212811/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212811/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776212811/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776213238/description +4 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776213238/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776213238/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776213238/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776262432/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776262432/links_.js +8 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776262432/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776262432/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776262432/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776262432/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776263309/description +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776263309/links_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776263309/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776263309/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776263309/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776263309/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776282415/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776282415/links_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776282415/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776282415/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776282415/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776282415/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776307785/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776307785/description +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776307785/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776307785/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776307785/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/1776307785/title +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/URL-canonical_.js +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/affects_.js +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/card.html_.js +8 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/close.js +7 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/constants.js +4 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/date-nice.js +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/links_.js +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/part.html_.js +13 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/part.json +12 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/pathname-canonical_.js +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/pathname_.js +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/priority +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/status +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/type.d.ts +15 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/urls.xml_.js +7 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/view-add.js +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/issue/view-remove.js +1 -0
- package/src/app/kireji/issue-tracker/sections/issues/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/issues/type.d.ts +6 -0
- package/src/app/kireji/issue-tracker/sections/part.json +3 -0
- package/src/app/kireji/issue-tracker/sections/summary/URL-canonical_.js +1 -0
- package/src/app/kireji/issue-tracker/sections/summary/constants.js +4 -0
- package/src/app/kireji/issue-tracker/sections/summary/part.html_.js +1 -0
- package/src/app/kireji/issue-tracker/sections/summary/pathname-canonical +1 -0
- package/src/app/kireji/issue-tracker/sections/summary/title +1 -0
- package/src/app/kireji/issue-tracker/sections/summary/type.d.ts +7 -0
- package/src/app/kireji/issue-tracker/sections/summary/urls.xml_.js +7 -0
- package/src/app/kireji/issue-tracker/sections/type.d.ts +9 -0
- package/src/app/kireji/issue-tracker/static.css +255 -0
- package/src/app/kireji/issue-tracker/title +1 -0
- package/src/app/kireji/issue-tracker/type.d.ts +13 -0
- package/src/app/kireji/issue-tracker/urls.xml_.js +1 -0
- package/src/app/kireji/meta-description +1 -1
- package/src/app/kireji/type.d.ts +1 -0
- package/src/build.js +0 -2
- package/src/description +1 -1
- package/src/landing-model.json +21 -0
- package/src/parts/abstract/mesh/point-tri-that-contains.js +1 -1
- package/src/parts/abstract/mesh/ray-cast.js +1 -4
- package/src/parts/abstract/mesh/routeID-model-to.js +0 -1
- package/src/parts/abstract/part/build.js +20 -12
- package/src/parts/abstract/part/mathML.js +0 -2
- package/src/parts/abstract/part/type.d.ts +7 -3
- package/src/parts/abstract/part-outliner/itemHTML-recursive.js +1 -3
- package/src/parts/abstract/permutation/build.js +0 -18
- package/src/parts/abstract/permutation/mathML-subpart.js +0 -2
- package/src/parts/abstract/permutation/view-hydrate.js +0 -1
- package/src/parts/abstract/permutation/view-update.js +0 -2
- package/src/parts/abstract/scroller/build.js +0 -1
- package/src/parts/abstract/type.d.ts +8 -1
- package/src/parts/core/client/async-install.js +1 -1
- package/src/parts/core/server/sync-install.js +0 -1
- package/src/parts/desktop/color/part.html_.js +1 -1
- package/src/parts/desktop/era/modern/part.css +5 -10
- package/src/parts/desktop/era/part.html_.js +1 -1
- package/src/parts/desktop/era/vintage/static.css +5 -7
- package/src/parts/desktop/task-bar/tray/fullscreen/point.js +0 -1
- package/src/parts/desktop/task-bar/tray/share/point.js +0 -2
- package/src/{kireji.schema.json → schema.kireji.json} +3 -3
- package/src/schema.part.json +37 -0
- package/src/static.css +2 -2
- package/src/type.d.ts +4 -4
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
body.modern:not(.dark) #issue-tracker_kireji_app {
|
|
2
|
+
background-color: white;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
#issue-tracker_kireji_app {
|
|
6
|
+
display: flex;
|
|
7
|
+
flex-flow: column nowrap;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
body.modern #issue-tracker_kireji_app {
|
|
11
|
+
padding: var(--spacing);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
#kireji-issue-modal {
|
|
15
|
+
position: absolute;
|
|
16
|
+
background-color: var(--bg);
|
|
17
|
+
padding: var(--spacing);
|
|
18
|
+
display: flex;
|
|
19
|
+
gap: var(--spacing);
|
|
20
|
+
flex-flow: column nowrap;
|
|
21
|
+
}
|
|
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
|
+
|
|
37
|
+
#kireji-issue-modal .exit-button {
|
|
38
|
+
position: absolute;
|
|
39
|
+
right: var(--spacing);
|
|
40
|
+
top: var(--spacing);
|
|
41
|
+
width: var(--spacing);
|
|
42
|
+
height: var(--spacing);
|
|
43
|
+
font-size: var(--spacing);
|
|
44
|
+
line-height: var(--spacing);
|
|
45
|
+
text-align: center;
|
|
46
|
+
cursor: pointer;
|
|
47
|
+
pointer-events: all;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
body.modern #kireji-issue-modal {
|
|
51
|
+
border-radius: calc(var(--spacing) / 2);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
body.modern:not(.dark) #kireji-issue-modal {
|
|
55
|
+
background-color: white;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
body.vintage #kireji-issue-modal {
|
|
59
|
+
background-color: var(--bg);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
#issue-tracker_kireji_app:has(#kireji-issue-modal:not(:empty)) {
|
|
63
|
+
pointer-events: none;
|
|
64
|
+
color: var(--fg-mode);
|
|
65
|
+
background-color: var(--bg-un-mode);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
#kireji-issue-modal:empty {
|
|
69
|
+
display: none;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
#kireji-issue-modal>* {
|
|
73
|
+
margin: 0;
|
|
74
|
+
padding: 0;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
#kireji-issue-modal>h1 {
|
|
78
|
+
margin-right: var(--spacing);
|
|
79
|
+
font-size: var(--spacing);
|
|
80
|
+
line-height: var(--spacing);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
#kireji-issue-modal .issue-description {
|
|
84
|
+
white-space: pre-wrap;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
#issue-tracker_kireji_app .issue-title {
|
|
88
|
+
flex: 1;
|
|
89
|
+
overflow: hidden;
|
|
90
|
+
text-overflow: ellipsis;
|
|
91
|
+
white-space: pre;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
body.modern #issue-tracker_kireji_app .issue-title {
|
|
95
|
+
font-weight: 500;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
#issue-tracker_kireji_app :is(.issue-table>scroller->scroll-content, .issue-links) {
|
|
99
|
+
display: flex;
|
|
100
|
+
flex-flow: column nowrap;
|
|
101
|
+
width: 100%;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
#issue-tracker_kireji_app .issue-row {
|
|
105
|
+
position: relative;
|
|
106
|
+
display: flex;
|
|
107
|
+
text-decoration: none;
|
|
108
|
+
color: inherit;
|
|
109
|
+
}
|
|
110
|
+
|
|
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) {
|
|
116
|
+
border-radius: calc(var(--spacing) / 3);
|
|
117
|
+
cursor: pointer;
|
|
118
|
+
}
|
|
119
|
+
|
|
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);
|
|
143
|
+
display: inline-block;
|
|
144
|
+
}
|
|
145
|
+
|
|
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 {
|
|
187
|
+
color: steelblue;
|
|
188
|
+
background-color: powderblue;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
body.modern.dark #issue-tracker_kireji_app :not(.header)>.issue-status {
|
|
192
|
+
color: powderblue;
|
|
193
|
+
background-color: steelblue;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
body.modern #issue-tracker_kireji_app :not(.header)[data-status="doing"]>.issue-status {
|
|
197
|
+
color: brown;
|
|
198
|
+
background-color: wheat;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
body.modern.dark #issue-tracker_kireji_app :not(.header)[data-status="doing"]>.issue-status {
|
|
202
|
+
color: wheat;
|
|
203
|
+
background-color: peru;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
body.modern #issue-tracker_kireji_app :not(.header)[data-status="done"]>.issue-status {
|
|
207
|
+
color: seagreen;
|
|
208
|
+
background-color: palegreen;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
body.modern.dark #issue-tracker_kireji_app :not(.header)[data-status="done"]>.issue-status {
|
|
212
|
+
color: palegreen;
|
|
213
|
+
background-color: seagreen;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
body.modern #issue-tracker_kireji_app :not(.header)[data-priority="A"]>.issue-priority {
|
|
217
|
+
color: red;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
body.modern #issue-tracker_kireji_app :not(.header)[data-priority="B"]>.issue-priority {
|
|
221
|
+
color: orange;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
body.modern #issue-tracker_kireji_app :not(.header)[data-priority="C"]>.issue-priority {
|
|
225
|
+
color: green;
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
#issue-tracker_kireji_app .issue-table {
|
|
229
|
+
min-height: 0;
|
|
230
|
+
position: relative;
|
|
231
|
+
overflow: hidden;
|
|
232
|
+
flex: 1;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
#kireji-issue-modal .issue-row {
|
|
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);
|
|
255
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Issue Tracker
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
declare interface IKirejiIssueTrackerApp
|
|
2
|
+
extends IApplication<IKirejiApp, IPartAny> {
|
|
3
|
+
|
|
4
|
+
// Subparts.
|
|
5
|
+
readonly scroller: IScroller<IKirejiIssueTrackerApp>
|
|
6
|
+
readonly sections: IKirejiIssueSections
|
|
7
|
+
readonly filters: IKirejiIssueFilters
|
|
8
|
+
|
|
9
|
+
// Serialized Properties.
|
|
10
|
+
readonly "issues.html": string
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
declare const kirejiIssueTracker: IKirejiIssueTrackerApp
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
return kirejiIssueSections["urls.xml"]
|
|
@@ -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
|
|
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.
|
package/src/app/kireji/type.d.ts
CHANGED
package/src/build.js
CHANGED
|
@@ -894,7 +894,6 @@ function ƒ(_, compressedSubjectOrigins) {
|
|
|
894
894
|
return totalInheritors
|
|
895
895
|
},
|
|
896
896
|
configureArchiveContent = () => {
|
|
897
|
-
// TODO: Consider merging user landing model with stock landing model instead of replacing it.
|
|
898
897
|
const landingModel = JSON.parse(_["landing-model.json"])
|
|
899
898
|
|
|
900
899
|
let desktopFeatures = 3
|
|
@@ -1050,7 +1049,6 @@ function ƒ(_, compressedSubjectOrigins) {
|
|
|
1050
1049
|
}
|
|
1051
1050
|
|
|
1052
1051
|
ƒ({
|
|
1053
|
-
// TODO: fix source mapping bugs.
|
|
1054
1052
|
verbosity: "1",
|
|
1055
1053
|
change: "major",
|
|
1056
1054
|
hangHydration: "0",
|
package/src/description
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
This part represents the root of the Kireji Demo
|
|
1
|
+
This part represents the root of the Kireji Demo Ecosystem. Its domain name is the empty string ("", representing the DNS root), and all of its subparts represent top-level domains (TLDs) like ".com" and ".io".
|
|
2
2
|
|
|
3
3
|
It forms the root of the runtime state space used to compute a two-way minimal perfect hash function (MPHF) across all hosted applications. When serialized, it inlines all metadata and file structure compiled from the repository at build time.
|
|
4
4
|
|
package/src/landing-model.json
CHANGED
|
@@ -15,6 +15,27 @@
|
|
|
15
15
|
"about": true
|
|
16
16
|
}
|
|
17
17
|
},
|
|
18
|
+
"issue-tracker": {
|
|
19
|
+
"sections": "summary",
|
|
20
|
+
"filters": {
|
|
21
|
+
"dropdown": "none",
|
|
22
|
+
"order": {
|
|
23
|
+
"descending": true,
|
|
24
|
+
"by": "date"
|
|
25
|
+
},
|
|
26
|
+
"priority": {
|
|
27
|
+
"a": true,
|
|
28
|
+
"b": true,
|
|
29
|
+
"c": true
|
|
30
|
+
},
|
|
31
|
+
"status": {
|
|
32
|
+
"doing": true,
|
|
33
|
+
"done": false,
|
|
34
|
+
"to-do": true
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"scroller": 0
|
|
38
|
+
},
|
|
18
39
|
"sidebar": {
|
|
19
40
|
"outliner-domains": {
|
|
20
41
|
"folders": [
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
if (mesh.triIndex !== -1 && mesh.triContainsPoint(mesh.triIndex, POINT))
|
|
3
3
|
return mesh.triIndex
|
|
4
4
|
|
|
5
|
-
// Check all tris.
|
|
5
|
+
// Check all tris.
|
|
6
6
|
for (let triIndex = 0; triIndex < mesh.triTable.length; triIndex++)
|
|
7
7
|
if (triIndex !== mesh.triIndex && mesh.triContainsPoint(triIndex, POINT))
|
|
8
8
|
return triIndex
|
|
@@ -160,7 +160,7 @@ while (true) {
|
|
|
160
160
|
}
|
|
161
161
|
|
|
162
162
|
if (boundaryAppearsFlat) {
|
|
163
|
-
//
|
|
163
|
+
// Do nothing for now...
|
|
164
164
|
}
|
|
165
165
|
|
|
166
166
|
// If there is no neighboring point, we are "stuck". The ray cast ends here.
|
|
@@ -176,7 +176,6 @@ while (true) {
|
|
|
176
176
|
const distance = Vector.magnitude(vectorToNeighbor)
|
|
177
177
|
|
|
178
178
|
// Construct a force vector pointing to the chosen neighbor.
|
|
179
|
-
// TODO: speed should actually be reduced.
|
|
180
179
|
const forceVectorToNeighbor = Vector.multiply(Vector.normalize(vectorToNeighbor), speed)
|
|
181
180
|
|
|
182
181
|
// Compute travel time to reach the neighbor.
|
|
@@ -222,8 +221,6 @@ while (true) {
|
|
|
222
221
|
}
|
|
223
222
|
|
|
224
223
|
return safeIterationResult
|
|
225
|
-
|
|
226
|
-
// TODO: Consider moving toward a 4-point neighbor instead.
|
|
227
224
|
}
|
|
228
225
|
|
|
229
226
|
// Set the neighbor as the new safe point.
|
|
@@ -1,15 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
part.subparts.sort((() => {
|
|
2
|
+
|
|
3
|
+
if (Array.isArray(part.manifest.order)) {
|
|
4
|
+
// If there is a custom order defined, just used that.
|
|
5
|
+
return (a, b) => part.manifest.order.indexOf(a.key) - part.manifest.order.indexOf(b.key)
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
/* Otherwise, sort ascending by cardinality to optimize Route ID encoding:
|
|
9
|
+
1. In mix parts, using the largest factor as the most significant digit
|
|
10
|
+
prevents its large cardinality from being a multiplier for other factors.
|
|
11
|
+
2. In match parts, placing larger arms at the end of the address space
|
|
12
|
+
prevents their large cardinalities from being offsets for smaller arms. */
|
|
13
|
+
return (a, b) => {
|
|
14
|
+
/* Relational comparisons are used to avoid BigInt subtraction which
|
|
15
|
+
would unnecessarily compute and store a third BigInt. */
|
|
16
|
+
if (a.cardinality < b.cardinality) return -1
|
|
17
|
+
if (a.cardinality > b.cardinality) return 1
|
|
18
|
+
return 0
|
|
19
|
+
}
|
|
20
|
+
})())
|
|
13
21
|
|
|
14
22
|
part.define({
|
|
15
23
|
dirty: { value: false, writable: true },
|
|
@@ -15,8 +15,6 @@ const expression = (() => {
|
|
|
15
15
|
return (LABELS ? "<munder>" + (needsParentheses ? "" : "<mrow>") : "") + (needsParentheses ? "<mrow class=parenthetic><mo>(</mo>" : "") + terms.join("") + (needsParentheses ? `<mo>)</mo></mrow>` : "") + (LABELS ? (needsParentheses ? "" : "</mrow>") + `<munder><mo stretchy="true">⏟</mo>${recurse(0, "none", false, false)}</munder></munder>` : "")
|
|
16
16
|
})()
|
|
17
17
|
|
|
18
|
-
// TODO: handle parenthesis!
|
|
19
|
-
|
|
20
18
|
const showBracketBelow = DEPTH > 2
|
|
21
19
|
|
|
22
20
|
return /* html */`${WRAP_IN_MATH_TAG ? "<math displaystyle=true><mrow>" : ""}${equationVariable}${expression}${equationValue}${WRAP_IN_MATH_TAG ? "</mrow></math>" : ""}`
|
|
@@ -64,6 +64,8 @@ declare interface IPart<TOwner, TSubpart>
|
|
|
64
64
|
readonly cssVariableOfImage(IMAGE_NAME: string): string
|
|
65
65
|
/** Collects every build function in the part's prototype chain and then calls them all on the part itself. */
|
|
66
66
|
readonly startBuild(): void
|
|
67
|
+
/** Performs `part.modelToRouteID()` on MODEL and then performs `part.setRouteID()` on the resulting route ID. */
|
|
68
|
+
readonly setModel(MODEL: any)
|
|
67
69
|
/** Sets the part's routeID, propagating it leafward and rootward and updating all views. If DELTA is true, then ROUTE_ID is added to the part's current route ID. */
|
|
68
70
|
readonly setRouteID(ROUTE_ID: bigint, DELTA: boolean = false): void
|
|
69
71
|
/** Recomputes and then updates the part's routeID in response to a change in the the given subpart's routeID.
|
|
@@ -199,10 +201,12 @@ declare type IRuntimePropertyDefinition<TOwner, TValue> = {
|
|
|
199
201
|
declare interface IPartManifest {
|
|
200
202
|
/** Whether or not the part should be considered a subpart of its parent part (abstract = false) or an uninstanceable prototype for other parts (abstract = true). */
|
|
201
203
|
readonly abstract?: boolean
|
|
202
|
-
/** Whether or not the part will be instanced (inherit = false) or retained (inherit = true) during the create step. */
|
|
203
|
-
readonly inherit?: boolean
|
|
204
204
|
/** The list of methods that the part adds. The prototype of the methods object is set to the part's prototype's manifest methods object. If no object is defined in a manifest, the empty object will be created automatically. */
|
|
205
|
-
readonly methods
|
|
205
|
+
readonly methods?: Record<string, string[]>
|
|
206
|
+
/** The relative or absolute host name of the part that this part inherits from. The default value is `part`. */
|
|
207
|
+
readonly extends?: string
|
|
208
|
+
/** An optional string array of subpart keys representing the explicit order that the subparts should take in the part's subpart array. This affects how parts are iterated over and how they are integrated into the hash function. */
|
|
209
|
+
readonly order?: string[]
|
|
206
210
|
}
|
|
207
211
|
|
|
208
212
|
declare type IPartAny =
|
|
@@ -8,6 +8,4 @@ return partOutliner.getChildren(SUBJECT).map((childPart, i, childArray) => {
|
|
|
8
8
|
const label = `<span class="label${childPart.isAbstract ? " abstract" : ""}">${partOutliner.getLabel(childPart)}</span>`
|
|
9
9
|
const summary = `<summary ${partOutliner.pointAttr("point", partIndex)} data-index="${partIndex}"${partOutliner.isActive(childPart) ? " data-active" : ""}${IS_LAST_OF_TYPE && !hasSubparts ? ' id="lastOutlinerItem"' : ""}><outliner-spacer style="--depth:${DEPTH + +!hasSubparts}"></outliner-spacer>${handle}${symbol}${label}</summary>`
|
|
10
10
|
return `<details${hasSubparts ? "" : ` class=empty`} ${isOpen ? "open" : ""}>${summary}${recurse(childPart, DEPTH + 1, IS_LAST_OF_TYPE && i === childArray.length - 1)}</details>`
|
|
11
|
-
}).join("")
|
|
12
|
-
|
|
13
|
-
/* TODO: the children of collapsed outliner items should not be rendered into HTML as it bloats the fetch size. Instead, they should be rendered during hydration. */
|
|
11
|
+
}).join("")
|
|
@@ -1,21 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
/* TODO:
|
|
3
|
-
* 1. Instantiate a concrete innstance of an abstract part per-instance. Offload all per-instance logic there.
|
|
4
|
-
* - Such a part will have optional subparts 'instance' and 'meta'
|
|
5
|
-
* - "instance" corresponds to each instance part's statically-sized data model
|
|
6
|
-
* - which also receives its specific subject assigment from the outside (not part of it's route ID)
|
|
7
|
-
* - "meta" (name pending) corresponds to a non-instance-specific part whose cardinality is dependant upon the number of instances.
|
|
8
|
-
* - get its implementation details by generalizing the active and preview tab data in the tab group.
|
|
9
|
-
* - At build time, the parent permutation will need to be able to query this part to get its cardinality once for every instance up to the max count.
|
|
10
|
-
* - This part can support mixes, matches, etc. and might even be the ideal place to place a sub-permutation.
|
|
11
|
-
* 2. Convert the tab group to use this abstract type.
|
|
12
|
-
* Considerations;
|
|
13
|
-
* - How do we inspect the states of existing tab instances in `kireji.app`?
|
|
14
|
-
* - Files will be easy: they are part of the abstract.
|
|
15
|
-
* - Perhaps the state space box depicts an array of instance space states instead of the single state? Perhaps that is all that is needed?
|
|
16
|
-
* - Then, how do we depict the states of subparts of the parent part? Do we simply have an array for the entire instance part's tree?
|
|
17
|
-
* - We might need "push", "pop", "insert", "splice" and/or similar array methods to make it easier to modify the instance set on the fly. */
|
|
18
|
-
|
|
19
1
|
// Memoize the permutation data.
|
|
20
2
|
const instanceOffsets = [0n]
|
|
21
3
|
const instanceBitDepths = [0n, 0n]
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
// TODO: Consider if this should be distribute view update instead of just view update.
|
|
2
1
|
if (permutation.instances.length !== permutation.viewedInstances.length || permutation.viewedPermutationRouteID !== permutation.permutationRouteID) {
|
|
3
|
-
// TODO: This is a dead-simple approach ... more performant approaches exist.
|
|
4
2
|
const existingInstanceCount = permutation.viewedInstances.length
|
|
5
3
|
const targetInstanceCount = permutation.instances.length
|
|
6
4
|
const maxLength = Math.max(existingInstanceCount, targetInstanceCount)
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
// TODO: consider moving this check (and the cardinality type check) to a post-build "validation" step?
|
|
2
1
|
if (!scroller.query)
|
|
3
2
|
throw new ReferenceError(`Scrollers must define a css selector at \`scroller.query\` which can select the parent element of the scroller (from ${scroller.host}).`)
|
|
4
3
|
|
|
@@ -3,14 +3,21 @@ declare interface IAbstract
|
|
|
3
3
|
|
|
4
4
|
// Subparts.
|
|
5
5
|
readonly application: IApplication<IAbstract, null>
|
|
6
|
+
readonly bodyMode: IBodyMode<IAbstract>
|
|
7
|
+
readonly boolean: IBoolean<IAbstract>
|
|
6
8
|
readonly clip: IClip<IAbstract, null>
|
|
9
|
+
readonly comingSoon: IComingSoonApplication<IAbstract>
|
|
7
10
|
readonly error: IErrorApplication<IAbstract>
|
|
8
11
|
readonly facet: IFacet<IAbstract, null>
|
|
12
|
+
readonly issue: ITrackedIssue<IAbstract>
|
|
9
13
|
readonly match: IMatch<IAbstract, null>
|
|
14
|
+
readonly mesh: IMesh<IAbstract>
|
|
10
15
|
readonly mix: IMix<IAbstract, null>
|
|
11
16
|
readonly part: IPart<IAbstract, null>
|
|
17
|
+
readonly partMask: IPartMask<IAbstract, null>
|
|
18
|
+
readonly partOutliner: IPartOutliner<IAbstract>
|
|
19
|
+
readonly permutation: IPermutation<IAbstract, null, null, null>
|
|
12
20
|
readonly scroller: IScroller<IAbstract, null>
|
|
13
|
-
readonly section: IApplicationSection<IAbstract, null>
|
|
14
21
|
readonly sections: IApplicationSections<IAbstract, null>
|
|
15
22
|
readonly tld: ITopLevelDomain<IAbstract, null>
|
|
16
23
|
}
|
|
@@ -40,7 +40,7 @@ logScope(0, "Finalizing Hydration", log => {
|
|
|
40
40
|
client: _.parts.core.client
|
|
41
41
|
})
|
|
42
42
|
|
|
43
|
-
// Handle
|
|
43
|
+
// Handle forward/back button navigation.
|
|
44
44
|
window.addEventListener("pageshow", pageTransitionEvent => {
|
|
45
45
|
log("Setting Initial State")
|
|
46
46
|
addressBar.useRoute()
|
|
@@ -23,7 +23,6 @@ const
|
|
|
23
23
|
'Content-Type': 'text/html;charset=UTF-8',
|
|
24
24
|
"Document-Policy": "force-load-at-top",
|
|
25
25
|
"Vary": "Sec-CH-Prefers-Color-Scheme",
|
|
26
|
-
// TODO: Finish the security setup.
|
|
27
26
|
// 'Content-Security-Policy': "default-src 'none'; style-src 'unsafe-inline'; image-src data:; script-src self 'unsafe-inline'",
|
|
28
27
|
// 'Permissions-Policy': 'microphone=(), camera=(), web-share=(self), full-screen=(self)',
|
|
29
28
|
'Cross-Origin-Embedder-Policy': 'require-corp',
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
return `<span ${color.pointAttr()} id="color-control" tabIndex=0 data-state="${color.arm.stateData}">
|
|
1
|
+
return `<span ${color.pointAttr()} id="color-control" tabIndex=0 data-state="${color.arm.stateData}" class="toggle-control">
|
|
2
2
|
<span class="label">${color.title}:</span><flex-spacer></flex-spacer>
|
|
3
3
|
<span class="base"><span class="handle"></span></span>
|
|
4
4
|
</span>`
|
|
@@ -28,14 +28,12 @@ title-bar>.part-icon {
|
|
|
28
28
|
margin: calc(var(--spacing) / 2);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
#era-control {
|
|
31
|
+
.toggle-control {
|
|
33
32
|
cursor: pointer;
|
|
34
33
|
position: relative;
|
|
35
34
|
}
|
|
36
35
|
|
|
37
|
-
|
|
38
|
-
#era-control .base {
|
|
36
|
+
.toggle-control .base {
|
|
39
37
|
width: 100%;
|
|
40
38
|
border-radius: var(--spacing);
|
|
41
39
|
background: var(--light-bg);
|
|
@@ -149,7 +147,8 @@ task-menu>* {
|
|
|
149
147
|
background-color: var(--bg-dark);
|
|
150
148
|
}
|
|
151
149
|
|
|
152
|
-
#settings>span
|
|
150
|
+
#settings>span,
|
|
151
|
+
.toggle-control {
|
|
153
152
|
gap: 1ch;
|
|
154
153
|
height: var(--spacing);
|
|
155
154
|
box-sizing: content-box;
|
|
@@ -174,14 +173,10 @@ task-menu>* {
|
|
|
174
173
|
}
|
|
175
174
|
|
|
176
175
|
|
|
177
|
-
|
|
176
|
+
.toggle-control[data-state="enabled"] .handle {
|
|
178
177
|
left: calc(var(--spacing) + 2px);
|
|
179
178
|
}
|
|
180
179
|
|
|
181
|
-
#settings>span[data-state="partial"] .handle {
|
|
182
|
-
left: calc(.5 * var(--spacing) + 2px);
|
|
183
|
-
}
|
|
184
|
-
|
|
185
180
|
.task-link[data-here]>a::before {
|
|
186
181
|
content: "";
|
|
187
182
|
position: absolute;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
return `<span ${era.pointAttr()} id="era-control" tabIndex=0 data-state="${era.arm.stateData}">
|
|
1
|
+
return `<span ${era.pointAttr()} id="era-control" tabIndex=0 data-state="${era.arm.stateData}" class="toggle-control">
|
|
2
2
|
<span class="label">${era.title}:</span><flex-spacer></flex-spacer>
|
|
3
3
|
<span class="base"><span class="handle"></span></span>
|
|
4
4
|
</span>`
|
|
@@ -60,16 +60,14 @@ scroll-bar>thumb- {
|
|
|
60
60
|
--thumb-start: var(--scrollbar-width);
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
|
|
64
|
-
#era-control .base {
|
|
63
|
+
.toggle-control .base {
|
|
65
64
|
background: white;
|
|
66
65
|
width: 16px;
|
|
67
66
|
height: 16px;
|
|
68
67
|
box-shadow: var(--deep-inset);
|
|
69
68
|
}
|
|
70
69
|
|
|
71
|
-
|
|
72
|
-
#era-control .base::after {
|
|
70
|
+
.toggle-control .base::after {
|
|
73
71
|
content: "";
|
|
74
72
|
display: block;
|
|
75
73
|
width: 16px;
|
|
@@ -81,11 +79,11 @@ scroll-bar>thumb- {
|
|
|
81
79
|
color: black;
|
|
82
80
|
}
|
|
83
81
|
|
|
84
|
-
|
|
82
|
+
.toggle-control[data-state="enabled"] .base::after {
|
|
85
83
|
content: "✓";
|
|
86
84
|
}
|
|
87
85
|
|
|
88
|
-
|
|
86
|
+
.toggle-control[data-state="partial"] .base::after {
|
|
89
87
|
content: "–";
|
|
90
88
|
}
|
|
91
89
|
|
|
@@ -190,7 +188,7 @@ body {
|
|
|
190
188
|
inset 2px 2px var(--bg-light-est);
|
|
191
189
|
--default-font-size: 11px;
|
|
192
190
|
font: var(--default-font-size) var(--system-ui);
|
|
193
|
-
image-rendering: pixelated
|
|
191
|
+
/*image-rendering: pixelated;*/
|
|
194
192
|
}
|
|
195
193
|
|
|
196
194
|
body,
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
// TODO: check for support and show the tray item only if the browser supports it. Prefer instructing user to enter the browser's native fullscreen instead of JS fullscreen (which doesn't have cross-origin support).
|
|
2
1
|
pointer.handle({
|
|
3
2
|
click() {
|
|
4
3
|
if (!document.fullscreenElement) {
|