@crewlethq/ui 0.32.0 → 0.34.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 +149 -5
- package/dist/AccessDeniedCard/AccessDeniedCard.d.ts +5 -0
- package/dist/AccessDeniedCard/index.js +1 -5
- package/dist/AccessDeniedCard-QVNDMT46.css +8 -0
- package/dist/AppShell/index.js +4 -4
- package/dist/{AppShell-GCM4TDVY.css → AppShell-JTSEOA57.css} +3 -1
- package/dist/ArrangeGroup/ArrangeGroup.d.ts +16 -1
- package/dist/ArrangeGroup/index.d.ts +1 -1
- package/dist/ArrangeGroup/index.js +1 -1
- package/dist/{ArrangeGroup-GY5YMP6E.css → ArrangeGroup-KRWWOJKR.css} +43 -0
- package/dist/ArrangeList/index.js +2 -2
- package/dist/ArtifactBar/index.js +14 -12
- package/dist/{ArtifactBar-MLMJHWY6.css → ArtifactBar-C462VD4C.css} +8 -3
- package/dist/ArtifactCard/ArtifactCard.d.ts +64 -6
- package/dist/ArtifactCard/index.d.ts +2 -2
- package/dist/ArtifactCard/index.js +6 -4
- package/dist/ArtifactCard-XHRLAL7C.css +289 -0
- package/dist/ArtifactCover/index.js +8 -6
- package/dist/ArtifactIcon/index.js +7 -5
- package/dist/ArtifactKindIllustration/ArtifactKindIllustration.d.ts +53 -0
- package/dist/ArtifactKindIllustration/index.d.ts +3 -0
- package/dist/ArtifactKindIllustration/index.js +3 -0
- package/dist/ArtifactKindIllustration-4NG6IE3C.css +211 -0
- package/dist/ArtifactPanel/ArtifactPanel.d.ts +6 -2
- package/dist/ArtifactPanel/index.js +1 -1
- package/dist/{ArtifactPanel-YFXT5O77.css → ArtifactPanel-HW3SU7CP.css} +25 -7
- package/dist/Avatar/Avatar.d.ts +6 -4
- package/dist/Avatar/index.js +2 -2
- package/dist/AvatarPicker/index.js +8 -8
- package/dist/Callout/index.js +1 -1
- package/dist/{Callout-SXXK4B5R.css → Callout-ZAVG3P66.css} +46 -6
- package/dist/Canvas/Canvas.d.ts +33 -2
- package/dist/Canvas/index.d.ts +1 -1
- package/dist/Canvas/index.js +4 -4
- package/dist/{Canvas-LRVNW7XN.css → Canvas-VUG2HLZK.css} +23 -0
- package/dist/CanvasBoard/CanvasBoard.d.ts +38 -3
- package/dist/CanvasBoard/budget.d.ts +9 -3
- package/dist/CanvasBoard/index.d.ts +2 -2
- package/dist/CanvasBoard/index.js +7 -7
- package/dist/{CanvasBoard-MBZVBWDO.css → CanvasBoard-5NNSKY6A.css} +127 -6
- package/dist/CanvasToolbar/index.js +5 -5
- package/dist/{CanvasToolbar-AE5MXH7T.css → CanvasToolbar-EM5EVZED.css} +4 -2
- package/dist/ChangeMark/index.js +4 -4
- package/dist/CharacterPicker/index.js +2 -2
- package/dist/Charts/ActivityStrip.d.ts +16 -1
- package/dist/Charts/BarList.d.ts +6 -0
- package/dist/Charts/ChartEmpty.d.ts +33 -0
- package/dist/Charts/Legend.d.ts +6 -0
- package/dist/Charts/StackedBar.d.ts +4 -1
- package/dist/Charts/StackedColumns.d.ts +14 -3
- package/dist/Charts/TimeSeries.d.ts +11 -1
- package/dist/Charts/index.d.ts +2 -0
- package/dist/Charts/index.js +1 -1
- package/dist/{Charts-RY4JN5FC.css → Charts-MBJG72BS.css} +140 -16
- package/dist/Checkbox/index.js +1 -1
- package/dist/{Checkbox-5UORUG3F.css → Checkbox-ALWG3WV2.css} +11 -0
- package/dist/CommandPalette/index.js +3 -3
- package/dist/{CommandPalette-HBTNKHZQ.css → CommandPalette-7CFGVBND.css} +4 -0
- package/dist/CommentThread/index.js +5 -5
- package/dist/Container/index.js +1 -1
- package/dist/{Container-3TSKMGNI.css → Container-34BAKG7B.css} +3 -1
- package/dist/{DashboardCover-RMINBODB.css → DashboardCover-KYGYMRKW.css} +42 -9
- package/dist/DataTable/index.js +5 -5
- package/dist/{DataTable-WZK3V62B.css → DataTable-NL2YWAIA.css} +4 -1
- package/dist/DataView/index.js +8 -8
- package/dist/DateTimePicker/index.js +3 -3
- package/dist/DocTabsEditor/DocTabsEditor.d.ts +34 -21
- package/dist/DocTabsEditor/index.js +4 -1
- package/dist/DocTabsEditor-4M452LNS.css +189 -0
- package/dist/Document/Document.d.ts +18 -1
- package/dist/Document/index.d.ts +2 -2
- package/dist/Document/index.js +1 -1
- package/dist/{Document-G3YTZIUL.css → Document-JUGCSQ4L.css} +78 -5
- package/dist/EditingStatus/index.js +1 -1
- package/dist/{EditingStatus-L6THUAN7.css → EditingStatus-NNA2CKIL.css} +17 -4
- package/dist/{Editor-YWBUJAQU.js → Editor-UUZ7XKCU.js} +5 -5
- package/dist/EntityChip/index.js +3 -3
- package/dist/FactList/index.js +3 -3
- package/dist/FollowBanner/index.js +3 -3
- package/dist/Fullscreen/index.d.ts +1 -0
- package/dist/Fullscreen/index.js +1 -1
- package/dist/Fullscreen/useIdle.d.ts +16 -0
- package/dist/HuePicker/index.js +3 -3
- package/dist/ImageUpload/index.js +3 -3
- package/dist/Layer/index.d.ts +1 -1
- package/dist/Layer/index.js +1 -1
- package/dist/Layer/place.d.ts +18 -0
- package/dist/LayersList/LayersList.d.ts +57 -0
- package/dist/LayersList/index.d.ts +3 -0
- package/dist/LayersList/index.js +3 -0
- package/dist/LayersList-NQZEIPZB.css +82 -0
- package/dist/LinkInterstitial/index.js +4 -4
- package/dist/ListInput/index.js +1 -1
- package/dist/LivePreview/LivePreview.d.ts +83 -0
- package/dist/LivePreview/budget.d.ts +50 -0
- package/dist/LivePreview/index.d.ts +5 -0
- package/dist/LivePreview/index.js +2 -0
- package/dist/LivePreview-SRO7KHO4.css +65 -0
- package/dist/Markdown/index.js +1 -1
- package/dist/MarkdownEditor/index.js +5 -5
- package/dist/MediaMatch/index.d.ts +1 -0
- package/dist/MediaMatch/index.js +1 -0
- package/dist/MediaMatch/useMediaMatch.d.ts +19 -0
- package/dist/Menu/index.js +2 -2
- package/dist/MergeConflicts/index.js +4 -4
- package/dist/Modal/index.js +2 -2
- package/dist/{Modal-XOSV6FAH.css → Modal-7MWRCWAI.css} +30 -0
- package/dist/Note/index.js +1 -1
- package/dist/{Note-ONSKKTOA.css → Note-WI5MLZOO.css} +13 -0
- package/dist/OrgLabel/index.js +3 -3
- package/dist/OrgNode/index.js +4 -4
- package/dist/OrgTable/index.js +7 -7
- package/dist/PeopleRail/index.js +3 -3
- package/dist/Popover/index.js +2 -2
- package/dist/PresenceStack/index.js +3 -3
- package/dist/{PresenceStack-QSXQJND5.css → PresenceStack-FJJQVH74.css} +11 -3
- package/dist/PresenterView/PresenterView.d.ts +3 -0
- package/dist/PresenterView/index.js +5 -3
- package/dist/PresenterView-T3EXIQ5S.css +147 -0
- package/dist/Principal/index.js +3 -3
- package/dist/PrincipalPicker/index.js +4 -4
- package/dist/RichEditor/index.js +5 -5
- package/dist/RichEditor/schema.d.ts +1 -1
- package/dist/RichEditorMarkdown/index.js +3 -3
- package/dist/SandboxedFrame/SandboxedFrame.d.ts +44 -2
- package/dist/SandboxedFrame/index.d.ts +2 -2
- package/dist/SandboxedFrame/index.js +3 -3
- package/dist/SandboxedFrame-P5NASXB7.css +72 -0
- package/dist/Section/index.js +1 -1
- package/dist/{Section-QR3ILQVK.css → Section-O5AHGSOG.css} +28 -5
- package/dist/SegmentedControl/index.js +3 -3
- package/dist/Select/Select.d.ts +10 -0
- package/dist/Select/index.d.ts +1 -1
- package/dist/Select/index.js +2 -2
- package/dist/{Select-2P7AWUE4.css → Select-A54YS5EP.css} +29 -0
- package/dist/ShareDialog/ShareDialog.d.ts +10 -0
- package/dist/ShareDialog/index.js +9 -9
- package/dist/{ShareDialog-YZ4F37MW.css → ShareDialog-4QDCBWMH.css} +12 -0
- package/dist/SheetGrid/SheetGrid.d.ts +7 -3
- package/dist/SheetGrid/index.js +8 -8
- package/dist/{SheetGrid-J3TKKXZL.css → SheetGrid-GDPCCZ4V.css} +154 -14
- package/dist/SheetModel/fit.d.ts +34 -0
- package/dist/SheetModel/index.d.ts +1 -0
- package/dist/SheetModel/index.js +1 -1
- package/dist/SheetModel/labels.d.ts +1 -1
- package/dist/Shortcut/index.js +1 -1
- package/dist/Skeleton/Skeleton.d.ts +2 -1
- package/dist/Skeleton/index.js +1 -1
- package/dist/SlideCompare/SlideCompare.d.ts +6 -1
- package/dist/SlideCompare/index.js +3 -3
- package/dist/{SlideCompare-MGM3U2ME.css → SlideCompare-HTCMPQFY.css} +36 -3
- package/dist/SlideFilmstrip/SlideFilmstrip.d.ts +14 -3
- package/dist/SlideFilmstrip/index.js +3 -3
- package/dist/{SlideFilmstrip-BCLNAHFX.css → SlideFilmstrip-5U6Z55GS.css} +63 -2
- package/dist/SlideGrid/index.js +3 -3
- package/dist/{SlideGrid-RT6QEQEE.css → SlideGrid-S4LTJ4UU.css} +9 -5
- package/dist/SlideNav/SlideNav.d.ts +49 -0
- package/dist/SlideNav/index.d.ts +3 -0
- package/dist/SlideNav/index.js +4 -0
- package/dist/SlideNav-BLFJF6AH.css +53 -0
- package/dist/SlideStage/SlideStage.d.ts +9 -1
- package/dist/SlideStage/index.js +2 -2
- package/dist/{SlideStage-KGRRALXR.css → SlideStage-S2FISF4C.css} +23 -0
- package/dist/StatCard/StatCard.d.ts +16 -1
- package/dist/StatCard/index.js +1 -1
- package/dist/{StatCard-KPAFD4E2.css → StatCard-4T7TMWMN.css} +40 -13
- package/dist/Switcher/index.js +6 -6
- package/dist/TableCells/index.js +3 -3
- package/dist/Tabs/Tabs.d.ts +21 -4
- package/dist/Tabs/index.js +1 -1
- package/dist/{Tabs-CJGO35BH.css → Tabs-MMZXV5EF.css} +9 -8
- package/dist/TagsInput/index.js +1 -1
- package/dist/ThemeSwitcher/index.js +4 -4
- package/dist/TimeWindowPicker/index.js +4 -4
- package/dist/Toaster/index.js +2 -2
- package/dist/{Toaster-EOOOTSJT.css → Toaster-C6BQ7L6I.css} +10 -1
- package/dist/Toolbar/index.js +1 -1
- package/dist/Tooltip/Tooltip.d.ts +12 -1
- package/dist/Tooltip/index.d.ts +1 -1
- package/dist/Tooltip/index.js +2 -2
- package/dist/TreeCanvas/index.js +5 -5
- package/dist/TreeGrid/index.js +3 -3
- package/dist/VersionCompare/index.js +4 -4
- package/dist/VersionTimeline/index.js +4 -4
- package/dist/WidgetFrame/WidgetFrame.d.ts +8 -1
- package/dist/WidgetFrame/index.js +2 -2
- package/dist/{WidgetFrame-LRZIL62O.css → WidgetFrame-BTFW3CRK.css} +49 -5
- package/dist/{chunk-WJDQ7XQA.js → chunk-2QEDJSJC.js} +1 -1
- package/dist/{chunk-VYDFB6PJ.js → chunk-356JNSER.js} +50 -17
- package/dist/{chunk-2HIOJ4YZ.js → chunk-3EB2AV3H.js} +2 -3
- package/dist/{chunk-ODT5H4MN.js → chunk-3LYWD3BO.js} +2 -2
- package/dist/{chunk-OTN35CI4.js → chunk-3P4Y5RX6.js} +18 -6
- package/dist/{chunk-FAQGGX2Z.js → chunk-3TFDQLW3.js} +1 -1
- package/dist/{chunk-E6EWK5YY.js → chunk-3Y56GQPM.js} +3 -3
- package/dist/{chunk-A4E5YLXO.js → chunk-4B6LSFDS.js} +1 -1
- package/dist/{chunk-UAN5NE7M.js → chunk-5AQBPHZD.js} +1 -1
- package/dist/{chunk-CJKMURZO.js → chunk-5SZGKSGL.js} +1 -1
- package/dist/chunk-6VOS2GMB.js +54 -0
- package/dist/{chunk-QWOPX2MN.js → chunk-6ZJ3N7QI.js} +7 -5
- package/dist/{chunk-3ZAFJ4GK.js → chunk-7Q7WDXHG.js} +4 -4
- package/dist/{chunk-QH3AKP2N.js → chunk-AC22RZKC.js} +2 -2
- package/dist/{chunk-UZ6MA2V6.js → chunk-AORVEG5V.js} +2 -2
- package/dist/{chunk-ZITJKF6Z.js → chunk-AYB6AYNH.js} +1 -1
- package/dist/{chunk-FC4YTTFJ.js → chunk-BQ7AKL2N.js} +5 -5
- package/dist/{chunk-Y5NQ2LMS.js → chunk-BY4N65PM.js} +1 -1
- package/dist/{chunk-YFW4MTK4.js → chunk-C7DKX453.js} +1 -1
- package/dist/{chunk-RCQXUT5K.js → chunk-CCAXYHQS.js} +1 -1
- package/dist/{chunk-JQLTG4KH.js → chunk-CCLNGVCM.js} +62 -51
- package/dist/{chunk-6AH2XJ3Q.js → chunk-CFAJP777.js} +3 -3
- package/dist/{chunk-4KP4RC3O.js → chunk-CI3VPIJN.js} +1 -1
- package/dist/{chunk-7T42VQQT.js → chunk-CPEPST4S.js} +1 -1
- package/dist/{chunk-AAOH2P6Y.js → chunk-DFK5EQTU.js} +5 -3
- package/dist/{chunk-V5IGUXMZ.js → chunk-E4NNGC6X.js} +4 -4
- package/dist/{chunk-TGYDROIB.js → chunk-EBCHVFCS.js} +4 -4
- package/dist/{chunk-LWXRD6L6.js → chunk-EWAFN2IU.js} +118 -27
- package/dist/{chunk-YDBC4DNW.js → chunk-FWYHRU7M.js} +1 -1
- package/dist/{chunk-HVNTQ36V.js → chunk-GMU6SQ6B.js} +4 -4
- package/dist/{chunk-LIXSV5YI.js → chunk-GPHWCK7M.js} +1 -1
- package/dist/{chunk-UQHKFF2N.js → chunk-GPWJCP3U.js} +1 -1
- package/dist/{chunk-77DRMDXR.js → chunk-HG5VF3TZ.js} +192 -67
- package/dist/{chunk-QVE4GJAT.js → chunk-HJO4WCH6.js} +1 -1
- package/dist/{chunk-JI5AVQLA.js → chunk-HOIZ6MIS.js} +1 -1
- package/dist/{chunk-I3BSQUKN.js → chunk-HUVG2FFT.js} +1 -1
- package/dist/{chunk-VS3KOOOL.js → chunk-ILAEBSLJ.js} +3 -3
- package/dist/{chunk-P4BOXB6E.js → chunk-IUD5VA2Z.js} +6 -7
- package/dist/{chunk-GR55WT4R.js → chunk-IYO2N5ZH.js} +2 -2
- package/dist/{chunk-RWA4H2TV.js → chunk-J6ON5SYE.js} +1 -1
- package/dist/{chunk-AMNN4WDX.js → chunk-JBUMD6DS.js} +2 -2
- package/dist/{chunk-BWRGFKJP.js → chunk-K3IJQNB7.js} +2 -3
- package/dist/{chunk-LFNUH4GY.js → chunk-K4VP6ZKE.js} +1 -1
- package/dist/{chunk-ZR5VN5IV.js → chunk-KD2IRYCT.js} +2 -2
- package/dist/chunk-KF6YGL4B.js +160 -0
- package/dist/{chunk-SKOYC2CF.js → chunk-KK5OYNAF.js} +2 -1
- package/dist/{chunk-UB7TJEKZ.js → chunk-KV3ODJXH.js} +6 -7
- package/dist/chunk-LL5AFXU7.js +96 -0
- package/dist/{chunk-VYOKRN2I.js → chunk-LM3ISVJA.js} +1 -1
- package/dist/{chunk-E6CR5PEV.js → chunk-LV4APO72.js} +8 -2
- package/dist/{chunk-B4EBHPK3.js → chunk-M5KZX5JE.js} +9 -2
- package/dist/{chunk-HMPFGIWM.js → chunk-OMV5W53A.js} +10 -1
- package/dist/chunk-ONL54WMH.js +55 -0
- package/dist/{chunk-AKEZ3G5V.js → chunk-ONQKKHON.js} +1 -1
- package/dist/{chunk-LZHLSQYK.js → chunk-OOWPSBIS.js} +2 -2
- package/dist/{chunk-4KWOKX2B.js → chunk-OSKJZNBT.js} +1 -1
- package/dist/{chunk-4JUKWWUD.js → chunk-PLDUNXAO.js} +1 -1
- package/dist/{chunk-EHQTPVV4.js → chunk-PLTCDSTU.js} +1 -1
- package/dist/{chunk-5OM447RW.js → chunk-PZKHBB7D.js} +1 -1
- package/dist/{chunk-VEB5ERRE.js → chunk-QWNVSR6G.js} +2 -2
- package/dist/{chunk-IG75YMUN.js → chunk-RTPQDNW3.js} +1 -1
- package/dist/{chunk-YEKYVJQR.js → chunk-SGHIAGPR.js} +2 -2
- package/dist/{chunk-SVSCLHHI.js → chunk-SZZRIHGT.js} +1 -1
- package/dist/{chunk-EBNI36UQ.js → chunk-T46NR3WP.js} +3 -3
- package/dist/{chunk-FPS3JIPQ.js → chunk-TC7DJTXI.js} +1 -1
- package/dist/{chunk-W5J7R5EB.js → chunk-TEUQWOWZ.js} +1 -1
- package/dist/chunk-THROPJZC.js +115 -0
- package/dist/{chunk-IDBHX5SR.js → chunk-TRQCHF2F.js} +1 -1
- package/dist/{chunk-M3LUNN7F.js → chunk-TYKQ33CL.js} +13 -2
- package/dist/chunk-UDQW6UK7.js +129 -0
- package/dist/{chunk-WTNUVQVI.js → chunk-UHJQDFKQ.js} +1 -1
- package/dist/{chunk-VVRL27HM.js → chunk-ULPL26BU.js} +2 -2
- package/dist/{chunk-EBJREOKS.js → chunk-UXXJDIYE.js} +4 -4
- package/dist/{chunk-5LUI3WQP.js → chunk-V43UVX4H.js} +1 -1
- package/dist/{chunk-W4XYY73O.js → chunk-VHZ3AXJD.js} +1 -1
- package/dist/{chunk-NHBP2XS5.js → chunk-VI5FWDZW.js} +51 -3
- package/dist/{chunk-HJEVSQN6.js → chunk-VL6CUNSX.js} +11 -5
- package/dist/{chunk-XDTYBF2F.js → chunk-W5XCNEZC.js} +39 -1
- package/dist/{chunk-LDJ3J4TQ.js → chunk-WGD2HX2A.js} +1 -1
- package/dist/{chunk-FQCLKD7U.js → chunk-WKEPORNM.js} +1 -1
- package/dist/{chunk-PJD2KFHX.js → chunk-WPX6A5BV.js} +38 -13
- package/dist/{chunk-I3KKZ2O3.js → chunk-XEGZHHRH.js} +45 -36
- package/dist/{chunk-IKB6HFGK.js → chunk-XO7PUL4F.js} +6 -4
- package/dist/chunk-XTOVADJU.js +170 -0
- package/dist/chunk-XV32RKQZ.js +142 -0
- package/dist/{chunk-TBMDMXEX.js → chunk-YA3AWELW.js} +1 -1
- package/dist/{chunk-HVIX5ECM.js → chunk-YEVG2X5R.js} +1 -1
- package/dist/chunk-YZFLH463.js +215 -0
- package/dist/generated/index.d.ts +5 -0
- package/dist/generated/index.js +112 -108
- package/dist/index.js +112 -108
- package/dist/styles.css +1982 -228
- package/package.json +3 -3
- package/dist/AccessDeniedCard-WXM5DBDZ.css +0 -8
- package/dist/ArtifactCard-EXVAEBV6.css +0 -109
- package/dist/DocTabsEditor-RCOWHX5J.css +0 -78
- package/dist/PresenterView-T2C6ZZ3N.css +0 -103
- package/dist/SandboxedFrame-L6HBQZCD.css +0 -50
- package/dist/chunk-CRKFL423.js +0 -74
- package/dist/chunk-GOSQXEZU.js +0 -102
- package/dist/chunk-MBNFJSZS.js +0 -107
- package/dist/chunk-RV7SZAHR.js +0 -105
- package/dist/chunk-UZ7ZUSLH.js +0 -179
- package/dist/utils/useMediaMatch.d.ts +0 -12
- /package/dist/{chunk-TF2P3OPS.js → chunk-YCARLYI6.js} +0 -0
package/dist/Avatar/Avatar.d.ts
CHANGED
|
@@ -176,10 +176,12 @@ export declare const AVATAR_CHARACTER_FULL_DETAIL = 56;
|
|
|
176
176
|
/**
|
|
177
177
|
* Two uppercase initials, or one where the name has only one letter to give.
|
|
178
178
|
*
|
|
179
|
-
* SPLIT ON WHITESPACE, HYPHEN, UNDERSCORE AND
|
|
180
|
-
* draws are handles rather than names: `backend-engineer` gives BE,
|
|
181
|
-
* `sre_lead` gives SL
|
|
182
|
-
* alone gives B, S and C and a roster of identical
|
|
179
|
+
* SPLIT ON WHITESPACE, HYPHEN, UNDERSCORE, DOT AND COLON, because half the
|
|
180
|
+
* names this draws are handles rather than names: `backend-engineer` gives BE,
|
|
181
|
+
* `sre_lead` gives SL, `carlos.diaz` gives CD and `ci:release` CR, where
|
|
182
|
+
* splitting on spaces alone gives B, S, C and C and a roster of identical
|
|
183
|
+
* badges. PUNCTUATION AROUND A WORD IS NOT A LETTER: "review (API token)"
|
|
184
|
+
* gave R( where it gives RA.
|
|
183
185
|
*
|
|
184
186
|
* A SINGLE WORD STILL GIVES TWO LETTERS, because the seats an org chart names
|
|
185
187
|
* in one word are the ones it draws most (CEO, SWE, PM, DevRel), and a badge
|
package/dist/Avatar/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { AvatarStack, avatarStackLabel } from '../chunk-
|
|
2
|
-
export { AVATAR_CHARACTER_FULL_DETAIL, AVATAR_CORNER_RATIO, AVATAR_SIZES, AVATAR_STATUSES, AVATAR_STATUS_LABELS, Avatar, avatarCorner, avatarInitialsName, avatarPixels, avatarTint, getInitials } from '../chunk-
|
|
1
|
+
export { AvatarStack, avatarStackLabel } from '../chunk-5AQBPHZD.js';
|
|
2
|
+
export { AVATAR_CHARACTER_FULL_DETAIL, AVATAR_CORNER_RATIO, AVATAR_SIZES, AVATAR_STATUSES, AVATAR_STATUS_LABELS, Avatar, avatarCorner, avatarInitialsName, avatarPixels, avatarTint, getInitials } from '../chunk-PZKHBB7D.js';
|
|
3
3
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
export { AvatarPicker } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { AvatarPicker } from '../chunk-EBCHVFCS.js';
|
|
2
|
+
import '../chunk-GPHWCK7M.js';
|
|
3
|
+
import '../chunk-K3IJQNB7.js';
|
|
4
4
|
import '../chunk-AYKXMIOR.js';
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
7
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-YEVG2X5R.js';
|
|
6
|
+
import '../chunk-CCAXYHQS.js';
|
|
7
|
+
import '../chunk-VL6CUNSX.js';
|
|
8
8
|
import '../chunk-RKKO7QHH.js';
|
|
9
|
-
import '../chunk-
|
|
9
|
+
import '../chunk-PZKHBB7D.js';
|
|
10
10
|
import '../chunk-BHHIIK3M.js';
|
|
11
|
-
import '../chunk-
|
|
11
|
+
import '../chunk-OMV5W53A.js';
|
|
12
12
|
import '../chunk-R25RGPUB.js';
|
|
13
13
|
import '../chunk-BZFWDIV6.js';
|
|
14
14
|
import '../chunk-ODEQTPFM.js';
|
package/dist/Callout/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { Callout } from '../chunk-
|
|
1
|
+
export { Callout } from '../chunk-SZZRIHGT.js';
|
|
2
2
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -22,8 +22,15 @@
|
|
|
22
22
|
*/
|
|
23
23
|
--crewlet-callout-line: transparent;
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
/* THE GLYPH, THE TEXT, AND AN ACTION'S COLUMN only where there is one: the
|
|
26
|
+
third track is implicit, so a callout without an action keeps no gap
|
|
27
|
+
for it at its end. A grid rather than a row, so a narrow callout can put
|
|
28
|
+
its action under the text, in the text's own column, whatever the glyph
|
|
29
|
+
is. */
|
|
30
|
+
display: grid;
|
|
31
|
+
grid-template-columns: auto minmax(0, 1fr);
|
|
32
|
+
grid-auto-columns: auto;
|
|
33
|
+
align-items: start;
|
|
27
34
|
gap: var(--spacing-2);
|
|
28
35
|
/* The engine's own: a tight strip rather than a padded card. This sits
|
|
29
36
|
above a screen or between two sections and takes a line or two of text,
|
|
@@ -38,17 +45,29 @@
|
|
|
38
45
|
line-height: var(--font-line-height-normal);
|
|
39
46
|
}
|
|
40
47
|
|
|
48
|
+
/*
|
|
49
|
+
* WITH AN ACTION, ONE LINE OF TEXT CENTRES ON THE BUTTON. The row is the
|
|
50
|
+
* button's height and the text sat at its top, three pixels above the
|
|
51
|
+
* button's label. The content is padded by half of what the control is
|
|
52
|
+
* taller than a line, and the icon moved down with it, so a one-line callout
|
|
53
|
+
* reads as one line and a longer one keeps its icon on its first line.
|
|
54
|
+
*/
|
|
55
|
+
.crewlet-callout:has(> .crewlet-callout__action) {
|
|
56
|
+
--crewlet-callout-lead: max(0px, calc((var(--size-control-sm) - 1lh) / 2));
|
|
57
|
+
/* Measured by its own width, so the action can move under the text. */
|
|
58
|
+
container: crewlet-callout / inline-size;
|
|
59
|
+
}
|
|
60
|
+
|
|
41
61
|
.crewlet-callout__icon {
|
|
42
62
|
display: inline-flex;
|
|
43
|
-
flex: none;
|
|
44
63
|
/* On the first line's optical centre rather than its box top, which a 16px
|
|
45
64
|
glyph beside a 13px line sits two pixels above. */
|
|
46
|
-
margin-top: 2px;
|
|
65
|
+
margin-top: calc(2px + var(--crewlet-callout-lead, 0px));
|
|
47
66
|
}
|
|
48
67
|
|
|
49
68
|
.crewlet-callout__content {
|
|
50
69
|
min-width: 0;
|
|
51
|
-
|
|
70
|
+
padding-block: var(--crewlet-callout-lead, 0px);
|
|
52
71
|
}
|
|
53
72
|
|
|
54
73
|
.crewlet-callout__title {
|
|
@@ -59,10 +78,31 @@
|
|
|
59
78
|
}
|
|
60
79
|
|
|
61
80
|
.crewlet-callout__action {
|
|
62
|
-
|
|
81
|
+
grid-column: 3;
|
|
82
|
+
grid-row: 1;
|
|
63
83
|
align-self: center;
|
|
64
84
|
}
|
|
65
85
|
|
|
86
|
+
/*
|
|
87
|
+
* A NARROW CALLOUT PUTS ITS ACTION UNDER THE TEXT, at the start of the text's
|
|
88
|
+
* column, so the sentence keeps the callout's whole measure. Beside it, a
|
|
89
|
+
* phone's width left the message a column of a word or two a line. The text
|
|
90
|
+
* no longer centres on a button beside it, so it sits at its own top.
|
|
91
|
+
*/
|
|
92
|
+
@container crewlet-callout (width < 28rem) {
|
|
93
|
+
.crewlet-callout__icon,
|
|
94
|
+
.crewlet-callout__content {
|
|
95
|
+
--crewlet-callout-lead: 0px;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.crewlet-callout__action {
|
|
99
|
+
grid-column: 2;
|
|
100
|
+
grid-row: 2;
|
|
101
|
+
justify-self: start;
|
|
102
|
+
align-self: start;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
|
|
66
106
|
/*
|
|
67
107
|
* Inline code inside a callout takes the callout's ink. A mono chip that kept
|
|
68
108
|
* its own neutral ink inside a danger banner read as the one part of the
|
package/dist/Canvas/Canvas.d.ts
CHANGED
|
@@ -169,9 +169,10 @@ export interface CanvasLabels {
|
|
|
169
169
|
}
|
|
170
170
|
/**
|
|
171
171
|
* What the field under the content is drawn as. `plain` is the page's own
|
|
172
|
-
* ground; `dotted` lays a grid of dots on
|
|
172
|
+
* ground; `dotted` lays a grid of dots on the frame, and `grid` lays one on
|
|
173
|
+
* the content's own plane. See [CanvasProps.ground].
|
|
173
174
|
*/
|
|
174
|
-
export type CanvasGround = 'plain' | 'dotted';
|
|
175
|
+
export type CanvasGround = 'plain' | 'dotted' | 'grid';
|
|
175
176
|
export interface CanvasProps {
|
|
176
177
|
/** The accessible name of the viewport, such as "Organization chart". */
|
|
177
178
|
label: string;
|
|
@@ -259,6 +260,13 @@ export interface CanvasProps {
|
|
|
259
260
|
* anybody drags it. They are drawn on the frame rather than on the content,
|
|
260
261
|
* so they stay put while the content moves over them. `plain`, the default,
|
|
261
262
|
* is the page's own ground and nothing else.
|
|
263
|
+
*
|
|
264
|
+
* `grid` is a design tool's ground: the same dots laid on the content's own
|
|
265
|
+
* plane, so they pan with it and their pitch follows the zoom (see
|
|
266
|
+
* [gridOf]). For a canvas of things a person places and arranges, where the
|
|
267
|
+
* grid is the surface they are placed ON rather than a texture behind a
|
|
268
|
+
* chart, and a grid that stayed put while the boards moved over it would
|
|
269
|
+
* read as two planes sliding apart.
|
|
262
270
|
*/
|
|
263
271
|
ground?: CanvasGround | undefined;
|
|
264
272
|
/**
|
|
@@ -304,3 +312,26 @@ export interface CanvasProps {
|
|
|
304
312
|
className?: string | undefined;
|
|
305
313
|
}
|
|
306
314
|
export declare function Canvas({ label, content, children, overlay, controls, controlsPlacement, controlsExtra, controlsActualSize, controlsBelow, hint, largestItemWidth, dimmed, ground, minZoom, cursor, refitOnResize, touch, labels, onReady, onViewChange, ref, className, }: CanvasProps): import("react").JSX.Element;
|
|
315
|
+
/**
|
|
316
|
+
* Every pointer cursor, as custom properties on the canvas's root: the field
|
|
317
|
+
* reads the one its [CanvasCursor] names, and content inside the canvas (a
|
|
318
|
+
* board's shield, a resize handle's neighbours) reads the same drawings
|
|
319
|
+
* rather than the browser's own, so one pointer family runs across the whole
|
|
320
|
+
* surface. Each falls back to its keyword where it is read.
|
|
321
|
+
*/
|
|
322
|
+
/**
|
|
323
|
+
* WHERE A `grid` GROUND'S DOTS FALL for a view: their pitch on screen as a
|
|
324
|
+
* multiple of the dotted step, and the screen point one of them sits on.
|
|
325
|
+
*
|
|
326
|
+
* The world's pitch doubles or halves with the zoom so the screen pitch stays
|
|
327
|
+
* between one and two steps, as a design tool's grid does: at every zoom the
|
|
328
|
+
* dots are as dense as the dotted ground's and never twice as sparse, and one
|
|
329
|
+
* of them always sits on the content's origin, so the grid and the content
|
|
330
|
+
* never slide apart. The offset is the view's own translation, since the
|
|
331
|
+
* background repeats from it both ways.
|
|
332
|
+
*/
|
|
333
|
+
export declare function gridOf(view: CanvasView): {
|
|
334
|
+
scale: number;
|
|
335
|
+
x: number;
|
|
336
|
+
y: number;
|
|
337
|
+
};
|
package/dist/Canvas/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import './Canvas.css';
|
|
2
|
-
export { Canvas } from './Canvas.js';
|
|
2
|
+
export { Canvas, gridOf } from './Canvas.js';
|
|
3
3
|
export type { CanvasCursor, CanvasGround, CanvasHandle, CanvasLabels, CanvasProps } from './Canvas.js';
|
|
4
4
|
export { ShortcutTip } from './ShortcutTip.js';
|
|
5
5
|
export type { ShortcutTipProps } from './ShortcutTip.js';
|
package/dist/Canvas/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, ShortcutTip, anchorView, beyondSlop, clampPan, clampZoom, fitView, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, ShortcutTip, anchorView, beyondSlop, clampPan, clampZoom, fitView, gridOf, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-3P4Y5RX6.js';
|
|
2
|
+
import '../chunk-LM3ISVJA.js';
|
|
3
3
|
import '../chunk-SMBKXWML.js';
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-6ZJ3N7QI.js';
|
|
5
|
+
import '../chunk-OMV5W53A.js';
|
|
6
6
|
import '../chunk-R25RGPUB.js';
|
|
7
7
|
import '../chunk-OG6CL3EB.js';
|
|
8
8
|
import '../chunk-4FQT6ZAY.js';
|
|
@@ -33,6 +33,19 @@
|
|
|
33
33
|
background-size: var(--spacing-5) var(--spacing-5);
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
+
/*
|
|
37
|
+
* A GRID ON THE CONTENT'S PLANE (`ground="grid"`): the same dots, but pitched
|
|
38
|
+
* and placed by the view (`gridOf`), so they pan and zoom with the content.
|
|
39
|
+
* The dots themselves stay one screen pixel, as a design tool's do.
|
|
40
|
+
*/
|
|
41
|
+
.crewlet-canvas[data-ground='grid'] {
|
|
42
|
+
background-image: radial-gradient(var(--color-border-strong) 1px, transparent 1.2px);
|
|
43
|
+
background-size:
|
|
44
|
+
calc(var(--spacing-5) * var(--crewlet-canvas-grid-scale, 1))
|
|
45
|
+
calc(var(--spacing-5) * var(--crewlet-canvas-grid-scale, 1));
|
|
46
|
+
background-position: var(--crewlet-canvas-grid-x, 0) var(--crewlet-canvas-grid-y, 0);
|
|
47
|
+
}
|
|
48
|
+
|
|
36
49
|
.crewlet-canvas__viewport {
|
|
37
50
|
position: absolute;
|
|
38
51
|
inset: 0;
|
|
@@ -239,6 +252,16 @@
|
|
|
239
252
|
display: none;
|
|
240
253
|
}
|
|
241
254
|
|
|
255
|
+
/*
|
|
256
|
+
* THE NOTE GROWS AWAY FROM THE CORNER. It comes and goes as the canvas's state
|
|
257
|
+
* does, and drawn on the corner's side of the zoom bar it would push the bar
|
|
258
|
+
* out from under a pointer on its way to it; so in a bottom corner it is drawn
|
|
259
|
+
* above the bar, and the bar never moves.
|
|
260
|
+
*/
|
|
261
|
+
.crewlet-canvas__controls:not([data-placement='top-right']) .crewlet-canvas__hint {
|
|
262
|
+
order: -1;
|
|
263
|
+
}
|
|
264
|
+
|
|
242
265
|
/*
|
|
243
266
|
* THE ZOOM READOUT, between the two steppers. It says where the view stands,
|
|
244
267
|
* which two chevrons never do, and it is the way to a number without pressing a
|
|
@@ -36,12 +36,18 @@
|
|
|
36
36
|
*
|
|
37
37
|
* HOVER AND SELECTION ARE OUTLINES IN THE ACCENT, at one screen pixel and two,
|
|
38
38
|
* over a board's own hairline edge; hovering a board's name outlines its board,
|
|
39
|
-
* because the name is how a reader picks a board out of a crowded canvas.
|
|
39
|
+
* because the name is how a reader picks a board out of a crowded canvas. The
|
|
40
|
+
* selection is the component's own unless the caller holds it (`selected`
|
|
41
|
+
* with `onSelectedChange`), which is how a list of boards beside the canvas
|
|
42
|
+
* marks the board picked on it and picks one there.
|
|
40
43
|
*
|
|
41
44
|
* THE CHROME STAYS ONE SIZE ON SCREEN. Titles, edges, outlines and handles
|
|
42
45
|
* are counter-scaled by the zoom, so a board's label is readable, its edge is
|
|
43
46
|
* a hairline and its handle is a full pointer target whatever the zoom, while
|
|
44
|
-
* the board itself scales with the canvas.
|
|
47
|
+
* the board itself scales with the canvas. What a board says is held to the
|
|
48
|
+
* room it is drawn in (`boardRoom`): a name too narrow to read is not drawn,
|
|
49
|
+
* and a placeholder drops the lines it has no room for rather than spill them
|
|
50
|
+
* over the boards beside it.
|
|
45
51
|
*/
|
|
46
52
|
import { type ReactNode, type Ref } from 'react';
|
|
47
53
|
import { type CanvasHandle, type CanvasLabels, type CanvasPoint } from '../Canvas/index.js';
|
|
@@ -80,6 +86,11 @@ export interface CanvasBoardNote {
|
|
|
80
86
|
text: string;
|
|
81
87
|
color?: CanvasNoteColor | undefined;
|
|
82
88
|
}
|
|
89
|
+
/** What is selected on a board canvas: one board or one note. */
|
|
90
|
+
export interface CanvasBoardSelection {
|
|
91
|
+
kind: 'board' | 'note';
|
|
92
|
+
id: string;
|
|
93
|
+
}
|
|
83
94
|
/** A frame as an edit reports it. */
|
|
84
95
|
export interface CanvasBoardRect {
|
|
85
96
|
x: number;
|
|
@@ -167,6 +178,14 @@ export interface CanvasBoardProps {
|
|
|
167
178
|
onOpen?: ((id: string) => void) | undefined;
|
|
168
179
|
/** The board that holds the pointer changed; null is the canvas itself. */
|
|
169
180
|
onActivate?: ((id: string | null) => void) | undefined;
|
|
181
|
+
/**
|
|
182
|
+
* The selected board or note, for a caller that holds it (a list of boards
|
|
183
|
+
* that marks the one picked on the canvas). Left out, the canvas keeps its
|
|
184
|
+
* own; null is nothing selected.
|
|
185
|
+
*/
|
|
186
|
+
selected?: CanvasBoardSelection | null | undefined;
|
|
187
|
+
/** The selection changed, by a press on the canvas or by Escape. */
|
|
188
|
+
onSelectedChange?: ((selection: CanvasBoardSelection | null) => void) | undefined;
|
|
170
189
|
/** Anything else in the canvas's control bar. */
|
|
171
190
|
controlsExtra?: ReactNode | undefined;
|
|
172
191
|
/** The floating tool palette. On by default; the keys work either way. */
|
|
@@ -177,4 +196,20 @@ export interface CanvasBoardProps {
|
|
|
177
196
|
canvasRef?: Ref<CanvasHandle> | undefined;
|
|
178
197
|
className?: string | undefined;
|
|
179
198
|
}
|
|
180
|
-
|
|
199
|
+
/**
|
|
200
|
+
* WHAT A BOARD HAS ROOM TO SAY, from its size on screen.
|
|
201
|
+
*
|
|
202
|
+
* `title` is whether its name is drawn above it: a name narrower than a few
|
|
203
|
+
* letters reads as a stray mark, so a board drawn narrower than
|
|
204
|
+
* [BOARD_TITLE_MIN_WIDTH] goes unnamed until it is zoomed into. `lines` is how
|
|
205
|
+
* many of a placeholder's two lines (its size, then why it is not running) fit
|
|
206
|
+
* inside it at the chrome's own type, so the lines it has no room for are left
|
|
207
|
+
* out rather than clipped at both ends.
|
|
208
|
+
*/
|
|
209
|
+
export declare function boardRoom(width: number, height: number): {
|
|
210
|
+
title: boolean;
|
|
211
|
+
lines: 0 | 1 | 2;
|
|
212
|
+
};
|
|
213
|
+
/** The narrowest a board is drawn, in screen pixels, with its name above it. */
|
|
214
|
+
export declare const BOARD_TITLE_MIN_WIDTH = 40;
|
|
215
|
+
export declare function CanvasBoard({ label, boards, notes, renderBoard, maxLive, minLiveWidth, editable, minSide, maxSide, onBoardChange, onNoteChange, onNoteRemove, onNoteCreate, onOpen, onActivate, selected: heldSelection, onSelectedChange, controlsExtra, toolbar, labels, canvasLabels, canvasRef, className, }: CanvasBoardProps): import("react").JSX.Element;
|
|
@@ -26,10 +26,16 @@ export interface BoardFrame {
|
|
|
26
26
|
*/
|
|
27
27
|
export declare const CANVAS_BOARD_MAX_LIVE = 12;
|
|
28
28
|
/**
|
|
29
|
-
* The narrowest a board may be drawn, in screen pixels, and still be live
|
|
30
|
-
*
|
|
29
|
+
* The narrowest a board may be drawn, in screen pixels, and still be live.
|
|
30
|
+
*
|
|
31
|
+
* Below it a page is a smear, so running it buys nothing. Above it the page's
|
|
32
|
+
* text may be too small to read, but its layout and colour are not, and they
|
|
33
|
+
* are how a reader tells one board of a design from the next: a canvas
|
|
34
|
+
* fitted on a phone or zoomed out over a dozen boards draws them a hundred or
|
|
35
|
+
* so pixels wide, and at a wider floor every one of them was a grey box. The
|
|
36
|
+
* cost of running more is held by [CANVAS_BOARD_MAX_LIVE], not by this.
|
|
31
37
|
*/
|
|
32
|
-
export declare const CANVAS_BOARD_MIN_LIVE_WIDTH =
|
|
38
|
+
export declare const CANVAS_BOARD_MIN_LIVE_WIDTH = 96;
|
|
33
39
|
/**
|
|
34
40
|
* The boards to frame for a view: those on screen and at least `minWidth`
|
|
35
41
|
* pixels wide there, the most visible area first, at most `max` of them,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import './CanvasBoard.css';
|
|
2
|
-
export { CanvasBoard, CANVAS_BOARD_MIN_ZOOM, CANVAS_NOTE_COLORS, TITLE_GLYPH_EM, titleSize } from './CanvasBoard.js';
|
|
3
|
-
export type { CanvasBoardItem, CanvasBoardLabels, CanvasBoardNote, CanvasBoardProps, CanvasBoardRect, CanvasBoardTool, CanvasNoteColor, } from './CanvasBoard.js';
|
|
2
|
+
export { BOARD_TITLE_MIN_WIDTH, CanvasBoard, CANVAS_BOARD_MIN_ZOOM, CANVAS_NOTE_COLORS, TITLE_GLYPH_EM, boardRoom, titleSize, } from './CanvasBoard.js';
|
|
3
|
+
export type { CanvasBoardItem, CanvasBoardLabels, CanvasBoardNote, CanvasBoardProps, CanvasBoardRect, CanvasBoardSelection, CanvasBoardTool, CanvasNoteColor, } from './CanvasBoard.js';
|
|
4
4
|
export { CANVAS_BOARD_MAX_LIVE, CANVAS_BOARD_MIN_LIVE_WIDTH, liveBoards } from './budget.js';
|
|
5
5
|
export type { BoardFrame } from './budget.js';
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export { CANVAS_BOARD_MAX_LIVE, CANVAS_BOARD_MIN_LIVE_WIDTH, CANVAS_BOARD_MIN_ZOOM, CANVAS_NOTE_COLORS, CanvasBoard, TITLE_GLYPH_EM, liveBoards, titleSize } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { BOARD_TITLE_MIN_WIDTH, CANVAS_BOARD_MAX_LIVE, CANVAS_BOARD_MIN_LIVE_WIDTH, CANVAS_BOARD_MIN_ZOOM, CANVAS_NOTE_COLORS, CanvasBoard, TITLE_GLYPH_EM, boardRoom, liveBoards, titleSize } from '../chunk-WPX6A5BV.js';
|
|
2
|
+
import '../chunk-5SZGKSGL.js';
|
|
3
|
+
import '../chunk-3Y56GQPM.js';
|
|
4
4
|
import '../chunk-PGRPNDWM.js';
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-3P4Y5RX6.js';
|
|
6
|
+
import '../chunk-LM3ISVJA.js';
|
|
7
7
|
import '../chunk-SMBKXWML.js';
|
|
8
|
-
import '../chunk-
|
|
9
|
-
import '../chunk-
|
|
8
|
+
import '../chunk-6ZJ3N7QI.js';
|
|
9
|
+
import '../chunk-OMV5W53A.js';
|
|
10
10
|
import '../chunk-R25RGPUB.js';
|
|
11
11
|
import '../chunk-OG6CL3EB.js';
|
|
12
12
|
import '../chunk-4FQT6ZAY.js';
|
|
@@ -5,7 +5,12 @@
|
|
|
5
5
|
* writes on the layer, so it stays one size on screen.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
/*
|
|
9
|
+
* A SIZE CONTAINER BY ITS WIDTH, so the palette can tell a canvas too narrow
|
|
10
|
+
* to hold it beside the zoom bar on one line (see below).
|
|
11
|
+
*/
|
|
8
12
|
.crewlet-canvas-board {
|
|
13
|
+
container: crewlet-canvas-board / inline-size;
|
|
9
14
|
height: 100%;
|
|
10
15
|
min-height: 0;
|
|
11
16
|
}
|
|
@@ -27,6 +32,10 @@
|
|
|
27
32
|
|
|
28
33
|
/* ---- the tool palette, floating at the foot of the field ----------------- */
|
|
29
34
|
|
|
35
|
+
/*
|
|
36
|
+
* CENTRED AT THE FOOT, on the zoom bar's line: the two bars are one control
|
|
37
|
+
* step tall and stand the same inset from the field's edge.
|
|
38
|
+
*/
|
|
30
39
|
.crewlet-canvas-board__tools {
|
|
31
40
|
position: absolute;
|
|
32
41
|
bottom: var(--spacing-3);
|
|
@@ -35,6 +44,20 @@
|
|
|
35
44
|
transform: translateX(-50%);
|
|
36
45
|
}
|
|
37
46
|
|
|
47
|
+
/*
|
|
48
|
+
* A NARROW CANVAS (a phone, a split pane) has no room at its foot for the
|
|
49
|
+
* palette between the zoom bar and the edge, so the palette moves to the top
|
|
50
|
+
* left corner, which the zoom bar never takes.
|
|
51
|
+
*/
|
|
52
|
+
@container crewlet-canvas-board (width < 36rem) {
|
|
53
|
+
.crewlet-canvas-board__tools {
|
|
54
|
+
top: var(--spacing-3);
|
|
55
|
+
bottom: auto;
|
|
56
|
+
left: var(--spacing-3);
|
|
57
|
+
transform: none;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
38
61
|
/* ---- a board ------------------------------------------------------------ */
|
|
39
62
|
|
|
40
63
|
.crewlet-canvas-board__board {
|
|
@@ -97,7 +120,7 @@
|
|
|
97
120
|
cursor: var(--crewlet-canvas-cursor-pointer, default);
|
|
98
121
|
}
|
|
99
122
|
|
|
100
|
-
/* A board that is not running draws its
|
|
123
|
+
/* A board that is not running draws its size, and why, at screen size. */
|
|
101
124
|
.crewlet-canvas-board__placeholder {
|
|
102
125
|
position: absolute;
|
|
103
126
|
inset: 0;
|
|
@@ -111,25 +134,59 @@
|
|
|
111
134
|
text-align: center;
|
|
112
135
|
}
|
|
113
136
|
|
|
114
|
-
/*
|
|
115
|
-
|
|
137
|
+
/*
|
|
138
|
+
* ONE BLOCK, SCALED ONCE: its lines keep their spacing at screen size rather
|
|
139
|
+
* than each line shrinking back into the space the zoom left it. It is held to
|
|
140
|
+
* the board's width ON SCREEN (the board's own width times the zoom, less a
|
|
141
|
+
* margin each side), so a line the component judged to fit never runs past
|
|
142
|
+
* the board's edges into the boards beside it.
|
|
143
|
+
*/
|
|
116
144
|
.crewlet-canvas-board__placeholder-text {
|
|
117
145
|
display: flex;
|
|
118
146
|
flex-direction: column;
|
|
119
147
|
align-items: center;
|
|
120
148
|
gap: var(--spacing-1);
|
|
121
149
|
flex: none;
|
|
150
|
+
box-sizing: border-box;
|
|
151
|
+
max-width: calc(100% * var(--crewlet-canvas-board-zoom));
|
|
152
|
+
padding-inline: var(--spacing-2);
|
|
122
153
|
transform: scale(var(--crewlet-canvas-board-unzoom));
|
|
123
154
|
}
|
|
124
155
|
|
|
125
|
-
.crewlet-canvas-board__placeholder-
|
|
156
|
+
.crewlet-canvas-board__placeholder-text > * {
|
|
157
|
+
max-width: 100%;
|
|
158
|
+
overflow: hidden;
|
|
159
|
+
text-overflow: ellipsis;
|
|
160
|
+
white-space: nowrap;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
.crewlet-canvas-board__placeholder-size {
|
|
126
164
|
color: var(--color-text-secondary);
|
|
127
|
-
font-size: var(--font-size-sm);
|
|
128
165
|
font-weight: var(--font-weight-medium);
|
|
166
|
+
font-variant-numeric: tabular-nums;
|
|
129
167
|
}
|
|
130
168
|
|
|
131
169
|
/* ---- chrome, at screen size --------------------------------------------- */
|
|
132
170
|
|
|
171
|
+
/*
|
|
172
|
+
* THE CHROME IS DRAWN OVER THE CONTENT, every board's and note's over every
|
|
173
|
+
* board and note, as a design tool draws its frame names. It is counter-scaled
|
|
174
|
+
* to one size on screen while the content shrinks with the zoom, so far out a
|
|
175
|
+
* name reaches over the note or board above it; drawn in document order it
|
|
176
|
+
* went under a note laid out after its board, and that note took every press
|
|
177
|
+
* meant for the name and the open control.
|
|
178
|
+
*/
|
|
179
|
+
.crewlet-canvas-board__chrome,
|
|
180
|
+
.crewlet-canvas-board__note-tools,
|
|
181
|
+
.crewlet-canvas-board__resize {
|
|
182
|
+
z-index: 1;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
/*
|
|
186
|
+
* ONE LINE OF TYPE TALL, whatever sits in it: the open control is centred on
|
|
187
|
+
* the line and allowed past it, so a row of boards zoomed far out loses only
|
|
188
|
+
* a title's height to the names above it rather than a button's.
|
|
189
|
+
*/
|
|
133
190
|
.crewlet-canvas-board__chrome {
|
|
134
191
|
position: absolute;
|
|
135
192
|
bottom: 100%;
|
|
@@ -139,11 +196,42 @@
|
|
|
139
196
|
gap: var(--spacing-1);
|
|
140
197
|
box-sizing: border-box;
|
|
141
198
|
width: calc(100% * var(--crewlet-canvas-board-zoom));
|
|
199
|
+
height: calc(var(--font-size-xs) * var(--font-line-height-normal) + var(--spacing-1));
|
|
142
200
|
padding-bottom: var(--spacing-1);
|
|
143
201
|
transform: scale(var(--crewlet-canvas-board-unzoom));
|
|
144
202
|
transform-origin: bottom left;
|
|
145
203
|
}
|
|
146
204
|
|
|
205
|
+
/* A board drawn too narrow to name goes unnamed (`boardRoom`). */
|
|
206
|
+
.crewlet-canvas-board__board[data-untitled] > .crewlet-canvas-board__chrome {
|
|
207
|
+
display: none;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
.crewlet-canvas-board__open {
|
|
211
|
+
flex: none;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
/*
|
|
215
|
+
* THE OPEN CONTROL IS THE BOARD'S, NOT THE CANVAS'S: where a pointer can
|
|
216
|
+
* hover, it is drawn on the board under it, the selected board and the
|
|
217
|
+
* control that has focus, so a canvas at rest shows its names and nothing
|
|
218
|
+
* else. A touch screen has no hover to find it by, so it is always drawn
|
|
219
|
+
* there.
|
|
220
|
+
*/
|
|
221
|
+
@media (hover: hover) {
|
|
222
|
+
/*
|
|
223
|
+
* HIDDEN, IT TAKES NO ROOM: out of the row rather than only transparent, so
|
|
224
|
+
* a narrow board's name has the whole width to itself at rest instead of
|
|
225
|
+
* being cut to its first letter beside an empty slot. It still takes focus,
|
|
226
|
+
* and is put back in the row when it has it.
|
|
227
|
+
*/
|
|
228
|
+
.crewlet-canvas-board__board:not(:hover, [data-selected]) .crewlet-canvas-board__open:not(:focus-visible) {
|
|
229
|
+
position: absolute;
|
|
230
|
+
opacity: 0;
|
|
231
|
+
pointer-events: none;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
|
|
147
235
|
/* The board's name: small, quiet, and the accent once its board is picked out. */
|
|
148
236
|
.crewlet-canvas-board__title {
|
|
149
237
|
min-width: 0;
|
|
@@ -151,6 +239,7 @@
|
|
|
151
239
|
color: var(--color-text-tertiary);
|
|
152
240
|
font-size: var(--font-size-xs);
|
|
153
241
|
font-weight: var(--font-weight-medium);
|
|
242
|
+
line-height: var(--font-line-height-normal);
|
|
154
243
|
text-overflow: ellipsis;
|
|
155
244
|
white-space: nowrap;
|
|
156
245
|
cursor: var(--crewlet-canvas-cursor-pointer, default);
|
|
@@ -166,7 +255,7 @@
|
|
|
166
255
|
margin: 0;
|
|
167
256
|
padding: var(--spacing-1) var(--spacing-2);
|
|
168
257
|
border: 1px solid transparent;
|
|
169
|
-
border-radius: var(--radius-
|
|
258
|
+
border-radius: var(--radius-md);
|
|
170
259
|
background: transparent;
|
|
171
260
|
font: inherit;
|
|
172
261
|
cursor: var(--crewlet-canvas-cursor-pointer, default);
|
|
@@ -178,6 +267,21 @@
|
|
|
178
267
|
border-color: var(--color-border-default);
|
|
179
268
|
}
|
|
180
269
|
|
|
270
|
+
/*
|
|
271
|
+
* A NAME THAT IS ALSO A MOVE HANDLE keeps the name's type and its place: the
|
|
272
|
+
* handle's padding and edge are taken back by a margin the same size, so the
|
|
273
|
+
* letters stay on the board's left edge and the title's line, and only the
|
|
274
|
+
* hover's box reaches past them.
|
|
275
|
+
*/
|
|
276
|
+
.crewlet-canvas-board__title.crewlet-canvas-board__handle {
|
|
277
|
+
flex: 0 1 auto;
|
|
278
|
+
margin-block: calc(-1 * (var(--spacing-1) + 1px));
|
|
279
|
+
margin-inline-start: calc(-1 * (var(--spacing-2) + 1px));
|
|
280
|
+
font-size: var(--font-size-xs);
|
|
281
|
+
font-weight: var(--font-weight-medium);
|
|
282
|
+
line-height: var(--font-line-height-normal);
|
|
283
|
+
}
|
|
284
|
+
|
|
181
285
|
/* Both handles draw an edge of their own, so the ring sits over it. */
|
|
182
286
|
.crewlet-canvas-board__handle:focus-visible,
|
|
183
287
|
.crewlet-canvas-board__resize:focus-visible {
|
|
@@ -333,6 +437,23 @@
|
|
|
333
437
|
transform-origin: bottom left;
|
|
334
438
|
}
|
|
335
439
|
|
|
440
|
+
/*
|
|
441
|
+
* A NOTE'S TOOLS ARE THE NOTE'S, as a board's open control is the board's:
|
|
442
|
+
* where a pointer can hover they are drawn on the note under it, the selected
|
|
443
|
+
* note and the note holding focus, rather than over every note at once.
|
|
444
|
+
*/
|
|
445
|
+
@media (hover: hover) {
|
|
446
|
+
.crewlet-canvas-board__note-tools {
|
|
447
|
+
opacity: 0;
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
.crewlet-canvas-board__note:hover .crewlet-canvas-board__note-tools,
|
|
451
|
+
.crewlet-canvas-board__note[data-selected] .crewlet-canvas-board__note-tools,
|
|
452
|
+
.crewlet-canvas-board__note:focus-within .crewlet-canvas-board__note-tools {
|
|
453
|
+
opacity: 1;
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
|
|
336
457
|
.crewlet-canvas-board__note-move {
|
|
337
458
|
width: var(--spacing-6);
|
|
338
459
|
height: var(--spacing-6);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export { CanvasToolbar, toolForKey } from '../chunk-
|
|
1
|
+
export { CanvasToolbar, toolForKey } from '../chunk-3Y56GQPM.js';
|
|
2
2
|
import '../chunk-PGRPNDWM.js';
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-3P4Y5RX6.js';
|
|
4
|
+
import '../chunk-LM3ISVJA.js';
|
|
5
5
|
import '../chunk-SMBKXWML.js';
|
|
6
|
-
import '../chunk-
|
|
7
|
-
import '../chunk-
|
|
6
|
+
import '../chunk-6ZJ3N7QI.js';
|
|
7
|
+
import '../chunk-OMV5W53A.js';
|
|
8
8
|
import '../chunk-R25RGPUB.js';
|
|
9
9
|
import '../chunk-OG6CL3EB.js';
|
|
10
10
|
import '../chunk-4FQT6ZAY.js';
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* A canvas's tool palette (CanvasToolbar.tsx): the zoom bar's glass surface
|
|
2
|
+
* A canvas's tool palette (CanvasToolbar.tsx): the zoom bar's glass surface
|
|
3
|
+
* and its control step (the small one, which every toolbar and panel control
|
|
4
|
+
* takes), so the two bars stand the same height on the field's foot,
|
|
3
5
|
* with the tool in hand drawn SOLID in the accent rather than the soft tint a
|
|
4
6
|
* toggle takes elsewhere, because it is the one fact about the palette a
|
|
5
7
|
* reader checks from across the field before every press.
|
|
@@ -14,7 +16,7 @@
|
|
|
14
16
|
backdrop-filter: blur(var(--blur-sm));
|
|
15
17
|
border: 1px solid var(--color-border-default);
|
|
16
18
|
border-radius: var(--radius-md);
|
|
17
|
-
box-shadow: var(--shadow-
|
|
19
|
+
box-shadow: var(--shadow-xs);
|
|
18
20
|
}
|
|
19
21
|
|
|
20
22
|
.crewlet-canvas-toolbar .crewlet-icon-btn {
|
package/dist/ChangeMark/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { ChangeMark } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { ChangeMark } from '../chunk-SGHIAGPR.js';
|
|
2
|
+
import '../chunk-VI5FWDZW.js';
|
|
3
3
|
import '../chunk-Z7JYG5TF.js';
|
|
4
4
|
import '../chunk-AYKXMIOR.js';
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-6ZJ3N7QI.js';
|
|
6
|
+
import '../chunk-OMV5W53A.js';
|
|
7
7
|
import '../chunk-R25RGPUB.js';
|
|
8
8
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import '../chunk-3L5NHASN.js';
|
|
2
|
-
export { CHARACTER_PICKER_COLUMNS, CharacterPicker } from '../chunk-
|
|
2
|
+
export { CHARACTER_PICKER_COLUMNS, CharacterPicker } from '../chunk-YEVG2X5R.js';
|
|
3
3
|
import '../chunk-RKKO7QHH.js';
|
|
4
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-PZKHBB7D.js';
|
|
5
5
|
import '../chunk-ODEQTPFM.js';
|