@worknice/whiteboard 0.52.1 → 0.54.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/{presentation/TableColumnFilterModal.d.ts → controls/FilterModal.d.ts} +10 -3
  2. package/dist/{presentation/TableColumnFilterModal.js → controls/FilterModal.js} +32 -32
  3. package/dist/controls/FilterModal.module.js +13 -0
  4. package/dist/controls/FilterModal_module.css +60 -0
  5. package/dist/controls/MenuButton.js +1 -1
  6. package/dist/icons/MessagesIcon.d.ts +3 -0
  7. package/dist/icons/MessagesIcon.js +11 -0
  8. package/dist/icons/SlidersIcon.d.ts +3 -0
  9. package/dist/icons/SlidersIcon.js +12 -0
  10. package/dist/icons/WarningIcon.js +3 -3
  11. package/dist/icons/index.d.ts +2 -0
  12. package/dist/icons/index.js +3 -1
  13. package/dist/presentation/CustomizableTable/CustomizableTable.d.ts +1 -1
  14. package/dist/presentation/CustomizableTable/CustomizableTable.js +3 -3
  15. package/dist/presentation/RichList/RichList.d.ts +153 -0
  16. package/dist/presentation/RichList/RichList.js +605 -0
  17. package/dist/presentation/RichList/RichList.module.js +12 -0
  18. package/dist/presentation/RichList/RichList.stories.d.ts +26 -0
  19. package/dist/presentation/RichList/RichList.stories.js +348 -0
  20. package/dist/presentation/RichList/RichListBulkActionBar.d.ts +21 -0
  21. package/dist/presentation/RichList/RichListBulkActionBar.js +112 -0
  22. package/dist/presentation/RichList/RichListBulkActionBar.module.js +7 -0
  23. package/dist/presentation/RichList/RichListBulkActionBar_module.css +18 -0
  24. package/dist/presentation/RichList/RichListDisplayModal.d.ts +33 -0
  25. package/dist/presentation/RichList/RichListDisplayModal.js +198 -0
  26. package/dist/presentation/RichList/RichListRow.d.ts +39 -0
  27. package/dist/presentation/RichList/RichListRow.js +278 -0
  28. package/dist/presentation/RichList/RichListRow.module.js +34 -0
  29. package/dist/presentation/RichList/RichListRow_module.css +313 -0
  30. package/dist/presentation/RichList/RichListToolbar.d.ts +36 -0
  31. package/dist/presentation/RichList/RichListToolbar.js +134 -0
  32. package/dist/presentation/RichList/RichListToolbar.module.js +12 -0
  33. package/dist/presentation/RichList/RichListToolbar_module.css +100 -0
  34. package/dist/presentation/RichList/RichList_module.css +77 -0
  35. package/dist/presentation/RichList/helpers.d.ts +77 -0
  36. package/dist/presentation/RichList/helpers.js +121 -0
  37. package/dist/presentation/RichList/stories/ComplianceGroups.d.ts +9 -0
  38. package/dist/presentation/RichList/stories/ComplianceGroups.js +141 -0
  39. package/dist/presentation/RichList/stories/CustomFields.d.ts +13 -0
  40. package/dist/presentation/RichList/stories/CustomFields.js +80 -0
  41. package/dist/presentation/RichList/stories/EmployeeCompliance.d.ts +15 -0
  42. package/dist/presentation/RichList/stories/EmployeeCompliance.js +300 -0
  43. package/dist/presentation/RichList/stories/EmployeePaperwork.d.ts +21 -0
  44. package/dist/presentation/RichList/stories/EmployeePaperwork.js +225 -0
  45. package/dist/presentation/RichList/stories/EmployeePeople.d.ts +10 -0
  46. package/dist/presentation/RichList/stories/EmployeePeople.js +170 -0
  47. package/dist/presentation/RichList/stories/Leave.d.ts +21 -0
  48. package/dist/presentation/RichList/stories/Leave.js +332 -0
  49. package/dist/presentation/RichList/stories/Paperwork.d.ts +22 -0
  50. package/dist/presentation/RichList/stories/Paperwork.js +446 -0
  51. package/dist/presentation/RichList/stories/PaperworkApprovals.d.ts +23 -0
  52. package/dist/presentation/RichList/stories/PaperworkApprovals.js +342 -0
  53. package/dist/presentation/RichList/stories/PeopleList.d.ts +19 -0
  54. package/dist/presentation/RichList/stories/PeopleList.js +391 -0
  55. package/dist/presentation/RichList/stories/PeopleTags.d.ts +14 -0
  56. package/dist/presentation/RichList/stories/PeopleTags.js +106 -0
  57. package/dist/presentation/RichList/stories/Positions.d.ts +22 -0
  58. package/dist/presentation/RichList/stories/Positions.js +519 -0
  59. package/dist/presentation/RichList/stories/Reviews.d.ts +19 -0
  60. package/dist/presentation/RichList/stories/Reviews.js +215 -0
  61. package/dist/presentation/RichList/stories/SavedQuestions.d.ts +13 -0
  62. package/dist/presentation/RichList/stories/SavedQuestions.js +152 -0
  63. package/dist/presentation/RichList/stories/Tables.d.ts +9 -0
  64. package/dist/presentation/RichList/stories/Tables.js +85 -0
  65. package/dist/presentation/RichList/stories/Tasks.d.ts +16 -0
  66. package/dist/presentation/RichList/stories/Tasks.js +340 -0
  67. package/dist/presentation/RichList/stories/shared/bulkActionStubs.d.ts +9 -0
  68. package/dist/presentation/RichList/stories/shared/bulkActionStubs.js +122 -0
  69. package/dist/presentation/RichList/stories/shared.d.ts +8 -0
  70. package/dist/presentation/RichList/stories/shared.js +2 -0
  71. package/dist/presentation/RichList/types.d.ts +347 -0
  72. package/dist/presentation/RichList/types.js +0 -0
  73. package/dist/presentation/Table.d.ts +1 -1
  74. package/dist/presentation/Table.js +2 -2
  75. package/dist/presentation/Table.module.js +0 -10
  76. package/dist/presentation/Table_module.css +1 -61
  77. package/package.json +2 -2
