@dmsi/wedgekit-react 0.0.475 → 0.0.477
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-IG2YUDHI.js → chunk-24K4HHV5.js} +4 -4
- package/dist/{chunk-OEMLNGE2.js → chunk-4Q7T4GJ2.js} +2 -2
- package/dist/chunk-4UH72JT2.js +104 -0
- package/dist/{chunk-KJNK7KEV.js → chunk-QMSPTD6L.js} +1 -1
- package/dist/{chunk-GTPSPGSJ.js → chunk-WIDUWFLX.js} +761 -47
- package/dist/components/Accordion.js +2 -2
- package/dist/components/Alert.cjs +787 -0
- package/dist/components/Alert.js +13 -0
- package/dist/components/CalendarRange.cjs +465 -160
- package/dist/components/CalendarRange.css +3 -0
- package/dist/components/CalendarRange.js +19 -19
- package/dist/components/DataGrid/ColumnSelectorHeaderCell/ColumnSelectorMenuOption.cjs +918 -148
- package/dist/components/DataGrid/ColumnSelectorHeaderCell/ColumnSelectorMenuOption.css +3 -0
- package/dist/components/DataGrid/ColumnSelectorHeaderCell/ColumnSelectorMenuOption.js +19 -18
- package/dist/components/DataGrid/ColumnSelectorHeaderCell/index.cjs +928 -158
- package/dist/components/DataGrid/ColumnSelectorHeaderCell/index.css +3 -0
- package/dist/components/DataGrid/ColumnSelectorHeaderCell/index.js +19 -18
- package/dist/components/DataGrid/PinnedColumns.cjs +943 -173
- package/dist/components/DataGrid/PinnedColumns.css +3 -0
- package/dist/components/DataGrid/PinnedColumns.js +19 -18
- package/dist/components/DataGrid/TableBody/LoadingCell.cjs +919 -149
- package/dist/components/DataGrid/TableBody/LoadingCell.css +3 -0
- package/dist/components/DataGrid/TableBody/LoadingCell.js +19 -18
- package/dist/components/DataGrid/TableBody/TableBodyRow.cjs +925 -155
- package/dist/components/DataGrid/TableBody/TableBodyRow.css +3 -0
- package/dist/components/DataGrid/TableBody/TableBodyRow.js +19 -18
- package/dist/components/DataGrid/TableBody/index.cjs +940 -170
- package/dist/components/DataGrid/TableBody/index.css +3 -0
- package/dist/components/DataGrid/TableBody/index.js +19 -18
- package/dist/components/DataGrid/index.cjs +1029 -259
- package/dist/components/DataGrid/index.css +3 -0
- package/dist/components/DataGrid/index.js +19 -18
- package/dist/components/DataGrid/utils.cjs +919 -149
- package/dist/components/DataGrid/utils.css +3 -0
- package/dist/components/DataGrid/utils.js +19 -18
- package/dist/components/DataGridCell.js +2 -2
- package/dist/components/DateInput.cjs +70 -65
- package/dist/components/DateInput.css +3 -0
- package/dist/components/DateInput.js +25 -271
- package/dist/components/DateRangeInput.cjs +419 -184
- package/dist/components/DateRangeInput.css +3 -0
- package/dist/components/DateRangeInput.js +19 -19
- package/dist/components/FilterGroup.js +6 -6
- package/dist/components/MobileDataGrid/ColumnList.js +3 -3
- package/dist/components/MobileDataGrid/ColumnSelector/index.cjs +925 -155
- package/dist/components/MobileDataGrid/ColumnSelector/index.css +3 -0
- package/dist/components/MobileDataGrid/ColumnSelector/index.js +19 -18
- package/dist/components/MobileDataGrid/MobileDataGridCard/index.js +2 -2
- package/dist/components/MobileDataGrid/MobileDataGridHeader.cjs +923 -153
- package/dist/components/MobileDataGrid/MobileDataGridHeader.css +3 -0
- package/dist/components/MobileDataGrid/MobileDataGridHeader.js +19 -18
- package/dist/components/MobileDataGrid/RowDetailModalProvider/ModalContent.js +2 -2
- package/dist/components/MobileDataGrid/RowDetailModalProvider/index.js +6 -6
- package/dist/components/MobileDataGrid/index.cjs +973 -203
- package/dist/components/MobileDataGrid/index.css +3 -0
- package/dist/components/MobileDataGrid/index.js +19 -18
- package/dist/components/Modal.js +3 -3
- package/dist/components/Notification.js +3 -3
- package/dist/components/PDFViewer/PDFNavigation.js +2 -2
- package/dist/components/PDFViewer/index.js +6 -6
- package/dist/components/SideMenuItem.js +3 -3
- package/dist/components/Swatch.js +3 -3
- package/dist/components/Upload.js +3 -3
- package/dist/components/index.cjs +1212 -363
- package/dist/components/index.css +3 -0
- package/dist/components/index.js +34 -28
- package/dist/index.css +3 -0
- package/package.json +1 -1
- package/src/components/Alert.tsx +81 -0
- package/src/components/index.ts +2 -0
- package/dist/chunk-X35NLL3N.js +0 -493
- package/dist/{chunk-IT4VFU6T.js → chunk-3DEYCNUE.js} +3 -3
- package/dist/{chunk-GTBGPBH6.js → chunk-B53XDCLO.js} +3 -3
- package/dist/{chunk-ZQSD74IJ.js → chunk-IY7SXEVY.js} +3 -3
- package/dist/{chunk-BFFNSUNS.js → chunk-QBSEKZWX.js} +3 -3
- package/dist/{chunk-NIWXVOBW.js → chunk-X67L3NZI.js} +3 -3
- package/dist/{chunk-TVXBP5CW.js → chunk-XIXQUEYC.js} +3 -3
|
@@ -146,6 +146,76 @@ function formatCurrencyDisplay(value) {
|
|
|
146
146
|
}
|
|
147
147
|
|
|
148
148
|
// src/utils/date.ts
|
|
149
|
+
function parseInputDate(input) {
|
|
150
|
+
const match = input.match(/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);
|
|
151
|
+
if (!match) {
|
|
152
|
+
return null;
|
|
153
|
+
}
|
|
154
|
+
const [, month, day, year] = match;
|
|
155
|
+
const paddedMonth = month.padStart(2, "0");
|
|
156
|
+
const paddedDay = day.padStart(2, "0");
|
|
157
|
+
return `${year}-${paddedMonth}-${paddedDay}`;
|
|
158
|
+
}
|
|
159
|
+
function isValidDate(dateString) {
|
|
160
|
+
const date = new Date(dateString);
|
|
161
|
+
return date instanceof Date && !isNaN(date.getTime()) && dateString === date.toISOString().split("T")[0];
|
|
162
|
+
}
|
|
163
|
+
function formatInputValue(value) {
|
|
164
|
+
const digits = value.replace(/\D/g, "");
|
|
165
|
+
if (digits.length < 2) {
|
|
166
|
+
return digits;
|
|
167
|
+
}
|
|
168
|
+
if (digits.length >= 4) {
|
|
169
|
+
return `${digits.slice(0, 2)}/${digits.slice(2, 4)}/${digits.slice(4, 8)}`;
|
|
170
|
+
}
|
|
171
|
+
return `${digits.slice(0, 2)}/${digits.slice(2)}`;
|
|
172
|
+
}
|
|
173
|
+
function isDigit(character) {
|
|
174
|
+
return /\d/.test(character);
|
|
175
|
+
}
|
|
176
|
+
function isSlash(character) {
|
|
177
|
+
return character === "/";
|
|
178
|
+
}
|
|
179
|
+
function countDigitsUpToCursor(value, cursorPosition) {
|
|
180
|
+
let digitCount = 0;
|
|
181
|
+
for (let i = 0; i < cursorPosition && i < value.length; i++) {
|
|
182
|
+
if (!isDigit(value[i])) {
|
|
183
|
+
continue;
|
|
184
|
+
}
|
|
185
|
+
digitCount++;
|
|
186
|
+
}
|
|
187
|
+
return digitCount;
|
|
188
|
+
}
|
|
189
|
+
function findPositionAfterDigitCount(formattedValue, targetDigitCount) {
|
|
190
|
+
let currentDigitCount = 0;
|
|
191
|
+
for (let i = 0; i < formattedValue.length; i++) {
|
|
192
|
+
if (!isDigit(formattedValue[i])) {
|
|
193
|
+
continue;
|
|
194
|
+
}
|
|
195
|
+
currentDigitCount++;
|
|
196
|
+
if (currentDigitCount !== targetDigitCount) {
|
|
197
|
+
continue;
|
|
198
|
+
}
|
|
199
|
+
const positionAfterDigit = i + 1;
|
|
200
|
+
const nextCharacter = formattedValue[positionAfterDigit];
|
|
201
|
+
if (nextCharacter && isSlash(nextCharacter)) {
|
|
202
|
+
return positionAfterDigit + 1;
|
|
203
|
+
}
|
|
204
|
+
return positionAfterDigit;
|
|
205
|
+
}
|
|
206
|
+
return formattedValue.length;
|
|
207
|
+
}
|
|
208
|
+
function calculateCursorPosition(originalValue, formattedValue, originalPosition) {
|
|
209
|
+
const targetDigitCount = countDigitsUpToCursor(
|
|
210
|
+
originalValue,
|
|
211
|
+
originalPosition
|
|
212
|
+
);
|
|
213
|
+
const newPosition = findPositionAfterDigitCount(
|
|
214
|
+
formattedValue,
|
|
215
|
+
targetDigitCount
|
|
216
|
+
);
|
|
217
|
+
return Math.min(newPosition, formattedValue.length);
|
|
218
|
+
}
|
|
149
219
|
function parseDateParts(dateString) {
|
|
150
220
|
const [yearStr, monthStr, dayStr] = dateString.split("-");
|
|
151
221
|
if (!yearStr || !monthStr || !dayStr) {
|
|
@@ -2925,23 +2995,718 @@ var Tooltip = ({
|
|
|
2925
2995
|
};
|
|
2926
2996
|
Tooltip.displayName = "Tooltip";
|
|
2927
2997
|
|
|
2928
|
-
// src/components/
|
|
2929
|
-
var
|
|
2998
|
+
// src/components/DateInput.tsx
|
|
2999
|
+
var import_react15 = require("react");
|
|
3000
|
+
var import_react_dom3 = require("react-dom");
|
|
2930
3001
|
|
|
2931
|
-
// src/components/
|
|
3002
|
+
// src/components/CalendarRange.tsx
|
|
2932
3003
|
var import_clsx14 = __toESM(require("clsx"), 1);
|
|
3004
|
+
var import_react14 = __toESM(require("react"), 1);
|
|
3005
|
+
var import_polyfill = require("@js-temporal/polyfill");
|
|
2933
3006
|
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
3007
|
+
function DateCell(_a) {
|
|
3008
|
+
var _b = _a, {
|
|
3009
|
+
date,
|
|
3010
|
+
isInMonth,
|
|
3011
|
+
isToday,
|
|
3012
|
+
isSelected,
|
|
3013
|
+
inRange,
|
|
3014
|
+
isDisabled,
|
|
3015
|
+
isRangeStart,
|
|
3016
|
+
isRangeEnd,
|
|
3017
|
+
onClick,
|
|
3018
|
+
onMouseEnter,
|
|
3019
|
+
onMouseLeave,
|
|
3020
|
+
cellPadding = "",
|
|
3021
|
+
isRangeDisabled = false,
|
|
3022
|
+
id,
|
|
3023
|
+
testid
|
|
3024
|
+
} = _b, props = __objRest(_b, [
|
|
3025
|
+
"date",
|
|
3026
|
+
"isInMonth",
|
|
3027
|
+
"isToday",
|
|
3028
|
+
"isSelected",
|
|
3029
|
+
"inRange",
|
|
3030
|
+
"isDisabled",
|
|
3031
|
+
"isRangeStart",
|
|
3032
|
+
"isRangeEnd",
|
|
3033
|
+
"onClick",
|
|
3034
|
+
"onMouseEnter",
|
|
3035
|
+
"onMouseLeave",
|
|
3036
|
+
"cellPadding",
|
|
3037
|
+
"isRangeDisabled",
|
|
3038
|
+
"id",
|
|
3039
|
+
"testid"
|
|
3040
|
+
]);
|
|
3041
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3042
|
+
"span",
|
|
3043
|
+
__spreadProps(__spreadValues({}, props), {
|
|
3044
|
+
id,
|
|
3045
|
+
"data-testid": testid,
|
|
3046
|
+
className: (0, import_clsx14.default)(
|
|
3047
|
+
"flex items-center justify-center aspect-square select-none transition-colors border duration-100 font-medium",
|
|
3048
|
+
typography.caption,
|
|
3049
|
+
cellPadding,
|
|
3050
|
+
!isToday && !isSelected && !inRange && !isDisabled && !isRangeStart && !isRangeEnd && "border-transparent",
|
|
3051
|
+
!isInMonth && "border-transparent",
|
|
3052
|
+
// Today: subtle border ring
|
|
3053
|
+
isToday && !isSelected && !inRange && "rounded-full border-border-primary-normal ",
|
|
3054
|
+
// Selected: Figma blue, white text, strong shadow
|
|
3055
|
+
isSelected && "bg-action-400 text-white border-action-400 z-10",
|
|
3056
|
+
!isSelected && !inRange && "rounded-base",
|
|
3057
|
+
// When range is disabled OR when only 'from' is selected (no range yet), apply rounded corners
|
|
3058
|
+
(isRangeDisabled || !inRange && isSelected) && "rounded-base",
|
|
3059
|
+
inRange && isSelected && "hover:border-action-500",
|
|
3060
|
+
// In range: Figma light blue background
|
|
3061
|
+
inRange && !isSelected && "bg-action-100 text-text-primary-normal border-y-action-400 border-x-0 ",
|
|
3062
|
+
// Disabled: Figma gray, no pointer, no hover
|
|
3063
|
+
isDisabled && !inRange ? "text-text-primary-disabled bg-transparent pointer-events-none opacity-40 border-transparent" : [
|
|
3064
|
+
"text-text-primary-normal cursor-pointer",
|
|
3065
|
+
// Figma hover: blue bg, blue text (or red text if selected)
|
|
3066
|
+
isSelected ? "hover:bg-background-action-primary-hover hover:text-white" : "hover:bg-action-100 hover:text-text-action-primary-hover",
|
|
3067
|
+
// Figma active: darker blue bg, white text
|
|
3068
|
+
"active:bg-action-300 active:text-white",
|
|
3069
|
+
// Figma focus: ring
|
|
3070
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-action-400"
|
|
3071
|
+
],
|
|
3072
|
+
isRangeStart && "rounded-l",
|
|
3073
|
+
isRangeEnd && "rounded-r"
|
|
3074
|
+
),
|
|
3075
|
+
tabIndex: isDisabled ? -1 : 0,
|
|
3076
|
+
"aria-disabled": isDisabled,
|
|
3077
|
+
onClick: () => !isDisabled && isInMonth && onClick(),
|
|
3078
|
+
onMouseEnter: () => isInMonth && onMouseEnter(),
|
|
3079
|
+
onMouseLeave: () => isInMonth && onMouseLeave(),
|
|
3080
|
+
children: isInMonth ? date.day : ""
|
|
3081
|
+
})
|
|
3082
|
+
);
|
|
3083
|
+
}
|
|
3084
|
+
function CalendarRange({
|
|
3085
|
+
from,
|
|
3086
|
+
to,
|
|
3087
|
+
onChange,
|
|
3088
|
+
isDateAvailable,
|
|
3089
|
+
mode = "double",
|
|
3090
|
+
cardStyle = false,
|
|
3091
|
+
disableRange = false,
|
|
3092
|
+
id,
|
|
3093
|
+
testid
|
|
3094
|
+
}) {
|
|
3095
|
+
const weekDays = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"];
|
|
3096
|
+
const parseDate = (d) => {
|
|
3097
|
+
if (!d) {
|
|
3098
|
+
return void 0;
|
|
3099
|
+
}
|
|
3100
|
+
try {
|
|
3101
|
+
if (typeof d === "number") {
|
|
3102
|
+
return import_polyfill.Temporal.PlainDate.from(new Date(d).toISOString().slice(0, 10));
|
|
3103
|
+
}
|
|
3104
|
+
if (typeof d === "string") {
|
|
3105
|
+
return import_polyfill.Temporal.PlainDate.from(d);
|
|
3106
|
+
}
|
|
3107
|
+
return void 0;
|
|
3108
|
+
} catch (error) {
|
|
3109
|
+
console.error("Invalid date format:", d, error);
|
|
3110
|
+
return import_polyfill.Temporal.Now.plainDateISO();
|
|
3111
|
+
}
|
|
3112
|
+
};
|
|
3113
|
+
const fromDate = parseDate(from);
|
|
3114
|
+
const toDate = parseDate(to);
|
|
3115
|
+
const today = import_polyfill.Temporal.Now.plainDateISO();
|
|
3116
|
+
const [baseMonth, setBaseMonth] = (0, import_react14.useState)(
|
|
3117
|
+
fromDate != null ? fromDate : today.with({ day: 1 })
|
|
3118
|
+
);
|
|
3119
|
+
const [selecting, setSelecting] = (0, import_react14.useState)("from");
|
|
3120
|
+
const [pendingFrom, setPendingFrom] = (0, import_react14.useState)(void 0);
|
|
3121
|
+
const [hoveredDate, setHoveredDate] = (0, import_react14.useState)(void 0);
|
|
3122
|
+
(0, import_react14.useEffect)(() => {
|
|
3123
|
+
if (fromDate) {
|
|
3124
|
+
setBaseMonth(fromDate.with({ day: 1 }));
|
|
3125
|
+
} else if (toDate) {
|
|
3126
|
+
setBaseMonth(toDate.with({ day: 1 }));
|
|
3127
|
+
}
|
|
3128
|
+
}, [from, to]);
|
|
3129
|
+
(0, import_react14.useEffect)(() => {
|
|
3130
|
+
if (fromDate && toDate) {
|
|
3131
|
+
setSelecting("from");
|
|
3132
|
+
setPendingFrom(void 0);
|
|
3133
|
+
setHoveredDate(void 0);
|
|
3134
|
+
}
|
|
3135
|
+
}, [from, to]);
|
|
3136
|
+
function getMonthData(monthOffset) {
|
|
3137
|
+
const monthDate = baseMonth.add({ months: monthOffset }).with({ day: 1 });
|
|
3138
|
+
const days = monthDate.daysInMonth;
|
|
3139
|
+
const firstDayOffset = monthDate.dayOfWeek % 7;
|
|
3140
|
+
return {
|
|
3141
|
+
name: monthDate.toLocaleString("en-US", { month: "long" }),
|
|
3142
|
+
year: monthDate.year,
|
|
3143
|
+
days,
|
|
3144
|
+
firstDayOffset,
|
|
3145
|
+
date: monthDate
|
|
3146
|
+
};
|
|
3147
|
+
}
|
|
3148
|
+
function getMonthDataWith(monthOffset) {
|
|
3149
|
+
const monthDate = baseMonth.with({ month: monthOffset }).with({ day: 1 });
|
|
3150
|
+
const days = monthDate.daysInMonth;
|
|
3151
|
+
const firstDayOffset = monthDate.dayOfWeek % 7;
|
|
3152
|
+
return {
|
|
3153
|
+
name: monthDate.toLocaleString("en-US", { month: "long" }),
|
|
3154
|
+
year: monthDate.year,
|
|
3155
|
+
days,
|
|
3156
|
+
firstDayOffset,
|
|
3157
|
+
date: monthDate
|
|
3158
|
+
};
|
|
3159
|
+
}
|
|
3160
|
+
function handleDayClick(date) {
|
|
3161
|
+
if (isDateAvailable && !isDateAvailable(date)) return;
|
|
3162
|
+
if (mode === "single" && disableRange) {
|
|
3163
|
+
if (onChange) {
|
|
3164
|
+
onChange(date.toString(), date.toString());
|
|
3165
|
+
}
|
|
3166
|
+
return;
|
|
3167
|
+
}
|
|
3168
|
+
if (selecting === "from") {
|
|
3169
|
+
setPendingFrom(date);
|
|
3170
|
+
setSelecting("to");
|
|
3171
|
+
setHoveredDate(void 0);
|
|
3172
|
+
} else if (pendingFrom) {
|
|
3173
|
+
if (onChange) {
|
|
3174
|
+
const [start, end] = import_polyfill.Temporal.PlainDate.compare(date, pendingFrom) < 0 ? [date, pendingFrom] : [pendingFrom, date];
|
|
3175
|
+
onChange(start.toString(), end.toString());
|
|
3176
|
+
}
|
|
3177
|
+
setPendingFrom(void 0);
|
|
3178
|
+
setSelecting("from");
|
|
3179
|
+
setHoveredDate(void 0);
|
|
3180
|
+
}
|
|
3181
|
+
}
|
|
3182
|
+
function isInRange(date) {
|
|
3183
|
+
if (mode === "single" && disableRange) {
|
|
3184
|
+
return false;
|
|
3185
|
+
}
|
|
3186
|
+
if (pendingFrom && selecting === "to" && hoveredDate) {
|
|
3187
|
+
const [start, end] = import_polyfill.Temporal.PlainDate.compare(hoveredDate, pendingFrom) < 0 ? [hoveredDate, pendingFrom] : [pendingFrom, hoveredDate];
|
|
3188
|
+
return import_polyfill.Temporal.PlainDate.compare(date, start) >= 0 && import_polyfill.Temporal.PlainDate.compare(date, end) <= 0;
|
|
3189
|
+
}
|
|
3190
|
+
if (!pendingFrom && fromDate && toDate) {
|
|
3191
|
+
return import_polyfill.Temporal.PlainDate.compare(date, fromDate) >= 0 && import_polyfill.Temporal.PlainDate.compare(date, toDate) <= 0;
|
|
3192
|
+
}
|
|
3193
|
+
return false;
|
|
3194
|
+
}
|
|
3195
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3196
|
+
"div",
|
|
3197
|
+
{
|
|
3198
|
+
id,
|
|
3199
|
+
"data-testid": testid,
|
|
3200
|
+
className: (0, import_clsx14.default)(
|
|
3201
|
+
"relative bg-background-grouped-primary-normal rounded-base w-fit",
|
|
3202
|
+
layoutPaddding,
|
|
3203
|
+
layoutGap,
|
|
3204
|
+
cardStyle && "shadow-4",
|
|
3205
|
+
// baseTransition,
|
|
3206
|
+
"overflow-hidden"
|
|
3207
|
+
),
|
|
3208
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3209
|
+
"div",
|
|
3210
|
+
{
|
|
3211
|
+
className: (0, import_clsx14.default)(
|
|
3212
|
+
"flex flex-row items-start justify-start bg-background-primary-normal overflow-clip",
|
|
3213
|
+
layoutGap
|
|
3214
|
+
),
|
|
3215
|
+
children: (mode === "double" ? [0, 1] : [0]).map((offset, idx) => {
|
|
3216
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3217
|
+
CalendarPane,
|
|
3218
|
+
{
|
|
3219
|
+
getMonthData,
|
|
3220
|
+
getMonthDataWith,
|
|
3221
|
+
offset,
|
|
3222
|
+
idx,
|
|
3223
|
+
id,
|
|
3224
|
+
testid,
|
|
3225
|
+
baseMonth,
|
|
3226
|
+
setBaseMonth,
|
|
3227
|
+
mode,
|
|
3228
|
+
pendingFrom,
|
|
3229
|
+
weekDays,
|
|
3230
|
+
fromDate,
|
|
3231
|
+
toDate,
|
|
3232
|
+
isDateAvailable,
|
|
3233
|
+
disableRange,
|
|
3234
|
+
hoveredDate,
|
|
3235
|
+
isInRange,
|
|
3236
|
+
today,
|
|
3237
|
+
setHoveredDate,
|
|
3238
|
+
handleDayClick
|
|
3239
|
+
},
|
|
3240
|
+
idx
|
|
3241
|
+
);
|
|
3242
|
+
})
|
|
3243
|
+
}
|
|
3244
|
+
)
|
|
3245
|
+
}
|
|
3246
|
+
);
|
|
3247
|
+
}
|
|
3248
|
+
function CalendarPane({
|
|
3249
|
+
getMonthData,
|
|
3250
|
+
getMonthDataWith,
|
|
3251
|
+
offset,
|
|
3252
|
+
idx,
|
|
3253
|
+
id,
|
|
3254
|
+
testid,
|
|
3255
|
+
baseMonth,
|
|
3256
|
+
setBaseMonth,
|
|
3257
|
+
mode,
|
|
3258
|
+
pendingFrom,
|
|
3259
|
+
weekDays,
|
|
3260
|
+
fromDate,
|
|
3261
|
+
toDate,
|
|
3262
|
+
isDateAvailable,
|
|
3263
|
+
disableRange,
|
|
3264
|
+
hoveredDate,
|
|
3265
|
+
isInRange,
|
|
3266
|
+
today,
|
|
3267
|
+
setHoveredDate,
|
|
3268
|
+
handleDayClick
|
|
3269
|
+
}) {
|
|
3270
|
+
const months = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
|
|
3271
|
+
const years = Array.from({ length: 100 }).map(
|
|
3272
|
+
(_, i) => baseMonth.year - 50 + i
|
|
3273
|
+
);
|
|
3274
|
+
const [monthMenuOpen, setMonthMenuOpen] = (0, import_react14.useState)(false);
|
|
3275
|
+
const [yearMenuOpen, setYearMenuOpen] = (0, import_react14.useState)(false);
|
|
3276
|
+
const monthMenuRef = (0, import_react14.useRef)(null);
|
|
3277
|
+
const yearMenuRef = (0, import_react14.useRef)(null);
|
|
3278
|
+
const month = getMonthData(offset);
|
|
3279
|
+
const totalCells = 42;
|
|
3280
|
+
const emptyCells = month.firstDayOffset;
|
|
3281
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(import_react14.default.Fragment, { children: [
|
|
3282
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
3283
|
+
"div",
|
|
3284
|
+
{
|
|
3285
|
+
className: (0, import_clsx14.default)("flex flex-col"),
|
|
3286
|
+
children: [
|
|
3287
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
3288
|
+
"div",
|
|
3289
|
+
{
|
|
3290
|
+
className: (0, import_clsx14.default)(
|
|
3291
|
+
"flex flex-row items-center justify-between",
|
|
3292
|
+
typography.label,
|
|
3293
|
+
"text-text-action-primary-normal"
|
|
3294
|
+
),
|
|
3295
|
+
children: [
|
|
3296
|
+
idx === 0 ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3297
|
+
"button",
|
|
3298
|
+
{
|
|
3299
|
+
id: id ? `${id}-prev-month-button` : void 0,
|
|
3300
|
+
"data-testid": testid ? `${testid}-prev-month-button` : void 0,
|
|
3301
|
+
type: "button",
|
|
3302
|
+
className: (0, import_clsx14.default)(
|
|
3303
|
+
"flex items-center justify-center rounded-base hover:bg-action-100 active:bg-action-300 text-icon-action-primary-normal",
|
|
3304
|
+
componentPadding
|
|
3305
|
+
),
|
|
3306
|
+
"aria-label": "Previous month",
|
|
3307
|
+
onClick: () => setBaseMonth(baseMonth.subtract({ months: 1 })),
|
|
3308
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Icon, { name: "chevron_left", size: 24 })
|
|
3309
|
+
}
|
|
3310
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: (0, import_clsx14.default)(componentPadding, "mr-1") }),
|
|
3311
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "flex gap-desktop-compact-component-padding", children: [
|
|
3312
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3313
|
+
"button",
|
|
3314
|
+
{
|
|
3315
|
+
ref: (el) => {
|
|
3316
|
+
monthMenuRef.current = el;
|
|
3317
|
+
},
|
|
3318
|
+
type: "button",
|
|
3319
|
+
onClick: () => {
|
|
3320
|
+
setMonthMenuOpen(true);
|
|
3321
|
+
setYearMenuOpen(false);
|
|
3322
|
+
},
|
|
3323
|
+
className: "font-semibold text-text-action-primary-normal text-[14px] py-[2px] truncate",
|
|
3324
|
+
children: month.name
|
|
3325
|
+
}
|
|
3326
|
+
),
|
|
3327
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3328
|
+
Menu,
|
|
3329
|
+
{
|
|
3330
|
+
show: monthMenuOpen,
|
|
3331
|
+
positionTo: monthMenuRef,
|
|
3332
|
+
setShow: () => setMonthMenuOpen(false),
|
|
3333
|
+
children: months.map((x) => [x, getMonthDataWith(x + 1)]).map(([x, m]) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3334
|
+
MenuOption,
|
|
3335
|
+
{
|
|
3336
|
+
selected: baseMonth.month === x + 1,
|
|
3337
|
+
onClick: () => {
|
|
3338
|
+
setBaseMonth(baseMonth.with({ month: x + 1 }));
|
|
3339
|
+
setMonthMenuOpen(false);
|
|
3340
|
+
},
|
|
3341
|
+
children: m.name
|
|
3342
|
+
},
|
|
3343
|
+
m.name
|
|
3344
|
+
))
|
|
3345
|
+
}
|
|
3346
|
+
),
|
|
3347
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3348
|
+
"button",
|
|
3349
|
+
{
|
|
3350
|
+
ref: (el) => {
|
|
3351
|
+
yearMenuRef.current = el;
|
|
3352
|
+
},
|
|
3353
|
+
type: "button",
|
|
3354
|
+
onClick: () => {
|
|
3355
|
+
setYearMenuOpen(true);
|
|
3356
|
+
setMonthMenuOpen(false);
|
|
3357
|
+
},
|
|
3358
|
+
className: "font-semibold text-text-action-primary-normal text-[14px] py-[2px] truncate",
|
|
3359
|
+
children: month.year
|
|
3360
|
+
}
|
|
3361
|
+
),
|
|
3362
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3363
|
+
Menu,
|
|
3364
|
+
{
|
|
3365
|
+
show: yearMenuOpen,
|
|
3366
|
+
positionTo: yearMenuRef,
|
|
3367
|
+
setShow: () => setYearMenuOpen(false),
|
|
3368
|
+
children: years.map((y) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3369
|
+
MenuOption,
|
|
3370
|
+
{
|
|
3371
|
+
selected: baseMonth.year === y,
|
|
3372
|
+
onClick: () => {
|
|
3373
|
+
setBaseMonth(baseMonth.with({ year: y }));
|
|
3374
|
+
setYearMenuOpen(false);
|
|
3375
|
+
},
|
|
3376
|
+
children: y
|
|
3377
|
+
},
|
|
3378
|
+
y
|
|
3379
|
+
))
|
|
3380
|
+
}
|
|
3381
|
+
)
|
|
3382
|
+
] }),
|
|
3383
|
+
(mode === "double" ? idx === 1 : true) ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3384
|
+
"button",
|
|
3385
|
+
{
|
|
3386
|
+
id: id ? `${id}-next-month-button` : void 0,
|
|
3387
|
+
"data-testid": testid ? `${testid}-next-month-button` : void 0,
|
|
3388
|
+
type: "button",
|
|
3389
|
+
className: (0, import_clsx14.default)(
|
|
3390
|
+
"flex items-center justify-center rounded-base hover:bg-action-100 active:bg-action-300 text-icon-action-primary-normal",
|
|
3391
|
+
componentPadding
|
|
3392
|
+
),
|
|
3393
|
+
"aria-label": "Next month",
|
|
3394
|
+
onClick: () => setBaseMonth(baseMonth.add({ months: 1 })),
|
|
3395
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Icon, { name: "chevron_right", size: 24 })
|
|
3396
|
+
}
|
|
3397
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: (0, import_clsx14.default)(componentPadding, "ml-1") })
|
|
3398
|
+
]
|
|
3399
|
+
}
|
|
3400
|
+
),
|
|
3401
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: (0, import_clsx14.default)("grid grid-cols-7"), children: weekDays.map((d) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3402
|
+
"span",
|
|
3403
|
+
{
|
|
3404
|
+
className: (0, import_clsx14.default)(
|
|
3405
|
+
typography.caption,
|
|
3406
|
+
"text-text-secondary-normal text-center",
|
|
3407
|
+
"w-10"
|
|
3408
|
+
),
|
|
3409
|
+
children: d
|
|
3410
|
+
},
|
|
3411
|
+
d
|
|
3412
|
+
)) }),
|
|
3413
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: (0, import_clsx14.default)("grid grid-cols-7"), children: Array.from({ length: totalCells }).map((_, i) => {
|
|
3414
|
+
const day = i - emptyCells + 1;
|
|
3415
|
+
const date = month.date.with({ day: 1 }).add({
|
|
3416
|
+
days: i - emptyCells
|
|
3417
|
+
});
|
|
3418
|
+
const isInMonth = day > 0 && day <= month.days;
|
|
3419
|
+
const isToday = isInMonth && date.equals(today);
|
|
3420
|
+
const isSelected = isInMonth && (!pendingFrom && fromDate && date.equals(fromDate) || !pendingFrom && toDate && date.equals(toDate) || pendingFrom && date.equals(pendingFrom));
|
|
3421
|
+
const inRange = isInMonth && isInRange(date);
|
|
3422
|
+
const isDisabled = !isInMonth || (isDateAvailable ? !isDateAvailable(date) : false);
|
|
3423
|
+
const hoverDateIsBeforePendingFrom = hoveredDate && pendingFrom && import_polyfill.Temporal.PlainDate.compare(hoveredDate, pendingFrom) < 0;
|
|
3424
|
+
const hoverDateIsAfterPendingFrom = hoveredDate && pendingFrom && import_polyfill.Temporal.PlainDate.compare(hoveredDate, pendingFrom) >= 0;
|
|
3425
|
+
const isRangeStart = mode === "single" && disableRange ? false : !pendingFrom && isInMonth && fromDate && date.equals(fromDate) || hoverDateIsAfterPendingFrom && date.equals(pendingFrom);
|
|
3426
|
+
const isRangeEnd = mode === "single" && disableRange ? false : !pendingFrom && isInMonth && toDate && date.equals(toDate) || hoverDateIsBeforePendingFrom && date.equals(pendingFrom);
|
|
3427
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3428
|
+
DateCell,
|
|
3429
|
+
{
|
|
3430
|
+
id: id ? `${id}-date-${date.toString()}` : void 0,
|
|
3431
|
+
testid: testid ? `${testid}-date-${date.toString()}` : void 0,
|
|
3432
|
+
date,
|
|
3433
|
+
isInMonth: !!isInMonth,
|
|
3434
|
+
isToday: !!isToday,
|
|
3435
|
+
isSelected: !!isSelected,
|
|
3436
|
+
inRange: !!inRange,
|
|
3437
|
+
isDisabled: !!isDisabled,
|
|
3438
|
+
onClick: () => handleDayClick(date),
|
|
3439
|
+
onMouseEnter: () => setHoveredDate(date),
|
|
3440
|
+
onMouseLeave: () => setHoveredDate(void 0),
|
|
3441
|
+
isRangeStart: !!isRangeStart,
|
|
3442
|
+
isRangeEnd: !!isRangeEnd,
|
|
3443
|
+
isRangeDisabled: mode === "single" && disableRange,
|
|
3444
|
+
cellPadding: componentPadding
|
|
3445
|
+
},
|
|
3446
|
+
i
|
|
3447
|
+
);
|
|
3448
|
+
}) })
|
|
3449
|
+
]
|
|
3450
|
+
}
|
|
3451
|
+
),
|
|
3452
|
+
mode === "double" && idx === 0 && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3453
|
+
"div",
|
|
3454
|
+
{
|
|
3455
|
+
className: (0, import_clsx14.default)(
|
|
3456
|
+
"self-stretch bg-border-primary-normal rounded-base",
|
|
3457
|
+
// 1px width, full height, matches Figma divider
|
|
3458
|
+
"w-px"
|
|
3459
|
+
)
|
|
3460
|
+
}
|
|
3461
|
+
)
|
|
3462
|
+
] }, month.name + month.year);
|
|
3463
|
+
}
|
|
2934
3464
|
|
|
2935
|
-
// src/components/
|
|
2936
|
-
var import_clsx15 = __toESM(require("clsx"), 1);
|
|
3465
|
+
// src/components/DateInput.tsx
|
|
2937
3466
|
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
3467
|
+
var DateInput = (_a) => {
|
|
3468
|
+
var _b = _a, {
|
|
3469
|
+
id,
|
|
3470
|
+
testid,
|
|
3471
|
+
value,
|
|
3472
|
+
onChange,
|
|
3473
|
+
placeholder = "MM/DD/YYYY",
|
|
3474
|
+
disabled,
|
|
3475
|
+
readOnly = false,
|
|
3476
|
+
label
|
|
3477
|
+
} = _b, props = __objRest(_b, [
|
|
3478
|
+
"id",
|
|
3479
|
+
"testid",
|
|
3480
|
+
"value",
|
|
3481
|
+
"onChange",
|
|
3482
|
+
"placeholder",
|
|
3483
|
+
"disabled",
|
|
3484
|
+
"readOnly",
|
|
3485
|
+
"label"
|
|
3486
|
+
]);
|
|
3487
|
+
const [visible, setVisible] = (0, import_react15.useState)(false);
|
|
3488
|
+
const [inputValue, setInputValue] = (0, import_react15.useState)("");
|
|
3489
|
+
const [isTyping, setIsTyping] = (0, import_react15.useState)(false);
|
|
3490
|
+
const popoverRef = (0, import_react15.useRef)(null);
|
|
3491
|
+
const triggerRef = (0, import_react15.useRef)(null);
|
|
3492
|
+
const rootRef = (0, import_react15.useRef)(null);
|
|
3493
|
+
const [calendarPosition, setCalendarPosition] = (0, import_react15.useState)({
|
|
3494
|
+
top: 0,
|
|
3495
|
+
left: 0,
|
|
3496
|
+
width: 0
|
|
3497
|
+
});
|
|
3498
|
+
const [from, to] = [value, ""];
|
|
3499
|
+
(0, import_react15.useEffect)(() => {
|
|
3500
|
+
if (!isTyping) {
|
|
3501
|
+
setInputValue(formatDisplayValue(from));
|
|
3502
|
+
}
|
|
3503
|
+
}, [from, isTyping]);
|
|
3504
|
+
(0, import_react15.useLayoutEffect)(() => {
|
|
3505
|
+
if (visible) {
|
|
3506
|
+
updatePosition();
|
|
3507
|
+
}
|
|
3508
|
+
}, [visible]);
|
|
3509
|
+
const updatePosition = () => {
|
|
3510
|
+
if (rootRef.current) {
|
|
3511
|
+
const rect = rootRef.current.getBoundingClientRect();
|
|
3512
|
+
setCalendarPosition({
|
|
3513
|
+
top: rect.bottom + window.scrollY,
|
|
3514
|
+
left: rect.left + window.scrollX,
|
|
3515
|
+
width: rect.width
|
|
3516
|
+
});
|
|
3517
|
+
}
|
|
3518
|
+
};
|
|
3519
|
+
(0, import_react15.useEffect)(() => {
|
|
3520
|
+
updatePosition();
|
|
3521
|
+
const resizeObserver = new ResizeObserver(updatePosition);
|
|
3522
|
+
if (triggerRef.current) {
|
|
3523
|
+
resizeObserver.observe(triggerRef.current);
|
|
3524
|
+
}
|
|
3525
|
+
window.addEventListener("scroll", updatePosition);
|
|
3526
|
+
return () => {
|
|
3527
|
+
resizeObserver.disconnect();
|
|
3528
|
+
window.removeEventListener("scroll", updatePosition);
|
|
3529
|
+
};
|
|
3530
|
+
}, []);
|
|
3531
|
+
(0, import_react15.useEffect)(() => {
|
|
3532
|
+
const handleKeyDown2 = (event) => {
|
|
3533
|
+
var _a2;
|
|
3534
|
+
if (event.key === "Escape" && popoverRef.current) {
|
|
3535
|
+
setVisible(false);
|
|
3536
|
+
(_a2 = triggerRef.current) == null ? void 0 : _a2.blur();
|
|
3537
|
+
}
|
|
3538
|
+
};
|
|
3539
|
+
document.addEventListener("keydown", handleKeyDown2);
|
|
3540
|
+
return () => {
|
|
3541
|
+
document.removeEventListener("keydown", handleKeyDown2);
|
|
3542
|
+
};
|
|
3543
|
+
});
|
|
3544
|
+
(0, import_react15.useEffect)(() => {
|
|
3545
|
+
const handleClickOutside = (event) => {
|
|
3546
|
+
if (popoverRef.current && !popoverRef.current.contains(event.target) && triggerRef.current && !triggerRef.current.contains(event.target)) {
|
|
3547
|
+
setVisible(false);
|
|
3548
|
+
}
|
|
3549
|
+
};
|
|
3550
|
+
document.addEventListener("mousedown", handleClickOutside);
|
|
3551
|
+
return () => {
|
|
3552
|
+
document.removeEventListener("mousedown", handleClickOutside);
|
|
3553
|
+
};
|
|
3554
|
+
}, []);
|
|
3555
|
+
function handleDateChange(fromValue) {
|
|
3556
|
+
onChange(fromValue);
|
|
3557
|
+
setVisible(false);
|
|
3558
|
+
setIsTyping(false);
|
|
3559
|
+
}
|
|
3560
|
+
const handleFocus = () => {
|
|
3561
|
+
if (readOnly) return;
|
|
3562
|
+
setVisible(true);
|
|
3563
|
+
};
|
|
3564
|
+
const handleClick = () => {
|
|
3565
|
+
handleFocus();
|
|
3566
|
+
};
|
|
3567
|
+
const handleInputChange = (event) => {
|
|
3568
|
+
if (readOnly) return;
|
|
3569
|
+
const rawValue = event.target.value;
|
|
3570
|
+
const cursorPosition = event.target.selectionStart || 0;
|
|
3571
|
+
setIsTyping(true);
|
|
3572
|
+
const formattedValue = formatInputValue(rawValue);
|
|
3573
|
+
setInputValue(formattedValue);
|
|
3574
|
+
requestAnimationFrame(() => {
|
|
3575
|
+
if (triggerRef.current) {
|
|
3576
|
+
const newPosition = calculateCursorPosition(
|
|
3577
|
+
rawValue,
|
|
3578
|
+
formattedValue,
|
|
3579
|
+
cursorPosition
|
|
3580
|
+
);
|
|
3581
|
+
triggerRef.current.setSelectionRange(newPosition, newPosition);
|
|
3582
|
+
}
|
|
3583
|
+
});
|
|
3584
|
+
const parsedDate = parseInputDate(formattedValue);
|
|
3585
|
+
if (parsedDate && isValidDate(parsedDate)) {
|
|
3586
|
+
onChange(parsedDate);
|
|
3587
|
+
}
|
|
3588
|
+
};
|
|
3589
|
+
const handleBlur = () => {
|
|
3590
|
+
setIsTyping(false);
|
|
3591
|
+
const parsedDate = parseInputDate(inputValue);
|
|
3592
|
+
if (!parsedDate || !isValidDate(parsedDate)) {
|
|
3593
|
+
setInputValue(formatDisplayValue(from));
|
|
3594
|
+
}
|
|
3595
|
+
};
|
|
3596
|
+
const handleKeyDown = (event) => {
|
|
3597
|
+
if (event.key === "Backspace") {
|
|
3598
|
+
const input = event.target;
|
|
3599
|
+
const cursorPosition = input.selectionStart || 0;
|
|
3600
|
+
const value2 = input.value;
|
|
3601
|
+
if (cursorPosition > 0 && value2[cursorPosition - 1] === "/") {
|
|
3602
|
+
event.preventDefault();
|
|
3603
|
+
const newValue = value2.slice(0, cursorPosition - 2) + value2.slice(cursorPosition);
|
|
3604
|
+
const formattedValue = formatInputValue(newValue);
|
|
3605
|
+
setInputValue(formattedValue);
|
|
3606
|
+
requestAnimationFrame(() => {
|
|
3607
|
+
if (triggerRef.current) {
|
|
3608
|
+
const newPosition = Math.max(0, cursorPosition - 2);
|
|
3609
|
+
triggerRef.current.setSelectionRange(newPosition, newPosition);
|
|
3610
|
+
}
|
|
3611
|
+
});
|
|
3612
|
+
setIsTyping(true);
|
|
3613
|
+
return;
|
|
3614
|
+
}
|
|
3615
|
+
}
|
|
3616
|
+
if (event.key === "Enter") {
|
|
3617
|
+
const parsedDate = parseInputDate(inputValue);
|
|
3618
|
+
if (parsedDate && isValidDate(parsedDate)) {
|
|
3619
|
+
onChange(parsedDate);
|
|
3620
|
+
setVisible(false);
|
|
3621
|
+
setIsTyping(false);
|
|
3622
|
+
}
|
|
3623
|
+
}
|
|
3624
|
+
};
|
|
3625
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "relative", children: [
|
|
3626
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
3627
|
+
InputBase,
|
|
3628
|
+
__spreadProps(__spreadValues({
|
|
3629
|
+
id,
|
|
3630
|
+
testid,
|
|
3631
|
+
ref: (el) => {
|
|
3632
|
+
triggerRef.current = el;
|
|
3633
|
+
}
|
|
3634
|
+
}, props), {
|
|
3635
|
+
wrapperRef: rootRef,
|
|
3636
|
+
value: inputValue,
|
|
3637
|
+
placeholder,
|
|
3638
|
+
disabled,
|
|
3639
|
+
readOnly,
|
|
3640
|
+
after: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Icon, { name: "calendar_month" }),
|
|
3641
|
+
onFocus: handleFocus,
|
|
3642
|
+
onClick: handleClick,
|
|
3643
|
+
onChange: handleInputChange,
|
|
3644
|
+
onBlur: handleBlur,
|
|
3645
|
+
onKeyDown: handleKeyDown,
|
|
3646
|
+
label,
|
|
3647
|
+
secondaryIconColor: true
|
|
3648
|
+
})
|
|
3649
|
+
),
|
|
3650
|
+
visible && !readOnly && (0, import_react_dom3.createPortal)(
|
|
3651
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
3652
|
+
"div",
|
|
3653
|
+
{
|
|
3654
|
+
ref: (el) => {
|
|
3655
|
+
popoverRef.current = el;
|
|
3656
|
+
},
|
|
3657
|
+
className: "absolute z-40 bg-white",
|
|
3658
|
+
style: {
|
|
3659
|
+
top: `${calendarPosition.top + 4}px`,
|
|
3660
|
+
left: `${calendarPosition.left}px`,
|
|
3661
|
+
minWidth: `${calendarPosition.width}px`
|
|
3662
|
+
},
|
|
3663
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
3664
|
+
CalendarRange,
|
|
3665
|
+
{
|
|
3666
|
+
id: id ? `${id}-calendar` : void 0,
|
|
3667
|
+
testid: testid ? `${testid}-calendar` : void 0,
|
|
3668
|
+
from,
|
|
3669
|
+
to: to || from,
|
|
3670
|
+
onChange: handleDateChange,
|
|
3671
|
+
cardStyle: true,
|
|
3672
|
+
mode: "single",
|
|
3673
|
+
disableRange: true
|
|
3674
|
+
}
|
|
3675
|
+
)
|
|
3676
|
+
}
|
|
3677
|
+
),
|
|
3678
|
+
findDocumentRoot(popoverRef.current)
|
|
3679
|
+
)
|
|
3680
|
+
] });
|
|
3681
|
+
};
|
|
3682
|
+
DateInput.displayName = "DateInput";
|
|
3683
|
+
function formatDisplayValue(from) {
|
|
3684
|
+
if (!from) {
|
|
3685
|
+
return "";
|
|
3686
|
+
}
|
|
3687
|
+
if (!isValidDate(from)) {
|
|
3688
|
+
return "";
|
|
3689
|
+
}
|
|
3690
|
+
return formatDate(from);
|
|
3691
|
+
}
|
|
2938
3692
|
|
|
2939
3693
|
// src/components/Accordion.tsx
|
|
3694
|
+
var import_clsx17 = __toESM(require("clsx"), 1);
|
|
3695
|
+
|
|
3696
|
+
// src/components/Card.tsx
|
|
3697
|
+
var import_clsx15 = __toESM(require("clsx"), 1);
|
|
2940
3698
|
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
2941
3699
|
|
|
2942
|
-
// src/components/
|
|
2943
|
-
var
|
|
3700
|
+
// src/components/Stack.tsx
|
|
3701
|
+
var import_clsx16 = __toESM(require("clsx"), 1);
|
|
2944
3702
|
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
3703
|
+
|
|
3704
|
+
// src/components/Accordion.tsx
|
|
3705
|
+
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
3706
|
+
|
|
3707
|
+
// src/components/Heading.tsx
|
|
3708
|
+
var import_clsx18 = __toESM(require("clsx"), 1);
|
|
3709
|
+
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
2945
3710
|
var Heading = (_a) => {
|
|
2946
3711
|
var _b = _a, {
|
|
2947
3712
|
className,
|
|
@@ -2964,12 +3729,12 @@ var Heading = (_a) => {
|
|
|
2964
3729
|
]);
|
|
2965
3730
|
const defaultElement = variant === "heading1" ? "h1" : variant === "heading2" ? "h2" : "h3";
|
|
2966
3731
|
const Element = as != null ? as : defaultElement;
|
|
2967
|
-
return /* @__PURE__ */ (0,
|
|
3732
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
2968
3733
|
Element,
|
|
2969
3734
|
__spreadProps(__spreadValues({
|
|
2970
3735
|
id,
|
|
2971
3736
|
"data-testid": testid,
|
|
2972
|
-
className: (0,
|
|
3737
|
+
className: (0, import_clsx18.default)(
|
|
2973
3738
|
typography[variant],
|
|
2974
3739
|
className,
|
|
2975
3740
|
align === "left" && "text-left",
|
|
@@ -2985,43 +3750,43 @@ var Heading = (_a) => {
|
|
|
2985
3750
|
);
|
|
2986
3751
|
};
|
|
2987
3752
|
Heading.displayName = "Heading";
|
|
2988
|
-
var Heading1 = (props) => /* @__PURE__ */ (0,
|
|
2989
|
-
var Heading2 = (props) => /* @__PURE__ */ (0,
|
|
2990
|
-
var Heading3 = (props) => /* @__PURE__ */ (0,
|
|
3753
|
+
var Heading1 = (props) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Heading, __spreadProps(__spreadValues({}, props), { variant: "heading1" }));
|
|
3754
|
+
var Heading2 = (props) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Heading, __spreadProps(__spreadValues({}, props), { variant: "heading2" }));
|
|
3755
|
+
var Heading3 = (props) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Heading, __spreadProps(__spreadValues({}, props), { variant: "heading3" }));
|
|
2991
3756
|
Heading1.displayName = "Heading1";
|
|
2992
3757
|
Heading2.displayName = "Heading2";
|
|
2993
3758
|
Heading3.displayName = "Heading3";
|
|
2994
3759
|
|
|
2995
3760
|
// src/components/Theme.tsx
|
|
2996
|
-
var
|
|
3761
|
+
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
2997
3762
|
|
|
2998
3763
|
// src/components/MobileDataGrid/ColumnSelector/index.tsx
|
|
2999
|
-
var
|
|
3764
|
+
var import_react18 = require("react");
|
|
3000
3765
|
|
|
3001
3766
|
// src/components/MobileDataGrid/GridContextProvider/useGridContext.ts
|
|
3002
|
-
var
|
|
3767
|
+
var import_react17 = require("react");
|
|
3003
3768
|
|
|
3004
3769
|
// src/components/MobileDataGrid/GridContextProvider/GridContext.tsx
|
|
3005
|
-
var
|
|
3006
|
-
var GridContext = (0,
|
|
3770
|
+
var import_react16 = require("react");
|
|
3771
|
+
var GridContext = (0, import_react16.createContext)(null);
|
|
3007
3772
|
|
|
3008
3773
|
// src/components/MobileDataGrid/ColumnSelector/index.tsx
|
|
3009
|
-
var
|
|
3774
|
+
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
3010
3775
|
|
|
3011
3776
|
// src/components/MobileDataGrid/MobileDataGridHeader.tsx
|
|
3012
|
-
var
|
|
3777
|
+
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
3013
3778
|
|
|
3014
3779
|
// src/components/MobileDataGrid/GridContextProvider/index.tsx
|
|
3015
|
-
var
|
|
3016
|
-
var
|
|
3780
|
+
var import_react19 = require("react");
|
|
3781
|
+
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
3017
3782
|
|
|
3018
3783
|
// src/components/Modal.tsx
|
|
3019
|
-
var
|
|
3020
|
-
var
|
|
3784
|
+
var import_clsx23 = __toESM(require("clsx"), 1);
|
|
3785
|
+
var import_react21 = require("react");
|
|
3021
3786
|
|
|
3022
3787
|
// src/components/ModalHeader.tsx
|
|
3023
|
-
var
|
|
3024
|
-
var
|
|
3788
|
+
var import_clsx19 = __toESM(require("clsx"), 1);
|
|
3789
|
+
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
3025
3790
|
var ModalHeader = ({
|
|
3026
3791
|
title,
|
|
3027
3792
|
hideCloseIcon,
|
|
@@ -3032,12 +3797,12 @@ var ModalHeader = ({
|
|
|
3032
3797
|
testid,
|
|
3033
3798
|
headerClassname
|
|
3034
3799
|
}) => {
|
|
3035
|
-
return /* @__PURE__ */ (0,
|
|
3800
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
|
|
3036
3801
|
"div",
|
|
3037
3802
|
{
|
|
3038
3803
|
id,
|
|
3039
3804
|
"data-testid": testid,
|
|
3040
|
-
className: (0,
|
|
3805
|
+
className: (0, import_clsx19.default)(
|
|
3041
3806
|
"flex justify-between items-center",
|
|
3042
3807
|
headerIconAlign === "center" && "justify-center",
|
|
3043
3808
|
headerIconAlign === "right" && "justify-end",
|
|
@@ -3047,9 +3812,9 @@ var ModalHeader = ({
|
|
|
3047
3812
|
headerClassname
|
|
3048
3813
|
),
|
|
3049
3814
|
children: [
|
|
3050
|
-
/* @__PURE__ */ (0,
|
|
3815
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: (0, import_clsx19.default)("flex items-center flex-1", layoutGroupGap), children: [
|
|
3051
3816
|
headerIcon,
|
|
3052
|
-
title && /* @__PURE__ */ (0,
|
|
3817
|
+
title && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
3053
3818
|
Heading2,
|
|
3054
3819
|
{
|
|
3055
3820
|
id: id ? `${id}-title` : void 0,
|
|
@@ -3059,7 +3824,7 @@ var ModalHeader = ({
|
|
|
3059
3824
|
}
|
|
3060
3825
|
)
|
|
3061
3826
|
] }),
|
|
3062
|
-
!hideCloseIcon && /* @__PURE__ */ (0,
|
|
3827
|
+
!hideCloseIcon && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
3063
3828
|
Button,
|
|
3064
3829
|
{
|
|
3065
3830
|
id: id ? `${id}-close-button` : void 0,
|
|
@@ -3067,7 +3832,7 @@ var ModalHeader = ({
|
|
|
3067
3832
|
iconOnly: true,
|
|
3068
3833
|
variant: "tertiary",
|
|
3069
3834
|
onClick: onClose,
|
|
3070
|
-
leftIcon: /* @__PURE__ */ (0,
|
|
3835
|
+
leftIcon: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: "text-brand-text-action-primary-normal desktop:text-icon-primary-normal contents", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Icon, { name: "close", size: 24 }) })
|
|
3071
3836
|
}
|
|
3072
3837
|
)
|
|
3073
3838
|
]
|
|
@@ -3077,20 +3842,20 @@ var ModalHeader = ({
|
|
|
3077
3842
|
ModalHeader.displayName = "ModalHeader";
|
|
3078
3843
|
|
|
3079
3844
|
// src/components/ModalContent.tsx
|
|
3080
|
-
var
|
|
3081
|
-
var
|
|
3845
|
+
var import_clsx20 = __toESM(require("clsx"), 1);
|
|
3846
|
+
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
3082
3847
|
function ModalContent({
|
|
3083
3848
|
fixedHeightScrolling,
|
|
3084
3849
|
children,
|
|
3085
3850
|
id,
|
|
3086
3851
|
testid
|
|
3087
3852
|
}) {
|
|
3088
|
-
return /* @__PURE__ */ (0,
|
|
3853
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
3089
3854
|
"div",
|
|
3090
3855
|
{
|
|
3091
3856
|
id,
|
|
3092
3857
|
"data-testid": testid,
|
|
3093
|
-
className: (0,
|
|
3858
|
+
className: (0, import_clsx20.default)(
|
|
3094
3859
|
"flex-grow desktop:flex-grow-0",
|
|
3095
3860
|
layoutPaddding,
|
|
3096
3861
|
fixedHeightScrolling && "overflow-auto"
|
|
@@ -3102,8 +3867,8 @@ function ModalContent({
|
|
|
3102
3867
|
ModalContent.displayName = "ModalContent";
|
|
3103
3868
|
|
|
3104
3869
|
// src/components/ModalButtons.tsx
|
|
3105
|
-
var
|
|
3106
|
-
var
|
|
3870
|
+
var import_clsx21 = __toESM(require("clsx"), 1);
|
|
3871
|
+
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
3107
3872
|
var ModalButtons = ({
|
|
3108
3873
|
onClose,
|
|
3109
3874
|
onContinue,
|
|
@@ -3111,36 +3876,36 @@ var ModalButtons = ({
|
|
|
3111
3876
|
id,
|
|
3112
3877
|
testid
|
|
3113
3878
|
}) => {
|
|
3114
|
-
return /* @__PURE__ */ (0,
|
|
3879
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
3115
3880
|
"div",
|
|
3116
3881
|
{
|
|
3117
3882
|
id,
|
|
3118
3883
|
"data-testid": testid,
|
|
3119
|
-
className: (0,
|
|
3884
|
+
className: (0, import_clsx21.default)(
|
|
3120
3885
|
"border-t border-neutral-300 flex justify-end",
|
|
3121
3886
|
layoutPaddding,
|
|
3122
3887
|
layoutGroupGap
|
|
3123
3888
|
),
|
|
3124
|
-
children: customActions != null ? customActions : /* @__PURE__ */ (0,
|
|
3125
|
-
/* @__PURE__ */ (0,
|
|
3889
|
+
children: customActions != null ? customActions : /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(import_jsx_runtime26.Fragment, { children: [
|
|
3890
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
3126
3891
|
Button,
|
|
3127
3892
|
{
|
|
3128
3893
|
id: id ? `${id}-close-button` : void 0,
|
|
3129
3894
|
testid: testid ? `${testid}-close-button` : void 0,
|
|
3130
3895
|
variant: "secondary",
|
|
3131
|
-
leftIcon: /* @__PURE__ */ (0,
|
|
3896
|
+
leftIcon: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Icon, { name: "close", size: 24 }),
|
|
3132
3897
|
onClick: onClose,
|
|
3133
3898
|
className: "max-sm:w-full",
|
|
3134
3899
|
children: "Close"
|
|
3135
3900
|
}
|
|
3136
3901
|
),
|
|
3137
|
-
/* @__PURE__ */ (0,
|
|
3902
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
3138
3903
|
Button,
|
|
3139
3904
|
{
|
|
3140
3905
|
id: id ? `${id}-continue-button` : void 0,
|
|
3141
3906
|
testid: testid ? `${testid}-continue-button` : void 0,
|
|
3142
3907
|
variant: "primary",
|
|
3143
|
-
leftIcon: /* @__PURE__ */ (0,
|
|
3908
|
+
leftIcon: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Icon, { name: "check", size: 24 }),
|
|
3144
3909
|
className: "max-sm:w-full",
|
|
3145
3910
|
onClick: onContinue,
|
|
3146
3911
|
children: "Continue"
|
|
@@ -3153,8 +3918,8 @@ var ModalButtons = ({
|
|
|
3153
3918
|
ModalButtons.displayName = "ModalButtons";
|
|
3154
3919
|
|
|
3155
3920
|
// src/components/ModalScrim.tsx
|
|
3156
|
-
var
|
|
3157
|
-
var
|
|
3921
|
+
var import_clsx22 = __toESM(require("clsx"), 1);
|
|
3922
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
3158
3923
|
var ModalScrim = ({
|
|
3159
3924
|
show = false,
|
|
3160
3925
|
size = "small",
|
|
@@ -3164,12 +3929,12 @@ var ModalScrim = ({
|
|
|
3164
3929
|
id,
|
|
3165
3930
|
testid
|
|
3166
3931
|
}) => {
|
|
3167
|
-
return /* @__PURE__ */ (0,
|
|
3932
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
3168
3933
|
"div",
|
|
3169
3934
|
{
|
|
3170
3935
|
id,
|
|
3171
3936
|
"data-testid": testid,
|
|
3172
|
-
className: (0,
|
|
3937
|
+
className: (0, import_clsx22.default)(
|
|
3173
3938
|
"overflow-y-auto h-screen transition-[visibility,opacity,background] ease-in-out duration-100 grid place-content-center group bg-neutral-600/50 fixed opacity-0",
|
|
3174
3939
|
!show && " pointer-events-none",
|
|
3175
3940
|
size === "small" && "p-4",
|
|
@@ -3185,14 +3950,14 @@ var ModalScrim = ({
|
|
|
3185
3950
|
ModalScrim.displayName = "ModalScrim";
|
|
3186
3951
|
|
|
3187
3952
|
// src/components/Modal.tsx
|
|
3188
|
-
var
|
|
3953
|
+
var import_react_dom4 = require("react-dom");
|
|
3189
3954
|
var import_react_use = require("react-use");
|
|
3190
3955
|
|
|
3191
3956
|
// src/components/useMounted.tsx
|
|
3192
|
-
var
|
|
3957
|
+
var import_react20 = require("react");
|
|
3193
3958
|
var useMounted = () => {
|
|
3194
|
-
const [isMounted, setIsMounted] = (0,
|
|
3195
|
-
(0,
|
|
3959
|
+
const [isMounted, setIsMounted] = (0, import_react20.useState)(false);
|
|
3960
|
+
(0, import_react20.useEffect)(() => {
|
|
3196
3961
|
setIsMounted(true);
|
|
3197
3962
|
return () => setIsMounted(false);
|
|
3198
3963
|
}, []);
|
|
@@ -3200,7 +3965,7 @@ var useMounted = () => {
|
|
|
3200
3965
|
};
|
|
3201
3966
|
|
|
3202
3967
|
// src/components/Modal.tsx
|
|
3203
|
-
var
|
|
3968
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
3204
3969
|
var fadeInScale = (element, duration = 300) => element.animate(
|
|
3205
3970
|
[
|
|
3206
3971
|
{ opacity: 0, transform: "scale(0.95)" },
|
|
@@ -3284,12 +4049,12 @@ var Modal = ({
|
|
|
3284
4049
|
}) => {
|
|
3285
4050
|
var _a;
|
|
3286
4051
|
const mounted = useMounted();
|
|
3287
|
-
const modalRef = (0,
|
|
3288
|
-
const bgRef = (0,
|
|
4052
|
+
const modalRef = (0, import_react21.useRef)(null);
|
|
4053
|
+
const bgRef = (0, import_react21.useRef)(null);
|
|
3289
4054
|
const wasOpen = (0, import_react_use.usePrevious)(open);
|
|
3290
4055
|
const isMobile = useMatchesMobile();
|
|
3291
4056
|
const computedFixedHeightScrolling = isMobile || fixedHeightScrolling;
|
|
3292
|
-
(0,
|
|
4057
|
+
(0, import_react21.useEffect)(() => {
|
|
3293
4058
|
if (!mounted) return;
|
|
3294
4059
|
if (!modalRef.current || !bgRef.current) {
|
|
3295
4060
|
console.error("Modal or background reference is not set.");
|
|
@@ -3309,7 +4074,7 @@ var Modal = ({
|
|
|
3309
4074
|
bgFadeIn(bgRef.current);
|
|
3310
4075
|
}
|
|
3311
4076
|
}, [mounted, onClose, open, wasOpen]);
|
|
3312
|
-
const handleKeyDown = (0,
|
|
4077
|
+
const handleKeyDown = (0, import_react21.useCallback)(
|
|
3313
4078
|
(e) => {
|
|
3314
4079
|
if (e.key === "Escape") {
|
|
3315
4080
|
if (onClose) {
|
|
@@ -3320,12 +4085,12 @@ var Modal = ({
|
|
|
3320
4085
|
},
|
|
3321
4086
|
[onClose]
|
|
3322
4087
|
);
|
|
3323
|
-
const handleClose = (0,
|
|
4088
|
+
const handleClose = (0, import_react21.useCallback)(() => {
|
|
3324
4089
|
if (onClose) {
|
|
3325
4090
|
onClose();
|
|
3326
4091
|
}
|
|
3327
4092
|
}, [onClose]);
|
|
3328
|
-
(0,
|
|
4093
|
+
(0, import_react21.useEffect)(() => {
|
|
3329
4094
|
if (open) {
|
|
3330
4095
|
document.addEventListener("keyup", handleKeyDown);
|
|
3331
4096
|
}
|
|
@@ -3333,7 +4098,7 @@ var Modal = ({
|
|
|
3333
4098
|
document.removeEventListener("keyup", handleKeyDown);
|
|
3334
4099
|
};
|
|
3335
4100
|
}, [open, handleKeyDown]);
|
|
3336
|
-
(0,
|
|
4101
|
+
(0, import_react21.useEffect)(() => {
|
|
3337
4102
|
if (!open) return;
|
|
3338
4103
|
const scrollY = window.scrollY;
|
|
3339
4104
|
const body = document.body;
|
|
@@ -3354,7 +4119,7 @@ var Modal = ({
|
|
|
3354
4119
|
};
|
|
3355
4120
|
}, [open]);
|
|
3356
4121
|
const { sizeClass } = (_a = sizes[size]) != null ? _a : sizes.small;
|
|
3357
|
-
const backgroundClickHandler = (0,
|
|
4122
|
+
const backgroundClickHandler = (0, import_react21.useCallback)(
|
|
3358
4123
|
(e) => {
|
|
3359
4124
|
const target = e.target;
|
|
3360
4125
|
const currentTarget = e.currentTarget;
|
|
@@ -3371,8 +4136,8 @@ var Modal = ({
|
|
|
3371
4136
|
if (!mounted) {
|
|
3372
4137
|
return null;
|
|
3373
4138
|
}
|
|
3374
|
-
return (0,
|
|
3375
|
-
/* @__PURE__ */ (0,
|
|
4139
|
+
return (0, import_react_dom4.createPortal)(
|
|
4140
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
3376
4141
|
ModalScrim,
|
|
3377
4142
|
{
|
|
3378
4143
|
id: id ? `${id}-scrim` : void 0,
|
|
@@ -3381,13 +4146,13 @@ var Modal = ({
|
|
|
3381
4146
|
ref: bgRef,
|
|
3382
4147
|
show: open,
|
|
3383
4148
|
onClick: backgroundClickHandler,
|
|
3384
|
-
children: /* @__PURE__ */ (0,
|
|
4149
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
|
|
3385
4150
|
"div",
|
|
3386
4151
|
{
|
|
3387
4152
|
id,
|
|
3388
4153
|
"data-testid": testid,
|
|
3389
4154
|
ref: modalRef,
|
|
3390
|
-
className: (0,
|
|
4155
|
+
className: (0, import_clsx23.default)(
|
|
3391
4156
|
"shadow-md rounded-sm flex flex-col overflow-hidden w-full opacity-0 h-fit",
|
|
3392
4157
|
computedFixedHeightScrolling && size !== "screen" && "desktop:max-h-[calc(100vh-32px)] desktop:h-auto",
|
|
3393
4158
|
className,
|
|
@@ -3396,7 +4161,7 @@ var Modal = ({
|
|
|
3396
4161
|
),
|
|
3397
4162
|
onClick: (e) => e.stopPropagation(),
|
|
3398
4163
|
children: [
|
|
3399
|
-
/* @__PURE__ */ (0,
|
|
4164
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
3400
4165
|
ModalHeader,
|
|
3401
4166
|
{
|
|
3402
4167
|
id: id ? `${id}-header` : void 0,
|
|
@@ -3409,7 +4174,7 @@ var Modal = ({
|
|
|
3409
4174
|
headerClassname
|
|
3410
4175
|
}
|
|
3411
4176
|
),
|
|
3412
|
-
children && (size !== "screen" || noWrapper) ? /* @__PURE__ */ (0,
|
|
4177
|
+
children && (size !== "screen" || noWrapper) ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
3413
4178
|
ModalContent,
|
|
3414
4179
|
{
|
|
3415
4180
|
id: id ? `${id}-content` : void 0,
|
|
@@ -3418,7 +4183,7 @@ var Modal = ({
|
|
|
3418
4183
|
children
|
|
3419
4184
|
}
|
|
3420
4185
|
) : children,
|
|
3421
|
-
showButtons ? customFooter ? customActions : /* @__PURE__ */ (0,
|
|
4186
|
+
showButtons ? customFooter ? customActions : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
3422
4187
|
ModalButtons,
|
|
3423
4188
|
{
|
|
3424
4189
|
id: id ? `${id}-buttons` : void 0,
|
|
@@ -3439,51 +4204,51 @@ var Modal = ({
|
|
|
3439
4204
|
Modal.displayName = "Modal";
|
|
3440
4205
|
|
|
3441
4206
|
// src/components/MobileDataGrid/MobileDataGridCard/MobileDataGridColumn.tsx
|
|
3442
|
-
var
|
|
4207
|
+
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
3443
4208
|
|
|
3444
4209
|
// src/components/MobileDataGrid/RowDetailModalProvider/ModalContent.tsx
|
|
3445
|
-
var
|
|
4210
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
3446
4211
|
|
|
3447
4212
|
// src/components/MobileDataGrid/RowDetailModalProvider/index.tsx
|
|
3448
|
-
var
|
|
4213
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
3449
4214
|
|
|
3450
4215
|
// src/components/MobileDataGrid/ColumnList.tsx
|
|
3451
|
-
var
|
|
4216
|
+
var import_clsx25 = __toESM(require("clsx"), 1);
|
|
3452
4217
|
|
|
3453
4218
|
// src/components/MobileDataGrid/MobileDataGridCard/index.tsx
|
|
3454
|
-
var
|
|
3455
|
-
var
|
|
4219
|
+
var import_clsx24 = __toESM(require("clsx"), 1);
|
|
4220
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
3456
4221
|
|
|
3457
4222
|
// src/components/MobileDataGrid/ColumnList.tsx
|
|
3458
|
-
var
|
|
4223
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
3459
4224
|
|
|
3460
4225
|
// src/components/MobileDataGrid/index.tsx
|
|
3461
|
-
var
|
|
4226
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
3462
4227
|
|
|
3463
4228
|
// src/components/ProductImagePreview/Thumbnail.tsx
|
|
3464
|
-
var
|
|
4229
|
+
var import_react23 = require("react");
|
|
3465
4230
|
|
|
3466
4231
|
// src/components/ImagePlaceholder.tsx
|
|
3467
|
-
var
|
|
3468
|
-
var
|
|
4232
|
+
var import_react22 = require("react");
|
|
4233
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
3469
4234
|
|
|
3470
4235
|
// src/components/ProductImagePreview/Thumbnail.tsx
|
|
3471
|
-
var
|
|
4236
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
3472
4237
|
|
|
3473
4238
|
// src/components/Grid.tsx
|
|
3474
|
-
var
|
|
3475
|
-
var
|
|
4239
|
+
var import_clsx26 = __toESM(require("clsx"), 1);
|
|
4240
|
+
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
3476
4241
|
|
|
3477
4242
|
// src/components/ProductImagePreview/ProductPrimaryImage.tsx
|
|
3478
|
-
var
|
|
3479
|
-
var
|
|
4243
|
+
var import_react24 = require("react");
|
|
4244
|
+
var import_jsx_runtime38 = require("react/jsx-runtime");
|
|
3480
4245
|
|
|
3481
4246
|
// src/components/ProductImagePreview/ZoomWindow.tsx
|
|
3482
|
-
var
|
|
4247
|
+
var import_react25 = require("react");
|
|
3483
4248
|
|
|
3484
4249
|
// src/components/Surface.tsx
|
|
3485
|
-
var
|
|
3486
|
-
var
|
|
4250
|
+
var import_clsx27 = __toESM(require("clsx"), 1);
|
|
4251
|
+
var import_jsx_runtime39 = require("react/jsx-runtime");
|
|
3487
4252
|
var Surface = (_a) => {
|
|
3488
4253
|
var _b = _a, {
|
|
3489
4254
|
children,
|
|
@@ -3496,11 +4261,11 @@ var Surface = (_a) => {
|
|
|
3496
4261
|
"elevation",
|
|
3497
4262
|
"id"
|
|
3498
4263
|
]);
|
|
3499
|
-
return /* @__PURE__ */ (0,
|
|
4264
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
3500
4265
|
"div",
|
|
3501
4266
|
__spreadProps(__spreadValues({
|
|
3502
4267
|
id,
|
|
3503
|
-
className: (0,
|
|
4268
|
+
className: (0, import_clsx27.default)(
|
|
3504
4269
|
"rounded-base",
|
|
3505
4270
|
{
|
|
3506
4271
|
"shadow-2": elevation === 2,
|
|
@@ -3517,43 +4282,43 @@ var Surface = (_a) => {
|
|
|
3517
4282
|
Surface.displayName = "Surface";
|
|
3518
4283
|
|
|
3519
4284
|
// src/components/ProductImagePreview/ZoomWindow.tsx
|
|
3520
|
-
var
|
|
4285
|
+
var import_jsx_runtime40 = require("react/jsx-runtime");
|
|
3521
4286
|
|
|
3522
4287
|
// src/components/ProductImagePreview/CarouselPagination.tsx
|
|
3523
|
-
var
|
|
3524
|
-
var
|
|
4288
|
+
var import_clsx28 = require("clsx");
|
|
4289
|
+
var import_jsx_runtime41 = require("react/jsx-runtime");
|
|
3525
4290
|
|
|
3526
4291
|
// src/components/ProductImagePreview/MobileImageCarousel.tsx
|
|
3527
|
-
var
|
|
3528
|
-
var
|
|
4292
|
+
var import_react26 = require("react");
|
|
4293
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
3529
4294
|
|
|
3530
4295
|
// src/components/ProductImagePreview/useProductImagePreview.ts
|
|
3531
|
-
var
|
|
4296
|
+
var import_react27 = require("react");
|
|
3532
4297
|
|
|
3533
4298
|
// src/components/ProductImagePreview/index.tsx
|
|
3534
|
-
var
|
|
4299
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
3535
4300
|
|
|
3536
4301
|
// src/components/CompactImagesPreview.tsx
|
|
3537
|
-
var
|
|
3538
|
-
var
|
|
3539
|
-
var
|
|
4302
|
+
var import_react28 = require("react");
|
|
4303
|
+
var import_clsx29 = __toESM(require("clsx"), 1);
|
|
4304
|
+
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
3540
4305
|
|
|
3541
4306
|
// src/components/SimpleTable.tsx
|
|
3542
|
-
var
|
|
3543
|
-
var
|
|
4307
|
+
var import_clsx30 = __toESM(require("clsx"), 1);
|
|
4308
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
3544
4309
|
|
|
3545
4310
|
// src/components/PDFViewer/index.tsx
|
|
3546
|
-
var
|
|
4311
|
+
var import_react31 = require("react");
|
|
3547
4312
|
|
|
3548
4313
|
// src/components/PDFViewer/PDFElement.tsx
|
|
3549
4314
|
var import_react_pdf2 = require("@mikecousins/react-pdf");
|
|
3550
|
-
var
|
|
4315
|
+
var import_react30 = require("react");
|
|
3551
4316
|
|
|
3552
4317
|
// src/components/Spinner.tsx
|
|
3553
|
-
var
|
|
4318
|
+
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
3554
4319
|
var Spinner = ({ size = "small", testid }) => {
|
|
3555
4320
|
const dimension = size === "large" ? 48 : 24;
|
|
3556
|
-
return /* @__PURE__ */ (0,
|
|
4321
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
|
|
3557
4322
|
"svg",
|
|
3558
4323
|
{
|
|
3559
4324
|
"data-testid": testid,
|
|
@@ -3565,14 +4330,14 @@ var Spinner = ({ size = "small", testid }) => {
|
|
|
3565
4330
|
className: "spinner",
|
|
3566
4331
|
"aria-label": "Loading",
|
|
3567
4332
|
children: [
|
|
3568
|
-
/* @__PURE__ */ (0,
|
|
3569
|
-
/* @__PURE__ */ (0,
|
|
3570
|
-
/* @__PURE__ */ (0,
|
|
3571
|
-
/* @__PURE__ */ (0,
|
|
3572
|
-
/* @__PURE__ */ (0,
|
|
3573
|
-
/* @__PURE__ */ (0,
|
|
3574
|
-
/* @__PURE__ */ (0,
|
|
3575
|
-
/* @__PURE__ */ (0,
|
|
4333
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("circle", { cx: "12", cy: "4", r: "2", opacity: "1" }),
|
|
4334
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("circle", { cx: "17.666", cy: "6.334", r: "2", opacity: "0.125" }),
|
|
4335
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("circle", { cx: "20", cy: "12", r: "2", opacity: "0.25" }),
|
|
4336
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("circle", { cx: "17.666", cy: "17.666", r: "2", opacity: "0.375" }),
|
|
4337
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("circle", { cx: "12", cy: "20", r: "2", opacity: "0.5" }),
|
|
4338
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("circle", { cx: "6.334", cy: "17.666", r: "2", opacity: "0.625" }),
|
|
4339
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("circle", { cx: "4", cy: "12", r: "2", opacity: "0.75" }),
|
|
4340
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("circle", { cx: "6.334", cy: "6.334", r: "2", opacity: "0.875" })
|
|
3576
4341
|
]
|
|
3577
4342
|
}
|
|
3578
4343
|
);
|
|
@@ -3581,31 +4346,31 @@ Spinner.displayName = "Spinner";
|
|
|
3581
4346
|
|
|
3582
4347
|
// src/components/PDFViewer/PDFPage.tsx
|
|
3583
4348
|
var import_react_pdf = require("@mikecousins/react-pdf");
|
|
3584
|
-
var
|
|
3585
|
-
var
|
|
4349
|
+
var import_react29 = require("react");
|
|
4350
|
+
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
3586
4351
|
|
|
3587
4352
|
// src/components/PDFViewer/PDFElement.tsx
|
|
3588
|
-
var
|
|
3589
|
-
var
|
|
4353
|
+
var import_clsx31 = __toESM(require("clsx"), 1);
|
|
4354
|
+
var import_jsx_runtime48 = require("react/jsx-runtime");
|
|
3590
4355
|
|
|
3591
4356
|
// src/components/PDFViewer/DownloadIcon.tsx
|
|
3592
|
-
var
|
|
4357
|
+
var import_jsx_runtime49 = require("react/jsx-runtime");
|
|
3593
4358
|
|
|
3594
4359
|
// src/components/PDFViewer/PDFNavigation.tsx
|
|
3595
|
-
var
|
|
4360
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
3596
4361
|
|
|
3597
4362
|
// src/components/PDFViewer/index.tsx
|
|
3598
|
-
var
|
|
4363
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
3599
4364
|
|
|
3600
4365
|
// src/components/ListGroup.tsx
|
|
3601
|
-
var
|
|
3602
|
-
var
|
|
3603
|
-
var
|
|
4366
|
+
var import_react32 = require("react");
|
|
4367
|
+
var import_clsx32 = __toESM(require("clsx"), 1);
|
|
4368
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
3604
4369
|
|
|
3605
4370
|
// src/components/Pagination.tsx
|
|
3606
|
-
var
|
|
3607
|
-
var
|
|
3608
|
-
var
|
|
4371
|
+
var import_react33 = require("react");
|
|
4372
|
+
var import_clsx33 = __toESM(require("clsx"), 1);
|
|
4373
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
3609
4374
|
var Pagination = ({
|
|
3610
4375
|
totalPages,
|
|
3611
4376
|
currentPage,
|
|
@@ -3615,7 +4380,7 @@ var Pagination = ({
|
|
|
3615
4380
|
className,
|
|
3616
4381
|
disabled
|
|
3617
4382
|
}) => {
|
|
3618
|
-
const goTo = (0,
|
|
4383
|
+
const goTo = (0, import_react33.useCallback)(
|
|
3619
4384
|
(page) => {
|
|
3620
4385
|
if (disabled) return;
|
|
3621
4386
|
onPageChange(page);
|
|
@@ -3632,7 +4397,7 @@ var Pagination = ({
|
|
|
3632
4397
|
goTo(currentPage + 1);
|
|
3633
4398
|
}
|
|
3634
4399
|
};
|
|
3635
|
-
const pageTokens = (0,
|
|
4400
|
+
const pageTokens = (0, import_react33.useMemo)(() => {
|
|
3636
4401
|
if (totalPages <= 5) {
|
|
3637
4402
|
return Array.from({ length: totalPages }, (_, i) => i + 1);
|
|
3638
4403
|
}
|
|
@@ -3669,7 +4434,7 @@ var Pagination = ({
|
|
|
3669
4434
|
return tokens;
|
|
3670
4435
|
}, [totalPages, currentPage]);
|
|
3671
4436
|
if (totalPages <= 1) return null;
|
|
3672
|
-
const buttonClass = (0,
|
|
4437
|
+
const buttonClass = (0, import_clsx33.default)(
|
|
3673
4438
|
"cursor-pointer disabled:cursor-default",
|
|
3674
4439
|
paddingUsingComponentGap,
|
|
3675
4440
|
"w-8 h-8",
|
|
@@ -3680,14 +4445,14 @@ var Pagination = ({
|
|
|
3680
4445
|
"focus:bg-background-grouped-secondary-normal focus:outline-0",
|
|
3681
4446
|
"disabled:bg-transparent disabled:text-text-action-primary-disabled"
|
|
3682
4447
|
);
|
|
3683
|
-
return /* @__PURE__ */ (0,
|
|
4448
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(
|
|
3684
4449
|
"nav",
|
|
3685
4450
|
{
|
|
3686
4451
|
id,
|
|
3687
4452
|
"data-testid": testid,
|
|
3688
4453
|
"aria-label": "Pagination",
|
|
3689
4454
|
onKeyDown: handleKey,
|
|
3690
|
-
className: (0,
|
|
4455
|
+
className: (0, import_clsx33.default)(
|
|
3691
4456
|
"flex items-center",
|
|
3692
4457
|
"border border-border-primary-normal",
|
|
3693
4458
|
"bg-background-grouped-primary-normal",
|
|
@@ -3695,19 +4460,19 @@ var Pagination = ({
|
|
|
3695
4460
|
className
|
|
3696
4461
|
),
|
|
3697
4462
|
children: [
|
|
3698
|
-
/* @__PURE__ */ (0,
|
|
4463
|
+
/* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
3699
4464
|
"button",
|
|
3700
4465
|
{
|
|
3701
4466
|
disabled: disabled || currentPage <= 1,
|
|
3702
4467
|
"aria-label": "Previous page",
|
|
3703
4468
|
onClick: () => goTo(currentPage - 1),
|
|
3704
|
-
className: (0,
|
|
3705
|
-
children: /* @__PURE__ */ (0,
|
|
4469
|
+
className: (0, import_clsx33.default)(buttonClass, "border-r-1 border-border-primary-normal"),
|
|
4470
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(Icon, { name: "keyboard_arrow_left" })
|
|
3706
4471
|
}
|
|
3707
4472
|
),
|
|
3708
|
-
/* @__PURE__ */ (0,
|
|
4473
|
+
/* @__PURE__ */ (0, import_jsx_runtime53.jsx)("ul", { className: (0, import_clsx33.default)("flex items-center"), children: pageTokens.map((token, index) => {
|
|
3709
4474
|
if (token === "ellipsis") {
|
|
3710
|
-
return /* @__PURE__ */ (0,
|
|
4475
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
3711
4476
|
"li",
|
|
3712
4477
|
{
|
|
3713
4478
|
className: "w-8 h-8 select-none text-text-action-primary-disabled",
|
|
@@ -3717,29 +4482,29 @@ var Pagination = ({
|
|
|
3717
4482
|
);
|
|
3718
4483
|
}
|
|
3719
4484
|
const selected = token === currentPage;
|
|
3720
|
-
return /* @__PURE__ */ (0,
|
|
4485
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
3721
4486
|
"button",
|
|
3722
4487
|
{
|
|
3723
4488
|
"aria-label": `Page ${token}`,
|
|
3724
4489
|
"aria-current": selected ? "page" : void 0,
|
|
3725
4490
|
disabled,
|
|
3726
4491
|
onClick: () => goTo(token),
|
|
3727
|
-
className: (0,
|
|
4492
|
+
className: (0, import_clsx33.default)(
|
|
3728
4493
|
buttonClass,
|
|
3729
4494
|
selected && "border-x-1 bg-background-grouped-secondary-normal border-border-primary-normal"
|
|
3730
4495
|
),
|
|
3731
|
-
children: /* @__PURE__ */ (0,
|
|
4496
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(Subheader, { align: "center", weight: "bold", children: token })
|
|
3732
4497
|
}
|
|
3733
4498
|
) }, token);
|
|
3734
4499
|
}) }),
|
|
3735
|
-
/* @__PURE__ */ (0,
|
|
4500
|
+
/* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
3736
4501
|
"button",
|
|
3737
4502
|
{
|
|
3738
4503
|
disabled: disabled || currentPage >= totalPages,
|
|
3739
4504
|
"aria-label": "Next page",
|
|
3740
4505
|
onClick: () => goTo(currentPage + 1),
|
|
3741
|
-
className: (0,
|
|
3742
|
-
children: /* @__PURE__ */ (0,
|
|
4506
|
+
className: (0, import_clsx33.default)(buttonClass, "border-l-1 border-border-primary-normal"),
|
|
4507
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(Icon, { name: "keyboard_arrow_right" })
|
|
3743
4508
|
}
|
|
3744
4509
|
)
|
|
3745
4510
|
]
|
|
@@ -3749,51 +4514,56 @@ var Pagination = ({
|
|
|
3749
4514
|
Pagination.displayName = "Pagination";
|
|
3750
4515
|
|
|
3751
4516
|
// src/components/SkeletonParagraph.tsx
|
|
3752
|
-
var
|
|
4517
|
+
var import_jsx_runtime54 = require("react/jsx-runtime");
|
|
3753
4518
|
|
|
3754
4519
|
// src/components/EmptyCartIcon.tsx
|
|
3755
|
-
var
|
|
4520
|
+
var import_jsx_runtime55 = require("react/jsx-runtime");
|
|
4521
|
+
|
|
4522
|
+
// src/components/Alert.tsx
|
|
4523
|
+
var import_clsx34 = __toESM(require("clsx"), 1);
|
|
4524
|
+
var import_react34 = require("react");
|
|
4525
|
+
var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
3756
4526
|
|
|
3757
4527
|
// src/components/DataGrid/index.tsx
|
|
3758
|
-
var
|
|
4528
|
+
var import_react39 = __toESM(require("react"), 1);
|
|
3759
4529
|
var import_react_table3 = require("@tanstack/react-table");
|
|
3760
4530
|
var import_core = require("@dnd-kit/core");
|
|
3761
4531
|
var import_sortable2 = require("@dnd-kit/sortable");
|
|
3762
4532
|
var import_modifiers = require("@dnd-kit/modifiers");
|
|
3763
4533
|
var import_react_virtual2 = require("@tanstack/react-virtual");
|
|
3764
|
-
var
|
|
4534
|
+
var import_clsx39 = __toESM(require("clsx"), 1);
|
|
3765
4535
|
|
|
3766
4536
|
// src/components/DataGrid/PinnedColumns.tsx
|
|
3767
4537
|
var import_react_table2 = require("@tanstack/react-table");
|
|
3768
|
-
var
|
|
4538
|
+
var import_clsx38 = __toESM(require("clsx"), 1);
|
|
3769
4539
|
|
|
3770
4540
|
// src/components/DataGrid/utils.tsx
|
|
3771
|
-
var
|
|
3772
|
-
var
|
|
4541
|
+
var import_clsx35 = __toESM(require("clsx"), 1);
|
|
4542
|
+
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
3773
4543
|
function getSortIcon(sort, nextSort = false) {
|
|
3774
|
-
const iconClassName = (0,
|
|
4544
|
+
const iconClassName = (0, import_clsx35.default)(
|
|
3775
4545
|
"text-icon-on-action-primary-normal",
|
|
3776
4546
|
nextSort && "hidden group-hover:block"
|
|
3777
4547
|
);
|
|
3778
4548
|
if (sort === "asc")
|
|
3779
|
-
return /* @__PURE__ */ (0,
|
|
4549
|
+
return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(Icon, { size: 16, className: iconClassName, name: "arrow_upward" });
|
|
3780
4550
|
if (sort === "desc")
|
|
3781
|
-
return /* @__PURE__ */ (0,
|
|
4551
|
+
return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(Icon, { size: 16, className: iconClassName, name: "arrow_downward" });
|
|
3782
4552
|
return null;
|
|
3783
4553
|
}
|
|
3784
4554
|
|
|
3785
4555
|
// src/components/DataGrid/PinnedColumns.tsx
|
|
3786
|
-
var
|
|
4556
|
+
var import_react38 = __toESM(require("react"), 1);
|
|
3787
4557
|
|
|
3788
4558
|
// src/components/DataGrid/TableBody/index.tsx
|
|
3789
4559
|
var import_react_virtual = require("@tanstack/react-virtual");
|
|
3790
|
-
var
|
|
4560
|
+
var import_clsx37 = __toESM(require("clsx"), 1);
|
|
3791
4561
|
|
|
3792
4562
|
// src/components/DataGrid/TableBody/TableBodyRow.tsx
|
|
3793
|
-
var
|
|
4563
|
+
var import_clsx36 = __toESM(require("clsx"), 1);
|
|
3794
4564
|
var import_react_table = require("@tanstack/react-table");
|
|
3795
|
-
var
|
|
3796
|
-
var
|
|
4565
|
+
var import_react35 = __toESM(require("react"), 1);
|
|
4566
|
+
var import_jsx_runtime58 = require("react/jsx-runtime");
|
|
3797
4567
|
var valueFormatters = {
|
|
3798
4568
|
date: (value) => typeof value === "string" ? formatDate(value) : "",
|
|
3799
4569
|
currency: (value) => formatCurrencyDisplay(value)
|
|
@@ -3826,10 +4596,10 @@ function TableBodyRow({
|
|
|
3826
4596
|
const columns = locked ? visibleCells : virtualColumns;
|
|
3827
4597
|
const isError = typeof row.original === "object" && row.original !== null && "rowState" in row.original && row.original.rowState === "error";
|
|
3828
4598
|
const CellElement = locked ? DataGridCell : DragAlongCell;
|
|
3829
|
-
return /* @__PURE__ */ (0,
|
|
4599
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
|
|
3830
4600
|
"tr",
|
|
3831
4601
|
{
|
|
3832
|
-
className: (0,
|
|
4602
|
+
className: (0, import_clsx36.default)(
|
|
3833
4603
|
"min-h-10",
|
|
3834
4604
|
"transition-colors hover:bg-background-action-secondary-hover",
|
|
3835
4605
|
row.getIsSelected() && "!bg-background-action-secondary-hover",
|
|
@@ -3847,7 +4617,7 @@ function TableBodyRow({
|
|
|
3847
4617
|
children: [
|
|
3848
4618
|
!locked && virtualPaddingLeft ? (
|
|
3849
4619
|
// fake empty column to the left for virtualization scroll padding
|
|
3850
|
-
/* @__PURE__ */ (0,
|
|
4620
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("td", { style: { display: "flex", width: virtualPaddingLeft } })
|
|
3851
4621
|
) : null,
|
|
3852
4622
|
columns.map((column) => {
|
|
3853
4623
|
var _a2, _b, _c, _d;
|
|
@@ -3858,17 +4628,17 @@ function TableBodyRow({
|
|
|
3858
4628
|
const cellFormat = (_a2 = cell.column.columnDef.meta) == null ? void 0 : _a2.format;
|
|
3859
4629
|
const cellValue = cellFormat && isValueFormatterKey(cellFormat) ? valueFormatters[cellFormat](cell.getValue()) : cell.getValue();
|
|
3860
4630
|
const cellAlignment = (_c = (_b = cell.column.columnDef.meta) == null ? void 0 : _b.align) != null ? _c : typeof cellValue === "number" ? "right" : "left";
|
|
3861
|
-
return ((_d = cell.column.columnDef.meta) == null ? void 0 : _d.useCustomRenderer) ? /* @__PURE__ */ (0,
|
|
4631
|
+
return ((_d = cell.column.columnDef.meta) == null ? void 0 : _d.useCustomRenderer) ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react35.default.Fragment, { children: (0, import_react_table.flexRender)(cell.column.columnDef.cell, cell.getContext()) }, cell.id) : /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
3862
4632
|
CellElement,
|
|
3863
4633
|
{
|
|
3864
4634
|
id: id ? `${id}-row-${row.id}-cell-${cell.id}` : void 0,
|
|
3865
4635
|
testid: testid ? `${testid}-row-${row.id}-cell-${cell.id}` : void 0,
|
|
3866
4636
|
cell,
|
|
3867
|
-
className: (0,
|
|
4637
|
+
className: (0, import_clsx36.default)({
|
|
3868
4638
|
"justify-start": cellAlignment === "left",
|
|
3869
4639
|
"justify-end": cellAlignment === "right"
|
|
3870
4640
|
}),
|
|
3871
|
-
children: /* @__PURE__ */ (0,
|
|
4641
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
3872
4642
|
Tooltip,
|
|
3873
4643
|
{
|
|
3874
4644
|
id: id ? `${id}-tooltip-${cell.id}` : void 0,
|
|
@@ -3876,7 +4646,7 @@ function TableBodyRow({
|
|
|
3876
4646
|
showOnTruncation: true,
|
|
3877
4647
|
message: cellValue,
|
|
3878
4648
|
position: "bottom",
|
|
3879
|
-
children: /* @__PURE__ */ (0,
|
|
4649
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Paragraph, { addOverflow: true, tall: true, children: cellValue })
|
|
3880
4650
|
}
|
|
3881
4651
|
)
|
|
3882
4652
|
},
|
|
@@ -3885,7 +4655,7 @@ function TableBodyRow({
|
|
|
3885
4655
|
}),
|
|
3886
4656
|
!locked && virtualPaddingRight ? (
|
|
3887
4657
|
// fake empty column to the right for virtualization scroll padding
|
|
3888
|
-
/* @__PURE__ */ (0,
|
|
4658
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("td", { style: { display: "flex", width: virtualPaddingRight } })
|
|
3889
4659
|
) : null
|
|
3890
4660
|
]
|
|
3891
4661
|
},
|
|
@@ -3894,7 +4664,7 @@ function TableBodyRow({
|
|
|
3894
4664
|
}
|
|
3895
4665
|
|
|
3896
4666
|
// src/components/DataGrid/TableBody/LoadingCell.tsx
|
|
3897
|
-
var
|
|
4667
|
+
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
3898
4668
|
function LoadingCell({
|
|
3899
4669
|
id,
|
|
3900
4670
|
testid,
|
|
@@ -3902,16 +4672,16 @@ function LoadingCell({
|
|
|
3902
4672
|
}) {
|
|
3903
4673
|
const key = `loading-${column.id}`;
|
|
3904
4674
|
if (column.cell === "checkbox") {
|
|
3905
|
-
return /* @__PURE__ */ (0,
|
|
4675
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(DataGridCell, { id: id ? `${id}-${key}` : void 0, testid: testid ? `${testid}-${key}` : void 0, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(Checkbox, { id: id ? `${id}-${key}-checkbox` : void 0, testid: testid ? `${testid}-${key}-checkbox` : void 0, disabled: true }) }, key);
|
|
3906
4676
|
}
|
|
3907
4677
|
if (column.cell === "input") {
|
|
3908
|
-
return /* @__PURE__ */ (0,
|
|
4678
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
3909
4679
|
DataGridCell,
|
|
3910
4680
|
{
|
|
3911
4681
|
id: id ? `${id}-${key}` : void 0,
|
|
3912
4682
|
testid: testid ? `${testid}-${key}` : void 0,
|
|
3913
4683
|
component: "input",
|
|
3914
|
-
children: /* @__PURE__ */ (0,
|
|
4684
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
3915
4685
|
Input,
|
|
3916
4686
|
{
|
|
3917
4687
|
id: id ? `${id}-${key}-input` : void 0,
|
|
@@ -3925,11 +4695,11 @@ function LoadingCell({
|
|
|
3925
4695
|
key
|
|
3926
4696
|
);
|
|
3927
4697
|
}
|
|
3928
|
-
return /* @__PURE__ */ (0,
|
|
4698
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(DataGridCell, { id: id ? `${id}-${key}` : void 0, testid: testid ? `${testid}-${key}` : void 0, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "bg-linear-270 to-neutral-300/[24%] from-neutral-300/[12%] rounded-xs w-full max-w-25 h-6" }) }, key);
|
|
3929
4699
|
}
|
|
3930
4700
|
|
|
3931
4701
|
// src/components/DataGrid/TableBody/index.tsx
|
|
3932
|
-
var
|
|
4702
|
+
var import_jsx_runtime60 = require("react/jsx-runtime");
|
|
3933
4703
|
function TableBody({
|
|
3934
4704
|
id,
|
|
3935
4705
|
testid,
|
|
@@ -3963,10 +4733,10 @@ function TableBody({
|
|
|
3963
4733
|
} else {
|
|
3964
4734
|
headerGroups = table.getCenterHeaderGroups();
|
|
3965
4735
|
}
|
|
3966
|
-
return /* @__PURE__ */ (0,
|
|
4736
|
+
return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
|
|
3967
4737
|
"tbody",
|
|
3968
4738
|
{
|
|
3969
|
-
className: (0,
|
|
4739
|
+
className: (0, import_clsx37.default)(locked ? "shadow-16" : ""),
|
|
3970
4740
|
style: {
|
|
3971
4741
|
display: "grid",
|
|
3972
4742
|
height: `${showFilterRow ? rowVirtualizer.getTotalSize() + 40 : rowVirtualizer.getTotalSize()}px`,
|
|
@@ -3975,7 +4745,7 @@ function TableBody({
|
|
|
3975
4745
|
// needed for absolute positioning of rows
|
|
3976
4746
|
},
|
|
3977
4747
|
children: [
|
|
3978
|
-
showFilterRow && /* @__PURE__ */ (0,
|
|
4748
|
+
showFilterRow && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
|
|
3979
4749
|
"tr",
|
|
3980
4750
|
{
|
|
3981
4751
|
style: {
|
|
@@ -3991,7 +4761,7 @@ function TableBody({
|
|
|
3991
4761
|
children: headerGroups.flatMap(
|
|
3992
4762
|
(x) => x.headers.map((header) => {
|
|
3993
4763
|
var _a, _b, _c, _d, _e;
|
|
3994
|
-
return /* @__PURE__ */ (0,
|
|
4764
|
+
return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
|
|
3995
4765
|
CellElement,
|
|
3996
4766
|
{
|
|
3997
4767
|
id: id ? `${id}-filter-cell-${header.id}` : void 0,
|
|
@@ -4002,7 +4772,7 @@ function TableBody({
|
|
|
4002
4772
|
children: header.column.getCanFilter() && ((_e = (_c = (_b = header.column.columnDef.meta) == null ? void 0 : _b.filterRowCell) == null ? void 0 : _c.call(_b, {
|
|
4003
4773
|
header,
|
|
4004
4774
|
table
|
|
4005
|
-
})) != null ? _e : /* @__PURE__ */ (0,
|
|
4775
|
+
})) != null ? _e : /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
|
|
4006
4776
|
Search,
|
|
4007
4777
|
{
|
|
4008
4778
|
id: id ? `${id}-filter-search-${header.id}` : void 0,
|
|
@@ -4023,7 +4793,7 @@ function TableBody({
|
|
|
4023
4793
|
),
|
|
4024
4794
|
virtualRows.map((virtualRow) => {
|
|
4025
4795
|
const row = rows[virtualRow.index];
|
|
4026
|
-
return /* @__PURE__ */ (0,
|
|
4796
|
+
return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
|
|
4027
4797
|
TableBodyRow,
|
|
4028
4798
|
{
|
|
4029
4799
|
id,
|
|
@@ -4042,7 +4812,7 @@ function TableBody({
|
|
|
4042
4812
|
row.id
|
|
4043
4813
|
);
|
|
4044
4814
|
}),
|
|
4045
|
-
!pagination && isLoadingMore && hasMore && /* @__PURE__ */ (0,
|
|
4815
|
+
!pagination && isLoadingMore && hasMore && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
|
|
4046
4816
|
"tr",
|
|
4047
4817
|
{
|
|
4048
4818
|
style: {
|
|
@@ -4052,7 +4822,7 @@ function TableBody({
|
|
|
4052
4822
|
transform: `translateY(${virtualRows[virtualRows.length - 1].start + 40}px)`
|
|
4053
4823
|
},
|
|
4054
4824
|
className: "odd:bg-background-grouped-primary-normal even:bg-background-grouped-secondary-normal",
|
|
4055
|
-
children: table.getAllLeafColumns().map((column) => /* @__PURE__ */ (0,
|
|
4825
|
+
children: table.getAllLeafColumns().map((column) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
|
|
4056
4826
|
LoadingCell,
|
|
4057
4827
|
{
|
|
4058
4828
|
id,
|
|
@@ -4069,20 +4839,20 @@ function TableBody({
|
|
|
4069
4839
|
}
|
|
4070
4840
|
|
|
4071
4841
|
// src/components/DataGrid/ColumnSelectorHeaderCell/index.tsx
|
|
4072
|
-
var
|
|
4842
|
+
var import_react37 = require("react");
|
|
4073
4843
|
|
|
4074
4844
|
// src/components/DataGrid/ColumnSelectorHeaderCell/ColumnSelectorMenuOption.tsx
|
|
4075
|
-
var
|
|
4076
|
-
var
|
|
4845
|
+
var import_react36 = require("react");
|
|
4846
|
+
var import_jsx_runtime61 = require("react/jsx-runtime");
|
|
4077
4847
|
function ColumnSelectorMenuOption({
|
|
4078
4848
|
id,
|
|
4079
4849
|
testid,
|
|
4080
4850
|
column,
|
|
4081
4851
|
toggleColumnVisibility
|
|
4082
4852
|
}) {
|
|
4083
|
-
const [isVisible, setIsVisible] = (0,
|
|
4853
|
+
const [isVisible, setIsVisible] = (0, import_react36.useState)(column.getIsVisible());
|
|
4084
4854
|
const label = typeof column.columnDef.header === "string" ? column.columnDef.header : null;
|
|
4085
|
-
return /* @__PURE__ */ (0,
|
|
4855
|
+
return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(MenuOption, { id, testid, defaultChecked: isVisible, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
|
|
4086
4856
|
Checkbox,
|
|
4087
4857
|
{
|
|
4088
4858
|
id: id ? `${id}-checkbox` : void 0,
|
|
@@ -4098,7 +4868,7 @@ function ColumnSelectorMenuOption({
|
|
|
4098
4868
|
}
|
|
4099
4869
|
|
|
4100
4870
|
// src/components/DataGrid/ColumnSelectorHeaderCell/index.tsx
|
|
4101
|
-
var
|
|
4871
|
+
var import_jsx_runtime62 = require("react/jsx-runtime");
|
|
4102
4872
|
function ColumnSelectorHeaderCell({
|
|
4103
4873
|
id,
|
|
4104
4874
|
testid,
|
|
@@ -4106,9 +4876,9 @@ function ColumnSelectorHeaderCell({
|
|
|
4106
4876
|
toggleColumnVisibility,
|
|
4107
4877
|
resetColumnVisibility
|
|
4108
4878
|
}) {
|
|
4109
|
-
const ref = (0,
|
|
4110
|
-
const [show, setShow] = (0,
|
|
4111
|
-
return /* @__PURE__ */ (0,
|
|
4879
|
+
const ref = (0, import_react37.useRef)(null);
|
|
4880
|
+
const [show, setShow] = (0, import_react37.useState)(false);
|
|
4881
|
+
return /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(
|
|
4112
4882
|
DataGridCell,
|
|
4113
4883
|
{
|
|
4114
4884
|
id,
|
|
@@ -4118,7 +4888,7 @@ function ColumnSelectorHeaderCell({
|
|
|
4118
4888
|
color: "text-secondary-normal",
|
|
4119
4889
|
ref,
|
|
4120
4890
|
children: [
|
|
4121
|
-
/* @__PURE__ */ (0,
|
|
4891
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
|
|
4122
4892
|
Button,
|
|
4123
4893
|
{
|
|
4124
4894
|
id: id ? `${id}-button` : void 0,
|
|
@@ -4126,10 +4896,10 @@ function ColumnSelectorHeaderCell({
|
|
|
4126
4896
|
onClick: () => setShow((prev) => !prev),
|
|
4127
4897
|
variant: "navigation",
|
|
4128
4898
|
iconOnly: true,
|
|
4129
|
-
leftIcon: /* @__PURE__ */ (0,
|
|
4899
|
+
leftIcon: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Icon, { name: "tune" })
|
|
4130
4900
|
}
|
|
4131
4901
|
),
|
|
4132
|
-
/* @__PURE__ */ (0,
|
|
4902
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(
|
|
4133
4903
|
Menu,
|
|
4134
4904
|
{
|
|
4135
4905
|
id: id ? `${id}-menu` : void 0,
|
|
@@ -4140,7 +4910,7 @@ function ColumnSelectorHeaderCell({
|
|
|
4140
4910
|
setShow,
|
|
4141
4911
|
calculateMinMaxHeight: true,
|
|
4142
4912
|
children: [
|
|
4143
|
-
/* @__PURE__ */ (0,
|
|
4913
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
|
|
4144
4914
|
Button,
|
|
4145
4915
|
{
|
|
4146
4916
|
id: id ? `${id}-reset-button` : void 0,
|
|
@@ -4156,7 +4926,7 @@ function ColumnSelectorHeaderCell({
|
|
|
4156
4926
|
table.getAllColumns().filter((x) => {
|
|
4157
4927
|
var _a;
|
|
4158
4928
|
return (_a = x.columnDef.meta) == null ? void 0 : _a.inVisibilityMenu;
|
|
4159
|
-
}).map((column) => /* @__PURE__ */ (0,
|
|
4929
|
+
}).map((column) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
|
|
4160
4930
|
ColumnSelectorMenuOption,
|
|
4161
4931
|
{
|
|
4162
4932
|
id: id ? `${id}-option-${column.id}` : void 0,
|
|
@@ -4175,7 +4945,7 @@ function ColumnSelectorHeaderCell({
|
|
|
4175
4945
|
}
|
|
4176
4946
|
|
|
4177
4947
|
// src/components/DataGrid/PinnedColumns.tsx
|
|
4178
|
-
var
|
|
4948
|
+
var import_jsx_runtime63 = require("react/jsx-runtime");
|
|
4179
4949
|
function PinnedColumns(_a) {
|
|
4180
4950
|
var _b = _a, {
|
|
4181
4951
|
id,
|
|
@@ -4207,17 +4977,17 @@ function PinnedColumns(_a) {
|
|
|
4207
4977
|
const pinnedTestId = testid ? `${pinDirection}-pinned-${testid}` : void 0;
|
|
4208
4978
|
const hasAnyHeaders = ((_a2 = headerGroups[0]) == null ? void 0 : _a2.headers.length) > 0;
|
|
4209
4979
|
if (!hasAnyHeaders && !enableColumnSelector) return;
|
|
4210
|
-
return /* @__PURE__ */ (0,
|
|
4980
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
|
|
4211
4981
|
"table",
|
|
4212
4982
|
{
|
|
4213
|
-
className: (0,
|
|
4983
|
+
className: (0, import_clsx38.default)(
|
|
4214
4984
|
"flex flex-col min-h-min sticky z-20",
|
|
4215
4985
|
pinDirection === "left" ? "left-0" : "right-0"
|
|
4216
4986
|
),
|
|
4217
4987
|
"data-testid": pinnedTestId,
|
|
4218
4988
|
children: [
|
|
4219
|
-
/* @__PURE__ */ (0,
|
|
4220
|
-
return /* @__PURE__ */ (0,
|
|
4989
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)("thead", { className: "sticky top-0 z-20 grid", children: headerGroups.map((headerGroup) => {
|
|
4990
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
|
|
4221
4991
|
"tr",
|
|
4222
4992
|
{
|
|
4223
4993
|
"data-testid": pinnedTestId ? `${pinnedTestId}-header-row-${headerGroup.id}` : void 0,
|
|
@@ -4230,7 +5000,7 @@ function PinnedColumns(_a) {
|
|
|
4230
5000
|
}
|
|
4231
5001
|
if (typeof header.column.columnDef.header === "string") {
|
|
4232
5002
|
const customHeaderWidth = (_a3 = header.column.columnDef.meta) == null ? void 0 : _a3.headerWidth;
|
|
4233
|
-
return /* @__PURE__ */ (0,
|
|
5003
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
|
|
4234
5004
|
DataCellHeader,
|
|
4235
5005
|
{
|
|
4236
5006
|
locked: true,
|
|
@@ -4238,16 +5008,16 @@ function PinnedColumns(_a) {
|
|
|
4238
5008
|
header,
|
|
4239
5009
|
center: centerHeader,
|
|
4240
5010
|
width: customHeaderWidth,
|
|
4241
|
-
className: (0,
|
|
5011
|
+
className: (0, import_clsx38.default)(
|
|
4242
5012
|
header.column.getCanSort() ? "cursor-pointer" : "cursor-grab",
|
|
4243
5013
|
"group"
|
|
4244
5014
|
),
|
|
4245
5015
|
children: [
|
|
4246
|
-
/* @__PURE__ */ (0,
|
|
5016
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Subheader, { tall: true, children: header.column.columnDef.header }),
|
|
4247
5017
|
getSortIcon(header.column.getIsSorted()),
|
|
4248
5018
|
!header.column.getIsSorted() && header.column.getCanSort() && getSortIcon(header.column.getNextSortingOrder(), true),
|
|
4249
|
-
header.column.getSortIndex() !== -1 && table.getState().sorting.length > 1 && /* @__PURE__ */ (0,
|
|
4250
|
-
!((_b2 = header.column.columnDef.meta) == null ? void 0 : _b2.locked) && /* @__PURE__ */ (0,
|
|
5019
|
+
header.column.getSortIndex() !== -1 && table.getState().sorting.length > 1 && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Subheader, { tall: true, children: header.column.getSortIndex() + 1 }),
|
|
5020
|
+
!((_b2 = header.column.columnDef.meta) == null ? void 0 : _b2.locked) && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
4251
5021
|
"div",
|
|
4252
5022
|
{
|
|
4253
5023
|
onDoubleClick: (e) => {
|
|
@@ -4270,7 +5040,7 @@ function PinnedColumns(_a) {
|
|
|
4270
5040
|
header.id
|
|
4271
5041
|
);
|
|
4272
5042
|
}
|
|
4273
|
-
return /* @__PURE__ */ (0,
|
|
5043
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_react38.default.Fragment, { children: ((_c = header.column.columnDef.meta) == null ? void 0 : _c.checkbox) ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(DataGridCell, { type: "header", component: "checkbox", locked: true, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
4274
5044
|
Checkbox,
|
|
4275
5045
|
{
|
|
4276
5046
|
checked: allSelectedAcrossPages,
|
|
@@ -4282,7 +5052,7 @@ function PinnedColumns(_a) {
|
|
|
4282
5052
|
header.getContext()
|
|
4283
5053
|
) }, header.id);
|
|
4284
5054
|
}),
|
|
4285
|
-
enableColumnSelector && /* @__PURE__ */ (0,
|
|
5055
|
+
enableColumnSelector && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
4286
5056
|
ColumnSelectorHeaderCell,
|
|
4287
5057
|
{
|
|
4288
5058
|
id: id ? `${id}-column-selector` : void 0,
|
|
@@ -4299,7 +5069,7 @@ function PinnedColumns(_a) {
|
|
|
4299
5069
|
headerGroup.id
|
|
4300
5070
|
);
|
|
4301
5071
|
}) }),
|
|
4302
|
-
/* @__PURE__ */ (0,
|
|
5072
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
4303
5073
|
TableBody,
|
|
4304
5074
|
__spreadProps(__spreadValues({
|
|
4305
5075
|
testid: pinnedTestId
|
|
@@ -4318,7 +5088,7 @@ function PinnedColumns(_a) {
|
|
|
4318
5088
|
var no_results_image_default = "data:image/png;base64,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";
|
|
4319
5089
|
|
|
4320
5090
|
// src/components/DataGrid/index.tsx
|
|
4321
|
-
var
|
|
5091
|
+
var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
4322
5092
|
var PAGE_SIZE_OPTIONS = [5, 10, 15, 20, 25, 30, 35];
|
|
4323
5093
|
var NO_RESULTS_HEIGHT = "h-[185px]";
|
|
4324
5094
|
function DataGrid({
|
|
@@ -4350,23 +5120,23 @@ function DataGrid({
|
|
|
4350
5120
|
ref
|
|
4351
5121
|
}) {
|
|
4352
5122
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
4353
|
-
(0,
|
|
5123
|
+
(0, import_react39.useImperativeHandle)(ref, () => ({
|
|
4354
5124
|
getSavedLayout: () => {
|
|
4355
5125
|
return getSavedLayout();
|
|
4356
5126
|
}
|
|
4357
5127
|
}));
|
|
4358
|
-
const [localSorting, setLocalSorting] = (0,
|
|
4359
|
-
const [localColumnFilters, setLocalColumnFilters] = (0,
|
|
4360
|
-
const [localRowSelection, setLocalRowSelection] = (0,
|
|
5128
|
+
const [localSorting, setLocalSorting] = (0, import_react39.useState)([]);
|
|
5129
|
+
const [localColumnFilters, setLocalColumnFilters] = (0, import_react39.useState)([]);
|
|
5130
|
+
const [localRowSelection, setLocalRowSelection] = (0, import_react39.useState)({});
|
|
4361
5131
|
const {
|
|
4362
5132
|
columns: tableColumns,
|
|
4363
5133
|
setColumns: setTableColumns,
|
|
4364
5134
|
getSavedLayout
|
|
4365
5135
|
} = useTableLayout(columns, id != null ? id : testid);
|
|
4366
|
-
const [columnOrder, setColumnOrder] = (0,
|
|
5136
|
+
const [columnOrder, setColumnOrder] = (0, import_react39.useState)(
|
|
4367
5137
|
tableColumns.map((c) => c.id)
|
|
4368
5138
|
);
|
|
4369
|
-
const [columnVisibility, setColumnVisibility] = (0,
|
|
5139
|
+
const [columnVisibility, setColumnVisibility] = (0, import_react39.useState)(
|
|
4370
5140
|
Object.fromEntries(
|
|
4371
5141
|
tableColumns.filter((column) => !!column.id).map((column) => {
|
|
4372
5142
|
var _a2, _b2;
|
|
@@ -4374,7 +5144,7 @@ function DataGrid({
|
|
|
4374
5144
|
})
|
|
4375
5145
|
)
|
|
4376
5146
|
);
|
|
4377
|
-
const updateColumnVisibility = (0,
|
|
5147
|
+
const updateColumnVisibility = (0, import_react39.useCallback)(
|
|
4378
5148
|
(updateOrder) => {
|
|
4379
5149
|
setColumnVisibility(
|
|
4380
5150
|
Object.fromEntries(
|
|
@@ -4388,7 +5158,7 @@ function DataGrid({
|
|
|
4388
5158
|
},
|
|
4389
5159
|
[tableColumns]
|
|
4390
5160
|
);
|
|
4391
|
-
const resetDefaultColumnVisibility = (0,
|
|
5161
|
+
const resetDefaultColumnVisibility = (0, import_react39.useCallback)(() => {
|
|
4392
5162
|
setTableColumns((prev) => {
|
|
4393
5163
|
columns.forEach((column) => {
|
|
4394
5164
|
var _a2, _b2;
|
|
@@ -4404,7 +5174,7 @@ function DataGrid({
|
|
|
4404
5174
|
return [...prev];
|
|
4405
5175
|
}, true);
|
|
4406
5176
|
}, [columns, setTableColumns]);
|
|
4407
|
-
(0,
|
|
5177
|
+
(0, import_react39.useEffect)(() => {
|
|
4408
5178
|
updateColumnVisibility(true);
|
|
4409
5179
|
}, [updateColumnVisibility]);
|
|
4410
5180
|
const sortingState = pagination ? externalSorting != null ? externalSorting : localSorting : localSorting;
|
|
@@ -4420,7 +5190,7 @@ function DataGrid({
|
|
|
4420
5190
|
(onColumnFiltersChange != null ? onColumnFiltersChange : setLocalColumnFilters)(value);
|
|
4421
5191
|
} : setLocalColumnFilters;
|
|
4422
5192
|
const rowSelection = externalRowSelection != null ? externalRowSelection : localRowSelection;
|
|
4423
|
-
const setRowSelection = (0,
|
|
5193
|
+
const setRowSelection = (0, import_react39.useCallback)(
|
|
4424
5194
|
(updaterOrValue) => {
|
|
4425
5195
|
if (pagination) {
|
|
4426
5196
|
const value = typeof updaterOrValue === "function" ? updaterOrValue(externalRowSelection != null ? externalRowSelection : {}) : updaterOrValue;
|
|
@@ -4434,9 +5204,9 @@ function DataGrid({
|
|
|
4434
5204
|
},
|
|
4435
5205
|
[externalRowSelection, onRowSelectionChange, pagination]
|
|
4436
5206
|
);
|
|
4437
|
-
const dndId = (0,
|
|
4438
|
-
const containerRef =
|
|
4439
|
-
const toggleColumnVisibility = (0,
|
|
5207
|
+
const dndId = (0, import_react39.useId)();
|
|
5208
|
+
const containerRef = import_react39.default.useRef(null);
|
|
5209
|
+
const toggleColumnVisibility = (0, import_react39.useCallback)(
|
|
4440
5210
|
(columnId, isVisible) => {
|
|
4441
5211
|
setTableColumns((prev) => {
|
|
4442
5212
|
const persistedIndex = prev.findIndex((col) => col.id === columnId);
|
|
@@ -4567,7 +5337,7 @@ function DataGrid({
|
|
|
4567
5337
|
virtualPaddingRight = columnVirtualizer.getTotalSize() - ((_e = (_d = virtualColumns[virtualColumns.length - 1]) == null ? void 0 : _d.end) != null ? _e : 0);
|
|
4568
5338
|
}
|
|
4569
5339
|
const empty = table.getRowModel().rows.length === 0;
|
|
4570
|
-
return /* @__PURE__ */ (0,
|
|
5340
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4571
5341
|
import_core.DndContext,
|
|
4572
5342
|
{
|
|
4573
5343
|
id: dndId,
|
|
@@ -4575,28 +5345,28 @@ function DataGrid({
|
|
|
4575
5345
|
modifiers: [import_modifiers.restrictToHorizontalAxis],
|
|
4576
5346
|
onDragEnd: handleDragEnd,
|
|
4577
5347
|
sensors,
|
|
4578
|
-
children: /* @__PURE__ */ (0,
|
|
5348
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4579
5349
|
import_sortable2.SortableContext,
|
|
4580
5350
|
{
|
|
4581
5351
|
items: columnOrder,
|
|
4582
5352
|
strategy: import_sortable2.horizontalListSortingStrategy,
|
|
4583
|
-
children: /* @__PURE__ */ (0,
|
|
5353
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
|
|
4584
5354
|
"div",
|
|
4585
5355
|
{
|
|
4586
5356
|
id,
|
|
4587
5357
|
"data-testid": testid,
|
|
4588
5358
|
className: "flex flex-col grow-0 h-fit w-full rounded border border-border-primary-normal overflow-hidden text-text-primary-normal",
|
|
4589
5359
|
children: [
|
|
4590
|
-
/* @__PURE__ */ (0,
|
|
5360
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
|
|
4591
5361
|
"div",
|
|
4592
5362
|
{
|
|
4593
|
-
className: (0,
|
|
5363
|
+
className: (0, import_clsx39.default)(
|
|
4594
5364
|
"flex overflow-auto scrollbar-thin relative contain-paint will-change-transform",
|
|
4595
5365
|
empty ? "overflow-y-hidden" : "min-h-[120px]"
|
|
4596
5366
|
),
|
|
4597
5367
|
ref: containerRef,
|
|
4598
5368
|
children: [
|
|
4599
|
-
/* @__PURE__ */ (0,
|
|
5369
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4600
5370
|
PinnedColumns,
|
|
4601
5371
|
{
|
|
4602
5372
|
testid,
|
|
@@ -4609,8 +5379,8 @@ function DataGrid({
|
|
|
4609
5379
|
showFilterRow
|
|
4610
5380
|
}
|
|
4611
5381
|
),
|
|
4612
|
-
/* @__PURE__ */ (0,
|
|
4613
|
-
/* @__PURE__ */ (0,
|
|
5382
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("table", { className: "flex-1 flex flex-col min-h-min", children: [
|
|
5383
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)("thead", { className: "sticky top-0 z-10 grid", children: table.getCenterHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
|
|
4614
5384
|
"tr",
|
|
4615
5385
|
{
|
|
4616
5386
|
"data-testid": testid ? `${testid}-header-row-${headerGroup.id}` : void 0,
|
|
@@ -4618,7 +5388,7 @@ function DataGrid({
|
|
|
4618
5388
|
children: [
|
|
4619
5389
|
virtualPaddingLeft ? (
|
|
4620
5390
|
// fake empty column to the left for virtualization scroll padding
|
|
4621
|
-
/* @__PURE__ */ (0,
|
|
5391
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4622
5392
|
"th",
|
|
4623
5393
|
{
|
|
4624
5394
|
style: { display: "flex", width: virtualPaddingLeft }
|
|
@@ -4634,7 +5404,7 @@ function DataGrid({
|
|
|
4634
5404
|
if (typeof header.column.columnDef.header === "string") {
|
|
4635
5405
|
const cellValue = (_a2 = table.getRowModel().rows[0]) == null ? void 0 : _a2.getValue(header.column.id);
|
|
4636
5406
|
const cellAlignment = (_c2 = (_b2 = header.column.columnDef.meta) == null ? void 0 : _b2.align) != null ? _c2 : typeof cellValue === "number" ? "right" : "left";
|
|
4637
|
-
return /* @__PURE__ */ (0,
|
|
5407
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
|
|
4638
5408
|
DraggableCellHeader,
|
|
4639
5409
|
{
|
|
4640
5410
|
minWidth: `${header.column.getSize()}px`,
|
|
@@ -4643,7 +5413,7 @@ function DataGrid({
|
|
|
4643
5413
|
header,
|
|
4644
5414
|
locked: (_d2 = header.column.columnDef.meta) == null ? void 0 : _d2.locked,
|
|
4645
5415
|
center: centerHeader,
|
|
4646
|
-
className: (0,
|
|
5416
|
+
className: (0, import_clsx39.default)(
|
|
4647
5417
|
header.column.getCanSort() ? "cursor-pointer" : "cursor-grab",
|
|
4648
5418
|
"group",
|
|
4649
5419
|
{
|
|
@@ -4653,15 +5423,15 @@ function DataGrid({
|
|
|
4653
5423
|
),
|
|
4654
5424
|
useMenuDefaultMinWidth,
|
|
4655
5425
|
children: [
|
|
4656
|
-
cellAlignment === "left" && /* @__PURE__ */ (0,
|
|
5426
|
+
cellAlignment === "left" && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Subheader, { tall: true, children: header.column.columnDef.header }),
|
|
4657
5427
|
getSortIcon(header.column.getIsSorted()),
|
|
4658
5428
|
!header.column.getIsSorted() && header.column.getCanSort() && getSortIcon(
|
|
4659
5429
|
header.column.getNextSortingOrder(),
|
|
4660
5430
|
true
|
|
4661
5431
|
),
|
|
4662
|
-
header.column.getSortIndex() !== -1 && table.getState().sorting.length > 1 && /* @__PURE__ */ (0,
|
|
4663
|
-
cellAlignment === "right" && /* @__PURE__ */ (0,
|
|
4664
|
-
/* @__PURE__ */ (0,
|
|
5432
|
+
header.column.getSortIndex() !== -1 && table.getState().sorting.length > 1 && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Subheader, { tall: true, children: header.column.getSortIndex() + 1 }),
|
|
5433
|
+
cellAlignment === "right" && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Subheader, { tall: true, children: header.column.columnDef.header }),
|
|
5434
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4665
5435
|
"div",
|
|
4666
5436
|
{
|
|
4667
5437
|
onDoubleClick: (e) => {
|
|
@@ -4684,7 +5454,7 @@ function DataGrid({
|
|
|
4684
5454
|
header.id
|
|
4685
5455
|
);
|
|
4686
5456
|
}
|
|
4687
|
-
return /* @__PURE__ */ (0,
|
|
5457
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_react39.default.Fragment, { children: ((_e2 = header.column.columnDef.meta) == null ? void 0 : _e2.checkbox) ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4688
5458
|
DataGridCell,
|
|
4689
5459
|
{
|
|
4690
5460
|
id: id ? `${id}-header-${header.id}` : void 0,
|
|
@@ -4692,7 +5462,7 @@ function DataGrid({
|
|
|
4692
5462
|
type: "header",
|
|
4693
5463
|
component: "checkbox",
|
|
4694
5464
|
locked: true,
|
|
4695
|
-
children: /* @__PURE__ */ (0,
|
|
5465
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4696
5466
|
Checkbox,
|
|
4697
5467
|
{
|
|
4698
5468
|
id: id ? `${id}-select-all-checkbox` : void 0,
|
|
@@ -4710,7 +5480,7 @@ function DataGrid({
|
|
|
4710
5480
|
}),
|
|
4711
5481
|
virtualPaddingRight ? (
|
|
4712
5482
|
//fake empty column to the right for virtualization scroll padding
|
|
4713
|
-
/* @__PURE__ */ (0,
|
|
5483
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4714
5484
|
"th",
|
|
4715
5485
|
{
|
|
4716
5486
|
style: { display: "flex", width: virtualPaddingRight }
|
|
@@ -4721,7 +5491,7 @@ function DataGrid({
|
|
|
4721
5491
|
},
|
|
4722
5492
|
headerGroup.id
|
|
4723
5493
|
)) }),
|
|
4724
|
-
/* @__PURE__ */ (0,
|
|
5494
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4725
5495
|
TableBody,
|
|
4726
5496
|
{
|
|
4727
5497
|
id,
|
|
@@ -4739,7 +5509,7 @@ function DataGrid({
|
|
|
4739
5509
|
}
|
|
4740
5510
|
)
|
|
4741
5511
|
] }),
|
|
4742
|
-
/* @__PURE__ */ (0,
|
|
5512
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4743
5513
|
PinnedColumns,
|
|
4744
5514
|
{
|
|
4745
5515
|
id,
|
|
@@ -4759,10 +5529,10 @@ function DataGrid({
|
|
|
4759
5529
|
]
|
|
4760
5530
|
}
|
|
4761
5531
|
),
|
|
4762
|
-
empty && /* @__PURE__ */ (0,
|
|
5532
|
+
empty && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
|
|
4763
5533
|
"div",
|
|
4764
5534
|
{
|
|
4765
|
-
className: (0,
|
|
5535
|
+
className: (0, import_clsx39.default)(
|
|
4766
5536
|
NO_RESULTS_HEIGHT,
|
|
4767
5537
|
"flex flex-col items-center justify-center",
|
|
4768
5538
|
componentGap,
|
|
@@ -4770,7 +5540,7 @@ function DataGrid({
|
|
|
4770
5540
|
),
|
|
4771
5541
|
"data-testid": testid ? `${testid}-no-results` : void 0,
|
|
4772
5542
|
children: [
|
|
4773
|
-
/* @__PURE__ */ (0,
|
|
5543
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4774
5544
|
"img",
|
|
4775
5545
|
{
|
|
4776
5546
|
src: (_g = (_f = no_results_image_default) == null ? void 0 : _f.src) != null ? _g : no_results_image_default,
|
|
@@ -4780,15 +5550,15 @@ function DataGrid({
|
|
|
4780
5550
|
height: 120
|
|
4781
5551
|
}
|
|
4782
5552
|
),
|
|
4783
|
-
/* @__PURE__ */ (0,
|
|
4784
|
-
/* @__PURE__ */ (0,
|
|
5553
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Subheader, { color: "text-secondary-normal", children: "No Results" }),
|
|
5554
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Paragraph, { color: "text-secondary-normal", children: "To view results, enter or update your search criteria." })
|
|
4785
5555
|
]
|
|
4786
5556
|
}
|
|
4787
5557
|
),
|
|
4788
|
-
!hideStatusBar && /* @__PURE__ */ (0,
|
|
4789
|
-
pagination && /* @__PURE__ */ (0,
|
|
4790
|
-
/* @__PURE__ */ (0,
|
|
4791
|
-
/* @__PURE__ */ (0,
|
|
5558
|
+
!hideStatusBar && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "p-2 pt-[7px] border-t border-border-primary-normal h-full min-h-[34px]", children: [
|
|
5559
|
+
pagination && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex justify-between items-center", children: [
|
|
5560
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-center gap-1 w-min", children: [
|
|
5561
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4792
5562
|
Select,
|
|
4793
5563
|
{
|
|
4794
5564
|
id: id ? `${id}-pagesize-select` : void 0,
|
|
@@ -4799,12 +5569,12 @@ function DataGrid({
|
|
|
4799
5569
|
var _a2;
|
|
4800
5570
|
return (_a2 = pagination.onPageSizeChange) == null ? void 0 : _a2.call(pagination, Number(e.target.value));
|
|
4801
5571
|
},
|
|
4802
|
-
renderMenu: (props) => /* @__PURE__ */ (0,
|
|
5572
|
+
renderMenu: (props) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4803
5573
|
Menu,
|
|
4804
5574
|
__spreadProps(__spreadValues({}, props), {
|
|
4805
5575
|
id: id ? `${id}-pagesize-menu` : void 0,
|
|
4806
5576
|
testid: testid ? `${testid}-pagesize-menu` : void 0,
|
|
4807
|
-
children: PAGE_SIZE_OPTIONS.map((option) => /* @__PURE__ */ (0,
|
|
5577
|
+
children: PAGE_SIZE_OPTIONS.map((option) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4808
5578
|
MenuOption,
|
|
4809
5579
|
{
|
|
4810
5580
|
id: id ? `${id}-pagesize-option-${option}` : void 0,
|
|
@@ -4821,22 +5591,22 @@ function DataGrid({
|
|
|
4821
5591
|
)
|
|
4822
5592
|
}
|
|
4823
5593
|
),
|
|
4824
|
-
/* @__PURE__ */ (0,
|
|
5594
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Label, { children: "Per Page" })
|
|
4825
5595
|
] }),
|
|
4826
|
-
/* @__PURE__ */ (0,
|
|
4827
|
-
/* @__PURE__ */ (0,
|
|
5596
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-center gap-2", children: [
|
|
5597
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4828
5598
|
Button,
|
|
4829
5599
|
{
|
|
4830
5600
|
id: id ? `${id}-prev-page-button` : void 0,
|
|
4831
5601
|
testid: testid ? `${testid}-prev-page-button` : void 0,
|
|
4832
5602
|
iconOnly: true,
|
|
4833
|
-
leftIcon: /* @__PURE__ */ (0,
|
|
5603
|
+
leftIcon: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Icon, { name: "chevron_left" }),
|
|
4834
5604
|
onClick: () => pagination.onPageChange(pagination.pageIndex - 1),
|
|
4835
5605
|
variant: "tertiary",
|
|
4836
5606
|
disabled: pagination.pageIndex === 0
|
|
4837
5607
|
}
|
|
4838
5608
|
),
|
|
4839
|
-
/* @__PURE__ */ (0,
|
|
5609
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Paragraph, { children: [
|
|
4840
5610
|
pagination.pageIndex * pagination.pageSize + 1,
|
|
4841
5611
|
" -",
|
|
4842
5612
|
" ",
|
|
@@ -4848,13 +5618,13 @@ function DataGrid({
|
|
|
4848
5618
|
"of ",
|
|
4849
5619
|
pagination.total
|
|
4850
5620
|
] }),
|
|
4851
|
-
/* @__PURE__ */ (0,
|
|
5621
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4852
5622
|
Button,
|
|
4853
5623
|
{
|
|
4854
5624
|
id: id ? `${id}-next-page-button` : void 0,
|
|
4855
5625
|
testid: testid ? `${testid}-next-page-button` : void 0,
|
|
4856
5626
|
iconOnly: true,
|
|
4857
|
-
leftIcon: /* @__PURE__ */ (0,
|
|
5627
|
+
leftIcon: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Icon, { name: "chevron_right" }),
|
|
4858
5628
|
onClick: () => pagination.onPageChange(pagination.pageIndex + 1),
|
|
4859
5629
|
variant: "tertiary",
|
|
4860
5630
|
disabled: (pagination.pageIndex + 1) * pagination.pageSize >= pagination.total
|
|
@@ -4862,7 +5632,7 @@ function DataGrid({
|
|
|
4862
5632
|
)
|
|
4863
5633
|
] })
|
|
4864
5634
|
] }),
|
|
4865
|
-
status && /* @__PURE__ */ (0,
|
|
5635
|
+
status && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
4866
5636
|
Paragraph,
|
|
4867
5637
|
{
|
|
4868
5638
|
testid: testid ? `${testid}-status-text` : void 0,
|