@hanzo/rooms 0.1.90 → 0.1.91
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/dist/App.js +7 -1
- package/dist/Rail.js +6 -4
- package/dist/lib/session.js +1 -1
- package/package.json +3 -3
package/dist/App.js
CHANGED
|
@@ -156,7 +156,13 @@ function Window({ bar }) {
|
|
|
156
156
|
// A run floats two panes of its own, so the pane it stands in is not cut.
|
|
157
157
|
const run = where !== null && route(where).kind === 'run';
|
|
158
158
|
const asked = at.mode === 'chat' ? at.thread : null;
|
|
159
|
-
const { thread } = useOpen();
|
|
159
|
+
const { thread, settings } = useOpen();
|
|
160
|
+
// A row of the account menu asks for Settings: the drawer goes away even when
|
|
161
|
+
// the address does not move (the reader was on that page already).
|
|
162
|
+
useEffect(() => {
|
|
163
|
+
if (settings)
|
|
164
|
+
setDrawer(false);
|
|
165
|
+
}, [settings]);
|
|
160
166
|
const plans = where !== null && isPlans(where);
|
|
161
167
|
useEffect(() => {
|
|
162
168
|
if (plans)
|
package/dist/Rail.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
// The app's rail: its products as marks down the window's left edge, in one
|
|
4
4
|
// order — Chat, Dev, Studio, Tabs, Library, Scheduled tasks, Customize — then
|
|
5
|
-
// More (Team, on a host of its own), and the account at the foot. It
|
|
5
|
+
// More (Team, on a host of its own, never in Studio), and the account at the foot. It
|
|
6
6
|
// is how the app moves between its products; a phone, which has no rail,
|
|
7
7
|
// switches Chat and Dev in its bar (Top.tsx).
|
|
8
8
|
//
|
|
@@ -68,17 +68,19 @@ export function Rail({ host, mode, at, open, toggle, flat = false, onChat, onDev
|
|
|
68
68
|
const here = mode === 'dev' ? spot(at) : null;
|
|
69
69
|
const to = (p) => () => go(app(p));
|
|
70
70
|
// The products on hosts of their own, behind More; on a phone the raised places lead it.
|
|
71
|
+
// Studio offers no Team, so on a laptop it draws no More.
|
|
72
|
+
const team = mode !== 'studio';
|
|
71
73
|
const rest = [
|
|
72
74
|
...(flat
|
|
73
75
|
? [
|
|
74
76
|
{ key: 'library', label: 'Library', icon: _jsx(Library, { size: 16, "aria-hidden": true }), onSelect: to(RAISED.library) },
|
|
75
77
|
{ key: 'scheduled', label: 'Scheduled tasks', icon: _jsx(Clock, { size: 16, "aria-hidden": true }), onSelect: to(RAISED.scheduled) },
|
|
76
78
|
{ key: 'customize', label: 'Customize', icon: _jsx(Puzzle, { size: 16, "aria-hidden": true }), onSelect: to(RAISED.customize) },
|
|
77
|
-
{ type: 'separator', key: 'raised' },
|
|
79
|
+
...(team ? [{ type: 'separator', key: 'raised' }] : []),
|
|
78
80
|
]
|
|
79
81
|
: []),
|
|
80
|
-
{ key: 'team', label: 'Team', icon: _jsx(Users, { size: 16, "aria-hidden": true }), onSelect: () => out(WORKSPACE) },
|
|
82
|
+
...(team ? [{ key: 'team', label: 'Team', icon: _jsx(Users, { size: 16, "aria-hidden": true }), onSelect: () => out(WORKSPACE) }] : []),
|
|
81
83
|
];
|
|
82
84
|
const Stack = flat ? XStack : YStack;
|
|
83
|
-
return (_jsxs(Stack, { "data-slot": "rail", render: "nav", "aria-label": "Products", ...(flat ? { pt: '$2', mt: '$2', borderTopWidth: 1, borderColor: '$borderColor', gap: '$1' } : { width: RAIL, flex: 1, pt: '$2', pb: '$2', gap: 8 }), shrink: 0, items: "center", children: [toggle ? (_jsx(YStack, { pb: 8, children: _jsx(Toggle, { open: open, onPress: toggle }) })) : null, _jsx(Mark, { label: "Chat", on: mode === 'chat', onPress: onChat, "data-slot": "rail-chat", children: _jsx(MessageSquare, { size: 18, "aria-hidden": true }) }), _jsx(Mark, { label: "Dev", on: mode === 'dev' && !here, onPress: onDev, "data-slot": "rail-dev", children: _jsx(Code2, { size: 18, "aria-hidden": true }) }), _jsx(Mark, { label: "Studio", on: mode === 'studio', onPress: onStudio, "data-slot": "rail-studio", children: _jsx(WandSparkles, { size: 18, "aria-hidden": true }) }), _jsx(Mark, { label: "Tabs", on: mode === 'tabs', onPress: onTabs, "data-slot": "rail-tabs", children: _jsx(SquareTerminal, { size: 18, "aria-hidden": true }) }), flat ? null : (_jsxs(_Fragment, { children: [_jsx(Mark, { label: "Library", on: here === 'library', onPress: to(RAISED.library), "data-slot": "rail-library", children: _jsx(Library, { size: 18, "aria-hidden": true }) }), _jsx(Mark, { label: "Scheduled tasks", on: here === 'scheduled', onPress: to(RAISED.scheduled), "data-slot": "rail-scheduled", children: _jsx(Clock, { size: 18, "aria-hidden": true }) }), _jsx(Mark, { label: "Customize", on: here === 'customize', onPress: to(RAISED.customize), "data-slot": "rail-customize", children: _jsx(Puzzle, { size: 18, "aria-hidden": true }) })] })), _jsx(DropdownMenu, { placement: flat ? 'top-start' : 'right-start', minWidth: 220, trigger: _jsx(XStack, { render: "button", "aria-label": "More", ...{ title: 'More' }, "data-slot": "rail-more", width: MARK, height: MARK, rounded: "$4", items: "center", justify: "center", cursor: "pointer", opacity: 0.62, hoverStyle: { bg: '$hover', opacity: 1 }, pressStyle: { bg: '$raised' }, focusVisibleStyle: { outlineWidth: 2, outlineStyle: 'solid', outlineColor: '$outlineColor' }, $touchable: { width: 44, height: 44 }, children: _jsx(Ellipsis, { size: 18, "aria-hidden": true }) }), items: rest }), _jsx(YStack, { flex: 1 }), _jsx(Me, { host: host, narrow: true, above: flat, onOrg: onOrg })] }));
|
|
85
|
+
return (_jsxs(Stack, { "data-slot": "rail", render: "nav", "aria-label": "Products", ...(flat ? { pt: '$2', mt: '$2', borderTopWidth: 1, borderColor: '$borderColor', gap: '$1' } : { width: RAIL, flex: 1, pt: '$2', pb: '$2', gap: 8 }), shrink: 0, items: "center", children: [toggle ? (_jsx(YStack, { pb: 8, children: _jsx(Toggle, { open: open, onPress: toggle }) })) : null, _jsx(Mark, { label: "Chat", on: mode === 'chat', onPress: onChat, "data-slot": "rail-chat", children: _jsx(MessageSquare, { size: 18, "aria-hidden": true }) }), _jsx(Mark, { label: "Dev", on: mode === 'dev' && !here, onPress: onDev, "data-slot": "rail-dev", children: _jsx(Code2, { size: 18, "aria-hidden": true }) }), _jsx(Mark, { label: "Studio", on: mode === 'studio', onPress: onStudio, "data-slot": "rail-studio", children: _jsx(WandSparkles, { size: 18, "aria-hidden": true }) }), _jsx(Mark, { label: "Tabs", on: mode === 'tabs', onPress: onTabs, "data-slot": "rail-tabs", children: _jsx(SquareTerminal, { size: 18, "aria-hidden": true }) }), flat ? null : (_jsxs(_Fragment, { children: [_jsx(Mark, { label: "Library", on: here === 'library', onPress: to(RAISED.library), "data-slot": "rail-library", children: _jsx(Library, { size: 18, "aria-hidden": true }) }), _jsx(Mark, { label: "Scheduled tasks", on: here === 'scheduled', onPress: to(RAISED.scheduled), "data-slot": "rail-scheduled", children: _jsx(Clock, { size: 18, "aria-hidden": true }) }), _jsx(Mark, { label: "Customize", on: here === 'customize', onPress: to(RAISED.customize), "data-slot": "rail-customize", children: _jsx(Puzzle, { size: 18, "aria-hidden": true }) })] })), rest.length ? (_jsx(DropdownMenu, { placement: flat ? 'top-start' : 'right-start', minWidth: 220, trigger: _jsx(XStack, { render: "button", "aria-label": "More", ...{ title: 'More' }, "data-slot": "rail-more", width: MARK, height: MARK, rounded: "$4", items: "center", justify: "center", cursor: "pointer", opacity: 0.62, hoverStyle: { bg: '$hover', opacity: 1 }, pressStyle: { bg: '$raised' }, focusVisibleStyle: { outlineWidth: 2, outlineStyle: 'solid', outlineColor: '$outlineColor' }, $touchable: { width: 44, height: 44 }, children: _jsx(Ellipsis, { size: 18, "aria-hidden": true }) }), items: rest })) : null, _jsx(YStack, { flex: 1 }), _jsx(Me, { host: host, narrow: true, above: flat, onOrg: onOrg })] }));
|
|
84
86
|
}
|
package/dist/lib/session.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* who was signed in, which reads as a permissions problem rather than a typo.
|
|
15
15
|
* Two derivations of one name never agree; this is the one derivation.
|
|
16
16
|
*/
|
|
17
|
-
import { superAdmin as sudoOf } from '@hanzo/iam/
|
|
17
|
+
import { superAdmin as sudoOf } from '@hanzo/iam/identity';
|
|
18
18
|
import { api } from './api.js';
|
|
19
19
|
import { where } from '../where.js';
|
|
20
20
|
/** The SDK's own keys, `hanzo_iam_`-prefixed. The far side of a boundary. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hanzo/rooms",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.91",
|
|
4
4
|
"description": "The workspace rooms — Home, Chat, Inbox, Contacts, Meet, Cal, Drive, Board, Work, Bots — and the frame that holds them, once, for every Hanzo surface.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"@hanzo/composer": ">=0.2.0",
|
|
54
54
|
"@hanzo/event": ">=0.3.56",
|
|
55
55
|
"@hanzo/gui": "^8.3.5",
|
|
56
|
-
"@hanzo/iam": ">=0.21.
|
|
56
|
+
"@hanzo/iam": ">=0.21.35",
|
|
57
57
|
"@hanzo/logo": ">=1.0.26",
|
|
58
58
|
"@hanzo/studio": ">=0.1.0",
|
|
59
59
|
"@hanzo/tabs": ">=0.1.8",
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
"@hanzo/design": "0.5.34",
|
|
74
74
|
"@hanzo/event": "0.3.56",
|
|
75
75
|
"@hanzo/gui": "8.3.5",
|
|
76
|
-
"@hanzo/iam": "0.21.
|
|
76
|
+
"@hanzo/iam": "0.21.35",
|
|
77
77
|
"@hanzo/logo": "1.0.26",
|
|
78
78
|
"@hanzo/studio": "0.1.0",
|
|
79
79
|
"@hanzo/tabs": "github:hanzo-apps/tabs#af6f1e4c02a3ef7faa192a8310e193219fa5c1c5",
|