@@ -0,0 +1,519 @@
1
+ "use client";
2
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
3
+ import * as __WEBPACK_EXTERNAL_MODULE__utils_useNextContext_js_b4604910__ from "../../../utils/useNextContext.js";
4
+ import * as __WEBPACK_EXTERNAL_MODULE__HStack_js_d2f77bae__ from "../../HStack.js";
5
+ import * as __WEBPACK_EXTERNAL_MODULE__Icon_js_b85e52f7__ from "../../Icon.js";
6
+ import * as __WEBPACK_EXTERNAL_MODULE__PersonAvatar_js_0117b3ba__ from "../../PersonAvatar.js";
7
+ import * as __WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__ from "../../PlainText.js";
8
+ import * as __WEBPACK_EXTERNAL_MODULE__RichList_js_64f3f04c__ from "../RichList.js";
9
+ import * as __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__ from "./shared.js";
10
+ const MissingAvatar = ()=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
11
+ style: {
12
+ background: "var(--color-grey-t10)",
13
+ border: "1px solid var(--color-grey-t08)",
14
+ borderRadius: "50%",
15
+ height: 48,
16
+ padding: "10px 15px",
17
+ marginRight: "var(--size-n4)",
18
+ width: 48
19
+ },
20
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__Icon_js_b85e52f7__["default"], {
21
+ symbol: "Profile",
22
+ size: "large",
23
+ tone: "muted"
24
+ })
25
+ });
26
+ const positions = [
27
+ {
28
+ id: "pos-1",
29
+ title: "CEO",
30
+ positionCode: "P00001",
31
+ directReports: 4,
32
+ department: "Executive",
33
+ assignee: {
34
+ name: "Janice Martin",
35
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(1)
36
+ },
37
+ manager: null
38
+ },
39
+ {
40
+ id: "pos-2",
41
+ title: "CFO",
42
+ positionCode: "P00002",
43
+ directReports: 2,
44
+ department: "Finance",
45
+ assignee: {
46
+ name: "Daisy Smith",
47
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(2)
48
+ },
49
+ manager: {
50
+ name: "Janice Martin",
51
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(1)
52
+ }
53
+ },
54
+ {
55
+ id: "pos-3",
56
+ title: "CMO",
57
+ positionCode: "P00003",
58
+ directReports: 3,
59
+ department: "Marketing",
60
+ assignee: {
61
+ name: "Candice Berry",
62
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(3)
63
+ },
64
+ manager: {
65
+ name: "Janice Martin",
66
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(1)
67
+ }
68
+ },
69
+ {
70
+ id: "pos-4",
71
+ title: "COO",
72
+ positionCode: "P00004",
73
+ directReports: 5,
74
+ department: "Operations",
75
+ assignee: {
76
+ name: "Andy Samson",
77
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(4)
78
+ },
79
+ manager: {
80
+ name: "Janice Martin",
81
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(1)
82
+ }
83
+ },
84
+ {
85
+ id: "pos-5",
86
+ title: "VP of Engineering",
87
+ positionCode: "P00005",
88
+ directReports: 6,
89
+ department: "Engineering",
90
+ assignee: "vacant",
91
+ manager: {
92
+ name: "Janice Martin",
93
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(1)
94
+ }
95
+ },
96
+ {
97
+ id: "pos-6",
98
+ title: "Head of Product",
99
+ positionCode: "P00012",
100
+ directReports: 4,
101
+ department: "Product",
102
+ assignee: {
103
+ name: "Fiona Gallagher",
104
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(5)
105
+ },
106
+ manager: {
107
+ name: "Janice Martin",
108
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(1)
109
+ }
110
+ },
111
+ {
112
+ id: "pos-7",
113
+ title: "Head of Design",
114
+ positionCode: "P00020",
115
+ directReports: 2,
116
+ department: "Design",
117
+ assignee: {
118
+ name: "Jasmine Kaur",
119
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(6)
120
+ },
121
+ manager: {
122
+ name: "Janice Martin",
123
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(1)
124
+ }
125
+ },
126
+ {
127
+ id: "pos-8",
128
+ title: "HR Business Partner",
129
+ positionCode: "P00045",
130
+ directReports: 1,
131
+ department: "People & Culture",
132
+ assignee: {
133
+ name: "Hannah Abbott",
134
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(7)
135
+ },
136
+ manager: {
137
+ name: "Daisy Smith",
138
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(2)
139
+ }
140
+ },
141
+ {
142
+ id: "pos-9",
143
+ title: "Group Financial Controller",
144
+ positionCode: "P00070",
145
+ directReports: 3,
146
+ department: "Finance",
147
+ assignee: {
148
+ name: "Badai Khan",
149
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(9)
150
+ },
151
+ manager: {
152
+ name: "Daisy Smith",
153
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(2)
154
+ }
155
+ },
156
+ {
157
+ id: "pos-10",
158
+ title: "Accounts Assistant",
159
+ positionCode: "P00088",
160
+ directReports: 0,
161
+ department: "Finance",
162
+ assignee: {
163
+ name: "Henry Jones",
164
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(8)
165
+ },
166
+ manager: {
167
+ name: "Badai Khan",
168
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(9)
169
+ }
170
+ },
171
+ {
172
+ id: "pos-11",
173
+ title: "Payroll Lead",
174
+ positionCode: "P00079",
175
+ directReports: 2,
176
+ department: "Finance",
177
+ assignee: {
178
+ name: "Priya Nair",
179
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(10)
180
+ },
181
+ manager: {
182
+ name: "Daisy Smith",
183
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(2)
184
+ }
185
+ },
186
+ {
187
+ id: "pos-12",
188
+ title: "Site Operations Lead",
189
+ positionCode: "P00102",
190
+ directReports: 8,
191
+ department: "Operations",
192
+ assignee: {
193
+ name: "Ian MacLeod",
194
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(11)
195
+ },
196
+ manager: {
197
+ name: "Andy Samson",
198
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(4)
199
+ }
200
+ },
201
+ {
202
+ id: "pos-13",
203
+ title: "Regional Sales Director",
204
+ positionCode: "P00120",
205
+ directReports: 0,
206
+ department: "Sales",
207
+ assignee: "vacant",
208
+ manager: {
209
+ name: "Candice Berry",
210
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(3)
211
+ }
212
+ },
213
+ {
214
+ id: "pos-14",
215
+ title: "IT Service Manager",
216
+ positionCode: "P00056",
217
+ directReports: 4,
218
+ department: "Technology",
219
+ assignee: {
220
+ name: "Evan Baker",
221
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(12)
222
+ },
223
+ manager: "vacant"
224
+ },
225
+ {
226
+ id: "pos-15",
227
+ title: "Cracker Baker",
228
+ positionCode: "P00201",
229
+ directReports: 0,
230
+ department: "Production",
231
+ assignee: "vacant",
232
+ manager: "vacant"
233
+ },
234
+ {
235
+ id: "pos-16",
236
+ title: "Cracker Crafter",
237
+ positionCode: "P00202",
238
+ directReports: 0,
239
+ department: "Production",
240
+ assignee: {
241
+ name: "Janet Siddens",
242
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(13)
243
+ },
244
+ manager: "vacant"
245
+ },
246
+ {
247
+ id: "pos-17",
248
+ title: "Cracker Macker",
249
+ positionCode: "P00203",
250
+ directReports: 0,
251
+ department: "Production",
252
+ assignee: {
253
+ name: "Rowe Innes",
254
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(14)
255
+ },
256
+ manager: {
257
+ name: "Lena Voss",
258
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(15)
259
+ }
260
+ },
261
+ {
262
+ id: "pos-18",
263
+ title: "Cracker Maker",
264
+ positionCode: "P00204",
265
+ directReports: 1,
266
+ department: "Production",
267
+ assignee: {
268
+ name: "Greg Evans",
269
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(16)
270
+ },
271
+ manager: {
272
+ name: "Marcus Dale",
273
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(17)
274
+ }
275
+ }
276
+ ];
277
+ const uniqueDepartments = positions.map((r)=>r.department).filter((d, i, arr)=>arr.indexOf(d) === i).sort((a, b)=>a.localeCompare(b));
278
+ const uniqueManagerFilterNames = (()=>{
279
+ const seen = new Set();
280
+ for (const r of positions)if (r.manager && "vacant" !== r.manager) seen.add(r.manager.name);
281
+ return [
282
+ ...seen
283
+ ].sort((a, b)=>a.localeCompare(b));
284
+ })();
285
+ const slotLinkStyle = {
286
+ alignItems: "center",
287
+ color: "inherit",
288
+ display: "inline-flex",
289
+ gap: "var(--size-n2)",
290
+ minWidth: 0,
291
+ position: "relative",
292
+ textDecoration: "none",
293
+ zIndex: 2
294
+ };
295
+ const PositionsList = ({ compactBreakpoint, contentAlignment, enableSorting, rowHeight })=>{
296
+ const { Link } = (0, __WEBPACK_EXTERNAL_MODULE__utils_useNextContext_js_b4604910__["default"])();
297
+ const renderAssignee = (r)=>{
298
+ if ("vacant" === r.assignee) return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Link, {
299
+ href: `#assignee-${r.id}`,
300
+ onClick: (e)=>e.stopPropagation(),
301
+ style: slotLinkStyle,
302
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__HStack_js_d2f77bae__["default"], {
303
+ align: "center",
304
+ spacing: "n2",
305
+ tagName: "div",
306
+ children: [
307
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(MissingAvatar, {}),
308
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
309
+ font: "small",
310
+ tone: "muted",
311
+ children: "Vacant"
312
+ })
313
+ ]
314
+ })
315
+ });
316
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Link, {
317
+ href: `#assignee-${r.id}`,
318
+ onClick: (e)=>e.stopPropagation(),
319
+ style: slotLinkStyle,
320
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__HStack_js_d2f77bae__["default"], {
321
+ align: "center",
322
+ spacing: "n2",
323
+ tagName: "div",
324
+ children: [
325
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PersonAvatar_js_0117b3ba__["default"], {
326
+ id: `${r.id}-assign`,
327
+ name: r.assignee.name,
328
+ imageUrl: r.assignee.imageUrl,
329
+ size: "small",
330
+ hue: "200"
331
+ }),
332
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
333
+ font: "small",
334
+ children: r.assignee.name
335
+ })
336
+ ]
337
+ })
338
+ });
339
+ };
340
+ const renderManager = (r)=>{
341
+ if (null === r.manager) return "—";
342
+ if ("vacant" === r.manager) return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Link, {
343
+ href: `#manager-${r.id}`,
344
+ onClick: (e)=>e.stopPropagation(),
345
+ style: slotLinkStyle,
346
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(MissingAvatar, {})
347
+ });
348
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Link, {
349
+ href: `#manager-${r.id}`,
350
+ onClick: (e)=>e.stopPropagation(),
351
+ style: {
352
+ ...slotLinkStyle,
353
+ zIndex: 2
354
+ },
355
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PersonAvatar_js_0117b3ba__["default"], {
356
+ id: `${r.id}-mgr`,
357
+ name: r.manager.name,
358
+ imageUrl: r.manager.imageUrl,
359
+ size: "small",
360
+ hue: "200"
361
+ })
362
+ });
363
+ };
364
+ const titleField = {
365
+ label: "Position",
366
+ value: (r)=>`${r.title} ${r.department}`,
367
+ globalFiltering: true,
368
+ render: (r)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
369
+ font: "regular-bold",
370
+ children: r.title
371
+ })
372
+ };
373
+ const subtitleField = {
374
+ label: "Code / function / reports",
375
+ value: (r)=>`${r.positionCode} ${r.department} ${r.directReports} direct reports`,
376
+ globalFiltering: true,
377
+ filter: {
378
+ isMulti: true,
379
+ label: "Department / function",
380
+ options: uniqueDepartments.map((d)=>({
381
+ id: d,
382
+ label: d,
383
+ predicate: (r)=>r.department === d
384
+ }))
385
+ },
386
+ render: (r)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__HStack_js_d2f77bae__["default"], {
387
+ align: "center",
388
+ spacing: "n2",
389
+ tagName: "div",
390
+ children: [
391
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
392
+ font: "small",
393
+ tone: "muted",
394
+ children: [
395
+ "# ",
396
+ r.positionCode
397
+ ]
398
+ }),
399
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
400
+ font: "small",
401
+ tone: "muted",
402
+ children: "|"
403
+ }),
404
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
405
+ font: "small",
406
+ tone: "muted",
407
+ children: r.department
408
+ }),
409
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
410
+ font: "small",
411
+ tone: "muted",
412
+ children: "|"
413
+ }),
414
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__HStack_js_d2f77bae__["default"], {
415
+ align: "center",
416
+ spacing: "n1",
417
+ tagName: "div",
418
+ children: [
419
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__Icon_js_b85e52f7__["default"], {
420
+ symbol: "People",
421
+ size: "small",
422
+ tone: "muted"
423
+ }),
424
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
425
+ font: "small",
426
+ tone: "muted",
427
+ children: [
428
+ r.directReports,
429
+ " ",
430
+ 1 === r.directReports ? "direct report" : "direct reports"
431
+ ]
432
+ })
433
+ ]
434
+ })
435
+ ]
436
+ })
437
+ };
438
+ const assignedSlot = {
439
+ id: "assigned",
440
+ label: "Assigned",
441
+ value: (r)=>"vacant" === r.assignee ? "Vacant" : r.assignee.name,
442
+ render: (r)=>renderAssignee(r),
443
+ align: "start",
444
+ size: 200,
445
+ columnWidthMode: "fixed",
446
+ compactSize: 160,
447
+ globalFiltering: true,
448
+ filter: {
449
+ isMulti: true,
450
+ label: "Position filled",
451
+ options: [
452
+ {
453
+ id: "assign-filled",
454
+ label: "Filled",
455
+ predicate: (r)=>"vacant" !== r.assignee
456
+ },
457
+ {
458
+ id: "assign-vacant",
459
+ label: "Vacant",
460
+ predicate: (r)=>"vacant" === r.assignee
461
+ }
462
+ ]
463
+ }
464
+ };
465
+ const managerSlot = {
466
+ id: "reportsTo",
467
+ label: "Reports to",
468
+ value: (r)=>{
469
+ if (null === r.manager) return "";
470
+ if ("vacant" === r.manager) return "Vacant";
471
+ return r.manager.name;
472
+ },
473
+ globalFiltering: true,
474
+ render: (r)=>renderManager(r),
475
+ align: "center",
476
+ size: 60,
477
+ filter: {
478
+ isMulti: true,
479
+ label: "Reports to",
480
+ options: [
481
+ {
482
+ id: "manager-top",
483
+ label: "Top of org (no manager)",
484
+ predicate: (r)=>null === r.manager
485
+ },
486
+ {
487
+ id: "manager-vacant",
488
+ label: "Vacant manager role",
489
+ predicate: (r)=>"vacant" === r.manager
490
+ },
491
+ ...uniqueManagerFilterNames.map((name)=>({
492
+ id: `manager-${name}`,
493
+ label: name,
494
+ predicate: (r)=>null !== r.manager && "vacant" !== r.manager && r.manager.name === name
495
+ }))
496
+ ]
497
+ }
498
+ };
499
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__RichList_js_64f3f04c__["default"], {
500
+ data: positions,
501
+ compactBreakpoint: compactBreakpoint,
502
+ contentAlignment: contentAlignment,
503
+ enableSorting: enableSorting,
504
+ fillContainerHeight: true,
505
+ getRowId: (r)=>r.id,
506
+ rowHeight: rowHeight,
507
+ mainSlot: {
508
+ size: 330,
509
+ primary: titleField,
510
+ secondary: subtitleField
511
+ },
512
+ contentSlots: [
513
+ assignedSlot
514
+ ],
515
+ trailingSlot: managerSlot
516
+ });
517
+ };
518
+ const Positions_rslib_entry_ = PositionsList;
519
+ export { Positions_rslib_entry_ as default };
@@ -0,0 +1,19 @@
1
+ import { type CommonProps } from "./shared";
2
+ export type ReviewsRow = {
3
+ id: string;
4
+ cycleName: string;
5
+ reviewBadging: "self" | "peer";
6
+ reviewStatus: "assigned" | "submitted" | "incomplete";
7
+ dueDate: string;
8
+ submittedAt: string | null;
9
+ personName: string;
10
+ personHue: string;
11
+ personImageUrl: string;
12
+ };
13
+ /**
14
+ * Demonstrates toolbar search plus a single single-select filter as an inline menu
15
+ * (see `RichList` / `MenuButton`), with performance-style rows: avatar, cycle title, type badge,
16
+ * due / submitted copy on the trailing edge.
17
+ */
18
+ declare const ReviewsList: ({ compactBreakpoint, contentAlignment, enableSorting, rowHeight, }: CommonProps) => import("react/jsx-runtime").JSX.Element;
19
+ export default ReviewsList;