opus-react 0.2.20 → 0.2.22
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/index.cjs +2244 -349
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +1172 -10
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +299 -5
- package/dist/index.d.ts +299 -5
- package/dist/index.js +2231 -352
- package/dist/index.js.map +1 -1
- package/package.json +4 -1
package/dist/index.js
CHANGED
|
@@ -427,7 +427,7 @@ var init_setupFireBarrelScene = __esm({
|
|
|
427
427
|
});
|
|
428
428
|
|
|
429
429
|
// ../../components/fields/Button/Button.module.css
|
|
430
|
-
var Button_default = {"
|
|
430
|
+
var Button_default = {"secondary":"opus_lZkc26_secondary","success":"opus_lZkc26_success","dark":"opus_lZkc26_dark","link":"opus_lZkc26_link","light":"opus_lZkc26_light","button":"opus_lZkc26_button","info":"opus_lZkc26_info","primary":"opus_lZkc26_primary","danger":"opus_lZkc26_danger","warning":"opus_lZkc26_warning"};
|
|
431
431
|
|
|
432
432
|
// ../../components/fields/Button/Button.tsx
|
|
433
433
|
import { jsx } from "react/jsx-runtime";
|
|
@@ -459,7 +459,7 @@ import {
|
|
|
459
459
|
import { createPortal } from "react-dom";
|
|
460
460
|
|
|
461
461
|
// ../../components/Tooltip/Tooltip.module.css
|
|
462
|
-
var Tooltip_default = {"
|
|
462
|
+
var Tooltip_default = {"trigger":"opus_R70RbH_trigger","popup":"opus_R70RbH_popup","top":"opus_R70RbH_top","bottom":"opus_R70RbH_bottom","root":"opus_R70RbH_root","triggerWrap":"opus_R70RbH_triggerWrap","arrow":"opus_R70RbH_arrow","left":"opus_R70RbH_left","right":"opus_R70RbH_right"};
|
|
463
463
|
|
|
464
464
|
// ../../components/Tooltip/Tooltip.tsx
|
|
465
465
|
import { jsx as jsx2, jsxs } from "react/jsx-runtime";
|
|
@@ -628,7 +628,7 @@ function Tooltip({
|
|
|
628
628
|
}
|
|
629
629
|
|
|
630
630
|
// ../../components/fields/FieldShell/FieldShell.module.css
|
|
631
|
-
var FieldShell_default = {"
|
|
631
|
+
var FieldShell_default = {"labelRight":"opus_zNi12Z_labelRight","flagged":"opus_zNi12Z_flagged","stackedLeft":"opus_zNi12Z_stackedLeft","stacked":"opus_zNi12Z_stacked","stackedRight":"opus_zNi12Z_stackedRight","root":"opus_zNi12Z_root","compactControl":"opus_zNi12Z_compactControl","labelFlagged":"opus_zNi12Z_labelFlagged","errorFlagged":"opus_zNi12Z_errorFlagged","required":"opus_zNi12Z_required","label":"opus_zNi12Z_label","flaggedStart":"opus_zNi12Z_flaggedStart","labelLeft":"opus_zNi12Z_labelLeft","control":"opus_zNi12Z_control","flaggedCenter":"opus_zNi12Z_flaggedCenter","error":"opus_zNi12Z_error","visuallyHidden":"opus_zNi12Z_visuallyHidden","fitContent":"opus_zNi12Z_fitContent","controlFlagged":"opus_zNi12Z_controlFlagged"};
|
|
632
632
|
|
|
633
633
|
// ../../components/fields/FieldShell/FieldShell.tsx
|
|
634
634
|
import { Fragment, jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
@@ -753,7 +753,7 @@ function FieldShell({
|
|
|
753
753
|
}
|
|
754
754
|
|
|
755
755
|
// ../../components/fields/CheckboxField/CheckboxField.module.css
|
|
756
|
-
var CheckboxField_default = {"
|
|
756
|
+
var CheckboxField_default = {"round":"opus_g-5tlR_round","shell":"opus_g-5tlR_shell","square":"opus_g-5tlR_square","nativeInput":"opus_g-5tlR_nativeInput","error":"opus_g-5tlR_error","toggle":"opus_g-5tlR_toggle","visual":"opus_g-5tlR_visual"};
|
|
757
757
|
|
|
758
758
|
// ../../components/fields/CheckboxField/CheckboxField.tsx
|
|
759
759
|
import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
@@ -810,7 +810,7 @@ function CheckboxField({
|
|
|
810
810
|
}
|
|
811
811
|
|
|
812
812
|
// ../../components/fields/ColorField/ColorField.module.css
|
|
813
|
-
var ColorField_default = {"
|
|
813
|
+
var ColorField_default = {"picker":"opus_Z7jeX4_picker","swatch":"opus_Z7jeX4_swatch","nativeInput":"opus_Z7jeX4_nativeInput","value":"opus_Z7jeX4_value","icon":"opus_Z7jeX4_icon","error":"opus_Z7jeX4_error"};
|
|
814
814
|
|
|
815
815
|
// ../../components/fields/ColorField/ColorField.tsx
|
|
816
816
|
import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
@@ -951,7 +951,7 @@ function HiddenField({
|
|
|
951
951
|
}
|
|
952
952
|
|
|
953
953
|
// ../../components/fields/FileField/FileField.module.css
|
|
954
|
-
var FileField_default = {"
|
|
954
|
+
var FileField_default = {"icon":"opus_aOsPA7_icon","footnote":"opus_aOsPA7_footnote","content":"opus_aOsPA7_content","dragging":"opus_aOsPA7_dragging","iconSvg":"opus_aOsPA7_iconSvg","action":"opus_aOsPA7_action","input":"opus_aOsPA7_input","dropError":"opus_aOsPA7_dropError","drop":"opus_aOsPA7_drop","wrapper":"opus_aOsPA7_wrapper","title":"opus_aOsPA7_title","hint":"opus_aOsPA7_hint"};
|
|
955
955
|
|
|
956
956
|
// ../../components/fields/FileField/FileField.tsx
|
|
957
957
|
import {
|
|
@@ -1091,7 +1091,7 @@ function FileField({
|
|
|
1091
1091
|
import { useEffect as useEffect2, useState as useState3 } from "react";
|
|
1092
1092
|
|
|
1093
1093
|
// ../../components/fields/NumberField/NumberField.module.css
|
|
1094
|
-
var NumberField_default = {"
|
|
1094
|
+
var NumberField_default = {"stepper":"opus_L272Dk_stepper","button":"opus_L272Dk_button","input":"opus_L272Dk_input","error":"opus_L272Dk_error"};
|
|
1095
1095
|
|
|
1096
1096
|
// ../../components/fields/numericUtils.ts
|
|
1097
1097
|
function decimalPlacesFromStep(step) {
|
|
@@ -1259,7 +1259,7 @@ function NumberField({
|
|
|
1259
1259
|
import { createContext as createContext2, useContext as useContext2, useId as useId2 } from "react";
|
|
1260
1260
|
|
|
1261
1261
|
// ../../components/fields/RadioGroup/RadioGroup.module.css
|
|
1262
|
-
var RadioGroup_default = {"
|
|
1262
|
+
var RadioGroup_default = {"choice":"opus_O-1nor_choice","square":"opus_O-1nor_square","option":"opus_O-1nor_option","options":"opus_O-1nor_options","nativeInput":"opus_O-1nor_nativeInput","error":"opus_O-1nor_error","round":"opus_O-1nor_round","visual":"opus_O-1nor_visual","shell":"opus_O-1nor_shell"};
|
|
1263
1263
|
|
|
1264
1264
|
// ../../components/fields/RadioGroup/RadioGroup.tsx
|
|
1265
1265
|
import { jsx as jsx10, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
@@ -1356,7 +1356,7 @@ function Radio({ children, error, name, shape, value, defaultChecked }) {
|
|
|
1356
1356
|
import { useId as useId3, useRef as useRef3, useState as useState4 } from "react";
|
|
1357
1357
|
|
|
1358
1358
|
// ../../components/fields/ChipInputField/ChipInputField.module.css
|
|
1359
|
-
var ChipInputField_default = {"
|
|
1359
|
+
var ChipInputField_default = {"remove":"opus_IOOYwh_remove","field":"opus_IOOYwh_field","shell":"opus_IOOYwh_shell","error":"opus_IOOYwh_error","input":"opus_IOOYwh_input","readOnly":"opus_IOOYwh_readOnly","chipLabel":"opus_IOOYwh_chipLabel","disabled":"opus_IOOYwh_disabled","chip":"opus_IOOYwh_chip"};
|
|
1360
1360
|
|
|
1361
1361
|
// ../../components/fields/ChipInputField/ChipInputField.tsx
|
|
1362
1362
|
import { jsx as jsx11, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
@@ -1492,7 +1492,7 @@ function ChipInput({
|
|
|
1492
1492
|
var ChipInputField = ChipInput;
|
|
1493
1493
|
|
|
1494
1494
|
// ../../components/fields/RangeField/RangeField.module.css
|
|
1495
|
-
var RangeField_default = {"
|
|
1495
|
+
var RangeField_default = {"value":"opus_iRHQuG_value","slider":"opus_iRHQuG_slider","error":"opus_iRHQuG_error","fieldLabel":"opus_iRHQuG_fieldLabel","topRow":"opus_iRHQuG_topRow","wrap":"opus_iRHQuG_wrap","footer":"opus_iRHQuG_footer"};
|
|
1496
1496
|
|
|
1497
1497
|
// ../../components/fields/RangeField/RangeField.tsx
|
|
1498
1498
|
import { jsx as jsx12, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
@@ -1571,7 +1571,7 @@ function RangeField({
|
|
|
1571
1571
|
}
|
|
1572
1572
|
|
|
1573
1573
|
// ../../components/fields/SelectField/SelectField.module.css
|
|
1574
|
-
var SelectField_default = {"
|
|
1574
|
+
var SelectField_default = {"select":"opus_m2ObG0_select","wrap":"opus_m2ObG0_wrap","error":"opus_m2ObG0_error"};
|
|
1575
1575
|
|
|
1576
1576
|
// ../../components/fields/SelectField/SelectField.tsx
|
|
1577
1577
|
import { jsx as jsx13 } from "react/jsx-runtime";
|
|
@@ -1615,7 +1615,7 @@ function SelectField({
|
|
|
1615
1615
|
}
|
|
1616
1616
|
|
|
1617
1617
|
// ../../components/fields/SwitchField/SwitchField.module.css
|
|
1618
|
-
var SwitchField_default = {"error":"opus_t9NLEA_error","track":"opus_t9NLEA_track","
|
|
1618
|
+
var SwitchField_default = {"error":"opus_t9NLEA_error","track":"opus_t9NLEA_track","shell":"opus_t9NLEA_shell","toggle":"opus_t9NLEA_toggle"};
|
|
1619
1619
|
|
|
1620
1620
|
// ../../components/fields/SwitchField/SwitchField.tsx
|
|
1621
1621
|
import { jsx as jsx14 } from "react/jsx-runtime";
|
|
@@ -1664,7 +1664,7 @@ function SwitchField({
|
|
|
1664
1664
|
import { useId as useId4 } from "react";
|
|
1665
1665
|
|
|
1666
1666
|
// ../../components/fields/TextAreaField/TextAreaField.module.css
|
|
1667
|
-
var TextAreaField_default = {"
|
|
1667
|
+
var TextAreaField_default = {"externalCount":"opus_FjhWmh_externalCount","inlineCount":"opus_FjhWmh_inlineCount","field":"opus_FjhWmh_field","withCount":"opus_FjhWmh_withCount","footer":"opus_FjhWmh_footer","inputWrap":"opus_FjhWmh_inputWrap","footerError":"opus_FjhWmh_footerError","textarea":"opus_FjhWmh_textarea","error":"opus_FjhWmh_error"};
|
|
1668
1668
|
|
|
1669
1669
|
// ../../components/fields/TextAreaField/TextAreaField.tsx
|
|
1670
1670
|
import { jsx as jsx15, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
@@ -1774,7 +1774,7 @@ import {
|
|
|
1774
1774
|
} from "@fortawesome/free-solid-svg-icons";
|
|
1775
1775
|
|
|
1776
1776
|
// ../../components/fields/RichTextField/RichTextField.module.css
|
|
1777
|
-
var RichTextField_default = {"
|
|
1777
|
+
var RichTextField_default = {"modalActions":"opus_6HFqZH_modalActions","modalCancel":"opus_6HFqZH_modalCancel","modalConfirm":"opus_6HFqZH_modalConfirm","field":"opus_6HFqZH_field","readOnly":"opus_6HFqZH_readOnly","modalOverlay":"opus_6HFqZH_modalOverlay","editor":"opus_6HFqZH_editor","modalDimensionField":"opus_6HFqZH_modalDimensionField","divider":"opus_6HFqZH_divider","modalField":"opus_6HFqZH_modalField","toolbarButton":"opus_6HFqZH_toolbarButton","toolbar":"opus_6HFqZH_toolbar","blockSelect":"opus_6HFqZH_blockSelect","modalTitle":"opus_6HFqZH_modalTitle","modalLabel":"opus_6HFqZH_modalLabel","modalInput":"opus_6HFqZH_modalInput","modalDimensions":"opus_6HFqZH_modalDimensions","modalTimes":"opus_6HFqZH_modalTimes","error":"opus_6HFqZH_error","colorInput":"opus_6HFqZH_colorInput","modal":"opus_6HFqZH_modal","editorShell":"opus_6HFqZH_editorShell","toolbarIcon":"opus_6HFqZH_toolbarIcon","toolbarButtonActive":"opus_6HFqZH_toolbarButtonActive","colorSwatch":"opus_6HFqZH_colorSwatch","modalNumber":"opus_6HFqZH_modalNumber"};
|
|
1778
1778
|
|
|
1779
1779
|
// ../../components/fields/RichTextField/RichTextField.tsx
|
|
1780
1780
|
import { jsx as jsx16, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
@@ -2419,10 +2419,10 @@ function RichTextField({
|
|
|
2419
2419
|
import { useState as useState6 } from "react";
|
|
2420
2420
|
|
|
2421
2421
|
// ../../components/fields/TextField/TextField.module.css
|
|
2422
|
-
var TextField_default = {"
|
|
2422
|
+
var TextField_default = {"input":"opus_SOck2f_input","error":"opus_SOck2f_error"};
|
|
2423
2423
|
|
|
2424
2424
|
// ../../components/fields/shared/fieldControl.module.css
|
|
2425
|
-
var fieldControl_default = {"
|
|
2425
|
+
var fieldControl_default = {"actionButtonPrimary":"opus_1Q5xBh_actionButtonPrimary","actionButton":"opus_1Q5xBh_actionButton","passwordWrap":"opus_1Q5xBh_passwordWrap","passwordToggle":"opus_1Q5xBh_passwordToggle","triggerOpen":"opus_1Q5xBh_triggerOpen","triggerError":"opus_1Q5xBh_triggerError","passwordInput":"opus_1Q5xBh_passwordInput","trigger":"opus_1Q5xBh_trigger","groupLabel":"opus_1Q5xBh_groupLabel","option":"opus_1Q5xBh_option","panelFooter":"opus_1Q5xBh_panelFooter","passwordToggleSlot":"opus_1Q5xBh_passwordToggleSlot","chevron":"opus_1Q5xBh_chevron","search":"opus_1Q5xBh_search","list":"opus_1Q5xBh_list","input":"opus_1Q5xBh_input","panel":"opus_1Q5xBh_panel","error":"opus_1Q5xBh_error","placeholder":"opus_1Q5xBh_placeholder"};
|
|
2426
2426
|
|
|
2427
2427
|
// ../../components/fields/shared/PasswordToggle.tsx
|
|
2428
2428
|
import { FontAwesomeIcon as FontAwesomeIcon2 } from "@fortawesome/react-fontawesome";
|
|
@@ -2505,7 +2505,7 @@ import { FontAwesomeIcon as FontAwesomeIcon3 } from "@fortawesome/react-fontawes
|
|
|
2505
2505
|
import { faMoon, faSun } from "@fortawesome/free-solid-svg-icons";
|
|
2506
2506
|
|
|
2507
2507
|
// ../../components/fields/ThemeToggleField/ThemeToggleField.module.css
|
|
2508
|
-
var ThemeToggleField_default = {"
|
|
2508
|
+
var ThemeToggleField_default = {"toggle":"opus_SwerMA_toggle","indicator":"opus_SwerMA_indicator","option":"opus_SwerMA_option","active":"opus_SwerMA_active"};
|
|
2509
2509
|
|
|
2510
2510
|
// ../../components/fields/ThemeToggleField/ThemeToggleField.tsx
|
|
2511
2511
|
import { jsx as jsx19, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
@@ -2838,7 +2838,7 @@ function MultiSelectField({
|
|
|
2838
2838
|
import { useState as useState9 } from "react";
|
|
2839
2839
|
|
|
2840
2840
|
// ../../components/fields/TransferListField/TransferListField.module.css
|
|
2841
|
-
var TransferListField_default = {"
|
|
2841
|
+
var TransferListField_default = {"list":"opus_NPBFZk_list","controls":"opus_NPBFZk_controls","root":"opus_NPBFZk_root","column":"opus_NPBFZk_column","columnHeader":"opus_NPBFZk_columnHeader","controlButton":"opus_NPBFZk_controlButton","itemActive":"opus_NPBFZk_itemActive","item":"opus_NPBFZk_item"};
|
|
2842
2842
|
|
|
2843
2843
|
// ../../components/fields/TransferListField/TransferListField.tsx
|
|
2844
2844
|
import { jsx as jsx22, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
@@ -2958,7 +2958,7 @@ import { FontAwesomeIcon as FontAwesomeIcon4 } from "@fortawesome/react-fontawes
|
|
|
2958
2958
|
import { faCheck, faXmark } from "@fortawesome/free-solid-svg-icons";
|
|
2959
2959
|
|
|
2960
2960
|
// ../../components/fields/PasswordStrengthField/PasswordStrengthField.module.css
|
|
2961
|
-
var PasswordStrengthField_default = {"
|
|
2961
|
+
var PasswordStrengthField_default = {"meterLabel":"opus_S1A372_meterLabel","meterWrap":"opus_S1A372_meterWrap","meterFill":"opus_S1A372_meterFill","requirementIcon":"opus_S1A372_requirementIcon","root":"opus_S1A372_root","requirements":"opus_S1A372_requirements","requirement":"opus_S1A372_requirement","requirementMet":"opus_S1A372_requirementMet","meterTrack":"opus_S1A372_meterTrack"};
|
|
2962
2962
|
|
|
2963
2963
|
// ../../components/fields/PasswordStrengthField/PasswordStrengthField.tsx
|
|
2964
2964
|
import { jsx as jsx23, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
@@ -3066,7 +3066,7 @@ function PasswordStrengthField({
|
|
|
3066
3066
|
}
|
|
3067
3067
|
|
|
3068
3068
|
// ../../components/fields/RatingField/RatingField.module.css
|
|
3069
|
-
var RatingField_default = {"
|
|
3069
|
+
var RatingField_default = {"numeric":"opus_0tdNUz_numeric","symbol":"opus_0tdNUz_symbol","symbolActive":"opus_0tdNUz_symbolActive","root":"opus_0tdNUz_root","numericActive":"opus_0tdNUz_numericActive"};
|
|
3070
3070
|
|
|
3071
3071
|
// ../../components/fields/RatingField/RatingField.tsx
|
|
3072
3072
|
import { jsx as jsx24 } from "react/jsx-runtime";
|
|
@@ -3141,7 +3141,7 @@ function RatingField({
|
|
|
3141
3141
|
}
|
|
3142
3142
|
|
|
3143
3143
|
// ../../components/fields/SegmentedControlField/SegmentedControlField.module.css
|
|
3144
|
-
var SegmentedControlField_default = {"
|
|
3144
|
+
var SegmentedControlField_default = {"segment":"opus_ZHwfiN_segment","root":"opus_ZHwfiN_root","segmentActive":"opus_ZHwfiN_segmentActive"};
|
|
3145
3145
|
|
|
3146
3146
|
// ../../components/fields/SegmentedControlField/SegmentedControlField.tsx
|
|
3147
3147
|
import { jsx as jsx25 } from "react/jsx-runtime";
|
|
@@ -3196,7 +3196,7 @@ function SegmentedControlField({
|
|
|
3196
3196
|
import { useMemo as useMemo5 } from "react";
|
|
3197
3197
|
|
|
3198
3198
|
// ../../components/fields/SliderRangeField/SliderRangeField.module.css
|
|
3199
|
-
var SliderRangeField_default = {"
|
|
3199
|
+
var SliderRangeField_default = {"root":"opus_k3d0sS_root","slider":"opus_k3d0sS_slider","track":"opus_k3d0sS_track","header":"opus_k3d0sS_header","value":"opus_k3d0sS_value","trackWrap":"opus_k3d0sS_trackWrap","footer":"opus_k3d0sS_footer"};
|
|
3200
3200
|
|
|
3201
3201
|
// ../../components/fields/SliderRangeField/SliderRangeField.tsx
|
|
3202
3202
|
import { jsx as jsx26, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
@@ -3293,7 +3293,7 @@ function SliderRangeField({
|
|
|
3293
3293
|
import { useEffect as useEffect6, useMemo as useMemo6, useRef as useRef7, useState as useState11 } from "react";
|
|
3294
3294
|
|
|
3295
3295
|
// ../../components/fields/PhoneNumberField/PhoneNumberField.module.css
|
|
3296
|
-
var PhoneNumberField_default = {"
|
|
3296
|
+
var PhoneNumberField_default = {"root":"opus_WC4gnN_root","countryValue":"opus_WC4gnN_countryValue","panel":"opus_WC4gnN_panel","code":"opus_WC4gnN_code","optionActive":"opus_WC4gnN_optionActive","flag":"opus_WC4gnN_flag","option":"opus_WC4gnN_option","optionLabel":"opus_WC4gnN_optionLabel","optionDial":"opus_WC4gnN_optionDial","chevron":"opus_WC4gnN_chevron","countryWrap":"opus_WC4gnN_countryWrap","country":"opus_WC4gnN_country","dial":"opus_WC4gnN_dial","empty":"opus_WC4gnN_empty"};
|
|
3297
3297
|
|
|
3298
3298
|
// ../../components/fields/PhoneNumberField/countries.ts
|
|
3299
3299
|
function countryCodeToFlag(code) {
|
|
@@ -3696,7 +3696,7 @@ function PhoneNumberField({
|
|
|
3696
3696
|
import { useEffect as useEffect7, useMemo as useMemo7, useRef as useRef8, useState as useState12 } from "react";
|
|
3697
3697
|
|
|
3698
3698
|
// ../../components/fields/CountryPickerField/CountryPickerField.module.css
|
|
3699
|
-
var CountryPickerField_default = {"
|
|
3699
|
+
var CountryPickerField_default = {"triggerValue":"opus_O7qqfR_triggerValue","root":"opus_O7qqfR_root","flag":"opus_O7qqfR_flag","optionActive":"opus_O7qqfR_optionActive","optionLabel":"opus_O7qqfR_optionLabel","empty":"opus_O7qqfR_empty","optionCode":"opus_O7qqfR_optionCode","option":"opus_O7qqfR_option"};
|
|
3700
3700
|
|
|
3701
3701
|
// ../../components/fields/CountryPickerField/CountryPickerField.tsx
|
|
3702
3702
|
import { jsx as jsx28, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
@@ -3852,7 +3852,7 @@ function CountryPickerField({
|
|
|
3852
3852
|
import { useEffect as useEffect8, useMemo as useMemo8, useRef as useRef9, useState as useState13 } from "react";
|
|
3853
3853
|
|
|
3854
3854
|
// ../../components/fields/TreeSelectField/TreeSelectField.module.css
|
|
3855
|
-
var TreeSelectField_default = {"
|
|
3855
|
+
var TreeSelectField_default = {"treeOptionActive":"opus_Mq6C00_treeOptionActive","treeOption":"opus_Mq6C00_treeOption","root":"opus_Mq6C00_root"};
|
|
3856
3856
|
|
|
3857
3857
|
// ../../components/fields/TreeSelectField/TreeSelectField.tsx
|
|
3858
3858
|
import { Fragment as Fragment3, jsx as jsx29, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
@@ -3981,7 +3981,7 @@ function TreeSelectField({
|
|
|
3981
3981
|
import { useEffect as useEffect9, useMemo as useMemo9, useRef as useRef10, useState as useState14 } from "react";
|
|
3982
3982
|
|
|
3983
3983
|
// ../../components/fields/CascaderField/CascaderField.module.css
|
|
3984
|
-
var CascaderField_default = {"option":"opus_1Fg59A_option","
|
|
3984
|
+
var CascaderField_default = {"option":"opus_1Fg59A_option","root":"opus_1Fg59A_root","panel":"opus_1Fg59A_panel","optionActive":"opus_1Fg59A_optionActive","column":"opus_1Fg59A_column"};
|
|
3985
3985
|
|
|
3986
3986
|
// ../../components/fields/CascaderField/CascaderField.tsx
|
|
3987
3987
|
import { jsx as jsx30, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
@@ -4184,7 +4184,7 @@ function OpusThemeProvider({
|
|
|
4184
4184
|
}
|
|
4185
4185
|
|
|
4186
4186
|
// ../../components/Alert/Alert.module.css
|
|
4187
|
-
var Alert_default = {"
|
|
4187
|
+
var Alert_default = {"icon":"opus_eh3eeT_icon","dismiss":"opus_eh3eeT_dismiss","dismissIcon":"opus_eh3eeT_dismissIcon","content":"opus_eh3eeT_content","iconMark":"opus_eh3eeT_iconMark","title":"opus_eh3eeT_title","description":"opus_eh3eeT_description","alert":"opus_eh3eeT_alert","iconSvg":"opus_eh3eeT_iconSvg","iconFlagged":"opus_eh3eeT_iconFlagged"};
|
|
4188
4188
|
|
|
4189
4189
|
// ../../components/Alert/Alert.tsx
|
|
4190
4190
|
import { jsx as jsx33, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
@@ -4333,7 +4333,7 @@ function useOverlayAccessibility(active, containerRef, {
|
|
|
4333
4333
|
}
|
|
4334
4334
|
|
|
4335
4335
|
// ../../components/Dialog/Dialog.module.css
|
|
4336
|
-
var Dialog_default = {"
|
|
4336
|
+
var Dialog_default = {"backdrop":"opus_sz-ZGI_backdrop","visuallyHidden":"opus_sz-ZGI_visuallyHidden","backdropIn":"opus_sz-ZGI_backdropIn","dialogOut":"opus_sz-ZGI_dialogOut","dialogIn":"opus_sz-ZGI_dialogIn","body":"opus_sz-ZGI_body","iconMark":"opus_sz-ZGI_iconMark","content":"opus_sz-ZGI_content","dialog":"opus_sz-ZGI_dialog","iconSvg":"opus_sz-ZGI_iconSvg","actions":"opus_sz-ZGI_actions","backdropOut":"opus_sz-ZGI_backdropOut","title":"opus_sz-ZGI_title","description":"opus_sz-ZGI_description","icon":"opus_sz-ZGI_icon"};
|
|
4337
4337
|
|
|
4338
4338
|
// ../../components/Dialog/Dialog.tsx
|
|
4339
4339
|
import { jsx as jsx34, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
@@ -4464,7 +4464,7 @@ function Dialog({
|
|
|
4464
4464
|
import { useEffect as useEffect13, useId as useId6, useRef as useRef13, useState as useState16 } from "react";
|
|
4465
4465
|
|
|
4466
4466
|
// ../../components/Modal/Modal.module.css
|
|
4467
|
-
var Modal_default = {"
|
|
4467
|
+
var Modal_default = {"backdrop":"opus_LQbzGS_backdrop","footer":"opus_LQbzGS_footer","close":"opus_LQbzGS_close","modalBackdropIn":"opus_LQbzGS_modalBackdropIn","header":"opus_LQbzGS_header","modalPanelOut":"opus_LQbzGS_modalPanelOut","actions":"opus_LQbzGS_actions","body":"opus_LQbzGS_body","footerContent":"opus_LQbzGS_footerContent","closeIcon":"opus_LQbzGS_closeIcon","title":"opus_LQbzGS_title","modalPanelIn":"opus_LQbzGS_modalPanelIn","modalBackdropOut":"opus_LQbzGS_modalBackdropOut","modal":"opus_LQbzGS_modal","heading":"opus_LQbzGS_heading","description":"opus_LQbzGS_description"};
|
|
4468
4468
|
|
|
4469
4469
|
// ../../components/Modal/Modal.tsx
|
|
4470
4470
|
import { Fragment as Fragment4, jsx as jsx35, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
@@ -4595,7 +4595,7 @@ function ModalDefaultActions({ onClose }) {
|
|
|
4595
4595
|
import { useEffect as useEffect14, useId as useId7, useRef as useRef14, useState as useState17 } from "react";
|
|
4596
4596
|
|
|
4597
4597
|
// ../../components/Drawer/Drawer.module.css
|
|
4598
|
-
var Drawer_default = {"
|
|
4598
|
+
var Drawer_default = {"drawerOutTop":"opus_0CaGbZ_drawerOutTop","footer":"opus_0CaGbZ_footer","drawerOutRight":"opus_0CaGbZ_drawerOutRight","backdrop":"opus_0CaGbZ_backdrop","drawer":"opus_0CaGbZ_drawer","title":"opus_0CaGbZ_title","drawerInRight":"opus_0CaGbZ_drawerInRight","description":"opus_0CaGbZ_description","heading":"opus_0CaGbZ_heading","drawerBackdropIn":"opus_0CaGbZ_drawerBackdropIn","drawerOutBottom":"opus_0CaGbZ_drawerOutBottom","closeIcon":"opus_0CaGbZ_closeIcon","actions":"opus_0CaGbZ_actions","drawerInLeft":"opus_0CaGbZ_drawerInLeft","drawerOutLeft":"opus_0CaGbZ_drawerOutLeft","body":"opus_0CaGbZ_body","header":"opus_0CaGbZ_header","close":"opus_0CaGbZ_close","drawerInBottom":"opus_0CaGbZ_drawerInBottom","footerContent":"opus_0CaGbZ_footerContent","drawerBackdropOut":"opus_0CaGbZ_drawerBackdropOut","drawerInTop":"opus_0CaGbZ_drawerInTop"};
|
|
4599
4599
|
|
|
4600
4600
|
// ../../components/Drawer/Drawer.tsx
|
|
4601
4601
|
import { Fragment as Fragment5, jsx as jsx36, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
@@ -4735,7 +4735,7 @@ import {
|
|
|
4735
4735
|
} from "react";
|
|
4736
4736
|
|
|
4737
4737
|
// ../../components/Popover/Popover.module.css
|
|
4738
|
-
var Popover_default = {"
|
|
4738
|
+
var Popover_default = {"popoverIn":"opus_yq4OU0_popoverIn","panel":"opus_yq4OU0_panel","title":"opus_yq4OU0_title","content":"opus_yq4OU0_content","root":"opus_yq4OU0_root","arrow":"opus_yq4OU0_arrow"};
|
|
4739
4739
|
|
|
4740
4740
|
// ../../components/Popover/Popover.tsx
|
|
4741
4741
|
import { jsx as jsx37, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
@@ -4902,7 +4902,7 @@ function resolveMegaMenuPortalStyle(root, inTopNavigation) {
|
|
|
4902
4902
|
}
|
|
4903
4903
|
|
|
4904
4904
|
// ../../components/MegaMenu/MegaMenu.module.css
|
|
4905
|
-
var MegaMenu_default = {"
|
|
4905
|
+
var MegaMenu_default = {"megaMenuOut":"opus_Y_ikQV_megaMenuOut","root":"opus_Y_ikQV_root","panelContent":"opus_Y_ikQV_panelContent","items":"opus_Y_ikQV_items","panel":"opus_Y_ikQV_panel","eyebrow":"opus_Y_ikQV_eyebrow","sections":"opus_Y_ikQV_sections","featuredAction":"opus_Y_ikQV_featuredAction","megaMenuIn":"opus_Y_ikQV_megaMenuIn","featured":"opus_Y_ikQV_featured","section":"opus_Y_ikQV_section","item":"opus_Y_ikQV_item","itemIcon":"opus_Y_ikQV_itemIcon","trigger":"opus_Y_ikQV_trigger","menuBar":"opus_Y_ikQV_menuBar","itemCopy":"opus_Y_ikQV_itemCopy"};
|
|
4906
4906
|
|
|
4907
4907
|
// ../../components/MegaMenu/MegaMenu.tsx
|
|
4908
4908
|
import { jsx as jsx38, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
@@ -5345,7 +5345,7 @@ function MegaMenu({
|
|
|
5345
5345
|
}
|
|
5346
5346
|
|
|
5347
5347
|
// ../../components/TopNavigation/TopNavigation.module.css
|
|
5348
|
-
var TopNavigation_default = {"
|
|
5348
|
+
var TopNavigation_default = {"nav":"opus_OIomR6_nav","menuSlotMega":"opus_OIomR6_menuSlotMega","menuSlot":"opus_OIomR6_menuSlot","menuTrigger":"opus_OIomR6_menuTrigger","bar":"opus_OIomR6_bar"};
|
|
5349
5349
|
|
|
5350
5350
|
// ../../components/TopNavigation/TopNavigation.tsx
|
|
5351
5351
|
import { Fragment as Fragment6, jsx as jsx39 } from "react/jsx-runtime";
|
|
@@ -5702,7 +5702,7 @@ function handleMenuKeyDown(event, menu, onEscape) {
|
|
|
5702
5702
|
}
|
|
5703
5703
|
|
|
5704
5704
|
// ../../components/DropdownMenu/DropdownMenu.module.css
|
|
5705
|
-
var DropdownMenu_default = {"
|
|
5705
|
+
var DropdownMenu_default = {"dropdownOut":"opus_UUVDVQ_dropdownOut","root":"opus_UUVDVQ_root","dropdownIn":"opus_UUVDVQ_dropdownIn","shortcut":"opus_UUVDVQ_shortcut","icon":"opus_UUVDVQ_icon","item":"opus_UUVDVQ_item","menu":"opus_UUVDVQ_menu","label":"opus_UUVDVQ_label"};
|
|
5706
5706
|
|
|
5707
5707
|
// ../../components/DropdownMenu/DropdownMenu.tsx
|
|
5708
5708
|
import { jsx as jsx40, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
@@ -6042,7 +6042,7 @@ import {
|
|
|
6042
6042
|
import { createPortal as createPortal4 } from "react-dom";
|
|
6043
6043
|
|
|
6044
6044
|
// ../../components/ContextMenu/ContextMenu.module.css
|
|
6045
|
-
var ContextMenu_default = {"
|
|
6045
|
+
var ContextMenu_default = {"contextMenuBackdropIn":"opus_nMhhae_contextMenuBackdropIn","menu":"opus_nMhhae_menu","contextMenuIn":"opus_nMhhae_contextMenuIn","layer":"opus_nMhhae_layer","target":"opus_nMhhae_target","backdrop":"opus_nMhhae_backdrop"};
|
|
6046
6046
|
|
|
6047
6047
|
// ../../components/ContextMenu/ContextMenuProvider.tsx
|
|
6048
6048
|
import { jsx as jsx41, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
@@ -6353,7 +6353,7 @@ import { faMagnifyingGlass } from "@fortawesome/free-solid-svg-icons";
|
|
|
6353
6353
|
import { FontAwesomeIcon as FontAwesomeIcon5 } from "@fortawesome/react-fontawesome";
|
|
6354
6354
|
|
|
6355
6355
|
// ../../components/CommandPalette/CommandPalette.module.css
|
|
6356
|
-
var CommandPalette_default = {"
|
|
6356
|
+
var CommandPalette_default = {"searchIcon":"opus_k1ypuy_searchIcon","itemLabel":"opus_k1ypuy_itemLabel","searchInput":"opus_k1ypuy_searchInput","commandPalettePanelIn":"opus_k1ypuy_commandPalettePanelIn","footer":"opus_k1ypuy_footer","shortcut":"opus_k1ypuy_shortcut","commandPalettePanelOut":"opus_k1ypuy_commandPalettePanelOut","empty":"opus_k1ypuy_empty","commandPaletteBackdropOut":"opus_k1ypuy_commandPaletteBackdropOut","visuallyHidden":"opus_k1ypuy_visuallyHidden","itemDescription":"opus_k1ypuy_itemDescription","panel":"opus_k1ypuy_panel","itemMain":"opus_k1ypuy_itemMain","item":"opus_k1ypuy_item","backdrop":"opus_k1ypuy_backdrop","results":"opus_k1ypuy_results","group":"opus_k1ypuy_group","searchIconSvg":"opus_k1ypuy_searchIconSvg","groupLabel":"opus_k1ypuy_groupLabel","commandPaletteBackdropIn":"opus_k1ypuy_commandPaletteBackdropIn","searchWrap":"opus_k1ypuy_searchWrap"};
|
|
6357
6357
|
|
|
6358
6358
|
// ../../components/CommandPalette/CommandPalette.tsx
|
|
6359
6359
|
import { jsx as jsx42, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
@@ -6693,7 +6693,7 @@ function AccordionGroup({
|
|
|
6693
6693
|
}
|
|
6694
6694
|
|
|
6695
6695
|
// ../../components/Accordion/Accordion.module.css
|
|
6696
|
-
var Accordion_default = {"
|
|
6696
|
+
var Accordion_default = {"content":"opus_WNZQMV_content","panelInner":"opus_WNZQMV_panelInner","standalone":"opus_WNZQMV_standalone","triggerLabel":"opus_WNZQMV_triggerLabel","panel":"opus_WNZQMV_panel","trigger":"opus_WNZQMV_trigger","chevron":"opus_WNZQMV_chevron","item":"opus_WNZQMV_item"};
|
|
6697
6697
|
|
|
6698
6698
|
// ../../components/Accordion/Accordion.tsx
|
|
6699
6699
|
import { jsx as jsx44, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
@@ -6786,7 +6786,7 @@ import {
|
|
|
6786
6786
|
} from "react";
|
|
6787
6787
|
|
|
6788
6788
|
// ../../components/ShowMore/ShowMore.module.css
|
|
6789
|
-
var ShowMore_default = {"
|
|
6789
|
+
var ShowMore_default = {"toggleLabel":"opus_dSk-ve_toggleLabel","chevron":"opus_dSk-ve_chevron","root":"opus_dSk-ve_root","toggle":"opus_dSk-ve_toggle","inner":"opus_dSk-ve_inner","contentShell":"opus_dSk-ve_contentShell","showMoreLabelIn":"opus_dSk-ve_showMoreLabelIn"};
|
|
6790
6790
|
|
|
6791
6791
|
// ../../components/ShowMore/ShowMore.tsx
|
|
6792
6792
|
import { jsx as jsx45, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
@@ -6890,7 +6890,7 @@ function ShowMore({
|
|
|
6890
6890
|
}
|
|
6891
6891
|
|
|
6892
6892
|
// ../../components/Toast/Toast.module.css
|
|
6893
|
-
var Toast_default = {"
|
|
6893
|
+
var Toast_default = {"main":"opus_cklQPW_main","title":"opus_cklQPW_title","progressBar":"opus_cklQPW_progressBar","toastProgress":"opus_cklQPW_toastProgress","description":"opus_cklQPW_description","iconMark":"opus_cklQPW_iconMark","toast":"opus_cklQPW_toast","dismiss":"opus_cklQPW_dismiss","progressTrack":"opus_cklQPW_progressTrack","content":"opus_cklQPW_content","icon":"opus_cklQPW_icon","body":"opus_cklQPW_body","dismissIcon":"opus_cklQPW_dismissIcon","iconSvg":"opus_cklQPW_iconSvg"};
|
|
6894
6894
|
|
|
6895
6895
|
// ../../components/Toast/Toast.tsx
|
|
6896
6896
|
import { jsx as jsx46, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
@@ -6970,7 +6970,7 @@ import {
|
|
|
6970
6970
|
} from "react";
|
|
6971
6971
|
|
|
6972
6972
|
// ../../components/ToastProvider/ToastProvider.module.css
|
|
6973
|
-
var ToastProvider_default = {"
|
|
6973
|
+
var ToastProvider_default = {"viewportLeft":"opus_z3pSp7_viewportLeft","item":"opus_z3pSp7_item","itemClip":"opus_z3pSp7_itemClip","itemSurface":"opus_z3pSp7_itemSurface","viewport":"opus_z3pSp7_viewport","itemBackdrop":"opus_z3pSp7_itemBackdrop","viewportRight":"opus_z3pSp7_viewportRight","viewportTop":"opus_z3pSp7_viewportTop","viewportBottom":"opus_z3pSp7_viewportBottom"};
|
|
6974
6974
|
|
|
6975
6975
|
// ../../components/ToastProvider/ToastProvider.tsx
|
|
6976
6976
|
import { jsx as jsx47, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
@@ -7340,7 +7340,7 @@ function ToastProvider({
|
|
|
7340
7340
|
import { useId as useId15, useState as useState28 } from "react";
|
|
7341
7341
|
|
|
7342
7342
|
// ../../components/Tabs/Tabs.module.css
|
|
7343
|
-
var Tabs_default = {"
|
|
7343
|
+
var Tabs_default = {"panel":"opus_ADVJmy_panel","list":"opus_ADVJmy_list","root":"opus_ADVJmy_root","tab":"opus_ADVJmy_tab"};
|
|
7344
7344
|
|
|
7345
7345
|
// ../../components/Tabs/Tabs.tsx
|
|
7346
7346
|
import { jsx as jsx48, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
@@ -7454,7 +7454,7 @@ function Tabs({
|
|
|
7454
7454
|
}
|
|
7455
7455
|
|
|
7456
7456
|
// ../../components/Card/Card.module.css
|
|
7457
|
-
var Card_default = {"
|
|
7457
|
+
var Card_default = {"footerContent":"opus_qWo1sP_footerContent","actions":"opus_qWo1sP_actions","card":"opus_qWo1sP_card","content":"opus_qWo1sP_content","body":"opus_qWo1sP_body","footer":"opus_qWo1sP_footer","media":"opus_qWo1sP_media","title":"opus_qWo1sP_title","eyebrow":"opus_qWo1sP_eyebrow","heading":"opus_qWo1sP_heading"};
|
|
7458
7458
|
|
|
7459
7459
|
// ../../components/Card/Card.tsx
|
|
7460
7460
|
import { jsx as jsx49, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
@@ -7485,7 +7485,7 @@ function Card({
|
|
|
7485
7485
|
}
|
|
7486
7486
|
|
|
7487
7487
|
// ../../components/dashboardMetricCardLayout/dashboardMetricCardLayout.module.css
|
|
7488
|
-
var dashboardMetricCardLayout_default = {"header":"opus_6_sptY_header","
|
|
7488
|
+
var dashboardMetricCardLayout_default = {"header":"opus_6_sptY_header","iconPlaceholder":"opus_6_sptY_iconPlaceholder","value":"opus_6_sptY_value","metaPlaceholder":"opus_6_sptY_metaPlaceholder","iconSlot":"opus_6_sptY_iconSlot","label":"opus_6_sptY_label","shell":"opus_6_sptY_shell","metaSlot":"opus_6_sptY_metaSlot"};
|
|
7489
7489
|
|
|
7490
7490
|
// ../../components/StatCard/StatCard.module.css
|
|
7491
7491
|
var StatCard_default = {"change":"opus_KIXsQY_change"};
|
|
@@ -7515,7 +7515,7 @@ function StatCard({
|
|
|
7515
7515
|
}
|
|
7516
7516
|
|
|
7517
7517
|
// ../../components/Gauge/Gauge.module.css
|
|
7518
|
-
var Gauge_default = {"
|
|
7518
|
+
var Gauge_default = {"gaugeValue":"opus_t6IuQe_gaugeValue","gaugeCenter":"opus_t6IuQe_gaugeCenter","gaugeSlot":"opus_t6IuQe_gaugeSlot","footer":"opus_t6IuQe_footer","header":"opus_t6IuQe_header","footerLabel":"opus_t6IuQe_footerLabel","change":"opus_t6IuQe_change","subtitle":"opus_t6IuQe_subtitle","heading":"opus_t6IuQe_heading","widget":"opus_t6IuQe_widget","body":"opus_t6IuQe_body","summary":"opus_t6IuQe_summary","gaugeTrack":"opus_t6IuQe_gaugeTrack","title":"opus_t6IuQe_title","footerTrend":"opus_t6IuQe_footerTrend","gauge":"opus_t6IuQe_gauge","gaugeSvg":"opus_t6IuQe_gaugeSvg","footerValue":"opus_t6IuQe_footerValue","footerItem":"opus_t6IuQe_footerItem"};
|
|
7519
7519
|
|
|
7520
7520
|
// ../../components/Gauge/Gauge.tsx
|
|
7521
7521
|
import { jsx as jsx51, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
@@ -7649,7 +7649,7 @@ function Gauge({
|
|
|
7649
7649
|
import { useId as useId16 } from "react";
|
|
7650
7650
|
|
|
7651
7651
|
// ../../components/Sparkline/Sparkline.module.css
|
|
7652
|
-
var Sparkline_default = {"
|
|
7652
|
+
var Sparkline_default = {"area":"opus_xXtB87_area","svg":"opus_xXtB87_svg","endPoint":"opus_xXtB87_endPoint","chart":"opus_xXtB87_chart","sparkline":"opus_xXtB87_sparkline","label":"opus_xXtB87_label","line":"opus_xXtB87_line"};
|
|
7653
7653
|
|
|
7654
7654
|
// ../../components/Sparkline/Sparkline.tsx
|
|
7655
7655
|
import { jsx as jsx52, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
@@ -7715,7 +7715,7 @@ function Sparkline({
|
|
|
7715
7715
|
}
|
|
7716
7716
|
|
|
7717
7717
|
// ../../components/ProgressRing/ProgressRing.module.css
|
|
7718
|
-
var ProgressRing_default = {"
|
|
7718
|
+
var ProgressRing_default = {"ring":"opus_YxX6Hh_ring","svg":"opus_YxX6Hh_svg","center":"opus_YxX6Hh_center","track":"opus_YxX6Hh_track","value":"opus_YxX6Hh_value"};
|
|
7719
7719
|
|
|
7720
7720
|
// ../../components/ProgressRing/ProgressRing.tsx
|
|
7721
7721
|
import { jsx as jsx53, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
@@ -7748,7 +7748,7 @@ function ProgressRing({ label, max = 100, value }) {
|
|
|
7748
7748
|
}
|
|
7749
7749
|
|
|
7750
7750
|
// ../../components/ProgressBar/ProgressBar.module.css
|
|
7751
|
-
var ProgressBar_default = {"header":"opus_q04AvA_header","
|
|
7751
|
+
var ProgressBar_default = {"fill":"opus_q04AvA_fill","header":"opus_q04AvA_header","track":"opus_q04AvA_track","label":"opus_q04AvA_label","value":"opus_q04AvA_value","bar":"opus_q04AvA_bar"};
|
|
7752
7752
|
|
|
7753
7753
|
// ../../components/ProgressBar/ProgressBar.tsx
|
|
7754
7754
|
import { jsx as jsx54, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
@@ -7768,7 +7768,7 @@ function ProgressBar({ label, max = 100, value }) {
|
|
|
7768
7768
|
}
|
|
7769
7769
|
|
|
7770
7770
|
// ../../components/Speedometer/Speedometer.module.css
|
|
7771
|
-
var Speedometer_default = {"
|
|
7771
|
+
var Speedometer_default = {"needle":"opus__jpB7z_needle","hub":"opus__jpB7z_hub","svg":"opus__jpB7z_svg","speedometer":"opus__jpB7z_speedometer","track":"opus__jpB7z_track","value":"opus__jpB7z_value","center":"opus__jpB7z_center"};
|
|
7772
7772
|
|
|
7773
7773
|
// ../../components/Speedometer/Speedometer.tsx
|
|
7774
7774
|
import { jsx as jsx55, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
@@ -7801,7 +7801,7 @@ function Speedometer({ label, max = 100, value }) {
|
|
|
7801
7801
|
}
|
|
7802
7802
|
|
|
7803
7803
|
// ../../components/MetricTile/MetricTile.module.css
|
|
7804
|
-
var MetricTile_default = {"
|
|
7804
|
+
var MetricTile_default = {"tile":"opus_-dz9KL_tile","sparklineRail":"opus_-dz9KL_sparklineRail","sparklineReserve":"opus_-dz9KL_sparklineReserve"};
|
|
7805
7805
|
|
|
7806
7806
|
// ../../components/MetricTile/MetricTile.tsx
|
|
7807
7807
|
import { jsx as jsx56, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
@@ -7844,7 +7844,7 @@ function TrendBadge({ direction, value }) {
|
|
|
7844
7844
|
}
|
|
7845
7845
|
|
|
7846
7846
|
// ../../components/Panel/Panel.module.css
|
|
7847
|
-
var Panel_default = {"
|
|
7847
|
+
var Panel_default = {"panel":"opus_JZHUc__panel","description":"opus_JZHUc__description","title":"opus_JZHUc__title","footer":"opus_JZHUc__footer","headerActions":"opus_JZHUc__headerActions","body":"opus_JZHUc__body","heading":"opus_JZHUc__heading","header":"opus_JZHUc__header"};
|
|
7848
7848
|
|
|
7849
7849
|
// ../../components/Panel/Panel.tsx
|
|
7850
7850
|
import { jsx as jsx58, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
@@ -8028,7 +8028,7 @@ function resolveSectionGapVars(gap = "md") {
|
|
|
8028
8028
|
}
|
|
8029
8029
|
|
|
8030
8030
|
// ../../components/Section/Section.module.css
|
|
8031
|
-
var Section_default = {"
|
|
8031
|
+
var Section_default = {"title":"opus_FajZiH_title","description":"opus_FajZiH_description","section":"opus_FajZiH_section","body":"opus_FajZiH_body","header":"opus_FajZiH_header","column":"opus_FajZiH_column","row":"opus_FajZiH_row"};
|
|
8032
8032
|
|
|
8033
8033
|
// ../../components/Section/Section.tsx
|
|
8034
8034
|
import { jsx as jsx59, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
@@ -8109,7 +8109,7 @@ var Section = Object.assign(SectionRoot, {
|
|
|
8109
8109
|
});
|
|
8110
8110
|
|
|
8111
8111
|
// ../../components/Table/Table.module.css
|
|
8112
|
-
var Table_default = {"
|
|
8112
|
+
var Table_default = {"visuallyHidden":"opus_2q7S14_visuallyHidden","table":"opus_2q7S14_table","caption":"opus_2q7S14_caption","wrap":"opus_2q7S14_wrap","empty":"opus_2q7S14_empty"};
|
|
8113
8113
|
|
|
8114
8114
|
// ../../components/Table/Table.tsx
|
|
8115
8115
|
import { jsx as jsx60, jsxs as jsxs50 } from "react/jsx-runtime";
|
|
@@ -8138,12 +8138,209 @@ function Table({
|
|
|
8138
8138
|
}
|
|
8139
8139
|
|
|
8140
8140
|
// ../../components/DataGrid/DataGrid.tsx
|
|
8141
|
-
import {
|
|
8142
|
-
|
|
8141
|
+
import {
|
|
8142
|
+
Fragment as Fragment7,
|
|
8143
|
+
forwardRef,
|
|
8144
|
+
useCallback as useCallback12,
|
|
8145
|
+
useEffect as useEffect22,
|
|
8146
|
+
useLayoutEffect as useLayoutEffect8,
|
|
8147
|
+
useMemo as useMemo14,
|
|
8148
|
+
useRef as useRef23,
|
|
8149
|
+
useState as useState29
|
|
8150
|
+
} from "react";
|
|
8151
|
+
import { faChevronDown, faChevronRight, faFilter } from "@fortawesome/free-solid-svg-icons";
|
|
8143
8152
|
import { FontAwesomeIcon as FontAwesomeIcon6 } from "@fortawesome/react-fontawesome";
|
|
8144
8153
|
|
|
8154
|
+
// ../../components/DataGrid/dataGridLayout.ts
|
|
8155
|
+
function cellText(value) {
|
|
8156
|
+
if (value === null || value === void 0 || typeof value === "boolean") {
|
|
8157
|
+
return "";
|
|
8158
|
+
}
|
|
8159
|
+
if (typeof value === "number" || typeof value === "string") {
|
|
8160
|
+
return String(value);
|
|
8161
|
+
}
|
|
8162
|
+
if (Array.isArray(value)) {
|
|
8163
|
+
return value.map(cellText).join(" ");
|
|
8164
|
+
}
|
|
8165
|
+
return "";
|
|
8166
|
+
}
|
|
8167
|
+
function getRowCellText(row, key) {
|
|
8168
|
+
var _a2;
|
|
8169
|
+
if (key === "team") {
|
|
8170
|
+
return cellText((_a2 = row.values.team) != null ? _a2 : row.label);
|
|
8171
|
+
}
|
|
8172
|
+
return cellText(row.values[key]);
|
|
8173
|
+
}
|
|
8174
|
+
function buildGroupedDisplayRows(rows, groupBy, collapsedGroupIds) {
|
|
8175
|
+
var _a2;
|
|
8176
|
+
const groups = /* @__PURE__ */ new Map();
|
|
8177
|
+
for (const row of rows) {
|
|
8178
|
+
const label = getRowCellText(row, groupBy) || "Ungrouped";
|
|
8179
|
+
const bucket = (_a2 = groups.get(label)) != null ? _a2 : [];
|
|
8180
|
+
bucket.push(row);
|
|
8181
|
+
groups.set(label, bucket);
|
|
8182
|
+
}
|
|
8183
|
+
const display = [];
|
|
8184
|
+
for (const [label, groupRows] of groups) {
|
|
8185
|
+
const id = `group:${label}`;
|
|
8186
|
+
const expanded = !collapsedGroupIds.has(id);
|
|
8187
|
+
display.push({
|
|
8188
|
+
kind: "group",
|
|
8189
|
+
id,
|
|
8190
|
+
label,
|
|
8191
|
+
count: groupRows.length,
|
|
8192
|
+
expanded
|
|
8193
|
+
});
|
|
8194
|
+
if (expanded) {
|
|
8195
|
+
for (const row of groupRows) {
|
|
8196
|
+
display.push({
|
|
8197
|
+
kind: "data",
|
|
8198
|
+
row,
|
|
8199
|
+
depth: 1,
|
|
8200
|
+
expandable: false,
|
|
8201
|
+
expanded: false,
|
|
8202
|
+
hasChildren: false
|
|
8203
|
+
});
|
|
8204
|
+
}
|
|
8205
|
+
}
|
|
8206
|
+
}
|
|
8207
|
+
return display;
|
|
8208
|
+
}
|
|
8209
|
+
function buildTreeDisplayRows(rows, expandedIds, depth = 0) {
|
|
8210
|
+
var _a2;
|
|
8211
|
+
const display = [];
|
|
8212
|
+
for (const row of rows) {
|
|
8213
|
+
const children = (_a2 = row.children) != null ? _a2 : [];
|
|
8214
|
+
const hasChildren = children.length > 0;
|
|
8215
|
+
const expanded = hasChildren && expandedIds.has(row.id);
|
|
8216
|
+
display.push({
|
|
8217
|
+
kind: "data",
|
|
8218
|
+
row,
|
|
8219
|
+
depth,
|
|
8220
|
+
expandable: hasChildren,
|
|
8221
|
+
expanded,
|
|
8222
|
+
hasChildren
|
|
8223
|
+
});
|
|
8224
|
+
if (expanded) {
|
|
8225
|
+
display.push(...buildTreeDisplayRows(children, expandedIds, depth + 1));
|
|
8226
|
+
}
|
|
8227
|
+
}
|
|
8228
|
+
return display;
|
|
8229
|
+
}
|
|
8230
|
+
function buildFlatDisplayRows(rows) {
|
|
8231
|
+
return rows.map((row) => ({
|
|
8232
|
+
kind: "data",
|
|
8233
|
+
row,
|
|
8234
|
+
depth: 0,
|
|
8235
|
+
expandable: false,
|
|
8236
|
+
expanded: false,
|
|
8237
|
+
hasChildren: false
|
|
8238
|
+
}));
|
|
8239
|
+
}
|
|
8240
|
+
function collectTreeIds(rows) {
|
|
8241
|
+
var _a2;
|
|
8242
|
+
const ids = [];
|
|
8243
|
+
for (const row of rows) {
|
|
8244
|
+
if ((_a2 = row.children) == null ? void 0 : _a2.length) {
|
|
8245
|
+
ids.push(row.id);
|
|
8246
|
+
ids.push(...collectTreeIds(row.children));
|
|
8247
|
+
}
|
|
8248
|
+
}
|
|
8249
|
+
return ids;
|
|
8250
|
+
}
|
|
8251
|
+
|
|
8252
|
+
// ../../components/DataGrid/dataGridPivot.ts
|
|
8253
|
+
function toNumber(value) {
|
|
8254
|
+
const cleaned = value.replace(/%/g, "").replace(/^\+/, "").trim();
|
|
8255
|
+
if (!cleaned || Number.isNaN(Number(cleaned))) {
|
|
8256
|
+
return null;
|
|
8257
|
+
}
|
|
8258
|
+
return Number(cleaned);
|
|
8259
|
+
}
|
|
8260
|
+
function aggregate(values, mode) {
|
|
8261
|
+
if (mode === "count") {
|
|
8262
|
+
return values.length;
|
|
8263
|
+
}
|
|
8264
|
+
if (!values.length) {
|
|
8265
|
+
return 0;
|
|
8266
|
+
}
|
|
8267
|
+
const sum = values.reduce((total, value) => total + value, 0);
|
|
8268
|
+
return mode === "avg" ? sum / values.length : sum;
|
|
8269
|
+
}
|
|
8270
|
+
function formatMeasure(value, sample) {
|
|
8271
|
+
if (sample.includes("%")) {
|
|
8272
|
+
return `${Math.round(value)}%`;
|
|
8273
|
+
}
|
|
8274
|
+
if (Number.isInteger(value)) {
|
|
8275
|
+
return value;
|
|
8276
|
+
}
|
|
8277
|
+
return Math.round(value * 10) / 10;
|
|
8278
|
+
}
|
|
8279
|
+
function buildPivotGrid(sourceRows, config2) {
|
|
8280
|
+
var _a2, _b2;
|
|
8281
|
+
const aggregator = (_a2 = config2.aggregator) != null ? _a2 : "sum";
|
|
8282
|
+
const rowDims = config2.rows.length ? config2.rows : ["team"];
|
|
8283
|
+
const colDims = config2.columns.length ? config2.columns : ["group"];
|
|
8284
|
+
const valueKeys = config2.values.length ? config2.values : ["q1"];
|
|
8285
|
+
const columnLabels = /* @__PURE__ */ new Set();
|
|
8286
|
+
const matrix = /* @__PURE__ */ new Map();
|
|
8287
|
+
const rowLabels = /* @__PURE__ */ new Map();
|
|
8288
|
+
const samples = /* @__PURE__ */ new Map();
|
|
8289
|
+
for (const source of sourceRows) {
|
|
8290
|
+
const rowKey = rowDims.map((key) => getRowCellText(source, key) || "\u2014").join(" \xB7 ");
|
|
8291
|
+
const colKey = colDims.map((key) => getRowCellText(source, key) || "\u2014").join(" \xB7 ");
|
|
8292
|
+
rowLabels.set(rowKey, rowKey);
|
|
8293
|
+
if (!matrix.has(rowKey)) {
|
|
8294
|
+
matrix.set(rowKey, /* @__PURE__ */ new Map());
|
|
8295
|
+
}
|
|
8296
|
+
const rowBucket = matrix.get(rowKey);
|
|
8297
|
+
for (const valueKey of valueKeys) {
|
|
8298
|
+
const cellKey = valueKeys.length === 1 ? colKey : `${colKey} \xB7 ${valueKey}`;
|
|
8299
|
+
columnLabels.add(cellKey);
|
|
8300
|
+
const raw = getRowCellText(source, valueKey);
|
|
8301
|
+
const numeric = toNumber(raw);
|
|
8302
|
+
if (!samples.has(valueKey) && raw) {
|
|
8303
|
+
samples.set(valueKey, raw);
|
|
8304
|
+
}
|
|
8305
|
+
const values = (_b2 = rowBucket.get(cellKey)) != null ? _b2 : [];
|
|
8306
|
+
if (aggregator === "count") {
|
|
8307
|
+
values.push(1);
|
|
8308
|
+
} else if (numeric !== null) {
|
|
8309
|
+
values.push(numeric);
|
|
8310
|
+
}
|
|
8311
|
+
rowBucket.set(cellKey, values);
|
|
8312
|
+
}
|
|
8313
|
+
}
|
|
8314
|
+
const sortedColumnLabels = Array.from(columnLabels).sort((a, b) => a.localeCompare(b));
|
|
8315
|
+
const columns = [
|
|
8316
|
+
{ key: "team", label: rowDims.join(" \xB7 "), align: "left", sortable: true, filterable: true },
|
|
8317
|
+
...sortedColumnLabels.map((label) => ({
|
|
8318
|
+
key: label,
|
|
8319
|
+
label,
|
|
8320
|
+
align: "right",
|
|
8321
|
+
sortable: true,
|
|
8322
|
+
filterable: true
|
|
8323
|
+
}))
|
|
8324
|
+
];
|
|
8325
|
+
const rows = Array.from(matrix.entries()).map(([rowKey, cells], index) => {
|
|
8326
|
+
var _a3, _b3, _c2;
|
|
8327
|
+
const values = { team: rowKey };
|
|
8328
|
+
for (const columnLabel of sortedColumnLabels) {
|
|
8329
|
+
const nums = (_a3 = cells.get(columnLabel)) != null ? _a3 : [];
|
|
8330
|
+
const sampleKey = (_b3 = valueKeys.find((key) => columnLabel.includes(key))) != null ? _b3 : valueKeys[0];
|
|
8331
|
+
const sample = (_c2 = samples.get(sampleKey)) != null ? _c2 : "";
|
|
8332
|
+
values[columnLabel] = formatMeasure(aggregate(nums, aggregator), sample);
|
|
8333
|
+
}
|
|
8334
|
+
return {
|
|
8335
|
+
id: `pivot-${index + 1}`,
|
|
8336
|
+
values
|
|
8337
|
+
};
|
|
8338
|
+
});
|
|
8339
|
+
return { columns, rows };
|
|
8340
|
+
}
|
|
8341
|
+
|
|
8145
8342
|
// ../../components/DataGrid/DataGrid.module.css
|
|
8146
|
-
var DataGrid_default = {"
|
|
8343
|
+
var DataGrid_default = {"detailCell":"opus_zN0bNb_detailCell","filterInput":"opus_zN0bNb_filterInput","sortIndicatorButton":"opus_zN0bNb_sortIndicatorButton","chevron":"opus_zN0bNb_chevron","grid":"opus_zN0bNb_grid","wrap":"opus_zN0bNb_wrap","spacerRow":"opus_zN0bNb_spacerRow","rowHeader":"opus_zN0bNb_rowHeader","menuChevron":"opus_zN0bNb_menuChevron","expandSpacer":"opus_zN0bNb_expandSpacer","headerControls":"opus_zN0bNb_headerControls","groupRow":"opus_zN0bNb_groupRow","sortButtonLabel":"opus_zN0bNb_sortButtonLabel","menuAction":"opus_zN0bNb_menuAction","menuButton":"opus_zN0bNb_menuButton","menuHost":"opus_zN0bNb_menuHost","sortButton":"opus_zN0bNb_sortButton","headerMenu":"opus_zN0bNb_headerMenu","headerCell":"opus_zN0bNb_headerCell","menuFilterIcon":"opus_zN0bNb_menuFilterIcon","empty":"opus_zN0bNb_empty","expandButton":"opus_zN0bNb_expandButton","caption":"opus_zN0bNb_caption","gridBody":"opus_zN0bNb_gridBody","sortIndicator":"opus_zN0bNb_sortIndicator","columnResizeHandle":"opus_zN0bNb_columnResizeHandle","groupCount":"opus_zN0bNb_groupCount","visuallyHidden":"opus_zN0bNb_visuallyHidden","detailRow":"opus_zN0bNb_detailRow","infiniteFooter":"opus_zN0bNb_infiniteFooter","rowHeaderInner":"opus_zN0bNb_rowHeaderInner","corner":"opus_zN0bNb_corner","menuSection":"opus_zN0bNb_menuSection","menuLabel":"opus_zN0bNb_menuLabel","headerLabel":"opus_zN0bNb_headerLabel","frame":"opus_zN0bNb_frame","groupCell":"opus_zN0bNb_groupCell","rowHeaderLabel":"opus_zN0bNb_rowHeaderLabel","groupButton":"opus_zN0bNb_groupButton"};
|
|
8147
8344
|
|
|
8148
8345
|
// ../../components/DataGrid/DataGrid.tsx
|
|
8149
8346
|
import { jsx as jsx61, jsxs as jsxs51 } from "react/jsx-runtime";
|
|
@@ -8158,6 +8355,8 @@ var HEADER_CONTROL_GAP = 6;
|
|
|
8158
8355
|
var SORT_INDICATOR_WIDTH = 8;
|
|
8159
8356
|
var SORT_LABEL_GAP = 8;
|
|
8160
8357
|
var RESIZE_HANDLE_WIDTH = 14;
|
|
8358
|
+
var DEFAULT_VIEWPORT = 360;
|
|
8359
|
+
var OVERSCAN = 6;
|
|
8161
8360
|
function resolveColumnFeatures(column) {
|
|
8162
8361
|
return {
|
|
8163
8362
|
filterable: (column == null ? void 0 : column.filterable) === true,
|
|
@@ -8176,21 +8375,8 @@ function getMinColumnWidth(sortable, hasMenu, density) {
|
|
|
8176
8375
|
}
|
|
8177
8376
|
return width;
|
|
8178
8377
|
}
|
|
8179
|
-
function cellText(value) {
|
|
8180
|
-
if (value === null || value === void 0 || typeof value === "boolean") {
|
|
8181
|
-
return "";
|
|
8182
|
-
}
|
|
8183
|
-
if (typeof value === "number" || typeof value === "string") {
|
|
8184
|
-
return String(value);
|
|
8185
|
-
}
|
|
8186
|
-
if (Array.isArray(value)) {
|
|
8187
|
-
return value.map(cellText).join(" ");
|
|
8188
|
-
}
|
|
8189
|
-
return "";
|
|
8190
|
-
}
|
|
8191
8378
|
function rowTeamValue(row) {
|
|
8192
|
-
|
|
8193
|
-
return cellText((_a2 = row.values.team) != null ? _a2 : row.label);
|
|
8379
|
+
return getRowCellText(row, "team");
|
|
8194
8380
|
}
|
|
8195
8381
|
function isNumericValue(value) {
|
|
8196
8382
|
return /^-?\d+(?:\.\d+)?$/.test(value);
|
|
@@ -8203,33 +8389,67 @@ function compareValues(a, b) {
|
|
|
8203
8389
|
}
|
|
8204
8390
|
return aTrim.localeCompare(bTrim, void 0, { numeric: true, sensitivity: "base" });
|
|
8205
8391
|
}
|
|
8392
|
+
function defaultRowHeight(density) {
|
|
8393
|
+
return density === "comfortable" ? 44 : 36;
|
|
8394
|
+
}
|
|
8206
8395
|
function DataGrid({
|
|
8207
8396
|
bordered = true,
|
|
8208
8397
|
caption,
|
|
8209
8398
|
columns,
|
|
8399
|
+
defaultExpandedIds,
|
|
8210
8400
|
density = "compact",
|
|
8401
|
+
detailExpandedIds,
|
|
8402
|
+
getDetailContent,
|
|
8403
|
+
groupBy = "group",
|
|
8404
|
+
hasMore = false,
|
|
8405
|
+
layout = "flat",
|
|
8406
|
+
loadingMore = false,
|
|
8407
|
+
onExpandedChange,
|
|
8408
|
+
onLoadMore,
|
|
8409
|
+
pivot,
|
|
8211
8410
|
rowHeader,
|
|
8411
|
+
rowHeight,
|
|
8212
8412
|
rows,
|
|
8213
8413
|
stickyFirstColumn = true,
|
|
8214
8414
|
stickyHeader = true,
|
|
8215
|
-
striped = true
|
|
8415
|
+
striped = true,
|
|
8416
|
+
viewportHeight = DEFAULT_VIEWPORT,
|
|
8417
|
+
virtualized = false
|
|
8216
8418
|
}) {
|
|
8217
|
-
var _a2, _b2, _c2, _d2;
|
|
8419
|
+
var _a2, _b2, _c2, _d2, _e2, _f2;
|
|
8218
8420
|
const [columnWidths, setColumnWidths] = useState29({});
|
|
8219
8421
|
const [filters, setFilters] = useState29({});
|
|
8220
8422
|
const [openMenu, setOpenMenu] = useState29(null);
|
|
8221
8423
|
const [resizing, setResizing] = useState29(null);
|
|
8222
8424
|
const [sort, setSort] = useState29(null);
|
|
8425
|
+
const [collapsedGroupIds, setCollapsedGroupIds] = useState29(() => /* @__PURE__ */ new Set());
|
|
8426
|
+
const [treeExpandedIds, setTreeExpandedIds] = useState29(
|
|
8427
|
+
() => new Set(defaultExpandedIds != null ? defaultExpandedIds : [])
|
|
8428
|
+
);
|
|
8429
|
+
const [uncontrolledDetailIds, setUncontrolledDetailIds] = useState29(() => /* @__PURE__ */ new Set());
|
|
8430
|
+
const [scrollTop, setScrollTop] = useState29(0);
|
|
8223
8431
|
const menuAnchorRef = useRef23(null);
|
|
8224
8432
|
const menuHostRef = useRef23(null);
|
|
8225
8433
|
const menuRef = useRef23(null);
|
|
8226
8434
|
const menuFrameRef = useRef23(null);
|
|
8227
8435
|
const resizeDragRef = useRef23(null);
|
|
8228
8436
|
const wrapRef = useRef23(null);
|
|
8229
|
-
const
|
|
8437
|
+
const sentinelRef = useRef23(null);
|
|
8438
|
+
const resolvedRowHeight = rowHeight != null ? rowHeight : defaultRowHeight(density);
|
|
8439
|
+
const detailIds = detailExpandedIds ? new Set(detailExpandedIds) : uncontrolledDetailIds;
|
|
8440
|
+
const masterDetail = Boolean(getDetailContent) && layout !== "pivot";
|
|
8441
|
+
const pivotResult = useMemo14(() => {
|
|
8442
|
+
if (layout !== "pivot") {
|
|
8443
|
+
return null;
|
|
8444
|
+
}
|
|
8445
|
+
return buildPivotGrid(rows, pivot != null ? pivot : { rows: ["group"], columns: ["a11y"], values: ["q1", "q2"] });
|
|
8446
|
+
}, [layout, pivot, rows]);
|
|
8447
|
+
const activeColumns = (_a2 = pivotResult == null ? void 0 : pivotResult.columns) != null ? _a2 : columns;
|
|
8448
|
+
const activeRows = (_b2 = pivotResult == null ? void 0 : pivotResult.rows) != null ? _b2 : rows;
|
|
8449
|
+
const hasTeamColumn = activeColumns.some((column) => column.key === "team");
|
|
8230
8450
|
const gridColumns = useMemo14(
|
|
8231
|
-
() => hasTeamColumn ?
|
|
8232
|
-
[
|
|
8451
|
+
() => hasTeamColumn ? activeColumns : [{ key: "team", label: "Team", align: "left" }, ...activeColumns],
|
|
8452
|
+
[activeColumns, hasTeamColumn]
|
|
8233
8453
|
);
|
|
8234
8454
|
const dataColumns = useMemo14(
|
|
8235
8455
|
() => gridColumns.filter((column) => column.key !== "team"),
|
|
@@ -8243,34 +8463,92 @@ function DataGrid({
|
|
|
8243
8463
|
}
|
|
8244
8464
|
return features;
|
|
8245
8465
|
}, [gridColumns, hasTeamColumn, rowHeader]);
|
|
8246
|
-
const
|
|
8247
|
-
(
|
|
8248
|
-
|
|
8249
|
-
|
|
8250
|
-
|
|
8251
|
-
|
|
8252
|
-
|
|
8253
|
-
|
|
8254
|
-
|
|
8255
|
-
|
|
8256
|
-
|
|
8257
|
-
|
|
8258
|
-
|
|
8259
|
-
|
|
8260
|
-
|
|
8261
|
-
|
|
8262
|
-
|
|
8263
|
-
|
|
8466
|
+
const filterSortRows = useCallback12(
|
|
8467
|
+
(source) => {
|
|
8468
|
+
return source.filter(
|
|
8469
|
+
(row) => gridColumns.every((column) => {
|
|
8470
|
+
var _a3;
|
|
8471
|
+
const features = columnFeatures[column.key];
|
|
8472
|
+
if (!(features == null ? void 0 : features.filterable)) {
|
|
8473
|
+
return true;
|
|
8474
|
+
}
|
|
8475
|
+
const filter = (_a3 = filters[column.key]) == null ? void 0 : _a3.trim().toLowerCase();
|
|
8476
|
+
if (!filter) {
|
|
8477
|
+
return true;
|
|
8478
|
+
}
|
|
8479
|
+
const value = column.key === "team" ? rowTeamValue(row) : getRowCellText(row, column.key);
|
|
8480
|
+
return value.toLowerCase().includes(filter);
|
|
8481
|
+
})
|
|
8482
|
+
).sort((a, b) => {
|
|
8483
|
+
var _a3;
|
|
8484
|
+
if (!sort || !((_a3 = columnFeatures[sort.key]) == null ? void 0 : _a3.sortable)) {
|
|
8485
|
+
return 0;
|
|
8486
|
+
}
|
|
8487
|
+
const aValue = sort.key === "team" ? rowTeamValue(a) : getRowCellText(a, sort.key);
|
|
8488
|
+
const bValue = sort.key === "team" ? rowTeamValue(b) : getRowCellText(b, sort.key);
|
|
8489
|
+
const result = compareValues(aValue, bValue);
|
|
8490
|
+
return sort.direction === "ascending" ? result : -result;
|
|
8491
|
+
});
|
|
8492
|
+
},
|
|
8493
|
+
[columnFeatures, filters, gridColumns, sort]
|
|
8494
|
+
);
|
|
8495
|
+
useEffect22(() => {
|
|
8496
|
+
if (layout === "tree" && defaultExpandedIds === void 0 && treeExpandedIds.size === 0) {
|
|
8497
|
+
setTreeExpandedIds(new Set(collectTreeIds(activeRows).slice(0, 4)));
|
|
8264
8498
|
}
|
|
8265
|
-
|
|
8266
|
-
|
|
8499
|
+
}, [activeRows, defaultExpandedIds, layout, treeExpandedIds.size]);
|
|
8500
|
+
const displayRows = useMemo14(() => {
|
|
8501
|
+
if (layout === "tree") {
|
|
8502
|
+
return buildTreeDisplayRows(filterSortRows(activeRows), treeExpandedIds);
|
|
8267
8503
|
}
|
|
8268
|
-
const
|
|
8269
|
-
|
|
8270
|
-
|
|
8271
|
-
|
|
8272
|
-
|
|
8504
|
+
const flat = filterSortRows(activeRows);
|
|
8505
|
+
if (layout === "grouped") {
|
|
8506
|
+
return buildGroupedDisplayRows(flat, groupBy, collapsedGroupIds);
|
|
8507
|
+
}
|
|
8508
|
+
return buildFlatDisplayRows(flat);
|
|
8509
|
+
}, [activeRows, collapsedGroupIds, filterSortRows, groupBy, layout, treeExpandedIds]);
|
|
8273
8510
|
const openMenuFeatures = openMenu ? columnFeatures[openMenu.key] : void 0;
|
|
8511
|
+
const setExpandedIds = useCallback12(
|
|
8512
|
+
(next) => {
|
|
8513
|
+
setTreeExpandedIds(next);
|
|
8514
|
+
onExpandedChange == null ? void 0 : onExpandedChange(Array.from(next));
|
|
8515
|
+
},
|
|
8516
|
+
[onExpandedChange]
|
|
8517
|
+
);
|
|
8518
|
+
const toggleTreeExpand = (id) => {
|
|
8519
|
+
const next = new Set(treeExpandedIds);
|
|
8520
|
+
if (next.has(id)) {
|
|
8521
|
+
next.delete(id);
|
|
8522
|
+
} else {
|
|
8523
|
+
next.add(id);
|
|
8524
|
+
}
|
|
8525
|
+
setExpandedIds(next);
|
|
8526
|
+
};
|
|
8527
|
+
const toggleGroup = (id) => {
|
|
8528
|
+
setCollapsedGroupIds((current) => {
|
|
8529
|
+
const next = new Set(current);
|
|
8530
|
+
if (next.has(id)) {
|
|
8531
|
+
next.delete(id);
|
|
8532
|
+
} else {
|
|
8533
|
+
next.add(id);
|
|
8534
|
+
}
|
|
8535
|
+
return next;
|
|
8536
|
+
});
|
|
8537
|
+
};
|
|
8538
|
+
const toggleDetail = (id) => {
|
|
8539
|
+
if (detailExpandedIds) {
|
|
8540
|
+
return;
|
|
8541
|
+
}
|
|
8542
|
+
setUncontrolledDetailIds((current) => {
|
|
8543
|
+
const next = new Set(current);
|
|
8544
|
+
if (next.has(id)) {
|
|
8545
|
+
next.delete(id);
|
|
8546
|
+
} else {
|
|
8547
|
+
next.add(id);
|
|
8548
|
+
}
|
|
8549
|
+
return next;
|
|
8550
|
+
});
|
|
8551
|
+
};
|
|
8274
8552
|
const resetWrapMinHeight = useCallback12(() => {
|
|
8275
8553
|
if (wrapRef.current) {
|
|
8276
8554
|
wrapRef.current.style.minHeight = "";
|
|
@@ -8281,7 +8559,7 @@ function DataGrid({
|
|
|
8281
8559
|
resetWrapMinHeight();
|
|
8282
8560
|
setOpenMenu(null);
|
|
8283
8561
|
}, [resetWrapMinHeight]);
|
|
8284
|
-
const activeMenuFilter = openMenu ? (
|
|
8562
|
+
const activeMenuFilter = openMenu ? (_c2 = filters[openMenu.key]) != null ? _c2 : "" : "";
|
|
8285
8563
|
const applyMenuPosition = useCallback12(() => {
|
|
8286
8564
|
const anchor = menuAnchorRef.current;
|
|
8287
8565
|
const menu = menuRef.current;
|
|
@@ -8394,6 +8672,26 @@ function DataGrid({
|
|
|
8394
8672
|
}
|
|
8395
8673
|
scheduleMenuPosition();
|
|
8396
8674
|
}, [columnWidths, openMenu, scheduleMenuPosition]);
|
|
8675
|
+
useEffect22(() => {
|
|
8676
|
+
if (!onLoadMore || !hasMore) {
|
|
8677
|
+
return;
|
|
8678
|
+
}
|
|
8679
|
+
const root = wrapRef.current;
|
|
8680
|
+
const target = sentinelRef.current;
|
|
8681
|
+
if (!root || !target) {
|
|
8682
|
+
return;
|
|
8683
|
+
}
|
|
8684
|
+
const observer = new IntersectionObserver(
|
|
8685
|
+
(entries) => {
|
|
8686
|
+
if (entries.some((entry) => entry.isIntersecting) && !loadingMore) {
|
|
8687
|
+
onLoadMore();
|
|
8688
|
+
}
|
|
8689
|
+
},
|
|
8690
|
+
{ root, rootMargin: "120px" }
|
|
8691
|
+
);
|
|
8692
|
+
observer.observe(target);
|
|
8693
|
+
return () => observer.disconnect();
|
|
8694
|
+
}, [displayRows.length, hasMore, loadingMore, onLoadMore]);
|
|
8397
8695
|
const toggleSort = (key) => {
|
|
8398
8696
|
var _a3;
|
|
8399
8697
|
if (!((_a3 = columnFeatures[key]) == null ? void 0 : _a3.sortable)) {
|
|
@@ -8495,10 +8793,108 @@ function DataGrid({
|
|
|
8495
8793
|
}
|
|
8496
8794
|
beginResize(event, columnKey, width);
|
|
8497
8795
|
}, [beginResize, columnFeatures]);
|
|
8796
|
+
const colSpan = gridColumns.length;
|
|
8797
|
+
const virtualWindow = useMemo14(() => {
|
|
8798
|
+
if (!virtualized) {
|
|
8799
|
+
return {
|
|
8800
|
+
offset: 0,
|
|
8801
|
+
items: displayRows,
|
|
8802
|
+
paddingTop: 0,
|
|
8803
|
+
paddingBottom: 0
|
|
8804
|
+
};
|
|
8805
|
+
}
|
|
8806
|
+
const start = Math.max(0, Math.floor(scrollTop / resolvedRowHeight) - OVERSCAN);
|
|
8807
|
+
const visibleCount = Math.ceil(viewportHeight / resolvedRowHeight) + OVERSCAN * 2;
|
|
8808
|
+
const end = Math.min(displayRows.length, start + visibleCount);
|
|
8809
|
+
const items = displayRows.slice(start, end);
|
|
8810
|
+
return {
|
|
8811
|
+
offset: start,
|
|
8812
|
+
items,
|
|
8813
|
+
paddingTop: start * resolvedRowHeight,
|
|
8814
|
+
paddingBottom: Math.max(0, (displayRows.length - end) * resolvedRowHeight)
|
|
8815
|
+
};
|
|
8816
|
+
}, [displayRows, resolvedRowHeight, scrollTop, viewportHeight, virtualized]);
|
|
8817
|
+
const renderDataRow = (entry) => {
|
|
8818
|
+
var _a3;
|
|
8819
|
+
const { row, depth, expandable, expanded, hasChildren } = entry;
|
|
8820
|
+
const detailOpen = masterDetail && detailIds.has(row.id);
|
|
8821
|
+
const showTreeToggle = layout === "tree" && expandable;
|
|
8822
|
+
return /* @__PURE__ */ jsxs51(Fragment7, { children: [
|
|
8823
|
+
/* @__PURE__ */ jsxs51("tr", { "data-row-kind": "data", children: [
|
|
8824
|
+
/* @__PURE__ */ jsx61(
|
|
8825
|
+
"th",
|
|
8826
|
+
{
|
|
8827
|
+
className: DataGrid_default.rowHeader,
|
|
8828
|
+
scope: "row",
|
|
8829
|
+
style: columnWidths.team ? { width: columnWidths.team, minWidth: columnWidths.team } : void 0,
|
|
8830
|
+
children: /* @__PURE__ */ jsxs51("span", { className: DataGrid_default.rowHeaderInner, style: { paddingLeft: depth * 14 }, children: [
|
|
8831
|
+
masterDetail ? /* @__PURE__ */ jsx61(
|
|
8832
|
+
"button",
|
|
8833
|
+
{
|
|
8834
|
+
"aria-expanded": detailOpen,
|
|
8835
|
+
"aria-label": detailOpen ? `Hide details for ${rowTeamValue(row)}` : `Show details for ${rowTeamValue(row)}`,
|
|
8836
|
+
className: DataGrid_default.expandButton,
|
|
8837
|
+
onClick: () => toggleDetail(row.id),
|
|
8838
|
+
type: "button",
|
|
8839
|
+
children: /* @__PURE__ */ jsx61(FontAwesomeIcon6, { className: DataGrid_default.chevron, icon: detailOpen ? faChevronDown : faChevronRight })
|
|
8840
|
+
}
|
|
8841
|
+
) : null,
|
|
8842
|
+
showTreeToggle ? /* @__PURE__ */ jsx61(
|
|
8843
|
+
"button",
|
|
8844
|
+
{
|
|
8845
|
+
"aria-expanded": expanded,
|
|
8846
|
+
"aria-label": expanded ? `Collapse ${rowTeamValue(row)}` : `Expand ${rowTeamValue(row)}`,
|
|
8847
|
+
className: DataGrid_default.expandButton,
|
|
8848
|
+
onClick: () => toggleTreeExpand(row.id),
|
|
8849
|
+
type: "button",
|
|
8850
|
+
children: /* @__PURE__ */ jsx61(FontAwesomeIcon6, { className: DataGrid_default.chevron, icon: expanded ? faChevronDown : faChevronRight })
|
|
8851
|
+
}
|
|
8852
|
+
) : layout === "tree" && !hasChildren ? /* @__PURE__ */ jsx61("span", { "aria-hidden": "true", className: DataGrid_default.expandSpacer }) : null,
|
|
8853
|
+
/* @__PURE__ */ jsx61("span", { className: DataGrid_default.rowHeaderLabel, children: (_a3 = row.values.team) != null ? _a3 : row.label })
|
|
8854
|
+
] })
|
|
8855
|
+
}
|
|
8856
|
+
),
|
|
8857
|
+
dataColumns.map((column) => {
|
|
8858
|
+
var _a4;
|
|
8859
|
+
return /* @__PURE__ */ jsx61(
|
|
8860
|
+
"td",
|
|
8861
|
+
{
|
|
8862
|
+
"data-align": (_a4 = column.align) != null ? _a4 : "left",
|
|
8863
|
+
"data-column-key": column.key,
|
|
8864
|
+
"data-column-resizable": columnFeatures[column.key].resizable,
|
|
8865
|
+
style: columnWidths[column.key] ? { width: columnWidths[column.key], minWidth: columnWidths[column.key] } : void 0,
|
|
8866
|
+
children: row.values[column.key]
|
|
8867
|
+
},
|
|
8868
|
+
column.key
|
|
8869
|
+
);
|
|
8870
|
+
})
|
|
8871
|
+
] }),
|
|
8872
|
+
detailOpen && getDetailContent ? /* @__PURE__ */ jsx61("tr", { className: DataGrid_default.detailRow, children: /* @__PURE__ */ jsx61("td", { className: DataGrid_default.detailCell, colSpan, children: getDetailContent(row) }) }, `${row.id}-detail`) : null
|
|
8873
|
+
] }, row.id);
|
|
8874
|
+
};
|
|
8875
|
+
const renderDisplayRow = (entry, index) => {
|
|
8876
|
+
if (entry.kind === "group") {
|
|
8877
|
+
return /* @__PURE__ */ jsx61("tr", { className: DataGrid_default.groupRow, children: /* @__PURE__ */ jsx61("td", { className: DataGrid_default.groupCell, colSpan, children: /* @__PURE__ */ jsxs51(
|
|
8878
|
+
"button",
|
|
8879
|
+
{
|
|
8880
|
+
"aria-expanded": entry.expanded,
|
|
8881
|
+
className: DataGrid_default.groupButton,
|
|
8882
|
+
onClick: () => toggleGroup(entry.id),
|
|
8883
|
+
type: "button",
|
|
8884
|
+
children: [
|
|
8885
|
+
/* @__PURE__ */ jsx61(FontAwesomeIcon6, { className: DataGrid_default.chevron, icon: entry.expanded ? faChevronDown : faChevronRight }),
|
|
8886
|
+
/* @__PURE__ */ jsx61("span", { children: entry.label }),
|
|
8887
|
+
/* @__PURE__ */ jsx61("span", { className: DataGrid_default.groupCount, children: entry.count })
|
|
8888
|
+
]
|
|
8889
|
+
}
|
|
8890
|
+
) }) }, entry.id);
|
|
8891
|
+
}
|
|
8892
|
+
return renderDataRow(entry);
|
|
8893
|
+
};
|
|
8498
8894
|
return /* @__PURE__ */ jsxs51("div", { className: DataGrid_default.frame, children: [
|
|
8499
8895
|
caption ? /* @__PURE__ */ jsx61("div", { className: DataGrid_default.caption, children: caption }) : null,
|
|
8500
8896
|
/* @__PURE__ */ jsxs51("div", { className: DataGrid_default.gridBody, children: [
|
|
8501
|
-
/* @__PURE__ */
|
|
8897
|
+
/* @__PURE__ */ jsxs51(
|
|
8502
8898
|
"div",
|
|
8503
8899
|
{
|
|
8504
8900
|
ref: wrapRef,
|
|
@@ -8512,114 +8908,98 @@ function DataGrid({
|
|
|
8512
8908
|
"data-sticky-column": stickyFirstColumn,
|
|
8513
8909
|
"data-sticky-header": stickyHeader,
|
|
8514
8910
|
"data-striped": striped,
|
|
8515
|
-
|
|
8516
|
-
|
|
8517
|
-
|
|
8518
|
-
|
|
8519
|
-
|
|
8520
|
-
|
|
8521
|
-
|
|
8522
|
-
|
|
8523
|
-
|
|
8524
|
-
|
|
8525
|
-
);
|
|
8526
|
-
}) }),
|
|
8527
|
-
/* @__PURE__ */ jsx61("thead", { children: /* @__PURE__ */ jsx61("tr", { children: gridColumns.map((column) => {
|
|
8528
|
-
var _a3, _b3;
|
|
8529
|
-
return /* @__PURE__ */ jsxs51(
|
|
8530
|
-
"th",
|
|
8531
|
-
{
|
|
8532
|
-
"aria-sort": columnFeatures[column.key].sortable ? (sort == null ? void 0 : sort.key) === column.key ? sort.direction : "none" : void 0,
|
|
8533
|
-
className: column.key === "team" ? DataGrid_default.corner : void 0,
|
|
8534
|
-
"data-column-resizable": columnFeatures[column.key].resizable,
|
|
8535
|
-
"data-filter-active": Boolean((_a3 = filters[column.key]) == null ? void 0 : _a3.trim()),
|
|
8536
|
-
"data-menu-open": (openMenu == null ? void 0 : openMenu.key) === column.key,
|
|
8537
|
-
scope: "col",
|
|
8538
|
-
style: columnWidths[column.key] ? { width: columnWidths[column.key], minWidth: columnWidths[column.key] } : void 0,
|
|
8539
|
-
children: [
|
|
8540
|
-
/* @__PURE__ */ jsx61(
|
|
8541
|
-
HeaderContent,
|
|
8542
|
-
{
|
|
8543
|
-
filterActive: Boolean((_b3 = filters[column.key]) == null ? void 0 : _b3.trim()),
|
|
8544
|
-
filterable: columnFeatures[column.key].filterable,
|
|
8545
|
-
label: column.label,
|
|
8546
|
-
menuId: column.key,
|
|
8547
|
-
sortDirection: (sort == null ? void 0 : sort.key) === column.key ? sort.direction : void 0,
|
|
8548
|
-
sortable: columnFeatures[column.key].sortable,
|
|
8549
|
-
menuOpen: (openMenu == null ? void 0 : openMenu.key) === column.key,
|
|
8550
|
-
onMenuToggle: (button) => {
|
|
8551
|
-
if ((openMenu == null ? void 0 : openMenu.key) === column.key) {
|
|
8552
|
-
closeHeaderMenu();
|
|
8553
|
-
return;
|
|
8554
|
-
}
|
|
8555
|
-
openHeaderMenu({
|
|
8556
|
-
align: column.key === "team" ? "left" : "right",
|
|
8557
|
-
button,
|
|
8558
|
-
key: column.key,
|
|
8559
|
-
label: column.label
|
|
8560
|
-
});
|
|
8561
|
-
},
|
|
8562
|
-
onSort: () => toggleSort(column.key)
|
|
8563
|
-
}
|
|
8564
|
-
),
|
|
8565
|
-
columnFeatures[column.key].resizable ? /* @__PURE__ */ jsx61(
|
|
8566
|
-
ColumnResizeHandle,
|
|
8567
|
-
{
|
|
8568
|
-
onResizeStart: (event) => beginResize(event, column.key)
|
|
8569
|
-
}
|
|
8570
|
-
) : null
|
|
8571
|
-
]
|
|
8572
|
-
},
|
|
8573
|
-
column.key
|
|
8574
|
-
);
|
|
8575
|
-
}) }) }),
|
|
8576
|
-
/* @__PURE__ */ jsxs51("tbody", { onPointerDown: handleBodyPointerDown, children: [
|
|
8577
|
-
visibleRows.map((row) => {
|
|
8911
|
+
onScroll: (event) => {
|
|
8912
|
+
if (virtualized) {
|
|
8913
|
+
setScrollTop(event.currentTarget.scrollTop);
|
|
8914
|
+
}
|
|
8915
|
+
},
|
|
8916
|
+
style: { maxHeight: viewportHeight },
|
|
8917
|
+
children: [
|
|
8918
|
+
/* @__PURE__ */ jsxs51("table", { className: DataGrid_default.grid, children: [
|
|
8919
|
+
caption ? /* @__PURE__ */ jsx61("caption", { className: DataGrid_default.visuallyHidden, children: caption }) : null,
|
|
8920
|
+
/* @__PURE__ */ jsx61("colgroup", { children: gridColumns.map((column) => {
|
|
8578
8921
|
var _a3;
|
|
8579
|
-
return /* @__PURE__ */
|
|
8580
|
-
|
|
8581
|
-
|
|
8582
|
-
{
|
|
8583
|
-
|
|
8584
|
-
|
|
8585
|
-
|
|
8586
|
-
|
|
8587
|
-
|
|
8588
|
-
|
|
8589
|
-
|
|
8590
|
-
|
|
8591
|
-
|
|
8592
|
-
|
|
8593
|
-
|
|
8594
|
-
|
|
8595
|
-
|
|
8596
|
-
|
|
8597
|
-
|
|
8598
|
-
|
|
8599
|
-
|
|
8600
|
-
|
|
8601
|
-
|
|
8602
|
-
|
|
8603
|
-
|
|
8604
|
-
|
|
8605
|
-
|
|
8606
|
-
|
|
8607
|
-
|
|
8608
|
-
|
|
8609
|
-
|
|
8610
|
-
|
|
8922
|
+
return /* @__PURE__ */ jsx61(
|
|
8923
|
+
"col",
|
|
8924
|
+
{
|
|
8925
|
+
style: { width: (_a3 = columnWidths[column.key]) != null ? _a3 : column.key === "team" ? 180 : 130 }
|
|
8926
|
+
},
|
|
8927
|
+
column.key
|
|
8928
|
+
);
|
|
8929
|
+
}) }),
|
|
8930
|
+
/* @__PURE__ */ jsx61("thead", { children: /* @__PURE__ */ jsx61("tr", { children: gridColumns.map((column) => {
|
|
8931
|
+
var _a3, _b3;
|
|
8932
|
+
return /* @__PURE__ */ jsxs51(
|
|
8933
|
+
"th",
|
|
8934
|
+
{
|
|
8935
|
+
"aria-sort": columnFeatures[column.key].sortable ? (sort == null ? void 0 : sort.key) === column.key ? sort.direction : "none" : void 0,
|
|
8936
|
+
className: column.key === "team" ? DataGrid_default.corner : void 0,
|
|
8937
|
+
"data-column-resizable": columnFeatures[column.key].resizable,
|
|
8938
|
+
"data-filter-active": Boolean((_a3 = filters[column.key]) == null ? void 0 : _a3.trim()),
|
|
8939
|
+
"data-menu-open": (openMenu == null ? void 0 : openMenu.key) === column.key,
|
|
8940
|
+
scope: "col",
|
|
8941
|
+
style: columnWidths[column.key] ? { width: columnWidths[column.key], minWidth: columnWidths[column.key] } : void 0,
|
|
8942
|
+
children: [
|
|
8943
|
+
/* @__PURE__ */ jsx61(
|
|
8944
|
+
HeaderContent,
|
|
8945
|
+
{
|
|
8946
|
+
filterActive: Boolean((_b3 = filters[column.key]) == null ? void 0 : _b3.trim()),
|
|
8947
|
+
filterable: columnFeatures[column.key].filterable,
|
|
8948
|
+
label: column.label,
|
|
8949
|
+
menuId: column.key,
|
|
8950
|
+
sortDirection: (sort == null ? void 0 : sort.key) === column.key ? sort.direction : void 0,
|
|
8951
|
+
sortable: columnFeatures[column.key].sortable,
|
|
8952
|
+
menuOpen: (openMenu == null ? void 0 : openMenu.key) === column.key,
|
|
8953
|
+
onMenuToggle: (button) => {
|
|
8954
|
+
if ((openMenu == null ? void 0 : openMenu.key) === column.key) {
|
|
8955
|
+
closeHeaderMenu();
|
|
8956
|
+
return;
|
|
8957
|
+
}
|
|
8958
|
+
openHeaderMenu({
|
|
8959
|
+
align: column.key === "team" ? "left" : "right",
|
|
8960
|
+
button,
|
|
8961
|
+
key: column.key,
|
|
8962
|
+
label: column.label
|
|
8963
|
+
});
|
|
8964
|
+
},
|
|
8965
|
+
onSort: () => toggleSort(column.key)
|
|
8966
|
+
}
|
|
8967
|
+
),
|
|
8968
|
+
columnFeatures[column.key].resizable ? /* @__PURE__ */ jsx61(
|
|
8969
|
+
ColumnResizeHandle,
|
|
8970
|
+
{
|
|
8971
|
+
onResizeStart: (event) => beginResize(event, column.key)
|
|
8972
|
+
}
|
|
8973
|
+
) : null
|
|
8974
|
+
]
|
|
8975
|
+
},
|
|
8976
|
+
column.key
|
|
8977
|
+
);
|
|
8978
|
+
}) }) }),
|
|
8979
|
+
/* @__PURE__ */ jsxs51("tbody", { onPointerDown: handleBodyPointerDown, children: [
|
|
8980
|
+
virtualized && virtualWindow.paddingTop > 0 ? /* @__PURE__ */ jsx61("tr", { "aria-hidden": "true", className: DataGrid_default.spacerRow, children: /* @__PURE__ */ jsx61("td", { colSpan, style: { height: virtualWindow.paddingTop, padding: 0 } }) }) : null,
|
|
8981
|
+
virtualWindow.items.map((entry, index) => renderDisplayRow(entry, virtualWindow.offset + index)),
|
|
8982
|
+
virtualized && virtualWindow.paddingBottom > 0 ? /* @__PURE__ */ jsx61("tr", { "aria-hidden": "true", className: DataGrid_default.spacerRow, children: /* @__PURE__ */ jsx61("td", { colSpan, style: { height: virtualWindow.paddingBottom, padding: 0 } }) }) : null,
|
|
8983
|
+
!displayRows.length ? /* @__PURE__ */ jsxs51("tr", { children: [
|
|
8984
|
+
/* @__PURE__ */ jsx61("th", { className: DataGrid_default.rowHeader, scope: "row", children: "No rows" }),
|
|
8985
|
+
/* @__PURE__ */ jsx61("td", { className: DataGrid_default.empty, colSpan: Math.max(dataColumns.length, 1), children: "No matching rows." })
|
|
8986
|
+
] }) : null
|
|
8987
|
+
] })
|
|
8988
|
+
] }),
|
|
8989
|
+
onLoadMore || hasMore ? /* @__PURE__ */ jsx61("div", { className: DataGrid_default.infiniteFooter, ref: sentinelRef, children: loadingMore ? "Loading more\u2026" : hasMore ? "Scroll for more" : "End of results" }) : null
|
|
8990
|
+
]
|
|
8611
8991
|
}
|
|
8612
8992
|
),
|
|
8613
8993
|
openMenu ? /* @__PURE__ */ jsx61("div", { className: DataGrid_default.menuHost, ref: menuHostRef, children: /* @__PURE__ */ jsx61(
|
|
8614
8994
|
GridHeaderMenu,
|
|
8615
8995
|
{
|
|
8616
8996
|
ref: menuRef,
|
|
8617
|
-
filter: (
|
|
8618
|
-
filterable: (
|
|
8997
|
+
filter: (_d2 = filters[openMenu.key]) != null ? _d2 : "",
|
|
8998
|
+
filterable: (_e2 = openMenuFeatures == null ? void 0 : openMenuFeatures.filterable) != null ? _e2 : false,
|
|
8619
8999
|
label: openMenu.label,
|
|
8620
9000
|
menuId: openMenu.menuId,
|
|
8621
9001
|
sortDirection: (sort == null ? void 0 : sort.key) === openMenu.key ? sort.direction : void 0,
|
|
8622
|
-
sortable: (
|
|
9002
|
+
sortable: (_f2 = openMenuFeatures == null ? void 0 : openMenuFeatures.sortable) != null ? _f2 : false,
|
|
8623
9003
|
onFilterChange: (filter) => setFilters((current) => __spreadProps(__spreadValues({}, current), { [openMenu.key]: filter })),
|
|
8624
9004
|
onMenuClose: closeHeaderMenu,
|
|
8625
9005
|
onSortDirection: (direction) => setSortDirection(openMenu.key, direction)
|
|
@@ -8771,7 +9151,7 @@ var GridHeaderMenu = forwardRef(function GridHeaderMenu2({
|
|
|
8771
9151
|
});
|
|
8772
9152
|
|
|
8773
9153
|
// ../../components/Chart/Chart.tsx
|
|
8774
|
-
import { useEffect as
|
|
9154
|
+
import { useEffect as useEffect23, useId as useId17, useRef as useRef24, useState as useState30 } from "react";
|
|
8775
9155
|
|
|
8776
9156
|
// ../../components/Chart/sankeyLayout.ts
|
|
8777
9157
|
var demoSankeyNodes = [
|
|
@@ -8911,6 +9291,12 @@ var chartDemoData = [
|
|
|
8911
9291
|
{ label: "May", value: 58, values: [58, 56, 36], x: 74, y: 58 },
|
|
8912
9292
|
{ label: "Jun", value: 88, values: [88, 62, 42], x: 88, y: 92 }
|
|
8913
9293
|
];
|
|
9294
|
+
var chartContourData = Array.from({ length: 36 }, (_, index) => {
|
|
9295
|
+
const x = index % 6;
|
|
9296
|
+
const y = Math.floor(index / 6);
|
|
9297
|
+
const value = 35 + Math.round(45 * Math.exp(-((x - 2.4) ** 2 + (y - 2.8) ** 2) / 4));
|
|
9298
|
+
return { label: `${x},${y}`, value, x, y };
|
|
9299
|
+
});
|
|
8914
9300
|
function branchLeaves(prefix, parent, group, count = 5) {
|
|
8915
9301
|
return Array.from({ length: count }, (_, index) => ({
|
|
8916
9302
|
label: `${prefix}${index + 1}`,
|
|
@@ -9989,6 +10375,15 @@ var specializedChartVariants = /* @__PURE__ */ new Set([
|
|
|
9989
10375
|
"sankey",
|
|
9990
10376
|
"waterfall",
|
|
9991
10377
|
"candlestick",
|
|
10378
|
+
"ohlc",
|
|
10379
|
+
"range-area",
|
|
10380
|
+
"range-bar",
|
|
10381
|
+
"error-bar",
|
|
10382
|
+
"parallel-coordinates",
|
|
10383
|
+
"contour",
|
|
10384
|
+
"surface",
|
|
10385
|
+
"bullet",
|
|
10386
|
+
"pareto",
|
|
9992
10387
|
"box-plot",
|
|
9993
10388
|
"histogram",
|
|
9994
10389
|
"violin",
|
|
@@ -10015,6 +10410,12 @@ var cartesianSpecializedVariants = [
|
|
|
10015
10410
|
"histogram",
|
|
10016
10411
|
"waterfall",
|
|
10017
10412
|
"candlestick",
|
|
10413
|
+
"ohlc",
|
|
10414
|
+
"range-area",
|
|
10415
|
+
"range-bar",
|
|
10416
|
+
"error-bar",
|
|
10417
|
+
"bullet",
|
|
10418
|
+
"pareto",
|
|
10018
10419
|
"box-plot",
|
|
10019
10420
|
"violin",
|
|
10020
10421
|
"hexbin",
|
|
@@ -10026,15 +10427,30 @@ var cartesianSpecializedVariants = [
|
|
|
10026
10427
|
"milestone-timeline"
|
|
10027
10428
|
];
|
|
10028
10429
|
function specializedVariantHasYNumericAxis(variant) {
|
|
10029
|
-
return ![
|
|
10030
|
-
|
|
10031
|
-
|
|
10430
|
+
return ![
|
|
10431
|
+
"timeline",
|
|
10432
|
+
"milestone-timeline",
|
|
10433
|
+
"gantt",
|
|
10434
|
+
"heatmap",
|
|
10435
|
+
"calendar-heatmap",
|
|
10436
|
+
"ridgeline",
|
|
10437
|
+
"hexbin",
|
|
10438
|
+
"contour",
|
|
10439
|
+
"surface",
|
|
10440
|
+
"parallel-coordinates"
|
|
10441
|
+
].includes(variant);
|
|
10032
10442
|
}
|
|
10033
10443
|
function specializedVariantHasXCategoryLabels(variant) {
|
|
10034
10444
|
return [
|
|
10035
10445
|
"histogram",
|
|
10036
10446
|
"waterfall",
|
|
10037
10447
|
"candlestick",
|
|
10448
|
+
"ohlc",
|
|
10449
|
+
"range-area",
|
|
10450
|
+
"range-bar",
|
|
10451
|
+
"error-bar",
|
|
10452
|
+
"bullet",
|
|
10453
|
+
"pareto",
|
|
10038
10454
|
"box-plot",
|
|
10039
10455
|
"violin",
|
|
10040
10456
|
"stream",
|
|
@@ -10045,7 +10461,7 @@ function specializedVariantHasXCategoryLabels(variant) {
|
|
|
10045
10461
|
].includes(variant);
|
|
10046
10462
|
}
|
|
10047
10463
|
function specializedVariantUsesSlotLabels(variant) {
|
|
10048
|
-
return ["waterfall"].includes(variant);
|
|
10464
|
+
return ["waterfall", "range-area", "bullet"].includes(variant);
|
|
10049
10465
|
}
|
|
10050
10466
|
function getSeriesPlotBounds(plot) {
|
|
10051
10467
|
return {
|
|
@@ -10313,57 +10729,443 @@ function Candlestick({ data, plot, showValues, styles, yMax, yMin }) {
|
|
|
10313
10729
|
})
|
|
10314
10730
|
] });
|
|
10315
10731
|
}
|
|
10316
|
-
function
|
|
10317
|
-
const
|
|
10318
|
-
const
|
|
10732
|
+
function OhlcChart({ data, plot, showValues, styles, yMax, yMin }) {
|
|
10733
|
+
const bodyWidth = candlestickBodyWidth(plot, data.length);
|
|
10734
|
+
const barHalfWidth = bodyWidth / 2;
|
|
10735
|
+
const tick = Math.max(4, bodyWidth * 0.45);
|
|
10319
10736
|
return /* @__PURE__ */ jsx62("g", { children: data.map((item, index) => {
|
|
10320
|
-
var _a2, _b2, _c2, _d2
|
|
10321
|
-
const
|
|
10322
|
-
const
|
|
10323
|
-
const
|
|
10324
|
-
const
|
|
10325
|
-
const maxV = (_e2 = item.max) != null ? _e2 : item.value * 1.35;
|
|
10737
|
+
var _a2, _b2, _c2, _d2;
|
|
10738
|
+
const open = (_a2 = item.open) != null ? _a2 : item.value * 0.9;
|
|
10739
|
+
const close = (_b2 = item.close) != null ? _b2 : item.value;
|
|
10740
|
+
const high = (_c2 = item.high) != null ? _c2 : item.value * 1.08;
|
|
10741
|
+
const low = (_d2 = item.low) != null ? _d2 : item.value * 0.82;
|
|
10326
10742
|
const x = xForEdgeBarIndex(plot, index, data.length, barHalfWidth);
|
|
10327
|
-
const
|
|
10743
|
+
const bullish = close >= open;
|
|
10744
|
+
const openY = yForDomain(open, yMin, yMax, plot);
|
|
10745
|
+
const closeY = yForDomain(close, yMin, yMax, plot);
|
|
10746
|
+
const seriesClass = chartClass(styles, bullish ? 1 : 3);
|
|
10328
10747
|
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
10329
|
-
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x, x2: x, y1: yForDomain(min, yMin, yMax, plot), y2: yForDomain(maxV, yMin, yMax, plot) }),
|
|
10330
|
-
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x - boxWidth / 2, x2: x + boxWidth / 2, y1: yForDomain(min, yMin, yMax, plot), y2: yForDomain(min, yMin, yMax, plot) }),
|
|
10331
|
-
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x - boxWidth / 2, x2: x + boxWidth / 2, y1: yForDomain(maxV, yMin, yMax, plot), y2: yForDomain(maxV, yMin, yMax, plot) }),
|
|
10332
10748
|
/* @__PURE__ */ jsx62(
|
|
10333
|
-
"
|
|
10749
|
+
"line",
|
|
10334
10750
|
{
|
|
10335
|
-
className: `${styles.
|
|
10336
|
-
|
|
10337
|
-
|
|
10338
|
-
|
|
10339
|
-
|
|
10751
|
+
className: `${styles.wick} ${seriesClass}`,
|
|
10752
|
+
x1: x,
|
|
10753
|
+
x2: x,
|
|
10754
|
+
y1: yForDomain(high, yMin, yMax, plot),
|
|
10755
|
+
y2: yForDomain(low, yMin, yMax, plot)
|
|
10340
10756
|
}
|
|
10341
10757
|
),
|
|
10342
|
-
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`,
|
|
10343
|
-
|
|
10758
|
+
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x - tick, x2: x, y1: openY, y2: openY }),
|
|
10759
|
+
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x, x2: x + tick, y1: closeY, y2: closeY }),
|
|
10760
|
+
showValues ? /* @__PURE__ */ jsx62("text", { className: styles.valueLabel, textAnchor: "middle", x, y: yForDomain(high, yMin, yMax, plot) - 6, children: formatValue(close) }) : null
|
|
10344
10761
|
] }, item.label);
|
|
10345
10762
|
}) });
|
|
10346
10763
|
}
|
|
10347
|
-
function
|
|
10348
|
-
if (
|
|
10349
|
-
return
|
|
10350
|
-
}
|
|
10351
|
-
if (label.length <= maxChars) {
|
|
10352
|
-
return label;
|
|
10764
|
+
function RangeAreaChart({ data, plot, showValues, styles, yMax, yMin }) {
|
|
10765
|
+
if (!data.length) {
|
|
10766
|
+
return null;
|
|
10353
10767
|
}
|
|
10354
|
-
|
|
10768
|
+
const points = data.map((item, index) => {
|
|
10769
|
+
var _a2, _b2, _c2, _d2;
|
|
10770
|
+
const low = (_b2 = (_a2 = item.low) != null ? _a2 : item.min) != null ? _b2 : item.value * 0.75;
|
|
10771
|
+
const high = (_d2 = (_c2 = item.high) != null ? _c2 : item.max) != null ? _d2 : item.value * 1.25;
|
|
10772
|
+
const mid = item.value;
|
|
10773
|
+
const x = xForSeriesCategoryIndex(plot, index, data.length);
|
|
10774
|
+
return {
|
|
10775
|
+
x,
|
|
10776
|
+
lowY: yForDomain(low, yMin, yMax, plot),
|
|
10777
|
+
midY: yForDomain(mid, yMin, yMax, plot),
|
|
10778
|
+
highY: yForDomain(high, yMin, yMax, plot),
|
|
10779
|
+
label: item.label,
|
|
10780
|
+
mid
|
|
10781
|
+
};
|
|
10782
|
+
});
|
|
10783
|
+
const band = [
|
|
10784
|
+
...points.map((point) => `${point.x},${point.highY}`),
|
|
10785
|
+
...[...points].reverse().map((point) => `${point.x},${point.lowY}`)
|
|
10786
|
+
].join(" ");
|
|
10787
|
+
const midLine = points.map((point) => `${point.x},${point.midY}`).join(" ");
|
|
10788
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
10789
|
+
/* @__PURE__ */ jsx62("polygon", { className: `${styles.area} ${chartClass(styles, 0)}`, points: band }),
|
|
10790
|
+
/* @__PURE__ */ jsx62("polyline", { className: `${styles.line} ${chartClass(styles, 1)}`, fill: "none", points: midLine }),
|
|
10791
|
+
showValues ? points.map((point) => /* @__PURE__ */ jsx62("text", { className: styles.valueLabel, textAnchor: "middle", x: point.x, y: point.highY - 6, children: formatValue(point.mid) }, point.label)) : null
|
|
10792
|
+
] });
|
|
10355
10793
|
}
|
|
10356
|
-
function
|
|
10357
|
-
const
|
|
10358
|
-
const
|
|
10359
|
-
|
|
10360
|
-
|
|
10361
|
-
|
|
10362
|
-
|
|
10363
|
-
|
|
10364
|
-
|
|
10365
|
-
|
|
10366
|
-
|
|
10794
|
+
function RangeBarChart({ data, plot, showValues, styles, yMax, yMin }) {
|
|
10795
|
+
const bodyWidth = candlestickBodyWidth(plot, data.length);
|
|
10796
|
+
const barHalfWidth = bodyWidth / 2;
|
|
10797
|
+
return /* @__PURE__ */ jsx62("g", { children: data.map((item, index) => {
|
|
10798
|
+
var _a2, _b2, _c2, _d2;
|
|
10799
|
+
const low = (_b2 = (_a2 = item.low) != null ? _a2 : item.min) != null ? _b2 : item.value * 0.75;
|
|
10800
|
+
const high = (_d2 = (_c2 = item.high) != null ? _c2 : item.max) != null ? _d2 : item.value * 1.25;
|
|
10801
|
+
const x = xForEdgeBarIndex(plot, index, data.length, barHalfWidth);
|
|
10802
|
+
const top = yForDomain(high, yMin, yMax, plot);
|
|
10803
|
+
const bottom = yForDomain(low, yMin, yMax, plot);
|
|
10804
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
10805
|
+
/* @__PURE__ */ jsx62(
|
|
10806
|
+
"rect",
|
|
10807
|
+
{
|
|
10808
|
+
className: `${styles.bar} ${chartClass(styles, index % paletteClasses.length)}`,
|
|
10809
|
+
height: Math.max(4, bottom - top),
|
|
10810
|
+
rx: "3",
|
|
10811
|
+
width: bodyWidth,
|
|
10812
|
+
x: x - bodyWidth / 2,
|
|
10813
|
+
y: top
|
|
10814
|
+
}
|
|
10815
|
+
),
|
|
10816
|
+
showValues ? /* @__PURE__ */ jsx62("text", { className: styles.valueLabel, textAnchor: "middle", x, y: top - 6, children: formatValue(high) }) : null
|
|
10817
|
+
] }, item.label);
|
|
10818
|
+
}) });
|
|
10819
|
+
}
|
|
10820
|
+
function ErrorBarChart({ data, plot, showValues, styles, yMax, yMin }) {
|
|
10821
|
+
const bodyWidth = Math.min(18, candlestickBodyWidth(plot, data.length));
|
|
10822
|
+
const barHalfWidth = bodyWidth / 2;
|
|
10823
|
+
const cap = Math.max(4, bodyWidth * 0.55);
|
|
10824
|
+
return /* @__PURE__ */ jsx62("g", { children: data.map((item, index) => {
|
|
10825
|
+
var _a2, _b2, _c2;
|
|
10826
|
+
const error = (_a2 = item.error) != null ? _a2 : item.value * 0.12;
|
|
10827
|
+
const low = (_b2 = item.low) != null ? _b2 : item.value - error;
|
|
10828
|
+
const high = (_c2 = item.high) != null ? _c2 : item.value + error;
|
|
10829
|
+
const x = xForEdgeBarIndex(plot, index, data.length, barHalfWidth);
|
|
10830
|
+
const valueY = yForDomain(item.value, yMin, yMax, plot);
|
|
10831
|
+
const highY = yForDomain(high, yMin, yMax, plot);
|
|
10832
|
+
const lowY = yForDomain(low, yMin, yMax, plot);
|
|
10833
|
+
const seriesClass = chartClass(styles, index % paletteClasses.length);
|
|
10834
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
10835
|
+
/* @__PURE__ */ jsx62(
|
|
10836
|
+
"rect",
|
|
10837
|
+
{
|
|
10838
|
+
className: `${styles.bar} ${seriesClass}`,
|
|
10839
|
+
height: Math.max(4, plot.bottom - valueY),
|
|
10840
|
+
rx: "2",
|
|
10841
|
+
width: bodyWidth,
|
|
10842
|
+
x: x - bodyWidth / 2,
|
|
10843
|
+
y: valueY
|
|
10844
|
+
}
|
|
10845
|
+
),
|
|
10846
|
+
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x, x2: x, y1: highY, y2: lowY }),
|
|
10847
|
+
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x - cap, x2: x + cap, y1: highY, y2: highY }),
|
|
10848
|
+
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x - cap, x2: x + cap, y1: lowY, y2: lowY }),
|
|
10849
|
+
showValues ? /* @__PURE__ */ jsx62("text", { className: styles.valueLabel, textAnchor: "middle", x, y: highY - 6, children: formatValue(item.value) }) : null
|
|
10850
|
+
] }, item.label);
|
|
10851
|
+
}) });
|
|
10852
|
+
}
|
|
10853
|
+
function ParallelCoordinates({ data, plot, showValues, styles }) {
|
|
10854
|
+
const dims = Math.max(2, ...data.map((item) => {
|
|
10855
|
+
var _a2, _b2;
|
|
10856
|
+
return (_b2 = (_a2 = item.values) == null ? void 0 : _a2.length) != null ? _b2 : 0;
|
|
10857
|
+
}));
|
|
10858
|
+
if (!data.length || dims < 2) {
|
|
10859
|
+
return null;
|
|
10860
|
+
}
|
|
10861
|
+
const axes = Array.from({ length: dims }, (_, dim) => {
|
|
10862
|
+
const values = data.map((item) => {
|
|
10863
|
+
var _a2, _b2;
|
|
10864
|
+
return (_b2 = (_a2 = item.values) == null ? void 0 : _a2[dim]) != null ? _b2 : item.value;
|
|
10865
|
+
});
|
|
10866
|
+
const min = Math.min(...values);
|
|
10867
|
+
const max = Math.max(...values);
|
|
10868
|
+
return { min, max: max === min ? min + 1 : max };
|
|
10869
|
+
});
|
|
10870
|
+
const xAt = (dim) => dims <= 1 ? (plot.gridLeft + plot.gridRight) / 2 : plot.gridLeft + dim * (plot.gridRight - plot.gridLeft) / (dims - 1);
|
|
10871
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
10872
|
+
axes.map((axis, dim) => {
|
|
10873
|
+
const x = xAt(dim);
|
|
10874
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
10875
|
+
/* @__PURE__ */ jsx62("line", { className: styles.gridLine, x1: x, x2: x, y1: plot.top, y2: plot.bottom }),
|
|
10876
|
+
/* @__PURE__ */ jsxs52("text", { className: styles.axisLabel, textAnchor: "middle", x, y: plot.bottom + 16, children: [
|
|
10877
|
+
"D",
|
|
10878
|
+
dim + 1
|
|
10879
|
+
] }),
|
|
10880
|
+
/* @__PURE__ */ jsx62("text", { className: styles.axisLabel, textAnchor: "middle", x, y: plot.top - 8, children: formatValue(axis.max) })
|
|
10881
|
+
] }, `axis-${dim}`);
|
|
10882
|
+
}),
|
|
10883
|
+
data.map((item, index) => {
|
|
10884
|
+
var _a2, _b2;
|
|
10885
|
+
const points = Array.from({ length: dims }, (_, dim) => {
|
|
10886
|
+
var _a3, _b3;
|
|
10887
|
+
const value = (_b3 = (_a3 = item.values) == null ? void 0 : _a3[dim]) != null ? _b3 : item.value;
|
|
10888
|
+
const axis = axes[dim];
|
|
10889
|
+
const y = plot.bottom - (value - axis.min) / (axis.max - axis.min) * (plot.bottom - plot.top);
|
|
10890
|
+
return `${xAt(dim)},${y}`;
|
|
10891
|
+
}).join(" ");
|
|
10892
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
10893
|
+
/* @__PURE__ */ jsx62("polyline", { className: `${styles.line} ${chartClass(styles, index % paletteClasses.length)}`, fill: "none", points }),
|
|
10894
|
+
showValues ? /* @__PURE__ */ jsx62(
|
|
10895
|
+
"text",
|
|
10896
|
+
{
|
|
10897
|
+
className: styles.valueLabel,
|
|
10898
|
+
textAnchor: "start",
|
|
10899
|
+
x: xAt(dims - 1) + 6,
|
|
10900
|
+
y: plot.bottom - (((_b2 = (_a2 = item.values) == null ? void 0 : _a2[dims - 1]) != null ? _b2 : item.value) - axes[dims - 1].min) / (axes[dims - 1].max - axes[dims - 1].min) * (plot.bottom - plot.top),
|
|
10901
|
+
children: item.label
|
|
10902
|
+
}
|
|
10903
|
+
) : null
|
|
10904
|
+
] }, item.label);
|
|
10905
|
+
})
|
|
10906
|
+
] });
|
|
10907
|
+
}
|
|
10908
|
+
function ContourPlot({ data, plot, showValues, styles }) {
|
|
10909
|
+
const cols = Math.max(4, Math.ceil(Math.sqrt(Math.max(data.length, 1))));
|
|
10910
|
+
const rows = Math.max(3, Math.ceil(data.length / cols));
|
|
10911
|
+
const values = data.length ? data.map((item) => item.value) : Array.from({ length: cols * rows }, (_, index) => 20 + index * 17 % 80);
|
|
10912
|
+
const min = Math.min(...values);
|
|
10913
|
+
const max = Math.max(...values);
|
|
10914
|
+
const cellW = (plot.gridRight - plot.gridLeft) / cols;
|
|
10915
|
+
const cellH = (plot.bottom - plot.top) / rows;
|
|
10916
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
10917
|
+
Array.from({ length: rows * cols }, (_, index) => {
|
|
10918
|
+
const value = values[index % values.length];
|
|
10919
|
+
const col = index % cols;
|
|
10920
|
+
const row = Math.floor(index / cols);
|
|
10921
|
+
const intensity = (value - min) / Math.max(1, max - min);
|
|
10922
|
+
const band = Math.min(5, Math.floor(intensity * 6));
|
|
10923
|
+
return /* @__PURE__ */ jsx62(
|
|
10924
|
+
"rect",
|
|
10925
|
+
{
|
|
10926
|
+
className: `${styles.area} ${chartClass(styles, band)}`,
|
|
10927
|
+
height: Math.max(2, cellH - 1),
|
|
10928
|
+
opacity: 0.35 + intensity * 0.55,
|
|
10929
|
+
rx: "2",
|
|
10930
|
+
width: Math.max(2, cellW - 1),
|
|
10931
|
+
x: plot.gridLeft + col * cellW,
|
|
10932
|
+
y: plot.top + row * cellH
|
|
10933
|
+
},
|
|
10934
|
+
`contour-${index}`
|
|
10935
|
+
);
|
|
10936
|
+
}),
|
|
10937
|
+
Array.from({ length: 4 }, (_, ring) => {
|
|
10938
|
+
const t = (ring + 1) / 5;
|
|
10939
|
+
const cx = plot.gridLeft + (plot.gridRight - plot.gridLeft) * 0.55;
|
|
10940
|
+
const cy = plot.top + (plot.bottom - plot.top) * 0.48;
|
|
10941
|
+
const rx = (plot.gridRight - plot.gridLeft) * (0.16 + t * 0.28);
|
|
10942
|
+
const ry = (plot.bottom - plot.top) * (0.14 + t * 0.24);
|
|
10943
|
+
return /* @__PURE__ */ jsx62(
|
|
10944
|
+
"ellipse",
|
|
10945
|
+
{
|
|
10946
|
+
className: `${styles.line} ${chartClass(styles, ring % paletteClasses.length)}`,
|
|
10947
|
+
cx,
|
|
10948
|
+
cy,
|
|
10949
|
+
fill: "none",
|
|
10950
|
+
rx,
|
|
10951
|
+
ry
|
|
10952
|
+
},
|
|
10953
|
+
`contour-ring-${ring}`
|
|
10954
|
+
);
|
|
10955
|
+
}),
|
|
10956
|
+
showValues ? /* @__PURE__ */ jsxs52(
|
|
10957
|
+
"text",
|
|
10958
|
+
{
|
|
10959
|
+
className: styles.valueLabel,
|
|
10960
|
+
textAnchor: "middle",
|
|
10961
|
+
x: (plot.gridLeft + plot.gridRight) / 2,
|
|
10962
|
+
y: plot.top + 14,
|
|
10963
|
+
children: [
|
|
10964
|
+
formatValue(max),
|
|
10965
|
+
" peak"
|
|
10966
|
+
]
|
|
10967
|
+
}
|
|
10968
|
+
) : null
|
|
10969
|
+
] });
|
|
10970
|
+
}
|
|
10971
|
+
function SurfacePlot({ data, plot, showValues, styles }) {
|
|
10972
|
+
const cols = 8;
|
|
10973
|
+
const rows = 6;
|
|
10974
|
+
const values = data.length ? data.map((item) => item.value) : Array.from({ length: cols * rows }, (_, index) => 30 + index * 13 % 70);
|
|
10975
|
+
const min = Math.min(...values);
|
|
10976
|
+
const max = Math.max(...values);
|
|
10977
|
+
const cellW = (plot.gridRight - plot.gridLeft) / cols;
|
|
10978
|
+
const cellH = (plot.bottom - plot.top) / rows;
|
|
10979
|
+
const project = (col, row, value) => {
|
|
10980
|
+
const intensity = (value - min) / Math.max(1, max - min);
|
|
10981
|
+
const x = plot.gridLeft + col * cellW + row * cellW * 0.18;
|
|
10982
|
+
const y = plot.top + row * cellH * 0.72 + (1 - intensity) * cellH * 0.55;
|
|
10983
|
+
return { x, y };
|
|
10984
|
+
};
|
|
10985
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
10986
|
+
Array.from(
|
|
10987
|
+
{ length: rows - 1 },
|
|
10988
|
+
(_, row) => Array.from({ length: cols - 1 }, (_2, col) => {
|
|
10989
|
+
const i = row * cols + col;
|
|
10990
|
+
const v00 = values[i % values.length];
|
|
10991
|
+
const v10 = values[(i + 1) % values.length];
|
|
10992
|
+
const v01 = values[(i + cols) % values.length];
|
|
10993
|
+
const v11 = values[(i + cols + 1) % values.length];
|
|
10994
|
+
const p00 = project(col, row, v00);
|
|
10995
|
+
const p10 = project(col + 1, row, v10);
|
|
10996
|
+
const p01 = project(col, row + 1, v01);
|
|
10997
|
+
const p11 = project(col + 1, row + 1, v11);
|
|
10998
|
+
const avg = (v00 + v10 + v01 + v11) / 4;
|
|
10999
|
+
const band = Math.min(5, Math.floor((avg - min) / Math.max(1, max - min) * 6));
|
|
11000
|
+
return /* @__PURE__ */ jsx62(
|
|
11001
|
+
"polygon",
|
|
11002
|
+
{
|
|
11003
|
+
className: `${styles.area} ${chartClass(styles, band)}`,
|
|
11004
|
+
opacity: 0.55 + (avg - min) / Math.max(1, max - min) * 0.35,
|
|
11005
|
+
points: `${p00.x},${p00.y} ${p10.x},${p10.y} ${p11.x},${p11.y} ${p01.x},${p01.y}`
|
|
11006
|
+
},
|
|
11007
|
+
`surface-${row}-${col}`
|
|
11008
|
+
);
|
|
11009
|
+
})
|
|
11010
|
+
),
|
|
11011
|
+
showValues ? /* @__PURE__ */ jsx62(
|
|
11012
|
+
"text",
|
|
11013
|
+
{
|
|
11014
|
+
className: styles.valueLabel,
|
|
11015
|
+
textAnchor: "middle",
|
|
11016
|
+
x: (plot.gridLeft + plot.gridRight) / 2,
|
|
11017
|
+
y: plot.top + 14,
|
|
11018
|
+
children: "Surface 2D projection"
|
|
11019
|
+
}
|
|
11020
|
+
) : null
|
|
11021
|
+
] });
|
|
11022
|
+
}
|
|
11023
|
+
function BulletChart({ data, plot, showValues, styles, yMax, yMin }) {
|
|
11024
|
+
const laneHeight = Math.min(28, (plot.bottom - plot.top) / Math.max(data.length, 1) * 0.62);
|
|
11025
|
+
return /* @__PURE__ */ jsx62("g", { children: data.map((item, index) => {
|
|
11026
|
+
var _a2, _b2, _c2, _d2;
|
|
11027
|
+
const slot = (plot.bottom - plot.top) / Math.max(data.length, 1);
|
|
11028
|
+
const y = plot.top + index * slot + (slot - laneHeight) / 2;
|
|
11029
|
+
const max = Math.max((_a2 = item.max) != null ? _a2 : yMax, (_b2 = item.target) != null ? _b2 : item.value, item.value, 1);
|
|
11030
|
+
const scale = (value) => plot.gridLeft + (value - yMin) / Math.max(1, max - yMin) * (plot.gridRight - plot.gridLeft);
|
|
11031
|
+
const actual = scale(item.value);
|
|
11032
|
+
const target = scale((_c2 = item.target) != null ? _c2 : item.value * 0.85);
|
|
11033
|
+
const qualitative = scale((_d2 = item.max) != null ? _d2 : max);
|
|
11034
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
11035
|
+
/* @__PURE__ */ jsx62(
|
|
11036
|
+
"rect",
|
|
11037
|
+
{
|
|
11038
|
+
className: `${styles.area} ${chartClass(styles, 5)}`,
|
|
11039
|
+
height: laneHeight,
|
|
11040
|
+
rx: "4",
|
|
11041
|
+
width: Math.max(4, qualitative - plot.gridLeft),
|
|
11042
|
+
x: plot.gridLeft,
|
|
11043
|
+
y
|
|
11044
|
+
}
|
|
11045
|
+
),
|
|
11046
|
+
/* @__PURE__ */ jsx62(
|
|
11047
|
+
"rect",
|
|
11048
|
+
{
|
|
11049
|
+
className: `${styles.bar} ${chartClass(styles, 0)}`,
|
|
11050
|
+
height: laneHeight * 0.45,
|
|
11051
|
+
rx: "2",
|
|
11052
|
+
width: Math.max(4, actual - plot.gridLeft),
|
|
11053
|
+
x: plot.gridLeft,
|
|
11054
|
+
y: y + laneHeight * 0.275
|
|
11055
|
+
}
|
|
11056
|
+
),
|
|
11057
|
+
/* @__PURE__ */ jsx62(
|
|
11058
|
+
"line",
|
|
11059
|
+
{
|
|
11060
|
+
className: `${styles.wick} ${chartClass(styles, 3)}`,
|
|
11061
|
+
strokeWidth: "3",
|
|
11062
|
+
x1: target,
|
|
11063
|
+
x2: target,
|
|
11064
|
+
y1: y,
|
|
11065
|
+
y2: y + laneHeight
|
|
11066
|
+
}
|
|
11067
|
+
),
|
|
11068
|
+
/* @__PURE__ */ jsx62("text", { className: styles.axisLabel, dominantBaseline: "middle", x: plot.gridLeft - 8, y: y + laneHeight / 2, textAnchor: "end", children: item.label }),
|
|
11069
|
+
showValues ? /* @__PURE__ */ jsx62("text", { className: styles.valueLabel, x: actual + 6, y: y + laneHeight / 2 + 4, children: formatValue(item.value) }) : null
|
|
11070
|
+
] }, item.label);
|
|
11071
|
+
}) });
|
|
11072
|
+
}
|
|
11073
|
+
function ParetoChart({ data, plot, showValues, styles }) {
|
|
11074
|
+
const sorted = [...data].sort((a, b) => b.value - a.value);
|
|
11075
|
+
const total = sorted.reduce((sum, item) => sum + Math.max(0, item.value), 0) || 1;
|
|
11076
|
+
const valueMax = Math.max(1, ...sorted.map((item) => item.value));
|
|
11077
|
+
let running = 0;
|
|
11078
|
+
const bodyWidth = candlestickBodyWidth(plot, sorted.length);
|
|
11079
|
+
const barHalfWidth = bodyWidth / 2;
|
|
11080
|
+
const points = sorted.map((item, index) => {
|
|
11081
|
+
running += Math.max(0, item.value);
|
|
11082
|
+
const cumulative = running / total * 100;
|
|
11083
|
+
const x = xForEdgeBarIndex(plot, index, sorted.length, barHalfWidth);
|
|
11084
|
+
return __spreadProps(__spreadValues({}, item), { cumulative, x });
|
|
11085
|
+
});
|
|
11086
|
+
const linePoints = points.map((item) => `${item.x},${yForDomain(item.cumulative, 0, 100, plot)}`).join(" ");
|
|
11087
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
11088
|
+
points.map((item) => {
|
|
11089
|
+
const top = yForDomain(item.value, 0, valueMax, plot);
|
|
11090
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
11091
|
+
/* @__PURE__ */ jsx62(
|
|
11092
|
+
"rect",
|
|
11093
|
+
{
|
|
11094
|
+
className: `${styles.bar} ${chartClass(styles, 0)}`,
|
|
11095
|
+
height: Math.max(4, plot.bottom - top),
|
|
11096
|
+
rx: "2",
|
|
11097
|
+
width: bodyWidth,
|
|
11098
|
+
x: item.x - bodyWidth / 2,
|
|
11099
|
+
y: top
|
|
11100
|
+
}
|
|
11101
|
+
),
|
|
11102
|
+
showValues ? /* @__PURE__ */ jsx62("text", { className: styles.valueLabel, textAnchor: "middle", x: item.x, y: top - 6, children: formatValue(item.value) }) : null,
|
|
11103
|
+
/* @__PURE__ */ jsx62(
|
|
11104
|
+
"circle",
|
|
11105
|
+
{
|
|
11106
|
+
className: `${styles.point} ${chartClass(styles, 1)}`,
|
|
11107
|
+
cx: item.x,
|
|
11108
|
+
cy: yForDomain(item.cumulative, 0, 100, plot),
|
|
11109
|
+
r: "3.5"
|
|
11110
|
+
}
|
|
11111
|
+
)
|
|
11112
|
+
] }, item.label);
|
|
11113
|
+
}),
|
|
11114
|
+
/* @__PURE__ */ jsx62("polyline", { className: `${styles.line} ${chartClass(styles, 1)}`, fill: "none", points: linePoints }),
|
|
11115
|
+
/* @__PURE__ */ jsx62("text", { className: styles.axisLabel, textAnchor: "start", x: plot.gridRight + 6, y: plot.top + 4, children: "%" })
|
|
11116
|
+
] });
|
|
11117
|
+
}
|
|
11118
|
+
function BoxPlot({ data, plot, showValues, styles, yMax, yMin }) {
|
|
11119
|
+
const barHalfWidth = getBoxPlotBarHalfWidth(plot, data.length);
|
|
11120
|
+
const boxWidth = barHalfWidth * 2;
|
|
11121
|
+
return /* @__PURE__ */ jsx62("g", { children: data.map((item, index) => {
|
|
11122
|
+
var _a2, _b2, _c2, _d2, _e2;
|
|
11123
|
+
const min = (_a2 = item.min) != null ? _a2 : item.value * 0.6;
|
|
11124
|
+
const q1 = (_b2 = item.q1) != null ? _b2 : item.value * 0.78;
|
|
11125
|
+
const median = (_c2 = item.median) != null ? _c2 : item.value;
|
|
11126
|
+
const q3 = (_d2 = item.q3) != null ? _d2 : item.value * 1.18;
|
|
11127
|
+
const maxV = (_e2 = item.max) != null ? _e2 : item.value * 1.35;
|
|
11128
|
+
const x = xForEdgeBarIndex(plot, index, data.length, barHalfWidth);
|
|
11129
|
+
const seriesClass = chartClass(styles, index % paletteClasses.length);
|
|
11130
|
+
return /* @__PURE__ */ jsxs52("g", { children: [
|
|
11131
|
+
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x, x2: x, y1: yForDomain(min, yMin, yMax, plot), y2: yForDomain(maxV, yMin, yMax, plot) }),
|
|
11132
|
+
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x - boxWidth / 2, x2: x + boxWidth / 2, y1: yForDomain(min, yMin, yMax, plot), y2: yForDomain(min, yMin, yMax, plot) }),
|
|
11133
|
+
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, x1: x - boxWidth / 2, x2: x + boxWidth / 2, y1: yForDomain(maxV, yMin, yMax, plot), y2: yForDomain(maxV, yMin, yMax, plot) }),
|
|
11134
|
+
/* @__PURE__ */ jsx62(
|
|
11135
|
+
"rect",
|
|
11136
|
+
{
|
|
11137
|
+
className: `${styles.area} ${seriesClass}`,
|
|
11138
|
+
height: yForDomain(q1, yMin, yMax, plot) - yForDomain(q3, yMin, yMax, plot),
|
|
11139
|
+
width: boxWidth,
|
|
11140
|
+
x: x - boxWidth / 2,
|
|
11141
|
+
y: yForDomain(q3, yMin, yMax, plot)
|
|
11142
|
+
}
|
|
11143
|
+
),
|
|
11144
|
+
/* @__PURE__ */ jsx62("line", { className: `${styles.wick} ${seriesClass}`, strokeWidth: "2", x1: x - boxWidth / 2, x2: x + boxWidth / 2, y1: yForDomain(median, yMin, yMax, plot), y2: yForDomain(median, yMin, yMax, plot) }),
|
|
11145
|
+
showValues ? /* @__PURE__ */ jsx62("text", { className: styles.valueLabel, textAnchor: "middle", x, y: yForDomain(maxV, yMin, yMax, plot) - 6, children: formatValue(median) }) : null
|
|
11146
|
+
] }, item.label);
|
|
11147
|
+
}) });
|
|
11148
|
+
}
|
|
11149
|
+
function truncateLabel(label, maxChars) {
|
|
11150
|
+
if (maxChars < 4) {
|
|
11151
|
+
return "";
|
|
11152
|
+
}
|
|
11153
|
+
if (label.length <= maxChars) {
|
|
11154
|
+
return label;
|
|
11155
|
+
}
|
|
11156
|
+
return `${label.slice(0, maxChars - 1)}\u2026`;
|
|
11157
|
+
}
|
|
11158
|
+
function Treemap({ data, plot, showValues, styles }) {
|
|
11159
|
+
const gap = 2;
|
|
11160
|
+
const labelHeight = 18;
|
|
11161
|
+
const items = data.map((item, index) => ({
|
|
11162
|
+
group: item.group,
|
|
11163
|
+
index,
|
|
11164
|
+
label: item.label,
|
|
11165
|
+
value: Math.max(0, item.value)
|
|
11166
|
+
}));
|
|
11167
|
+
const layout = layoutGroupedTreemap(
|
|
11168
|
+
items,
|
|
10367
11169
|
plot.gridLeft,
|
|
10368
11170
|
plot.top + labelHeight,
|
|
10369
11171
|
plot.gridRight - plot.gridLeft,
|
|
@@ -11042,6 +11844,24 @@ function SpecializedChart(props) {
|
|
|
11042
11844
|
return /* @__PURE__ */ jsx62(Waterfall, __spreadValues({}, props));
|
|
11043
11845
|
case "candlestick":
|
|
11044
11846
|
return /* @__PURE__ */ jsx62(Candlestick, __spreadValues({}, props));
|
|
11847
|
+
case "ohlc":
|
|
11848
|
+
return /* @__PURE__ */ jsx62(OhlcChart, __spreadValues({}, props));
|
|
11849
|
+
case "range-area":
|
|
11850
|
+
return /* @__PURE__ */ jsx62(RangeAreaChart, __spreadValues({}, props));
|
|
11851
|
+
case "range-bar":
|
|
11852
|
+
return /* @__PURE__ */ jsx62(RangeBarChart, __spreadValues({}, props));
|
|
11853
|
+
case "error-bar":
|
|
11854
|
+
return /* @__PURE__ */ jsx62(ErrorBarChart, __spreadValues({}, props));
|
|
11855
|
+
case "parallel-coordinates":
|
|
11856
|
+
return /* @__PURE__ */ jsx62(ParallelCoordinates, __spreadValues({}, props));
|
|
11857
|
+
case "contour":
|
|
11858
|
+
return /* @__PURE__ */ jsx62(ContourPlot, __spreadValues({}, props));
|
|
11859
|
+
case "surface":
|
|
11860
|
+
return /* @__PURE__ */ jsx62(SurfacePlot, __spreadValues({}, props));
|
|
11861
|
+
case "bullet":
|
|
11862
|
+
return /* @__PURE__ */ jsx62(BulletChart, __spreadValues({}, props));
|
|
11863
|
+
case "pareto":
|
|
11864
|
+
return /* @__PURE__ */ jsx62(ParetoChart, __spreadValues({}, props));
|
|
11045
11865
|
case "box-plot":
|
|
11046
11866
|
return /* @__PURE__ */ jsx62(BoxPlot, __spreadValues({}, props));
|
|
11047
11867
|
case "treemap":
|
|
@@ -11086,10 +11906,10 @@ function SpecializedChart(props) {
|
|
|
11086
11906
|
}
|
|
11087
11907
|
|
|
11088
11908
|
// ../../components/Chart/Chart.module.css
|
|
11089
|
-
var Chart_default = {"
|
|
11909
|
+
var Chart_default = {"mapValue":"opus_L6guCK_mapValue","header":"opus_L6guCK_header","graphLink":"opus_L6guCK_graphLink","graphLinkColored":"opus_L6guCK_graphLinkColored","wick":"opus_L6guCK_wick","legendItem":"opus_L6guCK_legendItem","sankeyCenterLabel":"opus_L6guCK_sankeyCenterLabel","mapRegion":"opus_L6guCK_mapRegion","sankeyLink":"opus_L6guCK_sankeyLink","link":"opus_L6guCK_link","sankeySideName":"opus_L6guCK_sankeySideName","violin":"opus_L6guCK_violin","sankeySideLabel":"opus_L6guCK_sankeySideLabel","treemapGroupLabel":"opus_L6guCK_treemapGroupLabel","mapLabel":"opus_L6guCK_mapLabel","meta":"opus_L6guCK_meta","funnel":"opus_L6guCK_funnel","graphNode":"opus_L6guCK_graphNode","area":"opus_L6guCK_area","axes":"opus_L6guCK_axes","seriesE":"opus_L6guCK_seriesE","funnelGuide":"opus_L6guCK_funnelGuide","land":"opus_L6guCK_land","seriesA":"opus_L6guCK_seriesA","radarArea":"opus_L6guCK_radarArea","ridge":"opus_L6guCK_ridge","sankeyLabelBox":"opus_L6guCK_sankeyLabelBox","bar":"opus_L6guCK_bar","legendSwatch":"opus_L6guCK_legendSwatch","seriesC":"opus_L6guCK_seriesC","point":"opus_L6guCK_point","line":"opus_L6guCK_line","radarGrid":"opus_L6guCK_radarGrid","packLabel":"opus_L6guCK_packLabel","axisLine":"opus_L6guCK_axisLine","chart":"opus_L6guCK_chart","mapLand":"opus_L6guCK_mapLand","sankeyNode":"opus_L6guCK_sankeyNode","ring":"opus_L6guCK_ring","valueLabel":"opus_L6guCK_valueLabel","seriesF":"opus_L6guCK_seriesF","graphNodeRing":"opus_L6guCK_graphNodeRing","graphLabel":"opus_L6guCK_graphLabel","seriesB":"opus_L6guCK_seriesB","title":"opus_L6guCK_title","slice":"opus_L6guCK_slice","svg":"opus_L6guCK_svg","treemapLabel":"opus_L6guCK_treemapLabel","axisTitle":"opus_L6guCK_axisTitle","legend":"opus_L6guCK_legend","sankeySideValue":"opus_L6guCK_sankeySideValue","axisLabels":"opus_L6guCK_axisLabels","grid":"opus_L6guCK_grid","axisTick":"opus_L6guCK_axisTick","axisGuide":"opus_L6guCK_axisGuide","seriesD":"opus_L6guCK_seriesD","packParent":"opus_L6guCK_packParent","funnelText":"opus_L6guCK_funnelText"};
|
|
11090
11910
|
|
|
11091
11911
|
// ../../components/Chart/Chart.tsx
|
|
11092
|
-
import { Fragment as
|
|
11912
|
+
import { Fragment as Fragment8, jsx as jsx63, jsxs as jsxs53 } from "react/jsx-runtime";
|
|
11093
11913
|
var cartesianVariants = [
|
|
11094
11914
|
"bar-vertical",
|
|
11095
11915
|
"bar-horizontal",
|
|
@@ -11311,7 +12131,7 @@ function getWaterfallDomain(data) {
|
|
|
11311
12131
|
return { min: min - pad, max: max + pad };
|
|
11312
12132
|
}
|
|
11313
12133
|
function getChartYDomain(variant, data, series, fallbackMax) {
|
|
11314
|
-
if (variant === "candlestick") {
|
|
12134
|
+
if (variant === "candlestick" || variant === "ohlc") {
|
|
11315
12135
|
const lows = data.map((item) => {
|
|
11316
12136
|
var _a2;
|
|
11317
12137
|
return (_a2 = item.low) != null ? _a2 : item.value * 0.82;
|
|
@@ -11325,6 +12145,45 @@ function getChartYDomain(variant, data, series, fallbackMax) {
|
|
|
11325
12145
|
const pad = Math.max(0, (max - min) * 0.04);
|
|
11326
12146
|
return { min: min - pad, max: max + pad };
|
|
11327
12147
|
}
|
|
12148
|
+
if (variant === "range-area" || variant === "range-bar") {
|
|
12149
|
+
const lows = data.map((item) => {
|
|
12150
|
+
var _a2, _b2;
|
|
12151
|
+
return (_b2 = (_a2 = item.low) != null ? _a2 : item.min) != null ? _b2 : item.value * 0.75;
|
|
12152
|
+
});
|
|
12153
|
+
const highs = data.map((item) => {
|
|
12154
|
+
var _a2, _b2;
|
|
12155
|
+
return (_b2 = (_a2 = item.high) != null ? _a2 : item.max) != null ? _b2 : item.value * 1.25;
|
|
12156
|
+
});
|
|
12157
|
+
const min = Math.min(...lows);
|
|
12158
|
+
const max = Math.max(...highs);
|
|
12159
|
+
const pad = Math.max(0, (max - min) * 0.06);
|
|
12160
|
+
return { min: Math.max(0, min - pad), max: max + pad };
|
|
12161
|
+
}
|
|
12162
|
+
if (variant === "error-bar") {
|
|
12163
|
+
const lows = data.map((item) => {
|
|
12164
|
+
var _a2, _b2;
|
|
12165
|
+
const error = (_a2 = item.error) != null ? _a2 : item.value * 0.12;
|
|
12166
|
+
return ((_b2 = item.low) != null ? _b2 : item.value) - (item.low == null ? error : 0);
|
|
12167
|
+
});
|
|
12168
|
+
const highs = data.map((item) => {
|
|
12169
|
+
var _a2, _b2;
|
|
12170
|
+
const error = (_a2 = item.error) != null ? _a2 : item.value * 0.12;
|
|
12171
|
+
return ((_b2 = item.high) != null ? _b2 : item.value) + (item.high == null ? error : 0);
|
|
12172
|
+
});
|
|
12173
|
+
const min = Math.min(0, ...lows);
|
|
12174
|
+
const max = Math.max(...highs);
|
|
12175
|
+
return { min, max: max * 1.08 };
|
|
12176
|
+
}
|
|
12177
|
+
if (variant === "bullet") {
|
|
12178
|
+
const highs = data.map((item) => {
|
|
12179
|
+
var _a2, _b2;
|
|
12180
|
+
return Math.max(item.value, (_a2 = item.target) != null ? _a2 : item.value, (_b2 = item.max) != null ? _b2 : item.value);
|
|
12181
|
+
});
|
|
12182
|
+
return { min: 0, max: Math.max(1, ...highs) * 1.08 };
|
|
12183
|
+
}
|
|
12184
|
+
if (variant === "pareto") {
|
|
12185
|
+
return { min: 0, max: Math.max(1, ...data.map((item) => item.value)) * 1.08 };
|
|
12186
|
+
}
|
|
11328
12187
|
if (variant === "box-plot") {
|
|
11329
12188
|
const lows = data.map((item) => {
|
|
11330
12189
|
var _a2;
|
|
@@ -12004,7 +12863,7 @@ function Chart({
|
|
|
12004
12863
|
})
|
|
12005
12864
|
) : variant === "stacked-area" ? stackedSeriesMax(series) : useDomainAxis ? yDomain.max : max;
|
|
12006
12865
|
const axisMin = useDomainAxis ? yDomain.min : 0;
|
|
12007
|
-
|
|
12866
|
+
useEffect23(() => {
|
|
12008
12867
|
const svg = svgRef.current;
|
|
12009
12868
|
if (!svg) {
|
|
12010
12869
|
return;
|
|
@@ -12134,7 +12993,7 @@ function Chart({
|
|
|
12134
12993
|
variant === "gantt" ? /* @__PURE__ */ jsx63(GanttRowLabels, { data, plot: activePlot, styles: Chart_default }) : null,
|
|
12135
12994
|
variant === "heatmap" && showAxis ? /* @__PURE__ */ jsx63(HeatmapAxisLabels, { plot: activePlot, styles: Chart_default }) : null,
|
|
12136
12995
|
variant === "calendar-heatmap" && showAxis ? /* @__PURE__ */ jsx63(CalendarHeatmapAxisLabels, { plot: activePlot, styles: Chart_default }) : null,
|
|
12137
|
-
isSpecializedChartVariant(variant) ? /* @__PURE__ */ jsxs53(
|
|
12996
|
+
isSpecializedChartVariant(variant) ? /* @__PURE__ */ jsxs53(Fragment8, { children: [
|
|
12138
12997
|
/* @__PURE__ */ jsx63("defs", { children: /* @__PURE__ */ jsx63("clipPath", { id: plotClipId, children: /* @__PURE__ */ jsx63(
|
|
12139
12998
|
"rect",
|
|
12140
12999
|
{
|
|
@@ -12169,7 +13028,7 @@ function Chart({
|
|
|
12169
13028
|
slotBounds: specializedVariantUsesSlotLabels(variant) ? { left: activePlot.gridLeft, right: activePlot.gridRight } : void 0,
|
|
12170
13029
|
slotCentered: specializedVariantUsesSlotLabels(variant),
|
|
12171
13030
|
timeline: variant === "timeline" || variant === "milestone-timeline",
|
|
12172
|
-
edgeBarHalfWidth: variant === "candlestick" ? getCandlestickBarHalfWidth(activePlot, data.length) : variant === "histogram" ? getHistogramBarHalfWidth(activePlot, data.length) : variant === "box-plot" ? getBoxPlotBarHalfWidth(activePlot, data.length) : variant === "violin" ? getViolinBarHalfWidth(activePlot, data.length) : void 0
|
|
13031
|
+
edgeBarHalfWidth: variant === "candlestick" || variant === "ohlc" || variant === "range-bar" || variant === "error-bar" || variant === "pareto" ? getCandlestickBarHalfWidth(activePlot, data.length) : variant === "histogram" ? getHistogramBarHalfWidth(activePlot, data.length) : variant === "box-plot" ? getBoxPlotBarHalfWidth(activePlot, data.length) : variant === "violin" ? getViolinBarHalfWidth(activePlot, data.length) : void 0
|
|
12173
13032
|
}
|
|
12174
13033
|
) : null
|
|
12175
13034
|
] }),
|
|
@@ -12186,7 +13045,7 @@ function Chart({
|
|
|
12186
13045
|
}
|
|
12187
13046
|
|
|
12188
13047
|
// ../../components/Skeleton/Skeleton.module.css
|
|
12189
|
-
var Skeleton_default = {"
|
|
13048
|
+
var Skeleton_default = {"skeleton":"opus_27r9Md_skeleton","skeletonPulse":"opus_27r9Md_skeletonPulse","tableCell":"opus_27r9Md_tableCell","media":"opus_27r9Md_media","avatar":"opus_27r9Md_avatar","avatarContent":"opus_27r9Md_avatarContent","stack":"opus_27r9Md_stack","line":"opus_27r9Md_line","tableRow":"opus_27r9Md_tableRow","skeletonShimmer":"opus_27r9Md_skeletonShimmer"};
|
|
12190
13049
|
|
|
12191
13050
|
// ../../components/Skeleton/Skeleton.tsx
|
|
12192
13051
|
import { jsx as jsx64, jsxs as jsxs54 } from "react/jsx-runtime";
|
|
@@ -12227,17 +13086,17 @@ function Skeleton({
|
|
|
12227
13086
|
}
|
|
12228
13087
|
|
|
12229
13088
|
// ../../components/Carousel/Carousel.tsx
|
|
12230
|
-
import { useCallback as useCallback14, useEffect as
|
|
12231
|
-
import { faChevronLeft, faChevronRight } from "@fortawesome/free-solid-svg-icons";
|
|
13089
|
+
import { useCallback as useCallback14, useEffect as useEffect25, useMemo as useMemo15, useRef as useRef26, useState as useState32 } from "react";
|
|
13090
|
+
import { faChevronLeft, faChevronRight as faChevronRight2 } from "@fortawesome/free-solid-svg-icons";
|
|
12232
13091
|
import { FontAwesomeIcon as FontAwesomeIcon8 } from "@fortawesome/react-fontawesome";
|
|
12233
13092
|
|
|
12234
13093
|
// ../../components/Lightbox/Lightbox.tsx
|
|
12235
|
-
import { useCallback as useCallback13, useEffect as
|
|
13094
|
+
import { useCallback as useCallback13, useEffect as useEffect24, useRef as useRef25, useState as useState31 } from "react";
|
|
12236
13095
|
import { faXmark as faXmark2 } from "@fortawesome/free-solid-svg-icons";
|
|
12237
13096
|
import { FontAwesomeIcon as FontAwesomeIcon7 } from "@fortawesome/react-fontawesome";
|
|
12238
13097
|
|
|
12239
13098
|
// ../../components/Lightbox/Lightbox.module.css
|
|
12240
|
-
var Lightbox_default = {"
|
|
13099
|
+
var Lightbox_default = {"lightboxPanelIn":"opus_s7Rpyv_lightboxPanelIn","trigger":"opus_s7Rpyv_trigger","lightboxFadeOut":"opus_s7Rpyv_lightboxFadeOut","lightbox":"opus_s7Rpyv_lightbox","close":"opus_s7Rpyv_close","image":"opus_s7Rpyv_image","closeIcon":"opus_s7Rpyv_closeIcon","lightboxFadeIn":"opus_s7Rpyv_lightboxFadeIn","caption":"opus_s7Rpyv_caption","lightboxPanelOut":"opus_s7Rpyv_lightboxPanelOut","overlay":"opus_s7Rpyv_overlay","frame":"opus_s7Rpyv_frame","panel":"opus_s7Rpyv_panel"};
|
|
12241
13100
|
|
|
12242
13101
|
// ../../components/Lightbox/Lightbox.tsx
|
|
12243
13102
|
import { jsx as jsx65, jsxs as jsxs55 } from "react/jsx-runtime";
|
|
@@ -12270,7 +13129,7 @@ function Lightbox({
|
|
|
12270
13129
|
initialFocusRef: closeRef,
|
|
12271
13130
|
restoreFocus: true
|
|
12272
13131
|
});
|
|
12273
|
-
|
|
13132
|
+
useEffect24(() => {
|
|
12274
13133
|
if (!isOpen || !dismissOnEscape) {
|
|
12275
13134
|
return;
|
|
12276
13135
|
}
|
|
@@ -12282,7 +13141,7 @@ function Lightbox({
|
|
|
12282
13141
|
window.addEventListener("keydown", handleKeyDown);
|
|
12283
13142
|
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
12284
13143
|
}, [dismissOnEscape, isOpen, setOpen]);
|
|
12285
|
-
|
|
13144
|
+
useEffect24(() => {
|
|
12286
13145
|
if (isOpen) {
|
|
12287
13146
|
const timeout2 = window.setTimeout(() => setIsRendered(true), 0);
|
|
12288
13147
|
return () => window.clearTimeout(timeout2);
|
|
@@ -12352,10 +13211,10 @@ function Lightbox({
|
|
|
12352
13211
|
}
|
|
12353
13212
|
|
|
12354
13213
|
// ../../components/Carousel/Carousel.module.css
|
|
12355
|
-
var Carousel_default = {"
|
|
13214
|
+
var Carousel_default = {"pips":"opus_N4occJ_pips","pip":"opus_N4occJ_pip","navIcon":"opus_N4occJ_navIcon","visuallyHidden":"opus_N4occJ_visuallyHidden","slide":"opus_N4occJ_slide","stage":"opus_N4occJ_stage","empty":"opus_N4occJ_empty","track":"opus_N4occJ_track","image":"opus_N4occJ_image","footer":"opus_N4occJ_footer","carousel":"opus_N4occJ_carousel","nav":"opus_N4occJ_nav","caption":"opus_N4occJ_caption"};
|
|
12356
13215
|
|
|
12357
13216
|
// ../../components/Carousel/Carousel.tsx
|
|
12358
|
-
import { Fragment as
|
|
13217
|
+
import { Fragment as Fragment9, jsx as jsx66, jsxs as jsxs56 } from "react/jsx-runtime";
|
|
12359
13218
|
function safeIndex(index, total) {
|
|
12360
13219
|
if (total <= 0) {
|
|
12361
13220
|
return 0;
|
|
@@ -12409,7 +13268,7 @@ function Carousel({
|
|
|
12409
13268
|
const [transitionEnabled, setTransitionEnabled] = useState32(true);
|
|
12410
13269
|
const [isAnimating, setIsAnimating] = useState32(false);
|
|
12411
13270
|
const isJumpingRef = useRef26(false);
|
|
12412
|
-
|
|
13271
|
+
useEffect25(() => {
|
|
12413
13272
|
if (images.length === 0) {
|
|
12414
13273
|
return;
|
|
12415
13274
|
}
|
|
@@ -12554,7 +13413,7 @@ function Carousel({
|
|
|
12554
13413
|
})
|
|
12555
13414
|
}
|
|
12556
13415
|
),
|
|
12557
|
-
hasMultiple ? /* @__PURE__ */ jsxs56(
|
|
13416
|
+
hasMultiple ? /* @__PURE__ */ jsxs56(Fragment9, { children: [
|
|
12558
13417
|
/* @__PURE__ */ jsx66(
|
|
12559
13418
|
"button",
|
|
12560
13419
|
{
|
|
@@ -12576,7 +13435,7 @@ function Carousel({
|
|
|
12576
13435
|
disabled: isAnimating || !loopEnabled && trackIndex === trackImages.length - 1,
|
|
12577
13436
|
type: "button",
|
|
12578
13437
|
onClick: handleNext,
|
|
12579
|
-
children: /* @__PURE__ */ jsx66(FontAwesomeIcon8, { "aria-hidden": "true", className: Carousel_default.navIcon, icon:
|
|
13438
|
+
children: /* @__PURE__ */ jsx66(FontAwesomeIcon8, { "aria-hidden": "true", className: Carousel_default.navIcon, icon: faChevronRight2 })
|
|
12580
13439
|
}
|
|
12581
13440
|
),
|
|
12582
13441
|
showPips ? /* @__PURE__ */ jsx66("div", { "aria-label": "Choose slide", className: Carousel_default.pips, children: images.map((image, index) => {
|
|
@@ -12673,13 +13532,13 @@ function ImageGallery({
|
|
|
12673
13532
|
}
|
|
12674
13533
|
|
|
12675
13534
|
// ../../components/ModelViewer/ModelViewer.tsx
|
|
12676
|
-
import { createElement, useCallback as useCallback15, useEffect as
|
|
13535
|
+
import { createElement, useCallback as useCallback15, useEffect as useEffect27, useRef as useRef28, useState as useState34 } from "react";
|
|
12677
13536
|
|
|
12678
13537
|
// ../../components/ModelViewer/FireBarrelModelViewer.tsx
|
|
12679
|
-
import { useEffect as
|
|
13538
|
+
import { useEffect as useEffect26, useRef as useRef27, useState as useState33 } from "react";
|
|
12680
13539
|
|
|
12681
13540
|
// ../../components/ModelViewer/ModelViewer.module.css
|
|
12682
|
-
var ModelViewer_default = {"
|
|
13541
|
+
var ModelViewer_default = {"stage":"opus_f7gfHI_stage","canvasHost":"opus_f7gfHI_canvasHost","loading":"opus_f7gfHI_loading","viewer":"opus_f7gfHI_viewer","model":"opus_f7gfHI_model","caption":"opus_f7gfHI_caption"};
|
|
12683
13542
|
|
|
12684
13543
|
// ../../components/ModelViewer/FireBarrelModelViewer.tsx
|
|
12685
13544
|
import { jsx as jsx69, jsxs as jsxs58 } from "react/jsx-runtime";
|
|
@@ -12693,7 +13552,7 @@ function FireBarrelModelViewer({
|
|
|
12693
13552
|
const canvasHostRef = useRef27(null);
|
|
12694
13553
|
const [failed, setFailed] = useState33(false);
|
|
12695
13554
|
const [loading, setLoading] = useState33(true);
|
|
12696
|
-
|
|
13555
|
+
useEffect26(() => {
|
|
12697
13556
|
const canvasHost = canvasHostRef.current;
|
|
12698
13557
|
if (!canvasHost) {
|
|
12699
13558
|
return;
|
|
@@ -12837,7 +13696,7 @@ function StandardModelViewer({
|
|
|
12837
13696
|
const setViewerRef = useCallback15((node) => {
|
|
12838
13697
|
viewerRef.current = node;
|
|
12839
13698
|
}, []);
|
|
12840
|
-
|
|
13699
|
+
useEffect27(() => {
|
|
12841
13700
|
let mounted = true;
|
|
12842
13701
|
loadModelViewer().then(() => {
|
|
12843
13702
|
if (mounted) {
|
|
@@ -12852,7 +13711,7 @@ function StandardModelViewer({
|
|
|
12852
13711
|
mounted = false;
|
|
12853
13712
|
};
|
|
12854
13713
|
}, []);
|
|
12855
|
-
|
|
13714
|
+
useEffect27(() => {
|
|
12856
13715
|
if (!ready || failed || !asset.autoplay) {
|
|
12857
13716
|
return;
|
|
12858
13717
|
}
|
|
@@ -12892,12 +13751,12 @@ function StandardModelViewer({
|
|
|
12892
13751
|
}
|
|
12893
13752
|
|
|
12894
13753
|
// ../../components/ModelLightbox/ModelLightbox.tsx
|
|
12895
|
-
import { useCallback as useCallback16, useEffect as
|
|
13754
|
+
import { useCallback as useCallback16, useEffect as useEffect28, useRef as useRef29, useState as useState35 } from "react";
|
|
12896
13755
|
import { faXmark as faXmark3 } from "@fortawesome/free-solid-svg-icons";
|
|
12897
13756
|
import { FontAwesomeIcon as FontAwesomeIcon9 } from "@fortawesome/react-fontawesome";
|
|
12898
13757
|
|
|
12899
13758
|
// ../../components/ModelLightbox/ModelLightbox.module.css
|
|
12900
|
-
var ModelLightbox_default = {"
|
|
13759
|
+
var ModelLightbox_default = {"close":"opus_YYKGIB_close","trigger":"opus_YYKGIB_trigger","modelLightboxFadeIn":"opus_YYKGIB_modelLightboxFadeIn","frame":"opus_YYKGIB_frame","lightbox":"opus_YYKGIB_lightbox","closeIcon":"opus_YYKGIB_closeIcon","modelLightboxPanelOut":"opus_YYKGIB_modelLightboxPanelOut","modelLightboxPanelIn":"opus_YYKGIB_modelLightboxPanelIn","overlay":"opus_YYKGIB_overlay","modelLightboxFadeOut":"opus_YYKGIB_modelLightboxFadeOut"};
|
|
12901
13760
|
|
|
12902
13761
|
// ../../components/ModelLightbox/ModelLightbox.tsx
|
|
12903
13762
|
import { jsx as jsx71, jsxs as jsxs60 } from "react/jsx-runtime";
|
|
@@ -12927,7 +13786,7 @@ function ModelLightbox({
|
|
|
12927
13786
|
initialFocusRef: closeRef,
|
|
12928
13787
|
restoreFocus: true
|
|
12929
13788
|
});
|
|
12930
|
-
|
|
13789
|
+
useEffect28(() => {
|
|
12931
13790
|
if (!isOpen || !dismissOnEscape) {
|
|
12932
13791
|
return;
|
|
12933
13792
|
}
|
|
@@ -12939,7 +13798,7 @@ function ModelLightbox({
|
|
|
12939
13798
|
window.addEventListener("keydown", handleKeyDown);
|
|
12940
13799
|
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
12941
13800
|
}, [dismissOnEscape, isOpen, setOpen]);
|
|
12942
|
-
|
|
13801
|
+
useEffect28(() => {
|
|
12943
13802
|
if (isOpen) {
|
|
12944
13803
|
const timeout2 = window.setTimeout(() => setIsRendered(true), 0);
|
|
12945
13804
|
return () => window.clearTimeout(timeout2);
|
|
@@ -13008,21 +13867,23 @@ var ModelThumbnail_default = {"staticThumbnail":"opus_NkO9Yb_staticThumbnail","c
|
|
|
13008
13867
|
import { jsx as jsx72, jsxs as jsxs61 } from "react/jsx-runtime";
|
|
13009
13868
|
function ThumbnailContent({
|
|
13010
13869
|
asset,
|
|
13870
|
+
fill,
|
|
13011
13871
|
showCaption,
|
|
13012
13872
|
size
|
|
13013
13873
|
}) {
|
|
13014
|
-
return /* @__PURE__ */ jsxs61("span", { className: ModelThumbnail_default.content, "data-size": size, children: [
|
|
13874
|
+
return /* @__PURE__ */ jsxs61("span", { className: ModelThumbnail_default.content, "data-fill": fill ? "true" : void 0, "data-size": size, children: [
|
|
13015
13875
|
/* @__PURE__ */ jsx72(ModelViewer, { asset, cameraControls: false, height: "compact", showCaption: false }),
|
|
13016
13876
|
showCaption ? /* @__PURE__ */ jsx72("span", { className: ModelThumbnail_default.caption, children: asset.name }) : null
|
|
13017
13877
|
] });
|
|
13018
13878
|
}
|
|
13019
13879
|
function ModelThumbnail({
|
|
13020
13880
|
asset,
|
|
13881
|
+
fill = false,
|
|
13021
13882
|
openInLightbox = true,
|
|
13022
13883
|
showCaption = true,
|
|
13023
13884
|
size = "medium"
|
|
13024
13885
|
}) {
|
|
13025
|
-
const content = /* @__PURE__ */ jsx72(ThumbnailContent, { asset, showCaption, size });
|
|
13886
|
+
const content = /* @__PURE__ */ jsx72(ThumbnailContent, { asset, fill, showCaption, size });
|
|
13026
13887
|
if (openInLightbox) {
|
|
13027
13888
|
return /* @__PURE__ */ jsx72(
|
|
13028
13889
|
ModelLightbox,
|
|
@@ -13056,6 +13917,7 @@ function ModelGallery({
|
|
|
13056
13917
|
ModelThumbnail,
|
|
13057
13918
|
{
|
|
13058
13919
|
asset,
|
|
13920
|
+
fill: true,
|
|
13059
13921
|
openInLightbox: true,
|
|
13060
13922
|
showCaption: showCaptions,
|
|
13061
13923
|
size: thumbnailSize
|
|
@@ -13120,7 +13982,7 @@ function CatalogIcon({ iconName }) {
|
|
|
13120
13982
|
}
|
|
13121
13983
|
|
|
13122
13984
|
// ../../components/EmptyState/EmptyState.module.css
|
|
13123
|
-
var EmptyState_default = {"root":"opus_1KckGY_root","
|
|
13985
|
+
var EmptyState_default = {"root":"opus_1KckGY_root","copy":"opus_1KckGY_copy","title":"opus_1KckGY_title","actions":"opus_1KckGY_actions","description":"opus_1KckGY_description","iconWrap":"opus_1KckGY_iconWrap"};
|
|
13124
13986
|
|
|
13125
13987
|
// ../../components/EmptyState/EmptyState.tsx
|
|
13126
13988
|
import { jsx as jsx75, jsxs as jsxs62 } from "react/jsx-runtime";
|
|
@@ -13153,68 +14015,1052 @@ function EmptyState({
|
|
|
13153
14015
|
);
|
|
13154
14016
|
}
|
|
13155
14017
|
|
|
13156
|
-
// ../../components/
|
|
13157
|
-
|
|
13158
|
-
createContext as createContext8,
|
|
13159
|
-
useContext as useContext9,
|
|
13160
|
-
useState as useState36
|
|
13161
|
-
} from "react";
|
|
14018
|
+
// ../../components/Badge/Badge.module.css
|
|
14019
|
+
var Badge_default = {"badge":"opus_1GJHzl_badge","dot":"opus_1GJHzl_dot"};
|
|
13162
14020
|
|
|
13163
|
-
// ../../components/
|
|
13164
|
-
|
|
14021
|
+
// ../../components/Badge/Badge.tsx
|
|
14022
|
+
import { jsx as jsx76, jsxs as jsxs63 } from "react/jsx-runtime";
|
|
14023
|
+
function Badge({
|
|
14024
|
+
dot = false,
|
|
14025
|
+
label,
|
|
14026
|
+
size = "md",
|
|
14027
|
+
tone = "neutral",
|
|
14028
|
+
variant = "soft"
|
|
14029
|
+
}) {
|
|
14030
|
+
return /* @__PURE__ */ jsxs63("span", { className: Badge_default.badge, "data-size": size, "data-tone": tone, "data-variant": variant, children: [
|
|
14031
|
+
dot ? /* @__PURE__ */ jsx76("span", { "aria-hidden": "true", className: Badge_default.dot }) : null,
|
|
14032
|
+
label
|
|
14033
|
+
] });
|
|
14034
|
+
}
|
|
13165
14035
|
|
|
13166
|
-
// ../../components/
|
|
13167
|
-
|
|
13168
|
-
|
|
13169
|
-
|
|
13170
|
-
|
|
13171
|
-
|
|
13172
|
-
|
|
13173
|
-
|
|
13174
|
-
|
|
13175
|
-
density = "comfortable",
|
|
13176
|
-
footer,
|
|
13177
|
-
header,
|
|
13178
|
-
side = "left"
|
|
14036
|
+
// ../../components/Divider/Divider.module.css
|
|
14037
|
+
var Divider_default = {"divider":"opus_ux1i0D_divider","label":"opus_ux1i0D_label","line":"opus_ux1i0D_line","labelled":"opus_ux1i0D_labelled"};
|
|
14038
|
+
|
|
14039
|
+
// ../../components/Divider/Divider.tsx
|
|
14040
|
+
import { jsx as jsx77, jsxs as jsxs64 } from "react/jsx-runtime";
|
|
14041
|
+
function Divider({
|
|
14042
|
+
label,
|
|
14043
|
+
orientation = "horizontal",
|
|
14044
|
+
tone = "default"
|
|
13179
14045
|
}) {
|
|
13180
|
-
|
|
13181
|
-
|
|
13182
|
-
|
|
13183
|
-
|
|
14046
|
+
if (orientation === "vertical") {
|
|
14047
|
+
return /* @__PURE__ */ jsx77(
|
|
14048
|
+
"div",
|
|
14049
|
+
{
|
|
14050
|
+
"aria-orientation": "vertical",
|
|
14051
|
+
className: Divider_default.divider,
|
|
14052
|
+
"data-orientation": "vertical",
|
|
14053
|
+
"data-tone": tone,
|
|
14054
|
+
role: "separator"
|
|
14055
|
+
}
|
|
14056
|
+
);
|
|
14057
|
+
}
|
|
14058
|
+
if (label) {
|
|
14059
|
+
return /* @__PURE__ */ jsxs64("div", { className: Divider_default.labelled, "data-tone": tone, role: "separator", children: [
|
|
14060
|
+
/* @__PURE__ */ jsx77("span", { "aria-hidden": "true", className: Divider_default.line }),
|
|
14061
|
+
/* @__PURE__ */ jsx77("span", { className: Divider_default.label, children: label }),
|
|
14062
|
+
/* @__PURE__ */ jsx77("span", { "aria-hidden": "true", className: Divider_default.line })
|
|
14063
|
+
] });
|
|
14064
|
+
}
|
|
14065
|
+
return /* @__PURE__ */ jsx77(
|
|
14066
|
+
"hr",
|
|
14067
|
+
{
|
|
14068
|
+
className: Divider_default.divider,
|
|
14069
|
+
"data-orientation": "horizontal",
|
|
14070
|
+
"data-tone": tone
|
|
14071
|
+
}
|
|
14072
|
+
);
|
|
14073
|
+
}
|
|
14074
|
+
|
|
14075
|
+
// ../../components/Avatar/Avatar.tsx
|
|
14076
|
+
import { useMemo as useMemo16, useState as useState36 } from "react";
|
|
14077
|
+
|
|
14078
|
+
// ../../components/Avatar/Avatar.module.css
|
|
14079
|
+
var Avatar_default = {"initials":"opus_jsRWxO_initials","image":"opus_jsRWxO_image","avatar":"opus_jsRWxO_avatar"};
|
|
14080
|
+
|
|
14081
|
+
// ../../components/Avatar/Avatar.tsx
|
|
14082
|
+
import { jsx as jsx78 } from "react/jsx-runtime";
|
|
14083
|
+
function initialsFromName(name) {
|
|
14084
|
+
var _a2, _b2;
|
|
14085
|
+
const parts = name.trim().split(/\s+/).filter(Boolean);
|
|
14086
|
+
if (parts.length === 0) {
|
|
14087
|
+
return "?";
|
|
14088
|
+
}
|
|
14089
|
+
if (parts.length === 1) {
|
|
14090
|
+
return parts[0].slice(0, 2).toUpperCase();
|
|
14091
|
+
}
|
|
14092
|
+
return `${(_a2 = parts[0][0]) != null ? _a2 : ""}${(_b2 = parts[1][0]) != null ? _b2 : ""}`.toUpperCase();
|
|
14093
|
+
}
|
|
14094
|
+
function Avatar({
|
|
14095
|
+
name,
|
|
14096
|
+
shape = "circle",
|
|
14097
|
+
size = "md",
|
|
14098
|
+
src
|
|
14099
|
+
}) {
|
|
14100
|
+
const [failed, setFailed] = useState36(false);
|
|
14101
|
+
const initials = useMemo16(() => initialsFromName(name), [name]);
|
|
14102
|
+
const showImage = Boolean(src) && !failed;
|
|
14103
|
+
return /* @__PURE__ */ jsx78(
|
|
14104
|
+
"span",
|
|
14105
|
+
{
|
|
14106
|
+
"aria-label": name,
|
|
14107
|
+
className: Avatar_default.avatar,
|
|
14108
|
+
"data-shape": shape,
|
|
14109
|
+
"data-size": size,
|
|
14110
|
+
role: "img",
|
|
14111
|
+
title: name,
|
|
14112
|
+
children: showImage ? (
|
|
14113
|
+
// eslint-disable-next-line @next/next/no-img-element
|
|
14114
|
+
/* @__PURE__ */ jsx78(
|
|
14115
|
+
"img",
|
|
14116
|
+
{
|
|
14117
|
+
alt: "",
|
|
14118
|
+
className: Avatar_default.image,
|
|
14119
|
+
onError: () => setFailed(true),
|
|
14120
|
+
src
|
|
14121
|
+
}
|
|
14122
|
+
)
|
|
14123
|
+
) : /* @__PURE__ */ jsx78("span", { "aria-hidden": "true", className: Avatar_default.initials, children: initials })
|
|
14124
|
+
}
|
|
14125
|
+
);
|
|
14126
|
+
}
|
|
14127
|
+
|
|
14128
|
+
// ../../components/AvatarGroup/AvatarGroup.module.css
|
|
14129
|
+
var AvatarGroup_default = {"group":"opus_Vv36ne_group","overflow":"opus_Vv36ne_overflow","item":"opus_Vv36ne_item"};
|
|
14130
|
+
|
|
14131
|
+
// ../../components/AvatarGroup/AvatarGroup.tsx
|
|
14132
|
+
import { jsx as jsx79, jsxs as jsxs65 } from "react/jsx-runtime";
|
|
14133
|
+
function AvatarGroup({ items, max = 4, size = "md" }) {
|
|
14134
|
+
const safeMax = Math.max(1, Math.round(max));
|
|
14135
|
+
const visible = items.slice(0, safeMax);
|
|
14136
|
+
const overflow = Math.max(0, items.length - visible.length);
|
|
14137
|
+
return /* @__PURE__ */ jsxs65("div", { "aria-label": `${items.length} people`, className: AvatarGroup_default.group, role: "group", children: [
|
|
14138
|
+
visible.map((item, index) => /* @__PURE__ */ jsx79("span", { className: AvatarGroup_default.item, style: { zIndex: visible.length - index }, children: /* @__PURE__ */ jsx79(Avatar, { name: item.name, size, src: item.src }) }, `${item.name}-${index}`)),
|
|
14139
|
+
overflow > 0 ? /* @__PURE__ */ jsxs65(
|
|
14140
|
+
"span",
|
|
14141
|
+
{
|
|
14142
|
+
"aria-label": `${overflow} more`,
|
|
14143
|
+
className: AvatarGroup_default.overflow,
|
|
14144
|
+
"data-size": size,
|
|
14145
|
+
children: [
|
|
14146
|
+
"+",
|
|
14147
|
+
overflow
|
|
14148
|
+
]
|
|
14149
|
+
}
|
|
14150
|
+
) : null
|
|
14151
|
+
] });
|
|
14152
|
+
}
|
|
14153
|
+
|
|
14154
|
+
// ../../components/Statistic/Statistic.module.css
|
|
14155
|
+
var Statistic_default = {"label":"opus_vCN1bv_label","root":"opus_vCN1bv_root","value":"opus_vCN1bv_value","affix":"opus_vCN1bv_affix","trend":"opus_vCN1bv_trend"};
|
|
14156
|
+
|
|
14157
|
+
// ../../components/Statistic/Statistic.tsx
|
|
14158
|
+
import { jsx as jsx80, jsxs as jsxs66 } from "react/jsx-runtime";
|
|
14159
|
+
function Statistic({
|
|
14160
|
+
label,
|
|
14161
|
+
prefix,
|
|
14162
|
+
suffix,
|
|
14163
|
+
trend,
|
|
14164
|
+
trendLabel,
|
|
14165
|
+
value
|
|
14166
|
+
}) {
|
|
14167
|
+
return /* @__PURE__ */ jsxs66("div", { className: Statistic_default.root, children: [
|
|
14168
|
+
/* @__PURE__ */ jsx80("p", { className: Statistic_default.label, children: label }),
|
|
14169
|
+
/* @__PURE__ */ jsxs66("p", { className: Statistic_default.value, children: [
|
|
14170
|
+
prefix ? /* @__PURE__ */ jsx80("span", { className: Statistic_default.affix, children: prefix }) : null,
|
|
14171
|
+
/* @__PURE__ */ jsx80("span", { children: value }),
|
|
14172
|
+
suffix ? /* @__PURE__ */ jsx80("span", { className: Statistic_default.affix, children: suffix }) : null
|
|
14173
|
+
] }),
|
|
14174
|
+
trend && trendLabel ? /* @__PURE__ */ jsxs66("p", { className: Statistic_default.trend, "data-trend": trend, children: [
|
|
14175
|
+
/* @__PURE__ */ jsx80("span", { "aria-hidden": "true", children: trend === "up" ? "\u2191" : trend === "down" ? "\u2193" : "\u2192" }),
|
|
14176
|
+
trendLabel
|
|
14177
|
+
] }) : null
|
|
14178
|
+
] });
|
|
14179
|
+
}
|
|
14180
|
+
|
|
14181
|
+
// ../../components/List/List.module.css
|
|
14182
|
+
var List_default = {"description":"opus_ys3xlo_description","meta":"opus_ys3xlo_meta","icon":"opus_ys3xlo_icon","item":"opus_ys3xlo_item","list":"opus_ys3xlo_list","title":"opus_ys3xlo_title","head":"opus_ys3xlo_head","body":"opus_ys3xlo_body"};
|
|
14183
|
+
|
|
14184
|
+
// ../../components/List/List.tsx
|
|
14185
|
+
import { jsx as jsx81, jsxs as jsxs67 } from "react/jsx-runtime";
|
|
14186
|
+
function List({ density = "comfortable", items, ordered = false }) {
|
|
14187
|
+
const Tag = ordered ? "ol" : "ul";
|
|
14188
|
+
return /* @__PURE__ */ jsx81(Tag, { className: List_default.list, "data-density": density, "data-ordered": ordered ? "true" : "false", children: items.map((item, index) => /* @__PURE__ */ jsxs67("li", { className: List_default.item, children: [
|
|
14189
|
+
item.icon ? /* @__PURE__ */ jsx81("span", { "aria-hidden": "true", className: List_default.icon, children: /* @__PURE__ */ jsx81(CatalogIcon, { iconName: item.icon }) }) : null,
|
|
14190
|
+
/* @__PURE__ */ jsxs67("div", { className: List_default.body, children: [
|
|
14191
|
+
/* @__PURE__ */ jsxs67("div", { className: List_default.head, children: [
|
|
14192
|
+
/* @__PURE__ */ jsx81("span", { className: List_default.title, children: item.title }),
|
|
14193
|
+
item.meta ? /* @__PURE__ */ jsx81("span", { className: List_default.meta, children: item.meta }) : null
|
|
14194
|
+
] }),
|
|
14195
|
+
item.description ? /* @__PURE__ */ jsx81("p", { className: List_default.description, children: item.description }) : null
|
|
14196
|
+
] })
|
|
14197
|
+
] }, `${item.title}-${index}`)) });
|
|
14198
|
+
}
|
|
14199
|
+
|
|
14200
|
+
// ../../components/DescriptionList/DescriptionList.module.css
|
|
14201
|
+
var DescriptionList_default = {"list":"opus_FY8OsC_list","term":"opus_FY8OsC_term","row":"opus_FY8OsC_row","details":"opus_FY8OsC_details"};
|
|
14202
|
+
|
|
14203
|
+
// ../../components/DescriptionList/DescriptionList.tsx
|
|
14204
|
+
import { jsx as jsx82, jsxs as jsxs68 } from "react/jsx-runtime";
|
|
14205
|
+
function DescriptionList({
|
|
14206
|
+
items,
|
|
14207
|
+
layout = "stacked"
|
|
14208
|
+
}) {
|
|
14209
|
+
return /* @__PURE__ */ jsx82("dl", { className: DescriptionList_default.list, "data-layout": layout, children: items.map((item, index) => /* @__PURE__ */ jsxs68("div", { className: DescriptionList_default.row, children: [
|
|
14210
|
+
/* @__PURE__ */ jsx82("dt", { className: DescriptionList_default.term, children: item.term }),
|
|
14211
|
+
/* @__PURE__ */ jsx82("dd", { className: DescriptionList_default.details, children: item.details })
|
|
14212
|
+
] }, `${item.term}-${index}`)) });
|
|
14213
|
+
}
|
|
14214
|
+
|
|
14215
|
+
// ../../components/PropertyGrid/PropertyGrid.tsx
|
|
14216
|
+
import { useState as useState37 } from "react";
|
|
14217
|
+
|
|
14218
|
+
// ../../components/PropertyGrid/PropertyGrid.module.css
|
|
14219
|
+
var PropertyGrid_default = {"row":"opus_Bnfsue_row","valueCell":"opus_Bnfsue_valueCell","copy":"opus_Bnfsue_copy","value":"opus_Bnfsue_value","grid":"opus_Bnfsue_grid","label":"opus_Bnfsue_label"};
|
|
14220
|
+
|
|
14221
|
+
// ../../components/PropertyGrid/PropertyGrid.tsx
|
|
14222
|
+
import { jsx as jsx83, jsxs as jsxs69 } from "react/jsx-runtime";
|
|
14223
|
+
function PropertyGrid({ items }) {
|
|
14224
|
+
const [copiedIndex, setCopiedIndex] = useState37(null);
|
|
14225
|
+
async function copyValue(value, index) {
|
|
14226
|
+
try {
|
|
14227
|
+
await navigator.clipboard.writeText(value);
|
|
14228
|
+
setCopiedIndex(index);
|
|
14229
|
+
window.setTimeout(() => setCopiedIndex((current) => current === index ? null : current), 1200);
|
|
14230
|
+
} catch (e) {
|
|
14231
|
+
setCopiedIndex(null);
|
|
14232
|
+
}
|
|
14233
|
+
}
|
|
14234
|
+
return /* @__PURE__ */ jsx83("div", { className: PropertyGrid_default.grid, role: "table", "aria-label": "Properties", children: items.map((item, index) => /* @__PURE__ */ jsxs69("div", { className: PropertyGrid_default.row, role: "row", children: [
|
|
14235
|
+
/* @__PURE__ */ jsx83("div", { className: PropertyGrid_default.label, role: "rowheader", children: item.label }),
|
|
14236
|
+
/* @__PURE__ */ jsxs69("div", { className: PropertyGrid_default.valueCell, role: "cell", children: [
|
|
14237
|
+
/* @__PURE__ */ jsx83("span", { className: PropertyGrid_default.value, children: item.value }),
|
|
14238
|
+
item.copyable ? /* @__PURE__ */ jsx83(
|
|
14239
|
+
"button",
|
|
14240
|
+
{
|
|
14241
|
+
"aria-label": `Copy ${item.label}`,
|
|
14242
|
+
className: PropertyGrid_default.copy,
|
|
14243
|
+
onClick: () => void copyValue(item.value, index),
|
|
14244
|
+
type: "button",
|
|
14245
|
+
children: copiedIndex === index ? "Copied" : "Copy"
|
|
14246
|
+
}
|
|
14247
|
+
) : null
|
|
14248
|
+
] })
|
|
14249
|
+
] }, `${item.label}-${index}`)) });
|
|
14250
|
+
}
|
|
14251
|
+
|
|
14252
|
+
// ../../components/ContentTimeline/ContentTimeline.module.css
|
|
14253
|
+
var ContentTimeline_default = {"body":"opus_vApy-v_body","list":"opus_vApy-v_list","description":"opus_vApy-v_description","line":"opus_vApy-v_line","time":"opus_vApy-v_time","title":"opus_vApy-v_title","dot":"opus_vApy-v_dot","item":"opus_vApy-v_item","head":"opus_vApy-v_head","rail":"opus_vApy-v_rail"};
|
|
14254
|
+
|
|
14255
|
+
// ../../components/ContentTimeline/ContentTimeline.tsx
|
|
14256
|
+
import { jsx as jsx84, jsxs as jsxs70 } from "react/jsx-runtime";
|
|
14257
|
+
function ContentTimeline({ items }) {
|
|
14258
|
+
return /* @__PURE__ */ jsx84("ol", { className: ContentTimeline_default.list, children: items.map((item, index) => {
|
|
14259
|
+
var _a2;
|
|
14260
|
+
return /* @__PURE__ */ jsxs70(
|
|
14261
|
+
"li",
|
|
14262
|
+
{
|
|
14263
|
+
className: ContentTimeline_default.item,
|
|
14264
|
+
"data-status": (_a2 = item.status) != null ? _a2 : "default",
|
|
14265
|
+
children: [
|
|
14266
|
+
/* @__PURE__ */ jsxs70("div", { "aria-hidden": "true", className: ContentTimeline_default.rail, children: [
|
|
14267
|
+
/* @__PURE__ */ jsx84("span", { className: ContentTimeline_default.dot }),
|
|
14268
|
+
index < items.length - 1 ? /* @__PURE__ */ jsx84("span", { className: ContentTimeline_default.line }) : null
|
|
14269
|
+
] }),
|
|
14270
|
+
/* @__PURE__ */ jsxs70("div", { className: ContentTimeline_default.body, children: [
|
|
14271
|
+
/* @__PURE__ */ jsxs70("div", { className: ContentTimeline_default.head, children: [
|
|
14272
|
+
/* @__PURE__ */ jsx84("h3", { className: ContentTimeline_default.title, children: item.title }),
|
|
14273
|
+
item.time ? /* @__PURE__ */ jsx84("time", { className: ContentTimeline_default.time, children: item.time }) : null
|
|
14274
|
+
] }),
|
|
14275
|
+
item.description ? /* @__PURE__ */ jsx84("p", { className: ContentTimeline_default.description, children: item.description }) : null
|
|
14276
|
+
] })
|
|
14277
|
+
]
|
|
14278
|
+
},
|
|
14279
|
+
`${item.title}-${index}`
|
|
14280
|
+
);
|
|
14281
|
+
}) });
|
|
14282
|
+
}
|
|
14283
|
+
|
|
14284
|
+
// ../../components/TreeView/TreeView.tsx
|
|
14285
|
+
import { useMemo as useMemo17, useState as useState38 } from "react";
|
|
14286
|
+
|
|
14287
|
+
// ../../components/TreeView/TreeView.module.css
|
|
14288
|
+
var TreeView_default = {"tree":"opus_NlkzXy_tree","leafMark":"opus_NlkzXy_leafMark","children":"opus_NlkzXy_children","node":"opus_NlkzXy_node","row":"opus_NlkzXy_row","label":"opus_NlkzXy_label","toggle":"opus_NlkzXy_toggle"};
|
|
14289
|
+
|
|
14290
|
+
// ../../components/TreeView/TreeView.tsx
|
|
14291
|
+
import { jsx as jsx85, jsxs as jsxs71 } from "react/jsx-runtime";
|
|
14292
|
+
function collectExpandableIds(nodes) {
|
|
14293
|
+
var _a2;
|
|
14294
|
+
const ids = [];
|
|
14295
|
+
for (const node of nodes) {
|
|
14296
|
+
if ((_a2 = node.children) == null ? void 0 : _a2.length) {
|
|
14297
|
+
ids.push(node.id);
|
|
14298
|
+
ids.push(...collectExpandableIds(node.children));
|
|
14299
|
+
}
|
|
14300
|
+
}
|
|
14301
|
+
return ids;
|
|
14302
|
+
}
|
|
14303
|
+
function TreeNode({
|
|
14304
|
+
depth,
|
|
14305
|
+
expandedIds,
|
|
14306
|
+
node,
|
|
14307
|
+
onToggle
|
|
14308
|
+
}) {
|
|
14309
|
+
var _a2;
|
|
14310
|
+
const hasChildren = Boolean((_a2 = node.children) == null ? void 0 : _a2.length);
|
|
14311
|
+
const expanded = expandedIds.has(node.id);
|
|
14312
|
+
return /* @__PURE__ */ jsxs71("li", { className: TreeView_default.node, children: [
|
|
14313
|
+
/* @__PURE__ */ jsxs71("div", { className: TreeView_default.row, style: { paddingLeft: `${depth * 16 + 8}px` }, children: [
|
|
14314
|
+
hasChildren ? /* @__PURE__ */ jsx85(
|
|
14315
|
+
"button",
|
|
14316
|
+
{
|
|
14317
|
+
"aria-expanded": expanded,
|
|
14318
|
+
"aria-label": `${expanded ? "Collapse" : "Expand"} ${node.label}`,
|
|
14319
|
+
className: TreeView_default.toggle,
|
|
14320
|
+
onClick: () => onToggle(node.id),
|
|
14321
|
+
type: "button",
|
|
14322
|
+
children: /* @__PURE__ */ jsx85("span", { "aria-hidden": "true", children: expanded ? "\u25BE" : "\u25B8" })
|
|
14323
|
+
}
|
|
14324
|
+
) : /* @__PURE__ */ jsx85("span", { "aria-hidden": "true", className: TreeView_default.leafMark }),
|
|
14325
|
+
/* @__PURE__ */ jsx85("span", { className: TreeView_default.label, children: node.label })
|
|
14326
|
+
] }),
|
|
14327
|
+
hasChildren && expanded ? /* @__PURE__ */ jsx85("ul", { className: TreeView_default.children, children: node.children.map((child) => /* @__PURE__ */ jsx85(
|
|
14328
|
+
TreeNode,
|
|
14329
|
+
{
|
|
14330
|
+
depth: depth + 1,
|
|
14331
|
+
expandedIds,
|
|
14332
|
+
node: child,
|
|
14333
|
+
onToggle
|
|
14334
|
+
},
|
|
14335
|
+
child.id
|
|
14336
|
+
)) }) : null
|
|
14337
|
+
] });
|
|
14338
|
+
}
|
|
14339
|
+
function TreeView({ defaultExpandedIds, nodes }) {
|
|
14340
|
+
const fallbackIds = useMemo17(() => collectExpandableIds(nodes).slice(0, 2), [nodes]);
|
|
14341
|
+
const [expandedIds, setExpandedIds] = useState38(
|
|
14342
|
+
() => new Set(defaultExpandedIds != null ? defaultExpandedIds : fallbackIds)
|
|
14343
|
+
);
|
|
14344
|
+
function toggle(id) {
|
|
14345
|
+
setExpandedIds((current) => {
|
|
14346
|
+
const next = new Set(current);
|
|
14347
|
+
if (next.has(id)) {
|
|
14348
|
+
next.delete(id);
|
|
14349
|
+
} else {
|
|
14350
|
+
next.add(id);
|
|
14351
|
+
}
|
|
14352
|
+
return next;
|
|
14353
|
+
});
|
|
14354
|
+
}
|
|
14355
|
+
return /* @__PURE__ */ jsx85("ul", { "aria-label": "Tree", className: TreeView_default.tree, role: "tree", children: nodes.map((node) => /* @__PURE__ */ jsx85(
|
|
14356
|
+
TreeNode,
|
|
14357
|
+
{
|
|
14358
|
+
depth: 0,
|
|
14359
|
+
expandedIds,
|
|
14360
|
+
node,
|
|
14361
|
+
onToggle: toggle
|
|
14362
|
+
},
|
|
14363
|
+
node.id
|
|
14364
|
+
)) });
|
|
14365
|
+
}
|
|
14366
|
+
|
|
14367
|
+
// ../../components/MasonryGrid/MasonryGrid.module.css
|
|
14368
|
+
var MasonryGrid_default = {"card":"opus_Fxxd7-_card","body":"opus_Fxxd7-_body","grid":"opus_Fxxd7-_grid","title":"opus_Fxxd7-_title"};
|
|
14369
|
+
|
|
14370
|
+
// ../../components/MasonryGrid/MasonryGrid.tsx
|
|
14371
|
+
import { jsx as jsx86, jsxs as jsxs72 } from "react/jsx-runtime";
|
|
14372
|
+
function MasonryGrid({ columns = 3, gap = 12, items }) {
|
|
14373
|
+
const safeColumns = Math.min(Math.max(Math.round(columns), 2), 4);
|
|
14374
|
+
const safeGap = Math.min(Math.max(Math.round(gap), 8), 28);
|
|
14375
|
+
return /* @__PURE__ */ jsx86(
|
|
14376
|
+
"div",
|
|
14377
|
+
{
|
|
14378
|
+
className: MasonryGrid_default.grid,
|
|
14379
|
+
style: {
|
|
14380
|
+
columnCount: safeColumns,
|
|
14381
|
+
columnGap: `${safeGap}px`
|
|
14382
|
+
},
|
|
14383
|
+
children: items.map((item, index) => /* @__PURE__ */ jsxs72(
|
|
14384
|
+
"article",
|
|
14385
|
+
{
|
|
14386
|
+
className: MasonryGrid_default.card,
|
|
14387
|
+
style: {
|
|
14388
|
+
marginBottom: `${safeGap}px`,
|
|
14389
|
+
minHeight: item.height ? `${item.height}px` : void 0
|
|
14390
|
+
},
|
|
14391
|
+
children: [
|
|
14392
|
+
/* @__PURE__ */ jsx86("h3", { className: MasonryGrid_default.title, children: item.title }),
|
|
14393
|
+
item.body ? /* @__PURE__ */ jsx86("p", { className: MasonryGrid_default.body, children: item.body }) : null
|
|
14394
|
+
]
|
|
14395
|
+
},
|
|
14396
|
+
`${item.title}-${index}`
|
|
14397
|
+
))
|
|
14398
|
+
}
|
|
14399
|
+
);
|
|
14400
|
+
}
|
|
14401
|
+
|
|
14402
|
+
// ../../components/JsonViewer/JsonViewer.tsx
|
|
14403
|
+
import { useMemo as useMemo18, useState as useState39 } from "react";
|
|
14404
|
+
|
|
14405
|
+
// ../../components/JsonViewer/JsonViewer.module.css
|
|
14406
|
+
var JsonViewer_default = {"block":"opus_uLDgXq_block","summary":"opus_uLDgXq_summary","children":"opus_uLDgXq_children","toggleLine":"opus_uLDgXq_toggleLine","line":"opus_uLDgXq_line","boolean":"opus_uLDgXq_boolean","null":"opus_uLDgXq_null","key":"opus_uLDgXq_key","string":"opus_uLDgXq_string","root":"opus_uLDgXq_root","chevron":"opus_uLDgXq_chevron","number":"opus_uLDgXq_number"};
|
|
14407
|
+
|
|
14408
|
+
// ../../components/JsonViewer/JsonViewer.tsx
|
|
14409
|
+
import { jsx as jsx87, jsxs as jsxs73 } from "react/jsx-runtime";
|
|
14410
|
+
function isPlainObject(value) {
|
|
14411
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
14412
|
+
}
|
|
14413
|
+
function PrimitiveValue({ value }) {
|
|
14414
|
+
if (value === null) {
|
|
14415
|
+
return /* @__PURE__ */ jsx87("span", { className: JsonViewer_default.null, children: "null" });
|
|
14416
|
+
}
|
|
14417
|
+
if (typeof value === "string") {
|
|
14418
|
+
return /* @__PURE__ */ jsxs73("span", { className: JsonViewer_default.string, children: [
|
|
14419
|
+
'"',
|
|
14420
|
+
value,
|
|
14421
|
+
'"'
|
|
14422
|
+
] });
|
|
14423
|
+
}
|
|
14424
|
+
if (typeof value === "number") {
|
|
14425
|
+
return /* @__PURE__ */ jsx87("span", { className: JsonViewer_default.number, children: value });
|
|
14426
|
+
}
|
|
14427
|
+
if (typeof value === "boolean") {
|
|
14428
|
+
return /* @__PURE__ */ jsx87("span", { className: JsonViewer_default.boolean, children: String(value) });
|
|
14429
|
+
}
|
|
14430
|
+
return /* @__PURE__ */ jsx87("span", { className: JsonViewer_default.string, children: String(value) });
|
|
14431
|
+
}
|
|
14432
|
+
function JsonNode({ collapsedDepth, depth, name, value }) {
|
|
14433
|
+
const isExpandable = Array.isArray(value) || isPlainObject(value);
|
|
14434
|
+
const [open, setOpen] = useState39(depth < collapsedDepth);
|
|
14435
|
+
if (!isExpandable) {
|
|
14436
|
+
return /* @__PURE__ */ jsxs73("div", { className: JsonViewer_default.line, style: { paddingLeft: `${depth * 14}px` }, children: [
|
|
14437
|
+
name !== void 0 ? /* @__PURE__ */ jsxs73("span", { className: JsonViewer_default.key, children: [
|
|
14438
|
+
name,
|
|
14439
|
+
": "
|
|
14440
|
+
] }) : null,
|
|
14441
|
+
/* @__PURE__ */ jsx87(PrimitiveValue, { value })
|
|
14442
|
+
] });
|
|
14443
|
+
}
|
|
14444
|
+
const entries = Array.isArray(value) ? value.map((entry, index) => [String(index), entry]) : Object.entries(value);
|
|
14445
|
+
const summary = Array.isArray(value) ? `Array(${value.length})` : `Object(${entries.length})`;
|
|
14446
|
+
return /* @__PURE__ */ jsxs73("div", { className: JsonViewer_default.block, children: [
|
|
14447
|
+
/* @__PURE__ */ jsxs73(
|
|
14448
|
+
"button",
|
|
14449
|
+
{
|
|
14450
|
+
"aria-expanded": open,
|
|
14451
|
+
className: JsonViewer_default.toggleLine,
|
|
14452
|
+
onClick: () => setOpen((current) => !current),
|
|
14453
|
+
style: { paddingLeft: `${depth * 14}px` },
|
|
14454
|
+
type: "button",
|
|
14455
|
+
children: [
|
|
14456
|
+
/* @__PURE__ */ jsx87("span", { "aria-hidden": "true", className: JsonViewer_default.chevron, children: open ? "\u25BE" : "\u25B8" }),
|
|
14457
|
+
name !== void 0 ? /* @__PURE__ */ jsxs73("span", { className: JsonViewer_default.key, children: [
|
|
14458
|
+
name,
|
|
14459
|
+
": "
|
|
14460
|
+
] }) : null,
|
|
14461
|
+
/* @__PURE__ */ jsx87("span", { className: JsonViewer_default.summary, children: summary })
|
|
14462
|
+
]
|
|
14463
|
+
}
|
|
14464
|
+
),
|
|
14465
|
+
open ? /* @__PURE__ */ jsx87("div", { className: JsonViewer_default.children, children: entries.map(([childName, childValue]) => /* @__PURE__ */ jsx87(
|
|
14466
|
+
JsonNode,
|
|
14467
|
+
{
|
|
14468
|
+
collapsedDepth,
|
|
14469
|
+
depth: depth + 1,
|
|
14470
|
+
name: childName,
|
|
14471
|
+
value: childValue
|
|
14472
|
+
},
|
|
14473
|
+
childName
|
|
14474
|
+
)) }) : null
|
|
14475
|
+
] });
|
|
14476
|
+
}
|
|
14477
|
+
function JsonViewer({ collapsedDepth = 1, value }) {
|
|
14478
|
+
const parsed = useMemo18(() => value, [value]);
|
|
14479
|
+
return /* @__PURE__ */ jsx87("div", { className: JsonViewer_default.root, role: "tree", children: /* @__PURE__ */ jsx87(JsonNode, { collapsedDepth: Math.max(0, collapsedDepth), depth: 0, value: parsed }) });
|
|
14480
|
+
}
|
|
14481
|
+
|
|
14482
|
+
// ../../components/Icon/Icon.tsx
|
|
14483
|
+
import { FontAwesomeIcon as FontAwesomeIcon11 } from "@fortawesome/react-fontawesome";
|
|
14484
|
+
|
|
14485
|
+
// ../../components/Icon/Icon.module.css
|
|
14486
|
+
var Icon_default = {"icon":"opus_7ASn4M_icon"};
|
|
14487
|
+
|
|
14488
|
+
// ../../components/Icon/Icon.tsx
|
|
14489
|
+
import { jsx as jsx88 } from "react/jsx-runtime";
|
|
14490
|
+
function Icon({ label, name, size = "md", tone = "default" }) {
|
|
14491
|
+
const option = getFontAwesomeIconOption(name);
|
|
14492
|
+
return /* @__PURE__ */ jsx88(
|
|
14493
|
+
"span",
|
|
14494
|
+
{
|
|
14495
|
+
"aria-hidden": label ? void 0 : true,
|
|
14496
|
+
"aria-label": label,
|
|
14497
|
+
className: Icon_default.icon,
|
|
14498
|
+
"data-size": size,
|
|
14499
|
+
"data-tone": tone,
|
|
14500
|
+
role: label ? "img" : void 0,
|
|
14501
|
+
children: /* @__PURE__ */ jsx88(FontAwesomeIcon11, { icon: option.icon })
|
|
14502
|
+
}
|
|
14503
|
+
);
|
|
14504
|
+
}
|
|
14505
|
+
|
|
14506
|
+
// ../../components/Spinner/Spinner.module.css
|
|
14507
|
+
var Spinner_default = {"spinner":"opus_g5cd4Q_spinner","ring":"opus_g5cd4Q_ring","opus-spinner-rotate":"opus_g5cd4Q_opus-spinner-rotate"};
|
|
14508
|
+
|
|
14509
|
+
// ../../components/Spinner/Spinner.tsx
|
|
14510
|
+
import { jsx as jsx89 } from "react/jsx-runtime";
|
|
14511
|
+
function Spinner({ label = "Loading", size = "md", tone = "accent" }) {
|
|
14512
|
+
return /* @__PURE__ */ jsx89(
|
|
14513
|
+
"span",
|
|
14514
|
+
{
|
|
14515
|
+
"aria-label": label,
|
|
14516
|
+
className: Spinner_default.spinner,
|
|
14517
|
+
"data-size": size,
|
|
14518
|
+
"data-tone": tone,
|
|
14519
|
+
role: "status",
|
|
14520
|
+
children: /* @__PURE__ */ jsx89("span", { "aria-hidden": "true", className: Spinner_default.ring })
|
|
14521
|
+
}
|
|
14522
|
+
);
|
|
14523
|
+
}
|
|
14524
|
+
|
|
14525
|
+
// ../../components/Portal/Portal.tsx
|
|
14526
|
+
import { createContext as createContext8, useContext as useContext9, useEffect as useEffect29, useMemo as useMemo19, useState as useState40 } from "react";
|
|
14527
|
+
import { createPortal as createPortal5 } from "react-dom";
|
|
14528
|
+
import { Fragment as Fragment10, jsx as jsx90 } from "react/jsx-runtime";
|
|
14529
|
+
var PortalHostContext = createContext8({ container: null });
|
|
14530
|
+
function usePortalHost() {
|
|
14531
|
+
return useContext9(PortalHostContext);
|
|
14532
|
+
}
|
|
14533
|
+
function PortalHost({ children, id = "opus-portal-host" }) {
|
|
14534
|
+
const [container, setContainer] = useState40(null);
|
|
14535
|
+
useEffect29(() => {
|
|
14536
|
+
let host = document.getElementById(id);
|
|
14537
|
+
let created = false;
|
|
14538
|
+
if (!host) {
|
|
14539
|
+
host = document.createElement("div");
|
|
14540
|
+
host.id = id;
|
|
14541
|
+
document.body.appendChild(host);
|
|
14542
|
+
created = true;
|
|
14543
|
+
}
|
|
14544
|
+
setContainer(host);
|
|
14545
|
+
return () => {
|
|
14546
|
+
if (created && (host == null ? void 0 : host.parentNode)) {
|
|
14547
|
+
host.parentNode.removeChild(host);
|
|
14548
|
+
}
|
|
14549
|
+
};
|
|
14550
|
+
}, [id]);
|
|
14551
|
+
const value = useMemo19(() => ({ container }), [container]);
|
|
14552
|
+
return /* @__PURE__ */ jsx90(PortalHostContext.Provider, { value, children });
|
|
14553
|
+
}
|
|
14554
|
+
function Portal({ children, container, disabled = false }) {
|
|
14555
|
+
var _a2;
|
|
14556
|
+
const host = usePortalHost();
|
|
14557
|
+
const [fallback, setFallback] = useState40(null);
|
|
14558
|
+
useEffect29(() => {
|
|
14559
|
+
setFallback(document.body);
|
|
14560
|
+
}, []);
|
|
14561
|
+
if (disabled) {
|
|
14562
|
+
return /* @__PURE__ */ jsx90(Fragment10, { children });
|
|
14563
|
+
}
|
|
14564
|
+
const target = (_a2 = container != null ? container : host.container) != null ? _a2 : fallback;
|
|
14565
|
+
if (!target) {
|
|
14566
|
+
return null;
|
|
14567
|
+
}
|
|
14568
|
+
return createPortal5(children, target);
|
|
14569
|
+
}
|
|
14570
|
+
|
|
14571
|
+
// ../../components/VisuallyHidden/VisuallyHidden.module.css
|
|
14572
|
+
var VisuallyHidden_default = {"hidden":"opus_DIv7wy_hidden"};
|
|
14573
|
+
|
|
14574
|
+
// ../../components/VisuallyHidden/VisuallyHidden.tsx
|
|
14575
|
+
import { jsx as jsx91 } from "react/jsx-runtime";
|
|
14576
|
+
function VisuallyHidden({ as = "span", children }) {
|
|
14577
|
+
const Tag = as;
|
|
14578
|
+
return /* @__PURE__ */ jsx91(Tag, { className: VisuallyHidden_default.hidden, children });
|
|
14579
|
+
}
|
|
14580
|
+
|
|
14581
|
+
// ../../components/FocusTrap/FocusTrap.tsx
|
|
14582
|
+
import { useEffect as useEffect30, useRef as useRef30 } from "react";
|
|
14583
|
+
|
|
14584
|
+
// ../../components/FocusTrap/FocusTrap.module.css
|
|
14585
|
+
var FocusTrap_default = {"trap":"opus_fJckCZ_trap"};
|
|
14586
|
+
|
|
14587
|
+
// ../../components/FocusTrap/FocusTrap.tsx
|
|
14588
|
+
import { jsx as jsx92 } from "react/jsx-runtime";
|
|
14589
|
+
function FocusTrap({
|
|
14590
|
+
active = true,
|
|
14591
|
+
children,
|
|
14592
|
+
initialFocusRef,
|
|
14593
|
+
restoreFocus = true
|
|
14594
|
+
}) {
|
|
14595
|
+
const containerRef = useRef30(null);
|
|
14596
|
+
const previouslyFocusedRef = useRef30(null);
|
|
14597
|
+
useEffect30(() => {
|
|
14598
|
+
if (!active) {
|
|
14599
|
+
return;
|
|
14600
|
+
}
|
|
14601
|
+
previouslyFocusedRef.current = document.activeElement;
|
|
14602
|
+
const frame = window.requestAnimationFrame(() => {
|
|
14603
|
+
var _a2;
|
|
14604
|
+
const preferred = initialFocusRef == null ? void 0 : initialFocusRef.current;
|
|
14605
|
+
if (preferred) {
|
|
14606
|
+
preferred.focus();
|
|
14607
|
+
return;
|
|
14608
|
+
}
|
|
14609
|
+
const container = containerRef.current;
|
|
14610
|
+
if (!container) {
|
|
14611
|
+
return;
|
|
14612
|
+
}
|
|
14613
|
+
(_a2 = getFocusableElements(container)[0]) == null ? void 0 : _a2.focus();
|
|
14614
|
+
});
|
|
14615
|
+
return () => {
|
|
14616
|
+
var _a2, _b2;
|
|
14617
|
+
window.cancelAnimationFrame(frame);
|
|
14618
|
+
if (restoreFocus) {
|
|
14619
|
+
(_b2 = (_a2 = previouslyFocusedRef.current) == null ? void 0 : _a2.focus) == null ? void 0 : _b2.call(_a2);
|
|
14620
|
+
}
|
|
14621
|
+
};
|
|
14622
|
+
}, [active, initialFocusRef, restoreFocus]);
|
|
14623
|
+
useEffect30(() => {
|
|
14624
|
+
if (!active) {
|
|
14625
|
+
return;
|
|
14626
|
+
}
|
|
14627
|
+
const onKeyDown = (event) => {
|
|
14628
|
+
if (event.key !== "Tab") {
|
|
14629
|
+
return;
|
|
14630
|
+
}
|
|
14631
|
+
const container = containerRef.current;
|
|
14632
|
+
if (!container) {
|
|
14633
|
+
return;
|
|
14634
|
+
}
|
|
14635
|
+
const focusable = getFocusableElements(container);
|
|
14636
|
+
if (!focusable.length) {
|
|
14637
|
+
event.preventDefault();
|
|
14638
|
+
return;
|
|
14639
|
+
}
|
|
14640
|
+
const first = focusable[0];
|
|
14641
|
+
const last = focusable[focusable.length - 1];
|
|
14642
|
+
const activeElement = document.activeElement;
|
|
14643
|
+
if (event.shiftKey) {
|
|
14644
|
+
if (activeElement === first || !container.contains(activeElement)) {
|
|
14645
|
+
event.preventDefault();
|
|
14646
|
+
last.focus();
|
|
14647
|
+
}
|
|
14648
|
+
return;
|
|
14649
|
+
}
|
|
14650
|
+
if (activeElement === last || !container.contains(activeElement)) {
|
|
14651
|
+
event.preventDefault();
|
|
14652
|
+
first.focus();
|
|
14653
|
+
}
|
|
14654
|
+
};
|
|
14655
|
+
document.addEventListener("keydown", onKeyDown);
|
|
14656
|
+
return () => document.removeEventListener("keydown", onKeyDown);
|
|
14657
|
+
}, [active]);
|
|
14658
|
+
return /* @__PURE__ */ jsx92("div", { className: FocusTrap_default.trap, "data-active": active, ref: containerRef, children });
|
|
14659
|
+
}
|
|
14660
|
+
|
|
14661
|
+
// ../../components/KeyboardShortcut/KeyboardShortcut.module.css
|
|
14662
|
+
var KeyboardShortcut_default = {"plus":"opus_pZh5vX_plus","shortcut":"opus_pZh5vX_shortcut","key":"opus_pZh5vX_key"};
|
|
14663
|
+
|
|
14664
|
+
// ../../components/KeyboardShortcut/KeyboardShortcut.tsx
|
|
14665
|
+
import { jsx as jsx93, jsxs as jsxs74 } from "react/jsx-runtime";
|
|
14666
|
+
function KeyboardShortcut({ keys, size = "md" }) {
|
|
14667
|
+
return /* @__PURE__ */ jsx93("kbd", { "aria-label": keys.join(" + "), className: KeyboardShortcut_default.shortcut, "data-size": size, children: keys.map((key, index) => /* @__PURE__ */ jsxs74("span", { children: [
|
|
14668
|
+
index > 0 ? /* @__PURE__ */ jsx93("span", { "aria-hidden": "true", className: KeyboardShortcut_default.plus, children: "+" }) : null,
|
|
14669
|
+
/* @__PURE__ */ jsx93("span", { className: KeyboardShortcut_default.key, children: key })
|
|
14670
|
+
] }, `${key}-${index}`)) });
|
|
14671
|
+
}
|
|
14672
|
+
|
|
14673
|
+
// ../../components/HotkeyManager/HotkeyManager.tsx
|
|
14674
|
+
import {
|
|
14675
|
+
createContext as createContext9,
|
|
14676
|
+
useCallback as useCallback17,
|
|
14677
|
+
useContext as useContext10,
|
|
14678
|
+
useEffect as useEffect31,
|
|
14679
|
+
useMemo as useMemo20,
|
|
14680
|
+
useRef as useRef31,
|
|
14681
|
+
useState as useState41
|
|
14682
|
+
} from "react";
|
|
14683
|
+
import { jsx as jsx94 } from "react/jsx-runtime";
|
|
14684
|
+
var HotkeyManagerContext = createContext9(null);
|
|
14685
|
+
function matchesCombo(event, combo) {
|
|
14686
|
+
const key = event.key.length === 1 ? event.key.toLowerCase() : event.key;
|
|
14687
|
+
const expected = combo.key.length === 1 ? combo.key.toLowerCase() : combo.key;
|
|
14688
|
+
return key === expected && Boolean(combo.meta) === event.metaKey && Boolean(combo.ctrl) === event.ctrlKey && Boolean(combo.alt) === event.altKey && Boolean(combo.shift) === event.shiftKey;
|
|
14689
|
+
}
|
|
14690
|
+
function shortcutsEqual(a, b) {
|
|
14691
|
+
if (a.length !== b.length) {
|
|
14692
|
+
return false;
|
|
14693
|
+
}
|
|
14694
|
+
return a.every((combo, index) => {
|
|
14695
|
+
const other = b[index];
|
|
14696
|
+
return combo.id === other.id && combo.key === other.key && Boolean(combo.meta) === Boolean(other.meta) && Boolean(combo.ctrl) === Boolean(other.ctrl) && Boolean(combo.alt) === Boolean(other.alt) && Boolean(combo.shift) === Boolean(other.shift) && combo.enabled === other.enabled && combo.description === other.description;
|
|
14697
|
+
});
|
|
14698
|
+
}
|
|
14699
|
+
function HotkeyManager({ children, enabled = true }) {
|
|
14700
|
+
const handlersRef = useRef31(/* @__PURE__ */ new Map());
|
|
14701
|
+
const [shortcuts, setShortcuts] = useState41([]);
|
|
14702
|
+
const syncShortcuts = useCallback17(() => {
|
|
14703
|
+
const next = Array.from(handlersRef.current.values()).map((entry) => entry.combo);
|
|
14704
|
+
setShortcuts((current) => shortcutsEqual(current, next) ? current : next);
|
|
14705
|
+
}, []);
|
|
14706
|
+
const register = useCallback17(
|
|
14707
|
+
(combo, handler) => {
|
|
14708
|
+
handlersRef.current.set(combo.id, { combo, handler });
|
|
14709
|
+
syncShortcuts();
|
|
14710
|
+
return () => {
|
|
14711
|
+
handlersRef.current.delete(combo.id);
|
|
14712
|
+
syncShortcuts();
|
|
14713
|
+
};
|
|
14714
|
+
},
|
|
14715
|
+
[syncShortcuts]
|
|
14716
|
+
);
|
|
14717
|
+
useEffect31(() => {
|
|
14718
|
+
if (!enabled) {
|
|
14719
|
+
return;
|
|
14720
|
+
}
|
|
14721
|
+
const onKeyDown = (event) => {
|
|
14722
|
+
var _a2;
|
|
14723
|
+
const target = event.target;
|
|
14724
|
+
const tag = (_a2 = target == null ? void 0 : target.tagName) == null ? void 0 : _a2.toLowerCase();
|
|
14725
|
+
if (tag === "input" || tag === "textarea" || (target == null ? void 0 : target.isContentEditable)) {
|
|
14726
|
+
return;
|
|
14727
|
+
}
|
|
14728
|
+
for (const entry of handlersRef.current.values()) {
|
|
14729
|
+
if (entry.combo.enabled === false) {
|
|
14730
|
+
continue;
|
|
14731
|
+
}
|
|
14732
|
+
if (matchesCombo(event, entry.combo)) {
|
|
14733
|
+
event.preventDefault();
|
|
14734
|
+
entry.handler();
|
|
14735
|
+
break;
|
|
14736
|
+
}
|
|
14737
|
+
}
|
|
14738
|
+
};
|
|
14739
|
+
window.addEventListener("keydown", onKeyDown);
|
|
14740
|
+
return () => window.removeEventListener("keydown", onKeyDown);
|
|
14741
|
+
}, [enabled]);
|
|
14742
|
+
const value = useMemo20(() => ({ register, shortcuts }), [register, shortcuts]);
|
|
14743
|
+
return /* @__PURE__ */ jsx94(HotkeyManagerContext.Provider, { value, children });
|
|
14744
|
+
}
|
|
14745
|
+
function useHotkey(combo, handler) {
|
|
14746
|
+
const context = useContext10(HotkeyManagerContext);
|
|
14747
|
+
const register = context == null ? void 0 : context.register;
|
|
14748
|
+
const handlerRef = useRef31(handler);
|
|
14749
|
+
handlerRef.current = handler;
|
|
14750
|
+
const { alt, ctrl, description, enabled, id, key, meta, shift } = combo;
|
|
14751
|
+
useEffect31(() => {
|
|
14752
|
+
if (!register) {
|
|
14753
|
+
return;
|
|
14754
|
+
}
|
|
14755
|
+
return register(
|
|
14756
|
+
{ alt, ctrl, description, enabled, id, key, meta, shift },
|
|
14757
|
+
() => {
|
|
14758
|
+
handlerRef.current();
|
|
14759
|
+
}
|
|
14760
|
+
);
|
|
14761
|
+
}, [alt, ctrl, description, enabled, id, key, meta, register, shift]);
|
|
14762
|
+
}
|
|
14763
|
+
function useHotkeyManager() {
|
|
14764
|
+
const context = useContext10(HotkeyManagerContext);
|
|
14765
|
+
if (!context) {
|
|
14766
|
+
throw new Error("useHotkeyManager must be used within HotkeyManager");
|
|
14767
|
+
}
|
|
14768
|
+
return context;
|
|
14769
|
+
}
|
|
14770
|
+
|
|
14771
|
+
// ../../components/CopyButton/CopyButton.tsx
|
|
14772
|
+
import { useCallback as useCallback18, useEffect as useEffect32, useState as useState42 } from "react";
|
|
14773
|
+
|
|
14774
|
+
// ../../components/CopyButton/CopyButton.module.css
|
|
14775
|
+
var CopyButton_default = {"wrap":"opus_Ij6tWr_wrap"};
|
|
14776
|
+
|
|
14777
|
+
// ../../components/CopyButton/CopyButton.tsx
|
|
14778
|
+
import { jsx as jsx95 } from "react/jsx-runtime";
|
|
14779
|
+
async function writeClipboard(value) {
|
|
14780
|
+
var _a2;
|
|
14781
|
+
if ((_a2 = navigator.clipboard) == null ? void 0 : _a2.writeText) {
|
|
14782
|
+
await navigator.clipboard.writeText(value);
|
|
14783
|
+
return;
|
|
14784
|
+
}
|
|
14785
|
+
const textarea = document.createElement("textarea");
|
|
14786
|
+
textarea.value = value;
|
|
14787
|
+
textarea.setAttribute("readonly", "");
|
|
14788
|
+
textarea.style.position = "fixed";
|
|
14789
|
+
textarea.style.left = "-9999px";
|
|
14790
|
+
document.body.appendChild(textarea);
|
|
14791
|
+
textarea.select();
|
|
14792
|
+
document.execCommand("copy");
|
|
14793
|
+
document.body.removeChild(textarea);
|
|
14794
|
+
}
|
|
14795
|
+
function CopyButton({
|
|
14796
|
+
children,
|
|
14797
|
+
copiedLabel = "Copied",
|
|
14798
|
+
label = "Copy",
|
|
14799
|
+
resetMs = 1600,
|
|
14800
|
+
value,
|
|
14801
|
+
variant = "secondary",
|
|
14802
|
+
onCopied
|
|
14803
|
+
}) {
|
|
14804
|
+
const [copied, setCopied] = useState42(false);
|
|
14805
|
+
useEffect32(() => {
|
|
14806
|
+
if (!copied) {
|
|
14807
|
+
return;
|
|
14808
|
+
}
|
|
14809
|
+
const timer = window.setTimeout(() => setCopied(false), resetMs);
|
|
14810
|
+
return () => window.clearTimeout(timer);
|
|
14811
|
+
}, [copied, resetMs]);
|
|
14812
|
+
const handleCopy = useCallback18(async () => {
|
|
14813
|
+
try {
|
|
14814
|
+
await writeClipboard(value);
|
|
14815
|
+
setCopied(true);
|
|
14816
|
+
onCopied == null ? void 0 : onCopied();
|
|
14817
|
+
} catch (e) {
|
|
14818
|
+
setCopied(false);
|
|
14819
|
+
}
|
|
14820
|
+
}, [onCopied, value]);
|
|
14821
|
+
return /* @__PURE__ */ jsx95("span", { className: CopyButton_default.wrap, children: /* @__PURE__ */ jsx95(Button, { onClick: handleCopy, type: "button", variant, children: children != null ? children : copied ? copiedLabel : label }) });
|
|
14822
|
+
}
|
|
14823
|
+
|
|
14824
|
+
// ../../components/Clipboard/Clipboard.tsx
|
|
14825
|
+
import { createContext as createContext10, useCallback as useCallback19, useContext as useContext11, useMemo as useMemo21, useState as useState43 } from "react";
|
|
14826
|
+
import { jsx as jsx96 } from "react/jsx-runtime";
|
|
14827
|
+
var ClipboardContext = createContext10(null);
|
|
14828
|
+
async function fallbackWrite(value) {
|
|
14829
|
+
const textarea = document.createElement("textarea");
|
|
14830
|
+
textarea.value = value;
|
|
14831
|
+
textarea.setAttribute("readonly", "");
|
|
14832
|
+
textarea.style.position = "fixed";
|
|
14833
|
+
textarea.style.left = "-9999px";
|
|
14834
|
+
document.body.appendChild(textarea);
|
|
14835
|
+
textarea.select();
|
|
14836
|
+
document.execCommand("copy");
|
|
14837
|
+
document.body.removeChild(textarea);
|
|
14838
|
+
}
|
|
14839
|
+
function ClipboardProvider({ children }) {
|
|
14840
|
+
const [lastCopied, setLastCopied] = useState43(null);
|
|
14841
|
+
const writeText = useCallback19(async (value2) => {
|
|
14842
|
+
var _a2;
|
|
14843
|
+
if ((_a2 = navigator.clipboard) == null ? void 0 : _a2.writeText) {
|
|
14844
|
+
await navigator.clipboard.writeText(value2);
|
|
14845
|
+
} else {
|
|
14846
|
+
await fallbackWrite(value2);
|
|
14847
|
+
}
|
|
14848
|
+
setLastCopied(value2);
|
|
14849
|
+
}, []);
|
|
14850
|
+
const readText = useCallback19(async () => {
|
|
14851
|
+
var _a2;
|
|
14852
|
+
if ((_a2 = navigator.clipboard) == null ? void 0 : _a2.readText) {
|
|
14853
|
+
return navigator.clipboard.readText();
|
|
14854
|
+
}
|
|
14855
|
+
return lastCopied != null ? lastCopied : "";
|
|
14856
|
+
}, [lastCopied]);
|
|
14857
|
+
const value = useMemo21(
|
|
14858
|
+
() => ({ lastCopied, readText, writeText }),
|
|
14859
|
+
[lastCopied, readText, writeText]
|
|
14860
|
+
);
|
|
14861
|
+
return /* @__PURE__ */ jsx96(ClipboardContext.Provider, { value, children });
|
|
14862
|
+
}
|
|
14863
|
+
function useClipboard() {
|
|
14864
|
+
const context = useContext11(ClipboardContext);
|
|
14865
|
+
if (!context) {
|
|
14866
|
+
throw new Error("useClipboard must be used within ClipboardProvider");
|
|
14867
|
+
}
|
|
14868
|
+
return context;
|
|
14869
|
+
}
|
|
14870
|
+
function Clipboard({ children }) {
|
|
14871
|
+
return /* @__PURE__ */ jsx96(ClipboardProvider, { children });
|
|
14872
|
+
}
|
|
14873
|
+
|
|
14874
|
+
// ../../components/ThemeSwitcher/ThemeSwitcher.tsx
|
|
14875
|
+
import { jsx as jsx97 } from "react/jsx-runtime";
|
|
14876
|
+
function ThemeSwitcher({
|
|
14877
|
+
id = "opus-theme-switcher",
|
|
14878
|
+
label = "Theme",
|
|
14879
|
+
value,
|
|
14880
|
+
onChange
|
|
14881
|
+
}) {
|
|
14882
|
+
return /* @__PURE__ */ jsx97(
|
|
14883
|
+
ThemeToggleField,
|
|
14884
|
+
{
|
|
14885
|
+
id,
|
|
14886
|
+
label,
|
|
14887
|
+
mode: "flagged",
|
|
14888
|
+
value,
|
|
14889
|
+
onChange
|
|
14890
|
+
}
|
|
14891
|
+
);
|
|
14892
|
+
}
|
|
14893
|
+
|
|
14894
|
+
// ../../components/ResizeObserver/ResizeObserver.tsx
|
|
14895
|
+
import { useEffect as useEffect33, useRef as useRef32, useState as useState44 } from "react";
|
|
14896
|
+
import { jsx as jsx98 } from "react/jsx-runtime";
|
|
14897
|
+
function ResizeObserver2({ children, className, onResize }) {
|
|
14898
|
+
const ref = useRef32(null);
|
|
14899
|
+
const [size, setSize] = useState44({ width: 0, height: 0 });
|
|
14900
|
+
useEffect33(() => {
|
|
14901
|
+
const node = ref.current;
|
|
14902
|
+
if (!node || typeof window.ResizeObserver === "undefined") {
|
|
14903
|
+
return;
|
|
14904
|
+
}
|
|
14905
|
+
const observer = new window.ResizeObserver((entries) => {
|
|
14906
|
+
const entry = entries[0];
|
|
14907
|
+
if (!entry) {
|
|
14908
|
+
return;
|
|
14909
|
+
}
|
|
14910
|
+
const next = {
|
|
14911
|
+
width: Math.round(entry.contentRect.width),
|
|
14912
|
+
height: Math.round(entry.contentRect.height)
|
|
14913
|
+
};
|
|
14914
|
+
setSize(next);
|
|
14915
|
+
onResize == null ? void 0 : onResize(next);
|
|
14916
|
+
});
|
|
14917
|
+
observer.observe(node);
|
|
14918
|
+
return () => observer.disconnect();
|
|
14919
|
+
}, [onResize]);
|
|
14920
|
+
return /* @__PURE__ */ jsx98("div", { className, ref, children: children(size) });
|
|
14921
|
+
}
|
|
14922
|
+
function useResizeObserver(targetRef) {
|
|
14923
|
+
const [size, setSize] = useState44({ width: 0, height: 0 });
|
|
14924
|
+
useEffect33(() => {
|
|
14925
|
+
const node = targetRef.current;
|
|
14926
|
+
if (!node || typeof window.ResizeObserver === "undefined") {
|
|
14927
|
+
return;
|
|
14928
|
+
}
|
|
14929
|
+
const observer = new window.ResizeObserver((entries) => {
|
|
14930
|
+
const entry = entries[0];
|
|
14931
|
+
if (!entry) {
|
|
14932
|
+
return;
|
|
14933
|
+
}
|
|
14934
|
+
setSize({
|
|
14935
|
+
width: Math.round(entry.contentRect.width),
|
|
14936
|
+
height: Math.round(entry.contentRect.height)
|
|
14937
|
+
});
|
|
14938
|
+
});
|
|
14939
|
+
observer.observe(node);
|
|
14940
|
+
return () => observer.disconnect();
|
|
14941
|
+
}, [targetRef]);
|
|
14942
|
+
return size;
|
|
14943
|
+
}
|
|
14944
|
+
|
|
14945
|
+
// ../../components/IntersectionObserver/IntersectionObserver.tsx
|
|
14946
|
+
import { useEffect as useEffect34, useRef as useRef33, useState as useState45 } from "react";
|
|
14947
|
+
import { jsx as jsx99 } from "react/jsx-runtime";
|
|
14948
|
+
function IntersectionObserver2({
|
|
14949
|
+
children,
|
|
14950
|
+
className,
|
|
14951
|
+
rootMargin = "0px",
|
|
14952
|
+
threshold = 0.25,
|
|
14953
|
+
onChange
|
|
14954
|
+
}) {
|
|
14955
|
+
const ref = useRef33(null);
|
|
14956
|
+
const [isIntersecting, setIsIntersecting] = useState45(false);
|
|
14957
|
+
useEffect34(() => {
|
|
14958
|
+
const node = ref.current;
|
|
14959
|
+
if (!node || typeof window.IntersectionObserver === "undefined") {
|
|
14960
|
+
return;
|
|
14961
|
+
}
|
|
14962
|
+
const observer = new window.IntersectionObserver(
|
|
14963
|
+
(entries) => {
|
|
14964
|
+
const entry = entries[0];
|
|
14965
|
+
if (!entry) {
|
|
14966
|
+
return;
|
|
14967
|
+
}
|
|
14968
|
+
setIsIntersecting(entry.isIntersecting);
|
|
14969
|
+
onChange == null ? void 0 : onChange(entry.isIntersecting);
|
|
14970
|
+
},
|
|
14971
|
+
{ rootMargin, threshold }
|
|
14972
|
+
);
|
|
14973
|
+
observer.observe(node);
|
|
14974
|
+
return () => observer.disconnect();
|
|
14975
|
+
}, [onChange, rootMargin, threshold]);
|
|
14976
|
+
return /* @__PURE__ */ jsx99("div", { className, ref, children: children(isIntersecting) });
|
|
14977
|
+
}
|
|
14978
|
+
function useIntersectionObserver(targetRef, options = {}) {
|
|
14979
|
+
const { rootMargin = "0px", threshold = 0.25 } = options;
|
|
14980
|
+
const [isIntersecting, setIsIntersecting] = useState45(false);
|
|
14981
|
+
useEffect34(() => {
|
|
14982
|
+
const node = targetRef.current;
|
|
14983
|
+
if (!node || typeof window.IntersectionObserver === "undefined") {
|
|
14984
|
+
return;
|
|
14985
|
+
}
|
|
14986
|
+
const observer = new window.IntersectionObserver(
|
|
14987
|
+
(entries) => {
|
|
14988
|
+
const entry = entries[0];
|
|
14989
|
+
if (!entry) {
|
|
14990
|
+
return;
|
|
14991
|
+
}
|
|
14992
|
+
setIsIntersecting(entry.isIntersecting);
|
|
14993
|
+
},
|
|
14994
|
+
{ rootMargin, threshold }
|
|
14995
|
+
);
|
|
14996
|
+
observer.observe(node);
|
|
14997
|
+
return () => observer.disconnect();
|
|
14998
|
+
}, [rootMargin, targetRef, threshold]);
|
|
14999
|
+
return isIntersecting;
|
|
15000
|
+
}
|
|
15001
|
+
|
|
15002
|
+
// ../../components/Sidebar/Sidebar.tsx
|
|
15003
|
+
import {
|
|
15004
|
+
createContext as createContext11,
|
|
15005
|
+
useContext as useContext12,
|
|
15006
|
+
useState as useState46
|
|
15007
|
+
} from "react";
|
|
15008
|
+
|
|
15009
|
+
// ../../components/Sidebar/Sidebar.module.css
|
|
15010
|
+
var Sidebar_default = {"groupToggle":"opus_4Pogux_groupToggle","groupItems":"opus_4Pogux_groupItems","sidebar":"opus_4Pogux_sidebar","visuallyHidden":"opus_4Pogux_visuallyHidden","group":"opus_4Pogux_group","main":"opus_4Pogux_main","footer":"opus_4Pogux_footer","headerInner":"opus_4Pogux_headerInner","groupLabel":"opus_4Pogux_groupLabel","link":"opus_4Pogux_link","groupChevronOpen":"opus_4Pogux_groupChevronOpen","layout":"opus_4Pogux_layout","groupItemsWrap":"opus_4Pogux_groupItemsWrap","groupChevron":"opus_4Pogux_groupChevron","body":"opus_4Pogux_body","nav":"opus_4Pogux_nav","headerTitle":"opus_4Pogux_headerTitle","header":"opus_4Pogux_header","groupHeader":"opus_4Pogux_groupHeader","linkActive":"opus_4Pogux_linkActive"};
|
|
15011
|
+
|
|
15012
|
+
// ../../components/Sidebar/Sidebar.tsx
|
|
15013
|
+
import { Fragment as Fragment11, jsx as jsx100, jsxs as jsxs75 } from "react/jsx-runtime";
|
|
15014
|
+
var SidebarContext = createContext11({
|
|
15015
|
+
collapsed: false,
|
|
15016
|
+
density: "comfortable"
|
|
15017
|
+
});
|
|
15018
|
+
function Sidebar({
|
|
15019
|
+
children,
|
|
15020
|
+
collapsed = false,
|
|
15021
|
+
density = "comfortable",
|
|
15022
|
+
footer,
|
|
15023
|
+
header,
|
|
15024
|
+
side = "left"
|
|
15025
|
+
}) {
|
|
15026
|
+
return /* @__PURE__ */ jsx100(SidebarContext.Provider, { value: { collapsed, density }, children: /* @__PURE__ */ jsxs75(
|
|
15027
|
+
"aside",
|
|
15028
|
+
{
|
|
15029
|
+
"aria-label": "Sidebar",
|
|
13184
15030
|
className: Sidebar_default.sidebar,
|
|
13185
15031
|
"data-collapsed": collapsed ? "true" : "false",
|
|
13186
15032
|
"data-density": density,
|
|
13187
15033
|
"data-side": side,
|
|
13188
15034
|
children: [
|
|
13189
|
-
header ? /* @__PURE__ */
|
|
13190
|
-
/* @__PURE__ */
|
|
13191
|
-
footer ? /* @__PURE__ */
|
|
15035
|
+
header ? /* @__PURE__ */ jsx100("div", { className: Sidebar_default.header, children: header }) : null,
|
|
15036
|
+
/* @__PURE__ */ jsx100("div", { className: Sidebar_default.body, children }),
|
|
15037
|
+
footer ? /* @__PURE__ */ jsx100("div", { className: Sidebar_default.footer, children: footer }) : null
|
|
13192
15038
|
]
|
|
13193
15039
|
}
|
|
13194
15040
|
) });
|
|
13195
15041
|
}
|
|
13196
15042
|
function SidebarHeader({ children, title }) {
|
|
13197
|
-
const { collapsed } =
|
|
13198
|
-
return /* @__PURE__ */
|
|
13199
|
-
/* @__PURE__ */
|
|
15043
|
+
const { collapsed } = useContext12(SidebarContext);
|
|
15044
|
+
return /* @__PURE__ */ jsxs75("div", { className: Sidebar_default.headerInner, children: [
|
|
15045
|
+
/* @__PURE__ */ jsx100("h2", { className: collapsed ? Sidebar_default.visuallyHidden : Sidebar_default.headerTitle, children: title }),
|
|
13200
15046
|
children
|
|
13201
15047
|
] });
|
|
13202
15048
|
}
|
|
13203
15049
|
function SidebarNav({ "aria-label": ariaLabel, children }) {
|
|
13204
|
-
return /* @__PURE__ */
|
|
15050
|
+
return /* @__PURE__ */ jsx100("nav", { "aria-label": ariaLabel, className: Sidebar_default.nav, children });
|
|
13205
15051
|
}
|
|
13206
15052
|
function SidebarLink({ active = false, children, href, onClick }) {
|
|
13207
|
-
const { collapsed } =
|
|
15053
|
+
const { collapsed } = useContext12(SidebarContext);
|
|
13208
15054
|
const className = [Sidebar_default.link, active ? Sidebar_default.linkActive : ""].filter(Boolean).join(" ");
|
|
13209
15055
|
const label = typeof children === "string" ? children : null;
|
|
13210
|
-
const content = /* @__PURE__ */
|
|
13211
|
-
collapsed && label ? /* @__PURE__ */
|
|
13212
|
-
/* @__PURE__ */
|
|
15056
|
+
const content = /* @__PURE__ */ jsxs75(Fragment11, { children: [
|
|
15057
|
+
collapsed && label ? /* @__PURE__ */ jsx100("span", { "aria-hidden": "true", children: label.charAt(0) }) : null,
|
|
15058
|
+
/* @__PURE__ */ jsx100("span", { className: collapsed ? Sidebar_default.visuallyHidden : void 0, children })
|
|
13213
15059
|
] });
|
|
13214
15060
|
if (href) {
|
|
13215
|
-
return /* @__PURE__ */
|
|
15061
|
+
return /* @__PURE__ */ jsx100("a", { "aria-current": active ? "page" : void 0, className, href, children: content });
|
|
13216
15062
|
}
|
|
13217
|
-
return /* @__PURE__ */
|
|
15063
|
+
return /* @__PURE__ */ jsx100(
|
|
13218
15064
|
"button",
|
|
13219
15065
|
{
|
|
13220
15066
|
"aria-current": active ? "page" : void 0,
|
|
@@ -13233,16 +15079,16 @@ function createGroupListId(label, id) {
|
|
|
13233
15079
|
return slug ? `sidebar-group-${slug}` : "sidebar-group";
|
|
13234
15080
|
}
|
|
13235
15081
|
function SidebarGroup({ children, defaultOpen = true, id, label }) {
|
|
13236
|
-
const { collapsed } =
|
|
15082
|
+
const { collapsed } = useContext12(SidebarContext);
|
|
13237
15083
|
const listId = createGroupListId(label, id);
|
|
13238
|
-
const [open, setOpen] =
|
|
15084
|
+
const [open, setOpen] = useState46(defaultOpen);
|
|
13239
15085
|
if (collapsed) {
|
|
13240
|
-
return /* @__PURE__ */
|
|
15086
|
+
return /* @__PURE__ */ jsx100("div", { "aria-label": label, className: Sidebar_default.group, role: "group", children });
|
|
13241
15087
|
}
|
|
13242
|
-
return /* @__PURE__ */
|
|
13243
|
-
/* @__PURE__ */
|
|
13244
|
-
/* @__PURE__ */
|
|
13245
|
-
/* @__PURE__ */
|
|
15088
|
+
return /* @__PURE__ */ jsxs75("div", { "aria-label": label, className: Sidebar_default.group, role: "group", children: [
|
|
15089
|
+
/* @__PURE__ */ jsxs75("div", { className: Sidebar_default.groupHeader, children: [
|
|
15090
|
+
/* @__PURE__ */ jsx100("span", { className: Sidebar_default.groupLabel, children: label }),
|
|
15091
|
+
/* @__PURE__ */ jsx100(
|
|
13246
15092
|
"button",
|
|
13247
15093
|
{
|
|
13248
15094
|
"aria-controls": listId,
|
|
@@ -13251,29 +15097,29 @@ function SidebarGroup({ children, defaultOpen = true, id, label }) {
|
|
|
13251
15097
|
className: Sidebar_default.groupToggle,
|
|
13252
15098
|
onClick: () => setOpen((current) => !current),
|
|
13253
15099
|
type: "button",
|
|
13254
|
-
children: /* @__PURE__ */
|
|
15100
|
+
children: /* @__PURE__ */ jsx100("span", { "aria-hidden": "true", className: open ? Sidebar_default.groupChevronOpen : Sidebar_default.groupChevron })
|
|
13255
15101
|
}
|
|
13256
15102
|
)
|
|
13257
15103
|
] }),
|
|
13258
|
-
/* @__PURE__ */
|
|
15104
|
+
/* @__PURE__ */ jsx100("div", { className: Sidebar_default.groupItemsWrap, "data-open": open ? "true" : "false", children: /* @__PURE__ */ jsx100("div", { className: Sidebar_default.groupItems, id: listId, inert: !open || void 0, children }) })
|
|
13259
15105
|
] });
|
|
13260
15106
|
}
|
|
13261
15107
|
function SidebarLayout({ children, collapsed = false, main, side = "left" }) {
|
|
13262
|
-
return /* @__PURE__ */
|
|
15108
|
+
return /* @__PURE__ */ jsxs75("div", { className: Sidebar_default.layout, "data-collapsed": collapsed ? "true" : "false", "data-side": side, children: [
|
|
13263
15109
|
side === "left" ? children : null,
|
|
13264
|
-
/* @__PURE__ */
|
|
15110
|
+
/* @__PURE__ */ jsx100("div", { className: Sidebar_default.main, children: main }),
|
|
13265
15111
|
side === "right" ? children : null
|
|
13266
15112
|
] });
|
|
13267
15113
|
}
|
|
13268
15114
|
|
|
13269
15115
|
// ../../components/AccentColorPicker/AccentColorPicker.tsx
|
|
13270
|
-
import { useCallback as
|
|
15116
|
+
import { useCallback as useCallback20, useEffect as useEffect35, useMemo as useMemo22, useState as useState47 } from "react";
|
|
13271
15117
|
|
|
13272
15118
|
// ../../components/AccentColorPicker/AccentColorPicker.module.css
|
|
13273
15119
|
var AccentColorPicker_default = {"swatches":"opus_scMnrW_swatches","swatch":"opus_scMnrW_swatch"};
|
|
13274
15120
|
|
|
13275
15121
|
// ../../components/AccentColorPicker/AccentColorPicker.tsx
|
|
13276
|
-
import { jsx as
|
|
15122
|
+
import { jsx as jsx101 } from "react/jsx-runtime";
|
|
13277
15123
|
var ACCENT_STORAGE_KEY = "opus-components-accent";
|
|
13278
15124
|
var DEFAULT_ACCENT_COLOR = "#8f6cff";
|
|
13279
15125
|
var accentColors = [
|
|
@@ -13307,8 +15153,8 @@ function applyDocumentAccent(accent) {
|
|
|
13307
15153
|
);
|
|
13308
15154
|
}
|
|
13309
15155
|
function useAccentPreference() {
|
|
13310
|
-
const [accent, setAccentState] =
|
|
13311
|
-
|
|
15156
|
+
const [accent, setAccentState] = useState47(DEFAULT_ACCENT_COLOR);
|
|
15157
|
+
useEffect35(() => {
|
|
13312
15158
|
const timeout = window.setTimeout(() => {
|
|
13313
15159
|
const stored = window.localStorage.getItem(ACCENT_STORAGE_KEY);
|
|
13314
15160
|
if (isAccentColor(stored)) {
|
|
@@ -13320,7 +15166,7 @@ function useAccentPreference() {
|
|
|
13320
15166
|
}, 0);
|
|
13321
15167
|
return () => window.clearTimeout(timeout);
|
|
13322
15168
|
}, []);
|
|
13323
|
-
const setAccent =
|
|
15169
|
+
const setAccent = useCallback20((next) => {
|
|
13324
15170
|
if (!isAccentColor(next)) {
|
|
13325
15171
|
return;
|
|
13326
15172
|
}
|
|
@@ -13328,7 +15174,7 @@ function useAccentPreference() {
|
|
|
13328
15174
|
applyDocumentAccent(next);
|
|
13329
15175
|
window.localStorage.setItem(ACCENT_STORAGE_KEY, next);
|
|
13330
15176
|
}, []);
|
|
13331
|
-
const accentStyle =
|
|
15177
|
+
const accentStyle = useMemo22(() => createAccentStyle(accent), [accent]);
|
|
13332
15178
|
return { accent, accentStyle, setAccent };
|
|
13333
15179
|
}
|
|
13334
15180
|
function AccentColorPicker({
|
|
@@ -13340,7 +15186,7 @@ function AccentColorPicker({
|
|
|
13340
15186
|
onChange,
|
|
13341
15187
|
value
|
|
13342
15188
|
}) {
|
|
13343
|
-
return /* @__PURE__ */
|
|
15189
|
+
return /* @__PURE__ */ jsx101(
|
|
13344
15190
|
FieldShell,
|
|
13345
15191
|
{
|
|
13346
15192
|
fitContent: true,
|
|
@@ -13351,9 +15197,9 @@ function AccentColorPicker({
|
|
|
13351
15197
|
labelPosition,
|
|
13352
15198
|
labelTag: "div",
|
|
13353
15199
|
mode,
|
|
13354
|
-
children: /* @__PURE__ */
|
|
15200
|
+
children: /* @__PURE__ */ jsx101("div", { "aria-labelledby": `${id}-label`, className: AccentColorPicker_default.swatches, role: "radiogroup", children: accentColors.map((option) => {
|
|
13355
15201
|
const selected = value === option.value;
|
|
13356
|
-
return /* @__PURE__ */
|
|
15202
|
+
return /* @__PURE__ */ jsx101(
|
|
13357
15203
|
"button",
|
|
13358
15204
|
{
|
|
13359
15205
|
"aria-checked": selected,
|
|
@@ -13374,14 +15220,14 @@ function AccentColorPicker({
|
|
|
13374
15220
|
}
|
|
13375
15221
|
|
|
13376
15222
|
// ../../components/IconPicker/IconPicker.tsx
|
|
13377
|
-
import { useEffect as
|
|
13378
|
-
import { FontAwesomeIcon as
|
|
15223
|
+
import { useEffect as useEffect36, useId as useId19, useMemo as useMemo23, useRef as useRef34, useState as useState48 } from "react";
|
|
15224
|
+
import { FontAwesomeIcon as FontAwesomeIcon12 } from "@fortawesome/react-fontawesome";
|
|
13379
15225
|
|
|
13380
15226
|
// ../../components/IconPicker/IconPicker.module.css
|
|
13381
|
-
var IconPicker_default = {"
|
|
15227
|
+
var IconPicker_default = {"grid":"opus_4E-Oa1_grid","triggerLabel":"opus_4E-Oa1_triggerLabel","root":"opus_4E-Oa1_root","triggerIcon":"opus_4E-Oa1_triggerIcon","chevron":"opus_4E-Oa1_chevron","empty":"opus_4E-Oa1_empty","optionIcon":"opus_4E-Oa1_optionIcon","menu":"opus_4E-Oa1_menu","trigger":"opus_4E-Oa1_trigger","search":"opus_4E-Oa1_search","option":"opus_4E-Oa1_option"};
|
|
13382
15228
|
|
|
13383
15229
|
// ../../components/IconPicker/IconPicker.tsx
|
|
13384
|
-
import { jsx as
|
|
15230
|
+
import { jsx as jsx102, jsxs as jsxs76 } from "react/jsx-runtime";
|
|
13385
15231
|
function IconPicker({
|
|
13386
15232
|
help,
|
|
13387
15233
|
id,
|
|
@@ -13392,14 +15238,14 @@ function IconPicker({
|
|
|
13392
15238
|
searchPlaceholder = "Search icons",
|
|
13393
15239
|
value
|
|
13394
15240
|
}) {
|
|
13395
|
-
const [open, setOpen] =
|
|
13396
|
-
const [query, setQuery] =
|
|
13397
|
-
const rootRef =
|
|
13398
|
-
const searchRef =
|
|
15241
|
+
const [open, setOpen] = useState48(false);
|
|
15242
|
+
const [query, setQuery] = useState48("");
|
|
15243
|
+
const rootRef = useRef34(null);
|
|
15244
|
+
const searchRef = useRef34(null);
|
|
13399
15245
|
const listboxId = useId19();
|
|
13400
15246
|
const selected = getFontAwesomeIconOption(value);
|
|
13401
|
-
const filteredIcons =
|
|
13402
|
-
|
|
15247
|
+
const filteredIcons = useMemo23(() => filterFontAwesomeIcons(query), [query]);
|
|
15248
|
+
useEffect36(() => {
|
|
13403
15249
|
if (!open) {
|
|
13404
15250
|
return;
|
|
13405
15251
|
}
|
|
@@ -13426,8 +15272,8 @@ function IconPicker({
|
|
|
13426
15272
|
document.removeEventListener("keydown", handleKeyDown);
|
|
13427
15273
|
};
|
|
13428
15274
|
}, [open]);
|
|
13429
|
-
return /* @__PURE__ */
|
|
13430
|
-
/* @__PURE__ */
|
|
15275
|
+
return /* @__PURE__ */ jsx102(FieldShell, { help, id, label, labelPosition, mode, children: /* @__PURE__ */ jsxs76("div", { className: IconPicker_default.root, ref: rootRef, children: [
|
|
15276
|
+
/* @__PURE__ */ jsxs76(
|
|
13431
15277
|
"button",
|
|
13432
15278
|
{
|
|
13433
15279
|
"aria-controls": open ? listboxId : void 0,
|
|
@@ -13438,14 +15284,14 @@ function IconPicker({
|
|
|
13438
15284
|
type: "button",
|
|
13439
15285
|
onClick: () => setOpen((current) => !current),
|
|
13440
15286
|
children: [
|
|
13441
|
-
/* @__PURE__ */
|
|
13442
|
-
/* @__PURE__ */
|
|
15287
|
+
/* @__PURE__ */ jsx102("span", { "aria-hidden": "true", className: IconPicker_default.triggerIcon, children: /* @__PURE__ */ jsx102(FontAwesomeIcon12, { icon: selected.icon }) }),
|
|
15288
|
+
/* @__PURE__ */ jsx102("span", { className: IconPicker_default.triggerLabel, children: selected.label })
|
|
13443
15289
|
]
|
|
13444
15290
|
}
|
|
13445
15291
|
),
|
|
13446
|
-
/* @__PURE__ */
|
|
13447
|
-
open ? /* @__PURE__ */
|
|
13448
|
-
/* @__PURE__ */
|
|
15292
|
+
/* @__PURE__ */ jsx102("span", { "aria-hidden": "true", className: IconPicker_default.chevron }),
|
|
15293
|
+
open ? /* @__PURE__ */ jsxs76("div", { className: IconPicker_default.menu, children: [
|
|
15294
|
+
/* @__PURE__ */ jsx102(
|
|
13449
15295
|
"input",
|
|
13450
15296
|
{
|
|
13451
15297
|
"aria-label": searchPlaceholder,
|
|
@@ -13457,7 +15303,7 @@ function IconPicker({
|
|
|
13457
15303
|
onChange: (event) => setQuery(event.target.value)
|
|
13458
15304
|
}
|
|
13459
15305
|
),
|
|
13460
|
-
/* @__PURE__ */
|
|
15306
|
+
/* @__PURE__ */ jsx102("div", { className: IconPicker_default.grid, id: listboxId, role: "listbox", children: filteredIcons.length ? filteredIcons.map((entry) => /* @__PURE__ */ jsx102(
|
|
13461
15307
|
"button",
|
|
13462
15308
|
{
|
|
13463
15309
|
"aria-label": entry.label,
|
|
@@ -13472,10 +15318,10 @@ function IconPicker({
|
|
|
13472
15318
|
setOpen(false);
|
|
13473
15319
|
setQuery("");
|
|
13474
15320
|
},
|
|
13475
|
-
children: /* @__PURE__ */
|
|
15321
|
+
children: /* @__PURE__ */ jsx102("span", { "aria-hidden": "true", className: IconPicker_default.optionIcon, children: /* @__PURE__ */ jsx102(FontAwesomeIcon12, { icon: entry.icon }) })
|
|
13476
15322
|
},
|
|
13477
15323
|
entry.iconName
|
|
13478
|
-
)) : /* @__PURE__ */
|
|
15324
|
+
)) : /* @__PURE__ */ jsx102("p", { className: IconPicker_default.empty, children: "No icons match your search." }) })
|
|
13479
15325
|
] }) : null
|
|
13480
15326
|
] }) });
|
|
13481
15327
|
}
|
|
@@ -13484,6 +15330,9 @@ export {
|
|
|
13484
15330
|
Accordion,
|
|
13485
15331
|
AccordionGroup,
|
|
13486
15332
|
Alert,
|
|
15333
|
+
Avatar,
|
|
15334
|
+
AvatarGroup,
|
|
15335
|
+
Badge,
|
|
13487
15336
|
Button,
|
|
13488
15337
|
Card,
|
|
13489
15338
|
Carousel,
|
|
@@ -13493,15 +15342,21 @@ export {
|
|
|
13493
15342
|
CheckboxField,
|
|
13494
15343
|
ChipInput,
|
|
13495
15344
|
ChipInputField,
|
|
15345
|
+
Clipboard,
|
|
15346
|
+
ClipboardProvider,
|
|
13496
15347
|
ColorField,
|
|
13497
15348
|
CommandPalette,
|
|
15349
|
+
ContentTimeline,
|
|
13498
15350
|
ContextMenuProvider,
|
|
13499
15351
|
ContextMenuTarget,
|
|
15352
|
+
CopyButton,
|
|
13500
15353
|
CountryPickerField,
|
|
13501
15354
|
DEFAULT_TOAST_DURATION_MS,
|
|
13502
15355
|
DataGrid,
|
|
13503
15356
|
DateField,
|
|
15357
|
+
DescriptionList,
|
|
13504
15358
|
Dialog,
|
|
15359
|
+
Divider,
|
|
13505
15360
|
Drawer,
|
|
13506
15361
|
DrawerDefaultActions,
|
|
13507
15362
|
DropdownMenu,
|
|
@@ -13510,12 +15365,20 @@ export {
|
|
|
13510
15365
|
FieldShell,
|
|
13511
15366
|
FileField,
|
|
13512
15367
|
FilterSelectField,
|
|
15368
|
+
FocusTrap,
|
|
13513
15369
|
Gauge,
|
|
13514
15370
|
HiddenField,
|
|
15371
|
+
HotkeyManager,
|
|
15372
|
+
Icon,
|
|
13515
15373
|
IconPicker,
|
|
13516
15374
|
ImageGallery,
|
|
13517
15375
|
ImageThumbnail,
|
|
15376
|
+
IntersectionObserver2 as IntersectionObserver,
|
|
15377
|
+
JsonViewer,
|
|
15378
|
+
KeyboardShortcut,
|
|
13518
15379
|
Lightbox,
|
|
15380
|
+
List,
|
|
15381
|
+
MasonryGrid,
|
|
13519
15382
|
MegaMenu,
|
|
13520
15383
|
MetricTile,
|
|
13521
15384
|
Modal,
|
|
@@ -13531,12 +15394,16 @@ export {
|
|
|
13531
15394
|
PasswordStrengthField,
|
|
13532
15395
|
PhoneNumberField,
|
|
13533
15396
|
Popover,
|
|
15397
|
+
Portal,
|
|
15398
|
+
PortalHost,
|
|
13534
15399
|
ProgressBar,
|
|
13535
15400
|
ProgressRing,
|
|
15401
|
+
PropertyGrid,
|
|
13536
15402
|
Radio,
|
|
13537
15403
|
RadioGroup,
|
|
13538
15404
|
RangeField,
|
|
13539
15405
|
RatingField,
|
|
15406
|
+
ResizeObserver2 as ResizeObserver,
|
|
13540
15407
|
RichTextField,
|
|
13541
15408
|
Section,
|
|
13542
15409
|
SegmentedControlField,
|
|
@@ -13552,13 +15419,17 @@ export {
|
|
|
13552
15419
|
SliderRangeField,
|
|
13553
15420
|
Sparkline,
|
|
13554
15421
|
Speedometer,
|
|
15422
|
+
Spinner,
|
|
13555
15423
|
StatCard,
|
|
15424
|
+
Statistic,
|
|
13556
15425
|
StatusIndicator,
|
|
13557
15426
|
SwitchField,
|
|
13558
15427
|
Table,
|
|
13559
15428
|
Tabs,
|
|
13560
15429
|
TextAreaField,
|
|
13561
15430
|
TextField,
|
|
15431
|
+
OpusThemeProvider as ThemeProvider,
|
|
15432
|
+
ThemeSwitcher,
|
|
13562
15433
|
ThemeToggleField,
|
|
13563
15434
|
Toast,
|
|
13564
15435
|
ToastProvider,
|
|
@@ -13567,7 +15438,9 @@ export {
|
|
|
13567
15438
|
TopNavigationMenu,
|
|
13568
15439
|
TransferListField,
|
|
13569
15440
|
TreeSelectField,
|
|
15441
|
+
TreeView,
|
|
13570
15442
|
TrendBadge,
|
|
15443
|
+
VisuallyHidden,
|
|
13571
15444
|
accentColors,
|
|
13572
15445
|
cartesianSpecializedVariants,
|
|
13573
15446
|
countryCodeToFlag,
|
|
@@ -13582,9 +15455,15 @@ export {
|
|
|
13582
15455
|
fieldInputAriaProps,
|
|
13583
15456
|
countries as phoneCountries,
|
|
13584
15457
|
useAccentPreference,
|
|
15458
|
+
useClipboard,
|
|
13585
15459
|
useContextMenu,
|
|
13586
15460
|
useFieldShellAria,
|
|
15461
|
+
useHotkey,
|
|
15462
|
+
useHotkeyManager,
|
|
15463
|
+
useIntersectionObserver,
|
|
13587
15464
|
useOpusTheme,
|
|
15465
|
+
usePortalHost,
|
|
15466
|
+
useResizeObserver,
|
|
13588
15467
|
useToast,
|
|
13589
15468
|
useTopNavigation,
|
|
13590
15469
|
worldMapRegionIds
|