@worknice/whiteboard 0.52.1 → 0.53.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 (75) 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 +150 -0
  16. package/dist/presentation/RichList/RichList.js +507 -0
  17. package/dist/presentation/RichList/RichList.module.js +12 -0
  18. package/dist/presentation/RichList/RichList.stories.d.ts +24 -0
  19. package/dist/presentation/RichList/RichList.stories.js +334 -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 +21 -0
  31. package/dist/presentation/RichList/RichListToolbar.js +104 -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/SavedQuestions.d.ts +13 -0
  60. package/dist/presentation/RichList/stories/SavedQuestions.js +152 -0
  61. package/dist/presentation/RichList/stories/Tables.d.ts +9 -0
  62. package/dist/presentation/RichList/stories/Tables.js +85 -0
  63. package/dist/presentation/RichList/stories/Tasks.d.ts +16 -0
  64. package/dist/presentation/RichList/stories/Tasks.js +340 -0
  65. package/dist/presentation/RichList/stories/shared/bulkActionStubs.d.ts +9 -0
  66. package/dist/presentation/RichList/stories/shared/bulkActionStubs.js +122 -0
  67. package/dist/presentation/RichList/stories/shared.d.ts +8 -0
  68. package/dist/presentation/RichList/stories/shared.js +2 -0
  69. package/dist/presentation/RichList/types.d.ts +342 -0
  70. package/dist/presentation/RichList/types.js +0 -0
  71. package/dist/presentation/Table.d.ts +1 -1
  72. package/dist/presentation/Table.js +2 -2
  73. package/dist/presentation/Table.module.js +0 -10
  74. package/dist/presentation/Table_module.css +1 -61
  75. package/package.json +2 -2
