@skillcdn/console 0.4.4 → 0.4.5
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/dist/api.d.ts +3 -3
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +3 -3
- package/dist/api.js.map +1 -1
- package/dist/cli/cli.d.ts.map +1 -1
- package/dist/cli/cli.js +162 -15
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/format.d.ts +16 -3
- package/dist/cli/format.d.ts.map +1 -1
- package/dist/cli/format.js +68 -19
- package/dist/cli/format.js.map +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +26 -5
- package/dist/cli/help.js.map +1 -1
- package/dist/client.d.ts +28 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +12 -2
- package/dist/client.js.map +1 -1
- package/dist/compat.js +1 -1
- package/dist/components/board.d.ts.map +1 -1
- package/dist/components/board.js +46 -15
- package/dist/components/board.js.map +1 -1
- package/dist/components/decision-form.d.ts +0 -3
- package/dist/components/decision-form.d.ts.map +1 -1
- package/dist/components/decision-form.js +3 -15
- package/dist/components/decision-form.js.map +1 -1
- package/dist/components/event-feed.d.ts.map +1 -1
- package/dist/components/event-feed.js +30 -10
- package/dist/components/event-feed.js.map +1 -1
- package/dist/components/my-decisions.d.ts +20 -3
- package/dist/components/my-decisions.d.ts.map +1 -1
- package/dist/components/my-decisions.js +14 -1
- package/dist/components/my-decisions.js.map +1 -1
- package/dist/components/people.d.ts +43 -1
- package/dist/components/people.d.ts.map +1 -1
- package/dist/components/people.js +117 -9
- package/dist/components/people.js.map +1 -1
- package/dist/components/picker.d.ts +8 -0
- package/dist/components/picker.d.ts.map +1 -1
- package/dist/components/picker.js +2 -2
- package/dist/components/picker.js.map +1 -1
- package/dist/components/plugin-frame.d.ts +0 -1
- package/dist/components/plugin-frame.d.ts.map +1 -1
- package/dist/components/plugin-frame.js +22 -1
- package/dist/components/plugin-frame.js.map +1 -1
- package/dist/components/plugin-settings.d.ts +5 -1
- package/dist/components/plugin-settings.d.ts.map +1 -1
- package/dist/components/plugin-settings.js +143 -30
- package/dist/components/plugin-settings.js.map +1 -1
- package/dist/components/projects.d.ts.map +1 -1
- package/dist/components/projects.js +3 -1
- package/dist/components/projects.js.map +1 -1
- package/dist/components/searches.d.ts +11 -0
- package/dist/components/searches.d.ts.map +1 -0
- package/dist/components/searches.js +30 -0
- package/dist/components/searches.js.map +1 -0
- package/dist/components/task-form.d.ts.map +1 -1
- package/dist/components/task-form.js +6 -5
- package/dist/components/task-form.js.map +1 -1
- package/dist/components/ui.d.ts +16 -0
- package/dist/components/ui.d.ts.map +1 -1
- package/dist/components/ui.js +10 -0
- package/dist/components/ui.js.map +1 -1
- package/dist/console.css +362 -67
- package/dist/console.d.ts +2 -1
- package/dist/console.d.ts.map +1 -1
- package/dist/console.js +90 -14
- package/dist/console.js.map +1 -1
- package/dist/data.d.ts +14 -1
- package/dist/data.d.ts.map +1 -1
- package/dist/data.js +36 -1
- package/dist/data.js.map +1 -1
- package/dist/i18n/en.d.ts +89 -0
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +87 -2
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/ko.d.ts.map +1 -1
- package/dist/i18n/ko.js +87 -3
- package/dist/i18n/ko.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/limits.d.ts +6 -0
- package/dist/limits.d.ts.map +1 -1
- package/dist/limits.js +6 -0
- package/dist/limits.js.map +1 -1
- package/dist/plugin/args.d.ts +6 -1
- package/dist/plugin/args.d.ts.map +1 -1
- package/dist/plugin/args.js +16 -11
- package/dist/plugin/args.js.map +1 -1
- package/dist/plugin/bridge.d.ts +20 -1
- package/dist/plugin/bridge.d.ts.map +1 -1
- package/dist/plugin/bridge.js +28 -0
- package/dist/plugin/bridge.js.map +1 -1
- package/dist/plugin/capabilities.d.ts +1 -1
- package/dist/plugin/capabilities.d.ts.map +1 -1
- package/dist/plugin/capabilities.js +10 -0
- package/dist/plugin/capabilities.js.map +1 -1
- package/dist/plugin/context.d.ts +158 -13
- package/dist/plugin/context.d.ts.map +1 -1
- package/dist/plugin/define.d.ts +13 -1
- package/dist/plugin/define.d.ts.map +1 -1
- package/dist/plugin/define.js +17 -1
- package/dist/plugin/define.js.map +1 -1
- package/dist/plugin/limits.d.ts +4 -0
- package/dist/plugin/limits.d.ts.map +1 -1
- package/dist/plugin/limits.js +4 -0
- package/dist/plugin/limits.js.map +1 -1
- package/dist/plugin/manifest.d.ts +15 -0
- package/dist/plugin/manifest.d.ts.map +1 -1
- package/dist/plugin/manifest.js +61 -4
- package/dist/plugin/manifest.js.map +1 -1
- package/dist/plugin/rest-schemas.d.ts +44 -0
- package/dist/plugin/rest-schemas.d.ts.map +1 -1
- package/dist/plugin/rest-schemas.js +55 -3
- package/dist/plugin/rest-schemas.js.map +1 -1
- package/dist/plugin/testing.d.ts +15 -1
- package/dist/plugin/testing.d.ts.map +1 -1
- package/dist/plugin/testing.js +40 -4
- package/dist/plugin/testing.js.map +1 -1
- package/dist/plugin/web.d.ts +6 -0
- package/dist/plugin/web.d.ts.map +1 -1
- package/dist/plugin/web.js +10 -1
- package/dist/plugin/web.js.map +1 -1
- package/dist/plugin.d.ts +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +1 -1
- package/dist/plugin.js.map +1 -1
- package/dist/router.d.ts +19 -0
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +18 -0
- package/dist/router.js.map +1 -1
- package/dist/routes.d.ts +11 -2
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +14 -1
- package/dist/routes.js.map +1 -1
- package/dist/schemas.d.ts +367 -0
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +62 -2
- package/dist/schemas.js.map +1 -1
- package/dist/vocabulary.d.ts +1 -1
- package/dist/vocabulary.d.ts.map +1 -1
- package/dist/vocabulary.js +6 -0
- package/dist/vocabulary.js.map +1 -1
- package/docs/specs/cli.md +7 -4
- package/docs/specs/plugins.md +47 -39
- package/docs/specs/rest.md +22 -5
- package/package.json +1 -1
- package/skills/building-a-plugin/SKILL.md +8 -6
- package/skills/working-the-board/SKILL.md +1 -1
- package/src/api.ts +17 -0
- package/src/cli/cli.ts +200 -12
- package/src/cli/format.ts +82 -19
- package/src/cli/help.ts +30 -5
- package/src/client.ts +70 -0
- package/src/compat.ts +1 -1
- package/src/components/board.tsx +83 -42
- package/src/components/decision-form.tsx +13 -32
- package/src/components/event-feed.tsx +36 -9
- package/src/components/my-decisions.tsx +50 -5
- package/src/components/people.tsx +394 -37
- package/src/components/picker.tsx +11 -2
- package/src/components/plugin-frame.tsx +23 -0
- package/src/components/plugin-settings.tsx +346 -137
- package/src/components/projects.tsx +14 -14
- package/src/components/searches.ts +47 -0
- package/src/components/task-form.tsx +23 -28
- package/src/components/ui.tsx +36 -0
- package/src/console.tsx +229 -40
- package/src/data.ts +53 -1
- package/src/i18n/en.ts +98 -2
- package/src/i18n/ko.ts +95 -3
- package/src/index.ts +11 -0
- package/src/limits.ts +6 -0
- package/src/plugin/args.ts +16 -11
- package/src/plugin/bridge.ts +45 -0
- package/src/plugin/capabilities.ts +11 -0
- package/src/plugin/context.ts +170 -10
- package/src/plugin/define.ts +34 -0
- package/src/plugin/limits.ts +4 -0
- package/src/plugin/manifest.ts +74 -3
- package/src/plugin/rest-schemas.ts +62 -5
- package/src/plugin/testing.ts +61 -5
- package/src/plugin/web.ts +17 -0
- package/src/plugin.ts +1 -0
- package/src/router.ts +25 -0
- package/src/routes.ts +17 -2
- package/src/schemas.ts +81 -2
- package/src/styles/console.css +362 -67
- package/src/vocabulary.ts +6 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decision-form.js","sourceRoot":"","sources":["../../src/components/decision-form.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAuC,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC/E,OAAO,EACL,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,uBAAuB,EACvB,WAAW,EACX,mBAAmB,EACnB,WAAW,GAIZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"decision-form.js","sourceRoot":"","sources":["../../src/components/decision-form.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-feed.d.ts","sourceRoot":"","sources":["../../src/components/event-feed.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAEvD,OAAO,EAAM,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AASlD,+IAA+I;AAC/I,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,GAAE,QAAa,GAAG,MAAM,CAK5E;
|
|
1
|
+
{"version":3,"file":"event-feed.d.ts","sourceRoot":"","sources":["../../src/components/event-feed.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAEvD,OAAO,EAAM,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AASlD,+IAA+I;AAC/I,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,GAAE,QAAa,GAAG,MAAM,CAK5E;AAuKD,MAAM,WAAW,cAAc;IAC7B,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC;IACtC,+EAA+E;IAC/E,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;CAC5B;AA8DD,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,+BAwE9C"}
|
|
@@ -39,11 +39,15 @@ function sentenceOf(event, words) {
|
|
|
39
39
|
const plugin = event.plugin ?? feed.aPlugin;
|
|
40
40
|
const grantee = data.everyone === true
|
|
41
41
|
? feed.everyone
|
|
42
|
-
: data.
|
|
43
|
-
? data.
|
|
44
|
-
: data.
|
|
45
|
-
? feed.
|
|
46
|
-
:
|
|
42
|
+
: data.grantee !== undefined
|
|
43
|
+
? feed.thePlugin(data.grantee)
|
|
44
|
+
: data.team !== undefined
|
|
45
|
+
? feed.theTeam(data.team)
|
|
46
|
+
: data.login !== undefined
|
|
47
|
+
? data.login
|
|
48
|
+
: data.key !== undefined
|
|
49
|
+
? feed.membersOf(data.name ?? data.key)
|
|
50
|
+
: feed.someone;
|
|
47
51
|
switch (event.kind) {
|
|
48
52
|
case "person.joined":
|
|
49
53
|
return feed.event.personJoined();
|
|
@@ -61,6 +65,18 @@ function sentenceOf(event, words) {
|
|
|
61
65
|
return data.manager === null || data.manager === undefined
|
|
62
66
|
? feed.event.managerCleared(login)
|
|
63
67
|
: feed.event.managerChanged(login, data.manager);
|
|
68
|
+
case "person.email_changed":
|
|
69
|
+
return data.set === true ? feed.event.emailChanged(login) : feed.event.emailCleared(login);
|
|
70
|
+
case "team.created":
|
|
71
|
+
return feed.event.teamCreated(data.team ?? feed.aTeam);
|
|
72
|
+
case "team.renamed":
|
|
73
|
+
return feed.event.teamRenamed(data.name ?? feed.aTeam, data.team ?? feed.aTeam);
|
|
74
|
+
case "team.removed":
|
|
75
|
+
return feed.event.teamRemoved(data.team ?? feed.aTeam);
|
|
76
|
+
case "team.member_added":
|
|
77
|
+
return feed.event.teamMemberAdded(login, data.team ?? feed.aTeam);
|
|
78
|
+
case "team.member_removed":
|
|
79
|
+
return feed.event.teamMemberRemoved(login, data.team ?? feed.aTeam);
|
|
64
80
|
case "workspace.updated":
|
|
65
81
|
return feed.event.workspaceUpdated(fields);
|
|
66
82
|
case "project.created":
|
|
@@ -130,9 +146,11 @@ function sentenceOf(event, words) {
|
|
|
130
146
|
case "plugin.disabled":
|
|
131
147
|
return feed.event.pluginDisabled(plugin);
|
|
132
148
|
case "plugin.configured":
|
|
133
|
-
return data.capabilities
|
|
134
|
-
? feed.event.
|
|
135
|
-
:
|
|
149
|
+
return data.capabilities !== undefined
|
|
150
|
+
? feed.event.pluginConsented(plugin)
|
|
151
|
+
: data.source !== undefined && data.source !== "administrator"
|
|
152
|
+
? feed.event.pluginSealed(fields, plugin, data.source)
|
|
153
|
+
: feed.event.pluginConfigured(fields, plugin);
|
|
136
154
|
case "plugin.granted":
|
|
137
155
|
return feed.event.pluginGranted(data.role ?? feed.role.other, grantee, plugin);
|
|
138
156
|
case "plugin.revoked":
|
|
@@ -167,7 +185,9 @@ function formatFeedDay(day, language, now = new Date()) {
|
|
|
167
185
|
}
|
|
168
186
|
/** Whether two events were done by the same person as the same agent, so the name is said once. */
|
|
169
187
|
function sameHands(a, b) {
|
|
170
|
-
return (a.actor?.id ?? null) === (b.actor?.id ?? null) &&
|
|
188
|
+
return ((a.actor?.id ?? null) === (b.actor?.id ?? null) &&
|
|
189
|
+
a.agent === b.agent &&
|
|
190
|
+
(a.via ?? null) === (b.via ?? null));
|
|
171
191
|
}
|
|
172
192
|
/** The hour of an event, for a row whose day is in the heading above it. */
|
|
173
193
|
function formatClock(iso, language) {
|
|
@@ -206,7 +226,7 @@ export function EventFeed(props) {
|
|
|
206
226
|
}
|
|
207
227
|
return (_jsxs(_Fragment, { children: [_jsx("section", { className: "sc-feed", "aria-label": words.feed.list, children: groupFeed(shown).map((group) => (_jsxs("section", { className: "sc-feed-day", children: [_jsx("h3", { className: "sc-feed-day-title", children: _jsx("time", { dateTime: group.day, children: formatFeedDay(group.day, tag) }) }), _jsx("ol", { className: "sc-feed-day-list", children: group.runs.map((run) => (_jsxs("li", { className: "sc-feed-run", children: [_jsxs("span", { className: "sc-feed-actor", children: [run.actor.actor === null ? (_jsx("span", { className: "sc-person-login", children: words.feed.console })) : (_jsx(PersonChip, { person: run.actor.actor })), run.actor.agent !== null && (_jsx("span", { className: "sc-feed-agent", title: agentLabel(run.actor.agent) === run.actor.agent
|
|
208
228
|
? words.feed.asTitle
|
|
209
|
-
: run.actor.agent, children: words.feed.as(agentLabel(run.actor.agent)) }))] }), _jsx("ol", { className: "sc-feed-run-list", children: run.events.map((event) => {
|
|
229
|
+
: run.actor.agent, children: words.feed.as(agentLabel(run.actor.agent)) })), run.actor.via !== null && run.actor.via !== undefined && (_jsx("span", { className: "sc-feed-agent", title: words.feed.viaTitle, children: words.feed.via(run.actor.via) }))] }), _jsx("ol", { className: "sc-feed-run-list", children: run.events.map((event) => {
|
|
210
230
|
const href = props.href?.(event);
|
|
211
231
|
const said = describeEvent(event, words);
|
|
212
232
|
return (_jsxs("li", { className: "sc-feed-item", children: [_jsx("time", { className: "sc-time sc-feed-clock", dateTime: event.createdAt, title: formatInstant(event.createdAt, tag), children: formatClock(event.createdAt, tag) }), _jsx("span", { className: "sc-feed-words", children: href === undefined ? said : _jsx("a", { href: href, children: said }) })] }, event.id));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-feed.js","sourceRoot":"","sources":["../../src/components/event-feed.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"event-feed.js","sourceRoot":"","sources":["../../src/components/event-feed.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type RestAnswerInput, type RestDecision, type RestMyDecisions, type RestReachedDecision } from "../api.js";
|
|
2
2
|
/** One kind of a person's decisions, a page at a time. */
|
|
3
3
|
export interface DecisionsPage {
|
|
4
4
|
readonly items: RestMyDecisions["items"];
|
|
@@ -12,11 +12,28 @@ export interface MyDecisionsProps {
|
|
|
12
12
|
/** The decisions the person asked of someone else: waiting and answered. */
|
|
13
13
|
readonly raised: DecisionsPage;
|
|
14
14
|
readonly decisionHref: (projectKey: string, decisionId: string) => string;
|
|
15
|
-
/**
|
|
16
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Where a file put on a decision is read (ADR-0055), by the project's key, the file's id and
|
|
17
|
+
* the decision's; left out, at the decision's own address, `decisionFilePath`, which serves it
|
|
18
|
+
* to whoever the decision reaches, in a project they may see or not (ADR-0068).
|
|
19
|
+
*/
|
|
20
|
+
readonly fileHref?: ((projectKey: string, fileId: string, decisionId: string) => string) | undefined;
|
|
17
21
|
/** Called with the person's answer on a decision of theirs, in its project. Left out, a waiting decision is answered on its own page. */
|
|
18
22
|
readonly onAnswer?: ((projectKey: string, decision: RestDecision, input: RestAnswerInput) => void) | undefined;
|
|
19
23
|
readonly busy?: boolean | undefined;
|
|
20
24
|
}
|
|
21
25
|
export declare function MyDecisions(props: MyDecisionsProps): import("react").JSX.Element;
|
|
26
|
+
export interface ReachedDecisionProps {
|
|
27
|
+
/** The decision as the person reaches it (ADR-0068): its project, the decision, and whether they may answer it. */
|
|
28
|
+
readonly reached: RestReachedDecision;
|
|
29
|
+
/** Called with the person's answer; the decision is answered here only where `mayAnswer` says they may. */
|
|
30
|
+
readonly onAnswer?: ((decision: RestDecision, input: RestAnswerInput) => void) | undefined;
|
|
31
|
+
readonly busy?: boolean | undefined;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* One decision wherever it is (ADR-0068), on its own page: the card with its project named, the
|
|
35
|
+
* files put on it read at the decision's own address, since the project may be one the person
|
|
36
|
+
* may not see, and the way to answer it where they may.
|
|
37
|
+
*/
|
|
38
|
+
export declare function ReachedDecision(props: ReachedDecisionProps): import("react").JSX.Element;
|
|
22
39
|
//# sourceMappingURL=my-decisions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"my-decisions.d.ts","sourceRoot":"","sources":["../../src/components/my-decisions.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"my-decisions.d.ts","sourceRoot":"","sources":["../../src/components/my-decisions.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACzB,MAAM,WAAW,CAAC;AAgBnB,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IACzC,oEAAoE;IACpE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB;IAC/B,mEAAmE;IACnE,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAClC,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1E;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EACd,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC,GACpE,SAAS,CAAC;IACd,yIAAyI;IACzI,QAAQ,CAAC,QAAQ,CAAC,EACd,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC,GAC9E,SAAS,CAAC;IACd,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACrC;AAgCD,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BA4ElD;AAED,MAAM,WAAW,oBAAoB;IACnC,mHAAmH;IACnH,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,2GAA2G;IAC3G,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC3F,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACrC;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,+BAY1D"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { decisionFilePath, } from "../api.js";
|
|
2
3
|
import { useWords } from "../i18n/index.js";
|
|
3
4
|
import { DecisionCard, DecisionLog } from "./decision-list.js";
|
|
4
5
|
import { ProjectMark } from "./projects.js";
|
|
@@ -25,7 +26,9 @@ export function MyDecisions(props) {
|
|
|
25
26
|
.filter(({ decision }) => decision.answer !== null)
|
|
26
27
|
.sort((a, b) => (b.decision.answer?.at ?? "").localeCompare(a.decision.answer?.at ?? ""));
|
|
27
28
|
const projectOf = new Map(record.map((item) => [item.decision.id, item.project]));
|
|
28
|
-
const card = (item, answerable) => (_jsx(DecisionCard, { decision: item.decision, href: props.decisionHref(item.project.key, item.decision.id), project: _jsx(InProject, { project: item.project }), fileHref:
|
|
29
|
+
const card = (item, answerable) => (_jsx(DecisionCard, { decision: item.decision, href: props.decisionHref(item.project.key, item.decision.id), project: _jsx(InProject, { project: item.project }), fileHref: (fileId) => fileHref === undefined
|
|
30
|
+
? decisionFilePath(item.decision.id, fileId)
|
|
31
|
+
: fileHref(item.project.key, fileId, item.decision.id), onAnswer: answerable && onAnswer !== undefined
|
|
29
32
|
? (decision, input) => onAnswer(item.project.key, decision, input)
|
|
30
33
|
: undefined, busy: props.busy }, item.decision.id));
|
|
31
34
|
return (_jsxs("div", { className: "sc-decisions", children: [_jsxs("div", { className: "sc-decisions-waiting", children: [_jsxs("section", { "aria-label": own.waiting, children: [_jsxs("h2", { className: "sc-section-title", children: [own.waiting, " ", _jsx("span", { className: "sc-column-count", children: waiting.length })] }), waiting.length === 0 ? (_jsx("p", { className: "sc-muted", children: own.noneWaiting })) : (waiting.map((item) => card(item, true))), _jsx(More, { page: props.addressed, label: own.more, busy: props.busy })] }), _jsxs("section", { "aria-label": own.raised, children: [_jsxs("h2", { className: "sc-section-title", children: [own.raised, " ", _jsx("span", { className: "sc-column-count", children: asked.length })] }), asked.length === 0 ? (_jsx("p", { className: "sc-muted", children: own.noneRaised })) : (asked.map((item) => card(item, false))), _jsx(More, { page: props.raised, label: own.more, busy: props.busy })] })] }), _jsxs("section", { "aria-label": words.decisions.record, children: [_jsxs("h2", { className: "sc-section-title", children: [words.decisions.record, " ", _jsx("span", { className: "sc-column-count", children: record.length })] }), record.length === 0 ? (_jsx("p", { className: "sc-muted", children: own.noneAnswered })) : (_jsx(DecisionLog, { decisions: record.map((item) => item.decision), decisionHref: (decision) => props.decisionHref(projectOf.get(decision.id)?.key ?? "", decision.id), projectOf: (decision) => {
|
|
@@ -33,4 +36,14 @@ export function MyDecisions(props) {
|
|
|
33
36
|
return project === undefined ? undefined : _jsx(InProject, { project: project });
|
|
34
37
|
} }))] })] }));
|
|
35
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* One decision wherever it is (ADR-0068), on its own page: the card with its project named, the
|
|
41
|
+
* files put on it read at the decision's own address, since the project may be one the person
|
|
42
|
+
* may not see, and the way to answer it where they may.
|
|
43
|
+
*/
|
|
44
|
+
export function ReachedDecision(props) {
|
|
45
|
+
const { reached } = props;
|
|
46
|
+
const { decision } = reached;
|
|
47
|
+
return (_jsx(DecisionCard, { decision: decision, project: _jsx(InProject, { project: reached.project }), fileHref: (fileId) => decisionFilePath(decision.id, fileId), onAnswer: reached.mayAnswer === true ? props.onAnswer : undefined, busy: props.busy }));
|
|
48
|
+
}
|
|
36
49
|
//# sourceMappingURL=my-decisions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"my-decisions.js","sourceRoot":"","sources":["../../src/components/my-decisions.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"my-decisions.js","sourceRoot":"","sources":["../../src/components/my-decisions.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type PersonRole, type PersonStatus, type RestListing, type RestListingInput, type RestOrganization, type RestPerson, type RestProvider } from "../api.js";
|
|
1
|
+
import { type PersonRole, type PersonStatus, type RestListing, type RestListingInput, type RestOrganization, type RestPerson, type RestProvider, type RestTeam, type RestTeamInput } from "../api.js";
|
|
2
2
|
export interface PeopleListProps {
|
|
3
3
|
readonly people: readonly RestPerson[];
|
|
4
4
|
/** The logins let in that nobody has signed in with yet. */
|
|
@@ -17,8 +17,16 @@ export interface PeopleListProps {
|
|
|
17
17
|
readonly onChangeStatus?: ((person: RestPerson, status: PersonStatus) => void) | undefined;
|
|
18
18
|
/** Called with the manager an administrator chose for the person, or null for none. Left out, managers are read here, not changed. */
|
|
19
19
|
readonly onChangeManager?: ((person: RestPerson, managerId: string | null) => void) | undefined;
|
|
20
|
+
/** Called with the work email an administrator wrote for the person, or null for none. Left out, an address is read here where the console answers one. */
|
|
21
|
+
readonly onChangeEmail?: ((person: RestPerson, email: string | null) => void) | undefined;
|
|
20
22
|
/** Called when an administrator takes a listing away. Left out, listings are read here. */
|
|
21
23
|
readonly onUnlist?: ((listing: RestListing) => void) | undefined;
|
|
24
|
+
/** The teams of the workspace (ADR-0073), so that each person's card names theirs; left out, none are named. */
|
|
25
|
+
readonly teams?: readonly RestTeam[] | undefined;
|
|
26
|
+
/** Called with a team an administrator puts the person in, from the person's card. Left out, a person's teams are read here. */
|
|
27
|
+
readonly onJoinTeam?: ((person: RestPerson, team: RestTeam) => void) | undefined;
|
|
28
|
+
/** Called with a team an administrator takes the person out of, from the person's card. */
|
|
29
|
+
readonly onLeaveTeam?: ((person: RestPerson, team: RestTeam) => void) | undefined;
|
|
22
30
|
/** Where a person's work is seen; given to an administrator, or an owner of a project. */
|
|
23
31
|
readonly workHref?: ((person: RestPerson) => string) | undefined;
|
|
24
32
|
/** Where a person's agents are seen; given to an administrator. */
|
|
@@ -26,6 +34,40 @@ export interface PeopleListProps {
|
|
|
26
34
|
readonly busy?: boolean | undefined;
|
|
27
35
|
}
|
|
28
36
|
export declare function PeopleList(props: PeopleListProps): import("react").JSX.Element;
|
|
37
|
+
export interface TeamListProps {
|
|
38
|
+
/** The teams of the workspace (ADR-0073), by name, each with the members the person may see. */
|
|
39
|
+
readonly teams: readonly RestTeam[];
|
|
40
|
+
/** The people the page holds: whom a team's members are named from, and whom an administrator adds from, the active among them. */
|
|
41
|
+
readonly people: readonly RestPerson[];
|
|
42
|
+
/** Called with the name an administrator wrote for a team. Left out, names are read here. */
|
|
43
|
+
readonly onRename?: ((team: RestTeam, name: string) => void) | undefined;
|
|
44
|
+
/** Called when an administrator deletes a team, after asking where it is the page's to ask. Left out, teams are read here. */
|
|
45
|
+
readonly onRemove?: ((team: RestTeam) => void) | undefined;
|
|
46
|
+
/** Called with a person an administrator puts in a team. Left out, the members are read here. */
|
|
47
|
+
readonly onAddMember?: ((team: RestTeam, person: RestPerson) => void) | undefined;
|
|
48
|
+
/** Called with a member an administrator takes out of a team. */
|
|
49
|
+
readonly onRemoveMember?: ((team: RestTeam, person: RestPerson) => void) | undefined;
|
|
50
|
+
readonly busy?: boolean | undefined;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* The teams of the workspace (ADR-0073), a card each: the name, how many are in it, and who, a
|
|
54
|
+
* chip each. For an administrator the name is written anew in its place, a member is taken out
|
|
55
|
+
* from their chip and a person is added from the end of the row, searched among those in; a team
|
|
56
|
+
* is deleted from its card. Its people stay; the roles granted to it go with it.
|
|
57
|
+
*/
|
|
58
|
+
export declare function TeamList(props: TeamListProps): import("react").JSX.Element;
|
|
59
|
+
export interface TeamFormProps {
|
|
60
|
+
readonly busy?: boolean | undefined;
|
|
61
|
+
/** Called with the key and the name written, trimmed. */
|
|
62
|
+
readonly onSubmit: (input: RestTeamInput) => void;
|
|
63
|
+
readonly onCancel?: (() => void) | undefined;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Where an administrator makes a team: its name, one in the workspace, and its key, taken from
|
|
67
|
+
* the name as it is typed until the key is typed itself, and never changed after; its people are
|
|
68
|
+
* added on its card.
|
|
69
|
+
*/
|
|
70
|
+
export declare function TeamForm(props: TeamFormProps): import("react").JSX.Element;
|
|
29
71
|
export interface ListingFormProps {
|
|
30
72
|
/** The providers people sign in through here: what a listing may name. */
|
|
31
73
|
readonly providers: readonly RestProvider[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"people.d.ts","sourceRoot":"","sources":["../../src/components/people.tsx"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,UAAU,EACf,KAAK,YAAY,EAEjB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"people.d.ts","sourceRoot":"","sources":["../../src/components/people.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +1,58 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useState } from "react";
|
|
2
|
+
import { useEffect, useState } from "react";
|
|
3
3
|
import { hostOfLogin, isLoginAt, } from "../api.js";
|
|
4
4
|
import { useWords } from "../i18n/index.js";
|
|
5
|
-
import { MAX_LOGIN_LENGTH } from "../limits.js";
|
|
5
|
+
import { MAX_LOGIN_LENGTH, MAX_TEAM_KEY_LENGTH, MAX_TEAM_NAME_LENGTH } from "../limits.js";
|
|
6
6
|
import { PERSON_ROLES } from "../vocabulary.js";
|
|
7
|
-
import {
|
|
7
|
+
import { Picker } from "./picker.js";
|
|
8
|
+
import { keyOf } from "./projects.js";
|
|
9
|
+
import { listSearch, peopleSearch } from "./searches.js";
|
|
10
|
+
import { Avatar, Badge, Button, Chip, cx, EmptyState, PersonChip, personName, RoleBadge, Time, } from "./ui.js";
|
|
11
|
+
/** How many of a manager's reports are shown as pictures before the rest are a count. */
|
|
12
|
+
const REPORTS_SHOWN = 5;
|
|
13
|
+
/**
|
|
14
|
+
* A line an administrator writes in place, quiet until the pointer or the focus is on it: kept
|
|
15
|
+
* while typed, written when the field is left or Enter is pressed, and only where it changed.
|
|
16
|
+
* `normalize` says what is written; what it makes empty is `onEmpty`'s to answer: written as
|
|
17
|
+
* nothing, or the line put back as it was.
|
|
18
|
+
*/
|
|
19
|
+
function QuietField(props) {
|
|
20
|
+
const current = props.value;
|
|
21
|
+
const [value, setValue] = useState(current);
|
|
22
|
+
// The field follows what the console answers.
|
|
23
|
+
useEffect(() => setValue(current), [current]);
|
|
24
|
+
const commit = () => {
|
|
25
|
+
const next = props.normalize(value);
|
|
26
|
+
if (next === "" && props.onEmpty === "keep") {
|
|
27
|
+
setValue(current);
|
|
28
|
+
}
|
|
29
|
+
else if (next !== current) {
|
|
30
|
+
props.onChange(next === "" ? null : next);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
return (_jsx("input", { type: props.type ?? "text", className: cx("sc-input", "sc-input-quiet", props.className), "aria-label": props.label, title: props.title, placeholder: props.placeholder, value: value, maxLength: props.maxLength, disabled: props.busy, onChange: (event) => setValue(event.target.value), onBlur: commit, onKeyDown: (event) => {
|
|
34
|
+
if (event.key === "Enter") {
|
|
35
|
+
event.preventDefault();
|
|
36
|
+
commit();
|
|
37
|
+
}
|
|
38
|
+
else if (event.key === "Escape") {
|
|
39
|
+
setValue(current);
|
|
40
|
+
}
|
|
41
|
+
} }));
|
|
42
|
+
}
|
|
8
43
|
export function PeopleList(props) {
|
|
9
44
|
const words = useWords();
|
|
10
45
|
const people = words.people;
|
|
11
46
|
const active = props.people.filter((person) => person.status === "active");
|
|
12
47
|
const deactivated = props.people.filter((person) => person.status === "deactivated");
|
|
13
48
|
const listed = props.listed ?? [];
|
|
49
|
+
const busy = props.busy === true;
|
|
14
50
|
const mayChange = (person) => props.onChangeStatus !== undefined &&
|
|
15
51
|
person.source !== "organization" &&
|
|
16
52
|
props.me?.id !== person.id;
|
|
17
53
|
const organization = props.organization ?? undefined;
|
|
18
54
|
const byId = new Map(props.people.map((person) => [person.id, person]));
|
|
55
|
+
const teamList = props.teams ?? [];
|
|
19
56
|
/** The person's manager, where they have one that can be named here. */
|
|
20
57
|
const managerOf = (person) => person.managerId === null || person.managerId === undefined
|
|
21
58
|
? undefined
|
|
@@ -35,13 +72,84 @@ export function PeopleList(props) {
|
|
|
35
72
|
};
|
|
36
73
|
return (_jsxs("div", { className: "sc-people-page", children: [organization !== undefined && (_jsxs("p", { className: "sc-people-organization sc-muted", children: [people.organization(organization.name), " ", organization.syncedAt === null ? (people.organizationNotRead) : (_jsxs(_Fragment, { children: [people.organizationRead, " ", _jsx(Time, { iso: organization.syncedAt })] }))] })), _jsx("ul", { className: "sc-people", "aria-label": people.list, children: active.map((person) => {
|
|
37
74
|
const manager = managerOf(person);
|
|
38
|
-
const
|
|
75
|
+
const reports = active.filter((other) => other.managerId === person.id);
|
|
76
|
+
const joined = teamList.filter((team) => team.memberIds.includes(person.id));
|
|
77
|
+
const toJoin = teamList.filter((team) => !team.memberIds.includes(person.id));
|
|
78
|
+
const name = personName(person);
|
|
39
79
|
const hasWays = props.workHref !== undefined || props.agentsHref !== undefined || mayChange(person);
|
|
40
|
-
return (_jsxs("li", { className: "sc-person-card", children: [_jsxs("div", { className: "sc-person-card-head", children: [_jsx(Avatar, { person: person, size: "lg" }), _jsxs("div", { className: "sc-person-card-who", children: [_jsxs("span", { className: "sc-person-card-name", children: [
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
80
|
+
return (_jsxs("li", { className: "sc-person-card", children: [_jsxs("div", { className: "sc-person-card-head", children: [_jsx(Avatar, { person: person, size: "lg" }), _jsxs("div", { className: "sc-person-card-who", children: [_jsxs("span", { className: "sc-person-card-name", children: [name, props.me?.id === person.id && (_jsx("span", { className: "sc-person-you", children: words.common.you }))] }), _jsxs("span", { className: "sc-person-card-note", children: [person.name !== null && _jsxs(_Fragment, { children: [person.login, " \u00B7 "] }), noteOf(person)] })] })] }), _jsxs("dl", { className: "sc-person-facts", children: [_jsxs("div", { className: "sc-person-fact", children: [_jsx("dt", { children: people.role }), _jsx("dd", { children: props.onChangeRole === undefined ? (_jsx(RoleBadge, { role: person.role })) : (_jsx("select", { className: "sc-input sc-input-quiet", "aria-label": people.roleOf(name), value: person.role, disabled: busy, onChange: (event) => props.onChangeRole?.(person, event.target.value), children: PERSON_ROLES.map((role) => (_jsx("option", { value: role, children: words.vocabulary.role[role] }, role))) })) })] }), _jsxs("div", { className: "sc-person-fact", children: [_jsx("dt", { children: people.manager }), _jsx("dd", { children: props.onChangeManager === undefined ? (manager === undefined ? (_jsx("span", { className: "sc-muted", children: people.nobody })) : (_jsx(PersonChip, { person: manager }))) : (_jsx(Picker, { className: "sc-picker-quiet", value: manager, search: peopleSearch(props.people.filter((candidate) => candidate.id !== person.id &&
|
|
81
|
+
(candidate.status === "active" || candidate.id === person.managerId))), keyOf: (candidate) => candidate.id, render: (candidate) => _jsx(PersonChip, { person: candidate }), label: people.managerOf(name), placeholder: people.nobody, disabled: busy, onChange: (candidate) => props.onChangeManager?.(person, candidate?.id ?? null) })) })] }), (props.onChangeEmail !== undefined || typeof person.email === "string") && (_jsxs("div", { className: "sc-person-fact", children: [_jsx("dt", { children: people.email }), _jsx("dd", { children: props.onChangeEmail === undefined ? (_jsx("span", { className: "sc-person-email", children: person.email })) : (_jsx(QuietField, { type: "email", value: person.email ?? "", label: people.emailOf(name), title: people.emailHint, placeholder: people.nobody, busy: busy, normalize: (typed) => typed.trim().toLowerCase(), onEmpty: "clear", onChange: (email) => props.onChangeEmail?.(person, email) })) })] })), reports.length > 0 && (_jsxs("div", { className: "sc-person-fact", children: [_jsx("dt", { children: people.team }), _jsx("dd", { children: _jsxs("span", { className: "sc-person-reports", title: reports.map(personName).join(", "), children: [_jsx("span", { className: "sc-workers", children: reports.slice(0, REPORTS_SHOWN).map((report) => (_jsx(Avatar, { person: report, size: "sm" }, report.id))) }), _jsx("span", { className: "sc-muted", children: people.howMany(reports.length) })] }) })] })), (joined.length > 0 || (props.onJoinTeam !== undefined && toJoin.length > 0)) && (_jsxs("div", { className: "sc-person-fact", children: [_jsx("dt", { children: people.teams }), _jsx("dd", { children: _jsxs("div", { className: "sc-chips", children: [joined.map((team) => (_jsx(Chip, { onRemove: props.onLeaveTeam === undefined
|
|
82
|
+
? undefined
|
|
83
|
+
: () => props.onLeaveTeam?.(person, team), removeLabel: people.leaveTeam(name, team.name), disabled: busy, children: team.name }, team.id))), props.onJoinTeam !== undefined && toJoin.length > 0 && (_jsx(Picker, { className: "sc-picker-add", value: undefined, search: listSearch(toJoin, (candidate, typed) => candidate.name.toLowerCase().includes(typed)), keyOf: (candidate) => candidate.id, render: (candidate) => candidate.name, label: people.joinTeamOf(name), placeholder: people.joinTeam, disabled: busy, onChange: (candidate) => {
|
|
84
|
+
if (candidate !== undefined) {
|
|
85
|
+
props.onJoinTeam?.(person, candidate);
|
|
86
|
+
}
|
|
87
|
+
} }))] }) })] }))] }), hasWays && (_jsxs("div", { className: "sc-person-card-ways", children: [props.workHref !== undefined && (_jsx("a", { className: "sc-button sc-button-ghost sc-button-sm", href: props.workHref(person), children: people.work })), props.agentsHref !== undefined && (_jsx("a", { className: "sc-button sc-button-ghost sc-button-sm", href: props.agentsHref(person), children: people.agents })), mayChange(person) && (_jsx(Button, { variant: "ghost", size: "sm", disabled: busy, onClick: () => props.onChangeStatus?.(person, "deactivated"), children: people.deactivate }))] }))] }, person.id));
|
|
88
|
+
}) }), listed.length > 0 && (_jsxs("section", { className: "sc-people-section", "aria-label": people.notSignedIn, children: [_jsx("h2", { className: "sc-section-title", children: people.notSignedIn }), _jsx("ul", { className: "sc-people", children: listed.map((listing) => (_jsxs("li", { className: "sc-person-row", children: [_jsx("span", { className: "sc-person-login", children: listing.login }), _jsxs("span", { className: "sc-person-name sc-muted", children: [people.at[listing.host], _jsxs("span", { className: "sc-person-note", children: [" ", _jsx(Time, { iso: listing.createdAt })] })] }), props.onUnlist !== undefined && (_jsx(Button, { variant: "ghost", size: "sm", disabled: busy, onClick: () => props.onUnlist?.(listing), children: words.common.remove }))] }, listing.id))) })] })), deactivated.length > 0 && (_jsxs("section", { className: "sc-people-section", "aria-label": people.deactivated, children: [_jsx("h2", { className: "sc-section-title", children: people.deactivated }), _jsx("ul", { className: "sc-people", children: deactivated.map((person) => (_jsxs("li", { className: "sc-person-row sc-person-row-out", children: [_jsx(PersonChip, { person: person, size: "md" }), _jsxs("span", { className: "sc-person-name sc-muted", children: [person.name !== null && _jsxs(_Fragment, { children: [person.login, " \u00B7 "] }), _jsxs("span", { className: "sc-person-note", children: [person.source === "organization" ? people.leftOrganization : noteOf(person), person.deactivatedAt !== null && (_jsxs(_Fragment, { children: [" ", _jsx(Time, { iso: person.deactivatedAt })] }))] })] }), _jsx(Badge, { tone: "neutral", children: words.vocabulary.status.deactivated }), mayChange(person) && (_jsx(Button, { variant: "ghost", size: "sm", disabled: busy, onClick: () => props.onChangeStatus?.(person, "active"), children: people.reactivate }))] }, person.id))) })] }))] }));
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* The teams of the workspace (ADR-0073), a card each: the name, how many are in it, and who, a
|
|
92
|
+
* chip each. For an administrator the name is written anew in its place, a member is taken out
|
|
93
|
+
* from their chip and a person is added from the end of the row, searched among those in; a team
|
|
94
|
+
* is deleted from its card. Its people stay; the roles granted to it go with it.
|
|
95
|
+
*/
|
|
96
|
+
export function TeamList(props) {
|
|
97
|
+
const words = useWords();
|
|
98
|
+
const teams = words.teams;
|
|
99
|
+
const busy = props.busy === true;
|
|
100
|
+
const byId = new Map(props.people.map((person) => [person.id, person]));
|
|
101
|
+
const active = props.people.filter((person) => person.status === "active");
|
|
102
|
+
if (props.teams.length === 0) {
|
|
103
|
+
return _jsx(EmptyState, { title: teams.none.title, body: teams.none.body });
|
|
104
|
+
}
|
|
105
|
+
return (_jsx("ul", { className: "sc-teams", "aria-label": teams.list, children: props.teams.map((team) => {
|
|
106
|
+
const members = team.memberIds.flatMap((id) => {
|
|
107
|
+
const member = byId.get(id);
|
|
108
|
+
return member === undefined ? [] : [member];
|
|
109
|
+
});
|
|
110
|
+
const candidates = active.filter((person) => !team.memberIds.includes(person.id));
|
|
111
|
+
return (_jsxs("li", { className: "sc-team-card", children: [_jsxs("div", { className: "sc-team-head", children: [_jsxs("div", { className: "sc-team-title", children: [props.onRename === undefined ? (_jsx("h2", { className: "sc-team-name", children: team.name })) : (_jsx(QuietField, { className: "sc-team-name", value: team.name, label: teams.nameOf(team.name), maxLength: MAX_TEAM_NAME_LENGTH, busy: busy, normalize: (typed) => typed.trim(), onEmpty: "keep", onChange: (name) => {
|
|
112
|
+
if (name !== null) {
|
|
113
|
+
props.onRename?.(team, name);
|
|
114
|
+
}
|
|
115
|
+
} })), _jsx("span", { className: "sc-team-key", title: teams.keyTitle, children: team.key })] }), _jsx(Badge, { kind: "count", children: teams.members(team.memberIds.length) })] }), _jsxs("div", { className: "sc-chips sc-team-members", children: [members.map((member) => (_jsx(Chip, { onRemove: props.onRemoveMember === undefined
|
|
116
|
+
? undefined
|
|
117
|
+
: () => props.onRemoveMember?.(team, member), removeLabel: teams.removeMember(personName(member), team.name), disabled: busy, children: _jsx(PersonChip, { person: member }) }, member.id))), members.length === 0 && props.onAddMember === undefined && (_jsx("span", { className: "sc-muted", children: teams.nobody })), props.onAddMember !== undefined && candidates.length > 0 && (_jsx(Picker, { className: "sc-picker-add", value: undefined, search: peopleSearch(candidates), keyOf: (candidate) => candidate.id, render: (candidate) => _jsx(PersonChip, { person: candidate }), label: teams.addMemberTo(team.name), placeholder: teams.addMember, disabled: busy, onChange: (candidate) => {
|
|
118
|
+
if (candidate !== undefined) {
|
|
119
|
+
props.onAddMember?.(team, candidate);
|
|
120
|
+
}
|
|
121
|
+
} }))] }), props.onRemove !== undefined && (_jsx("div", { className: "sc-team-ways", children: _jsx(Button, { variant: "ghost", size: "sm", disabled: busy, onClick: () => props.onRemove?.(team), children: teams.remove }) }))] }, team.id));
|
|
122
|
+
}) }));
|
|
123
|
+
}
|
|
124
|
+
/** A key as the pages accept one: a project key's shape (ADR-0074). */
|
|
125
|
+
const TEAM_KEY = /^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/;
|
|
126
|
+
/**
|
|
127
|
+
* Where an administrator makes a team: its name, one in the workspace, and its key, taken from
|
|
128
|
+
* the name as it is typed until the key is typed itself, and never changed after; its people are
|
|
129
|
+
* added on its card.
|
|
130
|
+
*/
|
|
131
|
+
export function TeamForm(props) {
|
|
132
|
+
const words = useWords();
|
|
133
|
+
const form = words.teams.form;
|
|
134
|
+
const [name, setName] = useState("");
|
|
135
|
+
const [key, setKey] = useState("");
|
|
136
|
+
const [keyTouched, setKeyTouched] = useState(false);
|
|
137
|
+
const valid = name.trim().length > 0 && TEAM_KEY.test(key.trim()) && key.trim() !== "new";
|
|
138
|
+
const submit = (event) => {
|
|
139
|
+
event.preventDefault();
|
|
140
|
+
if (valid) {
|
|
141
|
+
props.onSubmit({ key: key.trim(), name: name.trim() });
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
return (_jsxs("form", { className: "sc-form sc-team-form", "aria-label": words.teams.newAria, onSubmit: submit, children: [_jsxs("div", { className: "sc-field-row", children: [_jsxs("label", { className: "sc-field", children: [_jsx("span", { className: "sc-field-label", children: form.name }), _jsx("input", { className: "sc-input", value: name, maxLength: MAX_TEAM_NAME_LENGTH, autoComplete: "off", onChange: (event) => {
|
|
145
|
+
setName(event.target.value);
|
|
146
|
+
if (!keyTouched) {
|
|
147
|
+
setKey(keyOf(event.target.value).slice(0, MAX_TEAM_KEY_LENGTH));
|
|
148
|
+
}
|
|
149
|
+
} })] }), _jsxs("label", { className: "sc-field", children: [_jsx("span", { className: "sc-field-label", children: form.key }), _jsx("input", { className: "sc-input", value: key, maxLength: MAX_TEAM_KEY_LENGTH, pattern: "[a-z0-9]([a-z0-9-]*[a-z0-9])?", autoComplete: "off", title: form.keyHint, onChange: (event) => {
|
|
150
|
+
setKeyTouched(true);
|
|
151
|
+
setKey(event.target.value);
|
|
152
|
+
} })] }), _jsxs("div", { className: "sc-form-actions", children: [_jsx(Button, { type: "submit", variant: "primary", disabled: props.busy === true || !valid, children: form.submit }), props.onCancel !== undefined && (_jsx(Button, { type: "button", variant: "ghost", onClick: props.onCancel, children: words.common.cancel }))] })] }), _jsx("p", { className: "sc-field-hint", children: form.hint })] }));
|
|
45
153
|
}
|
|
46
154
|
/** Where an administrator lets someone in by login: whoever signs in with that account is in. */
|
|
47
155
|
export function ListingForm(props) {
|