@@ -0,0 +1,170 @@
1
+ "use client";
2
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
3
+ import * as __WEBPACK_EXTERNAL_MODULE__Icon_js_b85e52f7__ from "../../Icon.js";
4
+ import * as __WEBPACK_EXTERNAL_MODULE__PersonAvatar_js_0117b3ba__ from "../../PersonAvatar.js";
5
+ import * as __WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__ from "../../PlainText.js";
6
+ import * as __WEBPACK_EXTERNAL_MODULE__RichList_js_64f3f04c__ from "../RichList.js";
7
+ import * as __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__ from "./shared.js";
8
+ const employees = [
9
+ {
10
+ id: "e1",
11
+ name: "Sarah Jenkins",
12
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(19),
13
+ line: "VP of Engineering at New York"
14
+ },
15
+ {
16
+ id: "e2",
17
+ name: "David Miller",
18
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(20),
19
+ line: "Product Manager at London"
20
+ },
21
+ {
22
+ id: "e3",
23
+ name: "Emily Chen",
24
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(21),
25
+ line: "Frontend Developer at Remote"
26
+ },
27
+ {
28
+ id: "e4",
29
+ name: "James Washington",
30
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(22),
31
+ line: "HR Specialist at Chicago"
32
+ },
33
+ {
34
+ id: "e5",
35
+ name: "Priya Shah",
36
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(23),
37
+ line: "Director of Finance at Sydney"
38
+ },
39
+ {
40
+ id: "e6",
41
+ name: "Marcus Webb",
42
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(24),
43
+ line: "Warehouse Lead at Melbourne"
44
+ },
45
+ {
46
+ id: "e7",
47
+ name: "Nina Okonkwo",
48
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(25),
49
+ line: "Legal Counsel at Head Office"
50
+ },
51
+ {
52
+ id: "e8",
53
+ name: "Oliver Grant",
54
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(26),
55
+ line: "Sales Manager at Remote"
56
+ },
57
+ {
58
+ id: "e9",
59
+ name: "Rachel Kim",
60
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(27),
61
+ line: "UX Researcher at San Francisco"
62
+ },
63
+ {
64
+ id: "e10",
65
+ name: "Samuel Ortiz",
66
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(28),
67
+ line: "DevOps Engineer at Austin"
68
+ },
69
+ {
70
+ id: "e11",
71
+ name: "Tessa Bloom",
72
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(29),
73
+ line: "Chief of Staff at Seattle"
74
+ },
75
+ {
76
+ id: "e12",
77
+ name: "Victor Ng",
78
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(30),
79
+ line: "Data Analyst at Singapore"
80
+ },
81
+ {
82
+ id: "e13",
83
+ name: "Yuki Tanaka",
84
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(31),
85
+ line: "Account Executive at Tokyo"
86
+ },
87
+ {
88
+ id: "e14",
89
+ name: "Zara Ali",
90
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(32),
91
+ line: "Customer Success at Dubai"
92
+ },
93
+ {
94
+ id: "e15",
95
+ name: "Ben Carter",
96
+ imageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(33),
97
+ line: "Facilities Coordinator at Manchester"
98
+ }
99
+ ];
100
+ const rowActions = ()=>[
101
+ {
102
+ id: "email",
103
+ label: "Email",
104
+ alwaysVisible: true,
105
+ icon: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__Icon_js_b85e52f7__["default"], {
106
+ symbol: "Email"
107
+ }),
108
+ onClick: ()=>void 0
109
+ },
110
+ {
111
+ id: "phone",
112
+ label: "Call",
113
+ alwaysVisible: true,
114
+ icon: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__Icon_js_b85e52f7__["default"], {
115
+ symbol: "Phone"
116
+ }),
117
+ onClick: ()=>void 0
118
+ }
119
+ ];
120
+ const leadingSlot = {
121
+ id: "avatar",
122
+ render: (r)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PersonAvatar_js_0117b3ba__["default"], {
123
+ id: r.id,
124
+ name: r.name,
125
+ imageUrl: r.imageUrl,
126
+ size: "small",
127
+ hue: "200"
128
+ }),
129
+ size: 48
130
+ };
131
+ const EmployeePeopleList = ({ compactBreakpoint, contentAlignment, enableSorting, rowHeight })=>{
132
+ const titleField = {
133
+ label: "Name",
134
+ value: (r)=>r.name,
135
+ globalFiltering: true,
136
+ render: (r)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
137
+ font: "h6",
138
+ children: r.name
139
+ })
140
+ };
141
+ const subtitleField = {
142
+ label: "Role",
143
+ value: (r)=>r.line,
144
+ globalFiltering: true,
145
+ render: (r)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
146
+ font: "small",
147
+ tone: "muted",
148
+ children: r.line
149
+ })
150
+ };
151
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__RichList_js_64f3f04c__["default"], {
152
+ compactBreakpoint: compactBreakpoint,
153
+ contentAlignment: contentAlignment,
154
+ data: employees,
155
+ enableSorting: enableSorting,
156
+ fillContainerHeight: true,
157
+ getRowId: (r)=>r.id,
158
+ rowActions: rowActions,
159
+ rowHeight: rowHeight,
160
+ href: ()=>"#",
161
+ leadingSlot: leadingSlot,
162
+ mainSlot: {
163
+ size: 240,
164
+ primary: titleField,
165
+ secondary: subtitleField
166
+ }
167
+ });
168
+ };
169
+ const EmployeePeople_rslib_entry_ = EmployeePeopleList;
170
+ export { EmployeePeople_rslib_entry_ as default };
@@ -0,0 +1,21 @@
1
+ import type { ComponentProps } from "react";
2
+ import Badge from "../../Badge";
3
+ import { type CommonProps } from "./shared";
4
+ type NameBadgeColor = NonNullable<ComponentProps<typeof Badge>["color"]>;
5
+ export type LeaveRow = {
6
+ id: string;
7
+ kind: string;
8
+ statusBadge: {
9
+ id: string;
10
+ text: "Requested" | "Approved";
11
+ color: NameBadgeColor;
12
+ };
13
+ dateLine: string;
14
+ hasComment: boolean;
15
+ requesterName: string;
16
+ requesterImageUrl: string | null;
17
+ /** `null` means show an em dash (no approver). */
18
+ approverImageUrl: string | null;
19
+ };
20
+ declare const LeaveList: ({ compactBreakpoint, contentAlignment, enableSorting, rowHeight, }: CommonProps) => import("react/jsx-runtime").JSX.Element;
21
+ export default LeaveList;
@@ -0,0 +1,332 @@
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__Badge_js_56d6dba9__ from "../../Badge.js";
5
+ import * as __WEBPACK_EXTERNAL_MODULE__HStack_js_d2f77bae__ from "../../HStack.js";
6
+ import * as __WEBPACK_EXTERNAL_MODULE__Icon_js_b85e52f7__ from "../../Icon.js";
7
+ import * as __WEBPACK_EXTERNAL_MODULE__PersonAvatar_js_0117b3ba__ from "../../PersonAvatar.js";
8
+ import * as __WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__ from "../../PlainText.js";
9
+ import * as __WEBPACK_EXTERNAL_MODULE__RichList_js_64f3f04c__ from "../RichList.js";
10
+ import * as __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__ from "./shared.js";
11
+ const rows = [
12
+ {
13
+ id: "lv1",
14
+ kind: "Annual Leave",
15
+ statusBadge: {
16
+ id: "st",
17
+ text: "Requested",
18
+ color: "grey"
19
+ },
20
+ dateLine: "17 - 31 Mar, 2026",
21
+ hasComment: true,
22
+ requesterName: "Candice Berry",
23
+ requesterImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(3),
24
+ approverImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(14)
25
+ },
26
+ {
27
+ id: "lv2",
28
+ kind: "Personal/Carer's Leave",
29
+ statusBadge: {
30
+ id: "st",
31
+ text: "Requested",
32
+ color: "grey"
33
+ },
34
+ dateLine: "16 Feb, 2026",
35
+ hasComment: true,
36
+ requesterName: "Daisy Smith",
37
+ requesterImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(1),
38
+ approverImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(15)
39
+ },
40
+ {
41
+ id: "lv3",
42
+ kind: "Annual Leave",
43
+ statusBadge: {
44
+ id: "st",
45
+ text: "Approved",
46
+ color: "green"
47
+ },
48
+ dateLine: "1 - 19 Feb, 2026",
49
+ hasComment: false,
50
+ requesterName: "Candice Berry",
51
+ requesterImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(3),
52
+ approverImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(16)
53
+ },
54
+ {
55
+ id: "lv4",
56
+ kind: "Annual Leave",
57
+ statusBadge: {
58
+ id: "st",
59
+ text: "Requested",
60
+ color: "grey"
61
+ },
62
+ dateLine: "22 - 23 Jan, 2026",
63
+ hasComment: false,
64
+ requesterName: "Candice Berry",
65
+ requesterImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(3),
66
+ approverImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(17)
67
+ },
68
+ {
69
+ id: "lv5",
70
+ kind: "Personal/Carer's Leave",
71
+ statusBadge: {
72
+ id: "st",
73
+ text: "Approved",
74
+ color: "green"
75
+ },
76
+ dateLine: "10 - 12 Dec, 2025",
77
+ hasComment: false,
78
+ requesterName: "Nadia Ora",
79
+ requesterImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(6),
80
+ approverImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(18)
81
+ },
82
+ {
83
+ id: "lv6",
84
+ kind: "Annual Leave",
85
+ statusBadge: {
86
+ id: "st",
87
+ text: "Approved",
88
+ color: "green"
89
+ },
90
+ dateLine: "14 Jul, 2025",
91
+ hasComment: true,
92
+ requesterName: "Evan Baker",
93
+ requesterImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(12),
94
+ approverImageUrl: null
95
+ },
96
+ {
97
+ id: "lv7",
98
+ kind: "Personal/Carer's Leave",
99
+ statusBadge: {
100
+ id: "st",
101
+ text: "Requested",
102
+ color: "grey"
103
+ },
104
+ dateLine: "1 - 2 Apr, 2025",
105
+ hasComment: true,
106
+ requesterName: "Nadia Ora",
107
+ requesterImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(6),
108
+ approverImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(19)
109
+ },
110
+ {
111
+ id: "lv8",
112
+ kind: "Annual Leave",
113
+ statusBadge: {
114
+ id: "st",
115
+ text: "Approved",
116
+ color: "green"
117
+ },
118
+ dateLine: "15 - 16 Nov, 2024",
119
+ hasComment: true,
120
+ requesterName: "Haydn Ewers",
121
+ requesterImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(10),
122
+ approverImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(20)
123
+ },
124
+ {
125
+ id: "lv9",
126
+ kind: "Other (Unpaid)",
127
+ statusBadge: {
128
+ id: "st",
129
+ text: "Requested",
130
+ color: "grey"
131
+ },
132
+ dateLine: "7 Nov, 2024",
133
+ hasComment: false,
134
+ requesterName: "Janice Martin",
135
+ requesterImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(1),
136
+ approverImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(21)
137
+ },
138
+ {
139
+ id: "lv10",
140
+ kind: "Annual Leave",
141
+ statusBadge: {
142
+ id: "st",
143
+ text: "Approved",
144
+ color: "green"
145
+ },
146
+ dateLine: "5 Jun, 2024",
147
+ hasComment: false,
148
+ requesterName: "Daniel Turner",
149
+ requesterImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(9),
150
+ approverImageUrl: (0, __WEBPACK_EXTERNAL_MODULE__shared_js_cc7b7cda__.avatarUrl)(22)
151
+ }
152
+ ];
153
+ const statusFilterOptions = [
154
+ {
155
+ id: "st-requested",
156
+ text: "Requested"
157
+ },
158
+ {
159
+ id: "st-approved",
160
+ text: "Approved"
161
+ }
162
+ ];
163
+ const requesterFilterNames = [
164
+ ...new Set(rows.map((r)=>r.requesterName))
165
+ ].sort((a, b)=>a.localeCompare(b));
166
+ const personSlotLinkStyle = {
167
+ alignItems: "center",
168
+ color: "inherit",
169
+ display: "inline-flex",
170
+ gap: "var(--size-n2)",
171
+ minWidth: 0,
172
+ position: "relative",
173
+ textDecoration: "none",
174
+ zIndex: 2
175
+ };
176
+ const LeaveList = ({ compactBreakpoint, contentAlignment, enableSorting, rowHeight })=>{
177
+ const { Link } = (0, __WEBPACK_EXTERNAL_MODULE__utils_useNextContext_js_b4604910__["default"])();
178
+ const titleField = {
179
+ label: "Leave",
180
+ value: (r)=>r.kind,
181
+ globalFiltering: true,
182
+ filter: {
183
+ isMulti: true,
184
+ label: "Status",
185
+ options: statusFilterOptions.map(({ id, text })=>({
186
+ id,
187
+ label: text,
188
+ predicate: (r)=>r.statusBadge.text === text
189
+ }))
190
+ },
191
+ render: (r)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
192
+ font: "regular-bold",
193
+ children: r.kind
194
+ }),
195
+ suffixOnWide: (r)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__Badge_js_56d6dba9__["default"], {
196
+ id: `${r.id}-${r.statusBadge.id}`,
197
+ color: r.statusBadge.color,
198
+ children: r.statusBadge.text
199
+ })
200
+ };
201
+ const subtitleField = {
202
+ label: "Dates",
203
+ value: (r)=>r.dateLine,
204
+ globalFiltering: true,
205
+ render: (r)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__HStack_js_d2f77bae__["default"], {
206
+ spacing: "n2",
207
+ align: "center",
208
+ tagName: "div",
209
+ children: [
210
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__HStack_js_d2f77bae__["default"], {
211
+ spacing: "n2",
212
+ align: "center",
213
+ tagName: "div",
214
+ children: [
215
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__Icon_js_b85e52f7__["default"], {
216
+ symbol: "Calendar",
217
+ size: "small",
218
+ tone: "muted"
219
+ }),
220
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
221
+ font: "small",
222
+ tone: "muted",
223
+ children: r.dateLine
224
+ })
225
+ ]
226
+ }),
227
+ r.hasComment ? /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__Icon_js_b85e52f7__["default"], {
228
+ symbol: "Comment",
229
+ size: "small",
230
+ tone: "muted"
231
+ }) : null
232
+ ]
233
+ })
234
+ };
235
+ const requesterSlot = {
236
+ id: "requester",
237
+ label: "Requester",
238
+ canToggleVisibility: true,
239
+ value: (r)=>r.requesterName,
240
+ globalFiltering: true,
241
+ filter: {
242
+ isMulti: true,
243
+ label: "Requester",
244
+ options: requesterFilterNames.map((name)=>({
245
+ id: `req-${name}`,
246
+ label: name,
247
+ predicate: (r)=>r.requesterName === name
248
+ }))
249
+ },
250
+ render: (r)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Link, {
251
+ href: `#requester-${r.id}`,
252
+ onClick: (e)=>e.stopPropagation(),
253
+ style: personSlotLinkStyle,
254
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__HStack_js_d2f77bae__["default"], {
255
+ spacing: "n2",
256
+ align: "center",
257
+ tagName: "div",
258
+ children: [
259
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PersonAvatar_js_0117b3ba__["default"], {
260
+ id: `${r.id}-req`,
261
+ name: r.requesterName,
262
+ imageUrl: r.requesterImageUrl,
263
+ size: "small",
264
+ hue: "200"
265
+ }),
266
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
267
+ font: "small",
268
+ children: r.requesterName
269
+ })
270
+ ]
271
+ })
272
+ }),
273
+ align: "start",
274
+ size: 200,
275
+ compactSize: 100
276
+ };
277
+ const approverSlot = {
278
+ id: "approver",
279
+ label: "Approver",
280
+ value: (r)=>r.approverImageUrl ? "set" : "—",
281
+ globalFiltering: true,
282
+ render: (r)=>r.approverImageUrl ? /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
283
+ style: {
284
+ display: "flex",
285
+ justifyContent: "center"
286
+ },
287
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Link, {
288
+ href: `#approver-${r.id}`,
289
+ onClick: (e)=>e.stopPropagation(),
290
+ style: {
291
+ ...personSlotLinkStyle,
292
+ justifyContent: "center"
293
+ },
294
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PersonAvatar_js_0117b3ba__["default"], {
295
+ id: `${r.id}-appr`,
296
+ name: "Approver",
297
+ imageUrl: r.approverImageUrl,
298
+ size: "small",
299
+ hue: "200"
300
+ })
301
+ })
302
+ }) : /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__PlainText_js_acfb96d1__["default"], {
303
+ font: "small",
304
+ tone: "muted",
305
+ children: "—"
306
+ }),
307
+ align: "center",
308
+ size: 48,
309
+ compactSize: 48
310
+ };
311
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__RichList_js_64f3f04c__["default"], {
312
+ compactBreakpoint: compactBreakpoint,
313
+ contentAlignment: contentAlignment,
314
+ contentSlots: [
315
+ requesterSlot
316
+ ],
317
+ data: rows,
318
+ enableSorting: enableSorting,
319
+ fillContainerHeight: true,
320
+ getRowId: (r)=>r.id,
321
+ href: ()=>"#",
322
+ rowHeight: rowHeight,
323
+ mainSlot: {
324
+ size: 260,
325
+ primary: titleField,
326
+ secondary: subtitleField
327
+ },
328
+ trailingSlot: approverSlot
329
+ });
330
+ };
331
+ const Leave_rslib_entry_ = LeaveList;
332
+ export { Leave_rslib_entry_ as default };
@@ -0,0 +1,22 @@
1
+ import type { ComponentProps } from "react";
2
+ import Badge from "../../Badge";
3
+ import Icon from "../../Icon";
4
+ import { type CommonProps } from "./shared";
5
+ type NameBadgeColor = NonNullable<ComponentProps<typeof Badge>["color"]>;
6
+ type IconSymbol = ComponentProps<typeof Icon>["symbol"];
7
+ export type PaperworkRow = {
8
+ id: string;
9
+ title: string;
10
+ leadingIcon: IconSymbol;
11
+ statusBadge: {
12
+ id: string;
13
+ text: string;
14
+ color: NameBadgeColor;
15
+ };
16
+ statusLine: string;
17
+ statusTone: "danger" | "muted" | "warning";
18
+ assigneeName: string;
19
+ assigneeImageUrl: string | null;
20
+ };
21
+ declare const PaperworkList: ({ compactBreakpoint, contentAlignment, enableSorting, rowHeight, }: CommonProps) => import("react/jsx-runtime").JSX.Element;
22
+ export default PaperworkList;