elseware-ui 2.39.0 → 2.39.1
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.css +760 -417
- package/dist/index.css.map +1 -1
- package/dist/index.d.mts +204 -279
- package/dist/index.d.ts +204 -279
- package/dist/index.js +1513 -574
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1218 -309
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var tailwindMerge = require('tailwind-merge');
|
|
4
|
-
var
|
|
4
|
+
var React26 = require('react');
|
|
5
5
|
var jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
var index_js$3 = require('react-icons/bs/index.js');
|
|
7
7
|
var index_js$4 = require('react-icons/fa/index.js');
|
|
8
8
|
var recharts = require('recharts');
|
|
9
|
-
var
|
|
9
|
+
var classNames77 = require('classnames');
|
|
10
10
|
var index_js$2 = require('react-icons/fa6/index.js');
|
|
11
11
|
var ReactWorldFlags = require('react-world-flags');
|
|
12
12
|
var emojiFlags = require('emoji-flags');
|
|
@@ -21,15 +21,21 @@ var index_js$5 = require('react-icons/bi/index.js');
|
|
|
21
21
|
var default2 = require('path');
|
|
22
22
|
var default3 = require('process');
|
|
23
23
|
var url = require('url');
|
|
24
|
+
var CodeMirror = require('@uiw/react-codemirror');
|
|
25
|
+
var langMarkdown = require('@codemirror/lang-markdown');
|
|
26
|
+
var themeOneDark = require('@codemirror/theme-one-dark');
|
|
27
|
+
var editor = require('@mdxeditor/editor');
|
|
28
|
+
require('@mdxeditor/editor/style.css');
|
|
24
29
|
|
|
25
30
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
26
31
|
|
|
27
|
-
var
|
|
28
|
-
var
|
|
32
|
+
var React26__default = /*#__PURE__*/_interopDefault(React26);
|
|
33
|
+
var classNames77__default = /*#__PURE__*/_interopDefault(classNames77);
|
|
29
34
|
var ReactWorldFlags__default = /*#__PURE__*/_interopDefault(ReactWorldFlags);
|
|
30
35
|
var emojiFlags__default = /*#__PURE__*/_interopDefault(emojiFlags);
|
|
31
36
|
var default2__default = /*#__PURE__*/_interopDefault(default2);
|
|
32
37
|
var default3__default = /*#__PURE__*/_interopDefault(default3);
|
|
38
|
+
var CodeMirror__default = /*#__PURE__*/_interopDefault(CodeMirror);
|
|
33
39
|
|
|
34
40
|
var __create = Object.create;
|
|
35
41
|
var __defProp = Object.defineProperty;
|
|
@@ -7039,7 +7045,7 @@ var init_python = __esm({
|
|
|
7039
7045
|
});
|
|
7040
7046
|
|
|
7041
7047
|
// node_modules/refractor/lang/jsx.js
|
|
7042
|
-
function
|
|
7048
|
+
function jsx213(Prism2) {
|
|
7043
7049
|
Prism2.register(javascript);
|
|
7044
7050
|
Prism2.register(markup);
|
|
7045
7051
|
(function(Prism3) {
|
|
@@ -7172,14 +7178,14 @@ var init_jsx = __esm({
|
|
|
7172
7178
|
"node_modules/refractor/lang/jsx.js"() {
|
|
7173
7179
|
init_javascript();
|
|
7174
7180
|
init_markup();
|
|
7175
|
-
|
|
7176
|
-
|
|
7181
|
+
jsx213.displayName = "jsx";
|
|
7182
|
+
jsx213.aliases = [];
|
|
7177
7183
|
}
|
|
7178
7184
|
});
|
|
7179
7185
|
|
|
7180
7186
|
// node_modules/refractor/lang/tsx.js
|
|
7181
7187
|
function tsx(Prism2) {
|
|
7182
|
-
Prism2.register(
|
|
7188
|
+
Prism2.register(jsx213);
|
|
7183
7189
|
Prism2.register(typescript);
|
|
7184
7190
|
(function(Prism3) {
|
|
7185
7191
|
var typescript2 = Prism3.util.clone(Prism3.languages.typescript);
|
|
@@ -7867,9 +7873,9 @@ function ConfigBootstrap({
|
|
|
7867
7873
|
loadingFallback = null,
|
|
7868
7874
|
showStack = false
|
|
7869
7875
|
}) {
|
|
7870
|
-
const [RootApp, setRootApp] =
|
|
7871
|
-
const [loadError, setLoadError] =
|
|
7872
|
-
|
|
7876
|
+
const [RootApp, setRootApp] = React26.useState(null);
|
|
7877
|
+
const [loadError, setLoadError] = React26.useState(null);
|
|
7878
|
+
React26.useEffect(() => {
|
|
7873
7879
|
if (!config.isValid) {
|
|
7874
7880
|
return;
|
|
7875
7881
|
}
|
|
@@ -7910,16 +7916,16 @@ function ConfigBootstrap({
|
|
|
7910
7916
|
return /* @__PURE__ */ jsxRuntime.jsx(RootApp, {});
|
|
7911
7917
|
}
|
|
7912
7918
|
var ConfigBootstrap_default = ConfigBootstrap;
|
|
7913
|
-
var EUIContext =
|
|
7919
|
+
var EUIContext = React26.createContext(null);
|
|
7914
7920
|
var EUIProvider = ({
|
|
7915
7921
|
config,
|
|
7916
7922
|
children: children3
|
|
7917
7923
|
}) => {
|
|
7918
|
-
const [state, setState] =
|
|
7924
|
+
const [state, setState] = React26.useState(config);
|
|
7919
7925
|
return /* @__PURE__ */ jsxRuntime.jsx(EUIContext.Provider, { value: { config: state, setConfig: setState }, children: children3 });
|
|
7920
7926
|
};
|
|
7921
7927
|
var useEUIConfig = () => {
|
|
7922
|
-
const ctx =
|
|
7928
|
+
const ctx = React26.useContext(EUIContext);
|
|
7923
7929
|
if (!ctx) {
|
|
7924
7930
|
throw new Error("useEUIConfig must be used inside EUIProvider");
|
|
7925
7931
|
}
|
|
@@ -8737,14 +8743,14 @@ function useChartData({
|
|
|
8737
8743
|
onDataChange,
|
|
8738
8744
|
onError
|
|
8739
8745
|
} = {}) {
|
|
8740
|
-
const [state, setState] =
|
|
8746
|
+
const [state, setState] = React26.useState({
|
|
8741
8747
|
data: data ?? [],
|
|
8742
8748
|
loading: false,
|
|
8743
8749
|
error: null,
|
|
8744
8750
|
status: data?.length ? "success" : "idle",
|
|
8745
8751
|
lastUpdatedAt: data?.length ? /* @__PURE__ */ new Date() : void 0
|
|
8746
8752
|
});
|
|
8747
|
-
const prepareData =
|
|
8753
|
+
const prepareData = React26.useCallback(
|
|
8748
8754
|
(nextData) => {
|
|
8749
8755
|
if (!normalize3) {
|
|
8750
8756
|
return nextData;
|
|
@@ -8753,7 +8759,7 @@ function useChartData({
|
|
|
8753
8759
|
},
|
|
8754
8760
|
[normalize3]
|
|
8755
8761
|
);
|
|
8756
|
-
const replaceData =
|
|
8762
|
+
const replaceData = React26.useCallback(
|
|
8757
8763
|
(nextData) => {
|
|
8758
8764
|
const normalizedData = prepareData(nextData);
|
|
8759
8765
|
setState({
|
|
@@ -8767,7 +8773,7 @@ function useChartData({
|
|
|
8767
8773
|
},
|
|
8768
8774
|
[onDataChange, prepareData]
|
|
8769
8775
|
);
|
|
8770
|
-
const appendData =
|
|
8776
|
+
const appendData = React26.useCallback(
|
|
8771
8777
|
(nextData) => {
|
|
8772
8778
|
setState((currentState) => {
|
|
8773
8779
|
const incomingData = Array.isArray(nextData) ? nextData : [nextData];
|
|
@@ -8791,7 +8797,7 @@ function useChartData({
|
|
|
8791
8797
|
},
|
|
8792
8798
|
[maxDataPoints, onDataChange, prepareData]
|
|
8793
8799
|
);
|
|
8794
|
-
const clearData =
|
|
8800
|
+
const clearData = React26.useCallback(() => {
|
|
8795
8801
|
setState({
|
|
8796
8802
|
data: [],
|
|
8797
8803
|
loading: false,
|
|
@@ -8801,7 +8807,7 @@ function useChartData({
|
|
|
8801
8807
|
});
|
|
8802
8808
|
onDataChange?.([]);
|
|
8803
8809
|
}, [onDataChange]);
|
|
8804
|
-
const handleError =
|
|
8810
|
+
const handleError = React26.useCallback(
|
|
8805
8811
|
(error) => {
|
|
8806
8812
|
setState((currentState) => ({
|
|
8807
8813
|
...currentState,
|
|
@@ -8813,7 +8819,7 @@ function useChartData({
|
|
|
8813
8819
|
},
|
|
8814
8820
|
[onError]
|
|
8815
8821
|
);
|
|
8816
|
-
const refresh =
|
|
8822
|
+
const refresh = React26.useCallback(async () => {
|
|
8817
8823
|
const resolvedDataSource = dataSource;
|
|
8818
8824
|
if (!resolvedDataSource?.refresh && !resolvedDataSource?.getInitialData) {
|
|
8819
8825
|
return;
|
|
@@ -8832,13 +8838,13 @@ function useChartData({
|
|
|
8832
8838
|
handleError(error instanceof Error ? error : new Error(String(error)));
|
|
8833
8839
|
}
|
|
8834
8840
|
}, [dataSource, handleError, replaceData]);
|
|
8835
|
-
|
|
8841
|
+
React26.useEffect(() => {
|
|
8836
8842
|
if (!data) {
|
|
8837
8843
|
return;
|
|
8838
8844
|
}
|
|
8839
8845
|
replaceData(data);
|
|
8840
8846
|
}, [data, replaceData]);
|
|
8841
|
-
|
|
8847
|
+
React26.useEffect(() => {
|
|
8842
8848
|
if (!dataSource || !autoLoad) {
|
|
8843
8849
|
return;
|
|
8844
8850
|
}
|
|
@@ -8877,7 +8883,7 @@ function useChartData({
|
|
|
8877
8883
|
unsubscribe?.();
|
|
8878
8884
|
};
|
|
8879
8885
|
}, [appendData, autoLoad, dataSource, handleError, replaceData]);
|
|
8880
|
-
return
|
|
8886
|
+
return React26.useMemo(
|
|
8881
8887
|
() => ({
|
|
8882
8888
|
...state,
|
|
8883
8889
|
refresh,
|
|
@@ -8896,11 +8902,11 @@ function useChartRealtime({
|
|
|
8896
8902
|
onData,
|
|
8897
8903
|
onError
|
|
8898
8904
|
}) {
|
|
8899
|
-
const [data, setData] =
|
|
8900
|
-
const [error, setError] =
|
|
8901
|
-
const [connected, setConnected] =
|
|
8902
|
-
const [lastUpdatedAt, setLastUpdatedAt] =
|
|
8903
|
-
|
|
8905
|
+
const [data, setData] = React26.useState([]);
|
|
8906
|
+
const [error, setError] = React26.useState(null);
|
|
8907
|
+
const [connected, setConnected] = React26.useState(false);
|
|
8908
|
+
const [lastUpdatedAt, setLastUpdatedAt] = React26.useState();
|
|
8909
|
+
React26.useEffect(() => {
|
|
8904
8910
|
if (!enabled) {
|
|
8905
8911
|
setConnected(false);
|
|
8906
8912
|
return;
|
|
@@ -8934,7 +8940,7 @@ function useChartRealtime({
|
|
|
8934
8940
|
setConnected(false);
|
|
8935
8941
|
};
|
|
8936
8942
|
}, [connect, enabled, maxDataPoints, normalize3, onData, onError]);
|
|
8937
|
-
return
|
|
8943
|
+
return React26.useMemo(
|
|
8938
8944
|
() => ({
|
|
8939
8945
|
data,
|
|
8940
8946
|
error,
|
|
@@ -8956,13 +8962,13 @@ function useChartPolling({
|
|
|
8956
8962
|
onData,
|
|
8957
8963
|
onError
|
|
8958
8964
|
}) {
|
|
8959
|
-
const isMountedRef =
|
|
8960
|
-
const isFetchingRef =
|
|
8961
|
-
const [data, setData] =
|
|
8962
|
-
const [error, setError] =
|
|
8963
|
-
const [loading, setLoading] =
|
|
8964
|
-
const [lastUpdatedAt, setLastUpdatedAt] =
|
|
8965
|
-
const refresh =
|
|
8965
|
+
const isMountedRef = React26.useRef(false);
|
|
8966
|
+
const isFetchingRef = React26.useRef(false);
|
|
8967
|
+
const [data, setData] = React26.useState([]);
|
|
8968
|
+
const [error, setError] = React26.useState(null);
|
|
8969
|
+
const [loading, setLoading] = React26.useState(immediate);
|
|
8970
|
+
const [lastUpdatedAt, setLastUpdatedAt] = React26.useState();
|
|
8971
|
+
const refresh = React26.useCallback(async () => {
|
|
8966
8972
|
if (isFetchingRef.current) {
|
|
8967
8973
|
return;
|
|
8968
8974
|
}
|
|
@@ -8991,13 +8997,13 @@ function useChartPolling({
|
|
|
8991
8997
|
isFetchingRef.current = false;
|
|
8992
8998
|
}
|
|
8993
8999
|
}, [fetcher, normalize3, onData, onError]);
|
|
8994
|
-
|
|
9000
|
+
React26.useEffect(() => {
|
|
8995
9001
|
isMountedRef.current = true;
|
|
8996
9002
|
return () => {
|
|
8997
9003
|
isMountedRef.current = false;
|
|
8998
9004
|
};
|
|
8999
9005
|
}, []);
|
|
9000
|
-
|
|
9006
|
+
React26.useEffect(() => {
|
|
9001
9007
|
if (!enabled) {
|
|
9002
9008
|
setLoading(false);
|
|
9003
9009
|
return;
|
|
@@ -9012,7 +9018,7 @@ function useChartPolling({
|
|
|
9012
9018
|
window.clearInterval(timer2);
|
|
9013
9019
|
};
|
|
9014
9020
|
}, [enabled, immediate, interval2, refresh]);
|
|
9015
|
-
return
|
|
9021
|
+
return React26.useMemo(
|
|
9016
9022
|
() => ({
|
|
9017
9023
|
data,
|
|
9018
9024
|
error,
|
|
@@ -9049,7 +9055,7 @@ function useChartSeries({
|
|
|
9049
9055
|
xKey,
|
|
9050
9056
|
excludeKeys = []
|
|
9051
9057
|
}) {
|
|
9052
|
-
return
|
|
9058
|
+
return React26.useMemo(() => {
|
|
9053
9059
|
const normalizedSeries = series && series.length > 0 ? series : inferSeriesKeys(data, xKey, excludeKeys).map((key) => ({
|
|
9054
9060
|
key
|
|
9055
9061
|
}));
|
|
@@ -9097,12 +9103,12 @@ function useChartTheme({
|
|
|
9097
9103
|
mode = "dark",
|
|
9098
9104
|
theme
|
|
9099
9105
|
} = {}) {
|
|
9100
|
-
return
|
|
9106
|
+
return React26.useMemo(() => {
|
|
9101
9107
|
const baseTheme = mode === "light" ? CHART_LIGHT_THEME : mode === "dark" ? CHART_DARK_THEME : DEFAULT_CHART_THEME;
|
|
9102
9108
|
return mergeChartTheme(baseTheme, theme);
|
|
9103
9109
|
}, [mode, theme]);
|
|
9104
9110
|
}
|
|
9105
|
-
var ChartContext =
|
|
9111
|
+
var ChartContext = React26.createContext({
|
|
9106
9112
|
data: [],
|
|
9107
9113
|
loading: false,
|
|
9108
9114
|
error: null,
|
|
@@ -9134,7 +9140,7 @@ function ChartProvider({
|
|
|
9134
9140
|
onDataChange,
|
|
9135
9141
|
onError
|
|
9136
9142
|
});
|
|
9137
|
-
const value =
|
|
9143
|
+
const value = React26.useMemo(
|
|
9138
9144
|
() => ({
|
|
9139
9145
|
...chartData,
|
|
9140
9146
|
mode: dataSource?.mode,
|
|
@@ -9151,7 +9157,7 @@ function ChartProvider({
|
|
|
9151
9157
|
);
|
|
9152
9158
|
}
|
|
9153
9159
|
function useChartContext() {
|
|
9154
|
-
return
|
|
9160
|
+
return React26.useContext(ChartContext);
|
|
9155
9161
|
}
|
|
9156
9162
|
|
|
9157
9163
|
// src/components/data-display/charts/context/chartReducer.ts
|
|
@@ -9455,7 +9461,7 @@ function ChartLegend({
|
|
|
9455
9461
|
valueSource = "latest",
|
|
9456
9462
|
onItemClick
|
|
9457
9463
|
}) {
|
|
9458
|
-
const legendItems =
|
|
9464
|
+
const legendItems = React26.useMemo(() => {
|
|
9459
9465
|
if (items?.length) {
|
|
9460
9466
|
return items;
|
|
9461
9467
|
}
|
|
@@ -10233,7 +10239,7 @@ function GaugePlot({
|
|
|
10233
10239
|
const chartData = data ?? context.data;
|
|
10234
10240
|
const chartLoading = loading ?? context.loading;
|
|
10235
10241
|
const chartError = error ?? context.error;
|
|
10236
|
-
const resolvedValue =
|
|
10242
|
+
const resolvedValue = React26.useMemo(() => {
|
|
10237
10243
|
if (typeof value === "number") {
|
|
10238
10244
|
return value;
|
|
10239
10245
|
}
|
|
@@ -10350,14 +10356,14 @@ function StatPlot({
|
|
|
10350
10356
|
const chartData = data ?? context.data;
|
|
10351
10357
|
const chartLoading = loading ?? context.loading;
|
|
10352
10358
|
const chartError = error ?? context.error;
|
|
10353
|
-
const resolvedValue =
|
|
10359
|
+
const resolvedValue = React26.useMemo(() => {
|
|
10354
10360
|
if (value !== void 0) {
|
|
10355
10361
|
return value;
|
|
10356
10362
|
}
|
|
10357
10363
|
const latestPoint = chartData[chartData.length - 1];
|
|
10358
10364
|
return latestPoint?.[String(valueKey)] ?? null;
|
|
10359
10365
|
}, [chartData, value, valueKey]);
|
|
10360
|
-
const resolvedPreviousValue =
|
|
10366
|
+
const resolvedPreviousValue = React26.useMemo(() => {
|
|
10361
10367
|
if (previousValue !== void 0) {
|
|
10362
10368
|
return previousValue;
|
|
10363
10369
|
}
|
|
@@ -10365,7 +10371,7 @@ function StatPlot({
|
|
|
10365
10371
|
const previous3 = previousPoint?.[String(valueKey)];
|
|
10366
10372
|
return typeof previous3 === "number" ? previous3 : void 0;
|
|
10367
10373
|
}, [chartData, previousValue, valueKey]);
|
|
10368
|
-
const trend =
|
|
10374
|
+
const trend = React26.useMemo(() => {
|
|
10369
10375
|
if (typeof resolvedValue !== "number" || typeof resolvedPreviousValue !== "number") {
|
|
10370
10376
|
return null;
|
|
10371
10377
|
}
|
|
@@ -10836,7 +10842,7 @@ var Chip = ({
|
|
|
10836
10842
|
}
|
|
10837
10843
|
) });
|
|
10838
10844
|
};
|
|
10839
|
-
var DataViewContext =
|
|
10845
|
+
var DataViewContext = React26.createContext(null);
|
|
10840
10846
|
|
|
10841
10847
|
// src/components/data-display/data-view/utils/searchData.ts
|
|
10842
10848
|
function searchData(data, search3) {
|
|
@@ -10880,19 +10886,19 @@ function DataViewProvider({
|
|
|
10880
10886
|
defaultPageSize = 9,
|
|
10881
10887
|
sortConfig = {}
|
|
10882
10888
|
}) {
|
|
10883
|
-
const [search3, setSearch] =
|
|
10884
|
-
const [filters, setFilters] =
|
|
10885
|
-
const [sort, setSort] =
|
|
10886
|
-
const [page, setPage] =
|
|
10887
|
-
const [pageSize, setPageSize] =
|
|
10888
|
-
const processedData =
|
|
10889
|
+
const [search3, setSearch] = React26.useState("");
|
|
10890
|
+
const [filters, setFilters] = React26.useState({});
|
|
10891
|
+
const [sort, setSort] = React26.useState("suggested");
|
|
10892
|
+
const [page, setPage] = React26.useState(1);
|
|
10893
|
+
const [pageSize, setPageSize] = React26.useState(defaultPageSize);
|
|
10894
|
+
const processedData = React26.useMemo(() => {
|
|
10889
10895
|
let result = searchData(data, search3);
|
|
10890
10896
|
result = filterData(result, filters);
|
|
10891
10897
|
result = sortData(result, sort, sortConfig);
|
|
10892
10898
|
return result;
|
|
10893
10899
|
}, [data, search3, filters, sort, sortConfig]);
|
|
10894
10900
|
const totalPages = pageSize === "All" ? 1 : Math.ceil(processedData.length / pageSize);
|
|
10895
|
-
const paginatedData =
|
|
10901
|
+
const paginatedData = React26.useMemo(() => {
|
|
10896
10902
|
if (pageSize === "All") return processedData;
|
|
10897
10903
|
const size = pageSize;
|
|
10898
10904
|
const start3 = (page - 1) * size;
|
|
@@ -10930,7 +10936,7 @@ function DataViewSidebar({ children: children3 }) {
|
|
|
10930
10936
|
}
|
|
10931
10937
|
var DataViewSidebar_default = DataViewSidebar;
|
|
10932
10938
|
function useDataView() {
|
|
10933
|
-
const ctx =
|
|
10939
|
+
const ctx = React26.useContext(DataViewContext);
|
|
10934
10940
|
if (!ctx) {
|
|
10935
10941
|
throw new Error("useDataView must be used within DataViewProvider");
|
|
10936
10942
|
}
|
|
@@ -10988,12 +10994,12 @@ function DataViewSort({ options = [], shape }) {
|
|
|
10988
10994
|
}
|
|
10989
10995
|
var DataViewSort_default = DataViewSort;
|
|
10990
10996
|
function useTransitionVisibility(visibility, leaveDuration = 150) {
|
|
10991
|
-
const [mounted, setMounted] =
|
|
10992
|
-
const [active, setActive] =
|
|
10993
|
-
const isInitialRenderRef =
|
|
10994
|
-
const frameOneRef =
|
|
10995
|
-
const frameTwoRef =
|
|
10996
|
-
const timeoutRef =
|
|
10997
|
+
const [mounted, setMounted] = React26.useState(Boolean(visibility));
|
|
10998
|
+
const [active, setActive] = React26.useState(Boolean(visibility));
|
|
10999
|
+
const isInitialRenderRef = React26.useRef(true);
|
|
11000
|
+
const frameOneRef = React26.useRef(null);
|
|
11001
|
+
const frameTwoRef = React26.useRef(null);
|
|
11002
|
+
const timeoutRef = React26.useRef(null);
|
|
10997
11003
|
const clearTimers = () => {
|
|
10998
11004
|
if (frameOneRef.current) {
|
|
10999
11005
|
cancelAnimationFrame(frameOneRef.current);
|
|
@@ -11008,7 +11014,7 @@ function useTransitionVisibility(visibility, leaveDuration = 150) {
|
|
|
11008
11014
|
timeoutRef.current = null;
|
|
11009
11015
|
}
|
|
11010
11016
|
};
|
|
11011
|
-
|
|
11017
|
+
React26.useEffect(() => {
|
|
11012
11018
|
clearTimers();
|
|
11013
11019
|
if (isInitialRenderRef.current) {
|
|
11014
11020
|
isInitialRenderRef.current = false;
|
|
@@ -11036,17 +11042,17 @@ function useTransitionVisibility(visibility, leaveDuration = 150) {
|
|
|
11036
11042
|
};
|
|
11037
11043
|
}
|
|
11038
11044
|
function renderTransitionChild(children3, className) {
|
|
11039
|
-
const childCount =
|
|
11045
|
+
const childCount = React26.Children.count(children3);
|
|
11040
11046
|
if (childCount !== 1) {
|
|
11041
11047
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className, children: children3 });
|
|
11042
11048
|
}
|
|
11043
|
-
const child =
|
|
11044
|
-
if (!
|
|
11049
|
+
const child = React26.Children.only(children3);
|
|
11050
|
+
if (!React26__default.default.isValidElement(child)) {
|
|
11045
11051
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className, children: child });
|
|
11046
11052
|
}
|
|
11047
11053
|
const element6 = child;
|
|
11048
|
-
return
|
|
11049
|
-
className:
|
|
11054
|
+
return React26__default.default.cloneElement(element6, {
|
|
11055
|
+
className: classNames77__default.default(element6.props.className, className)
|
|
11050
11056
|
});
|
|
11051
11057
|
}
|
|
11052
11058
|
function TransitionBase({
|
|
@@ -11066,7 +11072,7 @@ function TransitionBase({
|
|
|
11066
11072
|
if (!mounted && unmountOnExit) {
|
|
11067
11073
|
return null;
|
|
11068
11074
|
}
|
|
11069
|
-
const transitionClassName =
|
|
11075
|
+
const transitionClassName = classNames77__default.default(
|
|
11070
11076
|
visibility ? enterClassName : leaveClassName,
|
|
11071
11077
|
active ? visibleClassName : hiddenClassName
|
|
11072
11078
|
);
|
|
@@ -11233,7 +11239,7 @@ function Accordion({
|
|
|
11233
11239
|
toggleOnSummaryClick = false,
|
|
11234
11240
|
enableChildrenPadding = true
|
|
11235
11241
|
}) {
|
|
11236
|
-
const [collapse, setCollapse] =
|
|
11242
|
+
const [collapse, setCollapse] = React26.useState(defaultCollapse);
|
|
11237
11243
|
const handleToggle = () => {
|
|
11238
11244
|
setCollapse((prev) => !prev);
|
|
11239
11245
|
};
|
|
@@ -11241,7 +11247,7 @@ function Accordion({
|
|
|
11241
11247
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
11242
11248
|
"div",
|
|
11243
11249
|
{
|
|
11244
|
-
className:
|
|
11250
|
+
className: classNames77__default.default(
|
|
11245
11251
|
"inline-flex gap-3 items-center px-3 py-2 w-full eui-gradient-to-r-general-xs",
|
|
11246
11252
|
{
|
|
11247
11253
|
"hover:cursor-pointer": toggleOnSummaryClick
|
|
@@ -11262,7 +11268,7 @@ function Accordion({
|
|
|
11262
11268
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
11263
11269
|
index_js$2.FaCircleChevronDown,
|
|
11264
11270
|
{
|
|
11265
|
-
className:
|
|
11271
|
+
className: classNames77__default.default("text-xl transition-transform duration-300", {
|
|
11266
11272
|
"rotate-180": collapse
|
|
11267
11273
|
})
|
|
11268
11274
|
}
|
|
@@ -11276,7 +11282,7 @@ function Accordion({
|
|
|
11276
11282
|
/* @__PURE__ */ jsxRuntime.jsx(TransitionAccordion_default, { visibility: collapse, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
11277
11283
|
"div",
|
|
11278
11284
|
{
|
|
11279
|
-
className:
|
|
11285
|
+
className: classNames77__default.default(
|
|
11280
11286
|
"border-t border-t-eui-dark-400/40 eui-text-sm",
|
|
11281
11287
|
{
|
|
11282
11288
|
"p-5": enableChildrenPadding
|
|
@@ -11360,7 +11366,7 @@ function CardHeader({ icon, title, description, className }) {
|
|
|
11360
11366
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
11361
11367
|
"div",
|
|
11362
11368
|
{
|
|
11363
|
-
className:
|
|
11369
|
+
className: classNames77__default.default(
|
|
11364
11370
|
"flex items-start gap-4 p-6 border-b border-white/10",
|
|
11365
11371
|
className
|
|
11366
11372
|
),
|
|
@@ -11376,14 +11382,14 @@ function CardHeader({ icon, title, description, className }) {
|
|
|
11376
11382
|
}
|
|
11377
11383
|
var CardHeader_default = CardHeader;
|
|
11378
11384
|
function CardContent({ children: children3, className }) {
|
|
11379
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
11385
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames77__default.default("p-6 text-gray-300 text-sm", className), children: children3 });
|
|
11380
11386
|
}
|
|
11381
11387
|
var CardContent_default = CardContent;
|
|
11382
11388
|
function CardFooter({ children: children3, className }) {
|
|
11383
11389
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
11384
11390
|
"div",
|
|
11385
11391
|
{
|
|
11386
|
-
className:
|
|
11392
|
+
className: classNames77__default.default(
|
|
11387
11393
|
"flex items-center gap-3 p-5 border-t border-white/10 text-sm text-gray-400",
|
|
11388
11394
|
className
|
|
11389
11395
|
),
|
|
@@ -11425,7 +11431,7 @@ function GradientAnimation({
|
|
|
11425
11431
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
11426
11432
|
"div",
|
|
11427
11433
|
{
|
|
11428
|
-
className:
|
|
11434
|
+
className: classNames77__default.default("absolute inset-0"),
|
|
11429
11435
|
style: {
|
|
11430
11436
|
background: `linear-gradient(${cfg.angle}deg, ${cfg.colors?.join(",")})`,
|
|
11431
11437
|
backgroundSize: cfg.backgroundSize,
|
|
@@ -11571,7 +11577,7 @@ function MotionSurface({
|
|
|
11571
11577
|
}) {
|
|
11572
11578
|
const AnimationComponent = animationVariant === "custom" ? CustomAnimation : animationRegistry[animationVariant];
|
|
11573
11579
|
const OverlayComponent = overlay === "custom" ? CustomOverlay : overlayRegistry[overlay];
|
|
11574
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
11580
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: classNames77__default.default("relative overflow-hidden", className), children: [
|
|
11575
11581
|
AnimationComponent && /* @__PURE__ */ jsxRuntime.jsx(AnimationComponent, { config: animationConfig, animated }),
|
|
11576
11582
|
OverlayComponent && /* @__PURE__ */ jsxRuntime.jsx(OverlayComponent, { config: overlayConfig }),
|
|
11577
11583
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative z-10", children: children3 })
|
|
@@ -11730,8 +11736,8 @@ var Flag = ({
|
|
|
11730
11736
|
className,
|
|
11731
11737
|
...rest
|
|
11732
11738
|
}) => {
|
|
11733
|
-
const [pos, setPos] =
|
|
11734
|
-
const [showTooltip, setShowTooltip] =
|
|
11739
|
+
const [pos, setPos] = React26.useState({ x: 0, y: 0 });
|
|
11740
|
+
const [showTooltip, setShowTooltip] = React26.useState(false);
|
|
11735
11741
|
const upperCode = code4.toUpperCase();
|
|
11736
11742
|
const country = emojiFlags__default.default.countryCode(upperCode);
|
|
11737
11743
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -14857,16 +14863,16 @@ var GraphRenderer = ({
|
|
|
14857
14863
|
width = 1e3,
|
|
14858
14864
|
height = 700
|
|
14859
14865
|
}) => {
|
|
14860
|
-
const [nodes, setNodes] =
|
|
14866
|
+
const [nodes, setNodes] = React26.useState([]);
|
|
14861
14867
|
const edges = data.edges;
|
|
14862
|
-
const simulationRef =
|
|
14863
|
-
const [offset, setOffset] =
|
|
14864
|
-
const isDragging =
|
|
14865
|
-
const lastPos =
|
|
14866
|
-
const nodeMap =
|
|
14868
|
+
const simulationRef = React26.useRef(null);
|
|
14869
|
+
const [offset, setOffset] = React26.useState({ x: 0, y: 0 });
|
|
14870
|
+
const isDragging = React26.useRef(false);
|
|
14871
|
+
const lastPos = React26.useRef({ x: 0, y: 0 });
|
|
14872
|
+
const nodeMap = React26.useMemo(() => {
|
|
14867
14873
|
return new Map(nodes.map((n) => [n.id, n]));
|
|
14868
14874
|
}, [nodes]);
|
|
14869
|
-
|
|
14875
|
+
React26.useEffect(() => {
|
|
14870
14876
|
simulationRef.current?.stop?.();
|
|
14871
14877
|
const positionedNodes = data.nodes.map((n) => ({
|
|
14872
14878
|
...n,
|
|
@@ -14947,13 +14953,13 @@ var Graph = ({
|
|
|
14947
14953
|
}
|
|
14948
14954
|
);
|
|
14949
14955
|
};
|
|
14950
|
-
var CloudinaryContext =
|
|
14956
|
+
var CloudinaryContext = React26.createContext(null);
|
|
14951
14957
|
var CloudinaryProvider = ({
|
|
14952
14958
|
cloudName,
|
|
14953
14959
|
children: children3
|
|
14954
14960
|
}) => /* @__PURE__ */ jsxRuntime.jsx(CloudinaryContext.Provider, { value: { cloudName }, children: children3 });
|
|
14955
14961
|
var useCloudinaryConfig = () => {
|
|
14956
|
-
const ctx =
|
|
14962
|
+
const ctx = React26.useContext(CloudinaryContext);
|
|
14957
14963
|
if (!ctx) {
|
|
14958
14964
|
throw new Error(
|
|
14959
14965
|
"CloudinaryProvider is missing. Wrap your app with <CloudinaryProvider />"
|
|
@@ -14998,6 +15004,7 @@ var Image2 = ({
|
|
|
14998
15004
|
height,
|
|
14999
15005
|
width,
|
|
15000
15006
|
className,
|
|
15007
|
+
style: style2,
|
|
15001
15008
|
...rest
|
|
15002
15009
|
}) => {
|
|
15003
15010
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -15007,6 +15014,7 @@ var Image2 = ({
|
|
|
15007
15014
|
src,
|
|
15008
15015
|
alt,
|
|
15009
15016
|
style: {
|
|
15017
|
+
...style2,
|
|
15010
15018
|
...width ? { width } : {},
|
|
15011
15019
|
...height ? { height } : {}
|
|
15012
15020
|
},
|
|
@@ -15178,6 +15186,7 @@ var Paragraph = ({
|
|
|
15178
15186
|
);
|
|
15179
15187
|
};
|
|
15180
15188
|
var Quote = ({
|
|
15189
|
+
as: Component,
|
|
15181
15190
|
level = 1,
|
|
15182
15191
|
children: children3,
|
|
15183
15192
|
variant,
|
|
@@ -15187,8 +15196,9 @@ var Quote = ({
|
|
|
15187
15196
|
className,
|
|
15188
15197
|
...rest
|
|
15189
15198
|
}) => {
|
|
15199
|
+
const QuoteElement = Component ?? "div";
|
|
15190
15200
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15191
|
-
|
|
15201
|
+
QuoteElement,
|
|
15192
15202
|
{
|
|
15193
15203
|
...rest,
|
|
15194
15204
|
className: cn(
|
|
@@ -15371,6 +15381,29 @@ var Typography = {
|
|
|
15371
15381
|
Code,
|
|
15372
15382
|
Overline
|
|
15373
15383
|
};
|
|
15384
|
+
function ListRoot({
|
|
15385
|
+
as: Component,
|
|
15386
|
+
className,
|
|
15387
|
+
...props
|
|
15388
|
+
}) {
|
|
15389
|
+
const Root = Component ?? "div";
|
|
15390
|
+
const semanticStyles = Component === "ul" ? "my-4 list-disc space-y-1 pl-6" : Component === "ol" ? "my-4 list-decimal space-y-1 pl-6" : void 0;
|
|
15391
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root, { ...props, className: cn("w-full", semanticStyles, className) });
|
|
15392
|
+
}
|
|
15393
|
+
function ListItemElement({
|
|
15394
|
+
as: Component,
|
|
15395
|
+
className,
|
|
15396
|
+
...props
|
|
15397
|
+
}) {
|
|
15398
|
+
const Item = Component ?? "div";
|
|
15399
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15400
|
+
Item,
|
|
15401
|
+
{
|
|
15402
|
+
...props,
|
|
15403
|
+
className: cn("min-w-0", Component === "li" && "pl-1", className)
|
|
15404
|
+
}
|
|
15405
|
+
);
|
|
15406
|
+
}
|
|
15374
15407
|
var ListItem = ({
|
|
15375
15408
|
content: content3,
|
|
15376
15409
|
TypographyComponent = /* @__PURE__ */ jsxRuntime.jsx(Paragraph, { level: 1 }),
|
|
@@ -15385,8 +15418,9 @@ var ListItem = ({
|
|
|
15385
15418
|
"."
|
|
15386
15419
|
] }) : bulletTypes[bulletType]);
|
|
15387
15420
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
15388
|
-
|
|
15421
|
+
ListItemElement,
|
|
15389
15422
|
{
|
|
15423
|
+
role: "listitem",
|
|
15390
15424
|
className: cn(
|
|
15391
15425
|
"flex gap-3",
|
|
15392
15426
|
align === "center" ? "items-center" : "items-baseline",
|
|
@@ -15404,7 +15438,7 @@ var ListItem = ({
|
|
|
15404
15438
|
children: bullet
|
|
15405
15439
|
}
|
|
15406
15440
|
),
|
|
15407
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 min-w-0", children: TypographyComponent ?
|
|
15441
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 min-w-0", children: TypographyComponent ? React26__default.default.cloneElement(
|
|
15408
15442
|
TypographyComponent,
|
|
15409
15443
|
{
|
|
15410
15444
|
className: cn(
|
|
@@ -15438,7 +15472,7 @@ function normalizeItem(item, defaultBulletType) {
|
|
|
15438
15472
|
bulletType: defaultBulletType
|
|
15439
15473
|
};
|
|
15440
15474
|
}
|
|
15441
|
-
if (
|
|
15475
|
+
if (React26__default.default.isValidElement(item)) {
|
|
15442
15476
|
return {
|
|
15443
15477
|
content: item,
|
|
15444
15478
|
bulletType: defaultBulletType
|
|
@@ -15462,13 +15496,12 @@ function List({
|
|
|
15462
15496
|
...rest
|
|
15463
15497
|
}) {
|
|
15464
15498
|
const isGrid = !!columns;
|
|
15465
|
-
const isOrdered = bulletType === "number";
|
|
15466
15499
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ...rest, className: cn("py-2", className), children: [
|
|
15467
15500
|
title && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-semibold mb-3", children: title }),
|
|
15468
15501
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
15469
|
-
|
|
15502
|
+
ListRoot,
|
|
15470
15503
|
{
|
|
15471
|
-
role:
|
|
15504
|
+
role: "list",
|
|
15472
15505
|
className: cn(
|
|
15473
15506
|
isGrid ? `grid ${gridCols[columns]}` : direction === "horizontal" ? "flex flex-row" : "flex flex-col",
|
|
15474
15507
|
gapMap[gap],
|
|
@@ -15898,7 +15931,7 @@ var Backdrop = ({ children: children3, styles }) => {
|
|
|
15898
15931
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15899
15932
|
"div",
|
|
15900
15933
|
{
|
|
15901
|
-
className:
|
|
15934
|
+
className: classNames77__default.default({
|
|
15902
15935
|
"bg-black/75 top-0 bottom-0 left-0 right-0 z-50 fixed inset-0 flex items-center justify-center overflow-hidden": true,
|
|
15903
15936
|
[`${styles}`]: styles
|
|
15904
15937
|
}),
|
|
@@ -16115,6 +16148,75 @@ function Spinner({
|
|
|
16115
16148
|
);
|
|
16116
16149
|
}
|
|
16117
16150
|
var Spinner_default = Spinner;
|
|
16151
|
+
function TableFrame({
|
|
16152
|
+
className,
|
|
16153
|
+
...props
|
|
16154
|
+
}) {
|
|
16155
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16156
|
+
"div",
|
|
16157
|
+
{
|
|
16158
|
+
...props,
|
|
16159
|
+
className: cn(
|
|
16160
|
+
"w-full overflow-x-auto border border-gray-200 dark:border-gray-700",
|
|
16161
|
+
className
|
|
16162
|
+
)
|
|
16163
|
+
}
|
|
16164
|
+
);
|
|
16165
|
+
}
|
|
16166
|
+
function TableElement({
|
|
16167
|
+
className,
|
|
16168
|
+
...props
|
|
16169
|
+
}) {
|
|
16170
|
+
return /* @__PURE__ */ jsxRuntime.jsx("table", { ...props, className: cn("w-full", className) });
|
|
16171
|
+
}
|
|
16172
|
+
function TableHead({
|
|
16173
|
+
className,
|
|
16174
|
+
...props
|
|
16175
|
+
}) {
|
|
16176
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16177
|
+
"thead",
|
|
16178
|
+
{
|
|
16179
|
+
...props,
|
|
16180
|
+
className: cn("bg-gray-100 dark:bg-gray-800", className)
|
|
16181
|
+
}
|
|
16182
|
+
);
|
|
16183
|
+
}
|
|
16184
|
+
function TableBody({
|
|
16185
|
+
className,
|
|
16186
|
+
...props
|
|
16187
|
+
}) {
|
|
16188
|
+
return /* @__PURE__ */ jsxRuntime.jsx("tbody", { ...props, className });
|
|
16189
|
+
}
|
|
16190
|
+
function TableRow({
|
|
16191
|
+
className,
|
|
16192
|
+
...props
|
|
16193
|
+
}) {
|
|
16194
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16195
|
+
"tr",
|
|
16196
|
+
{
|
|
16197
|
+
...props,
|
|
16198
|
+
className: cn("border-t border-gray-200 dark:border-gray-700", className)
|
|
16199
|
+
}
|
|
16200
|
+
);
|
|
16201
|
+
}
|
|
16202
|
+
function TableHeaderCell({
|
|
16203
|
+
className,
|
|
16204
|
+
...props
|
|
16205
|
+
}) {
|
|
16206
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16207
|
+
"th",
|
|
16208
|
+
{
|
|
16209
|
+
...props,
|
|
16210
|
+
className: cn("px-4 py-3 text-left text-xs font-semibold", className)
|
|
16211
|
+
}
|
|
16212
|
+
);
|
|
16213
|
+
}
|
|
16214
|
+
function TableCell({
|
|
16215
|
+
className,
|
|
16216
|
+
...props
|
|
16217
|
+
}) {
|
|
16218
|
+
return /* @__PURE__ */ jsxRuntime.jsx("td", { ...props, className: cn("px-4 py-2", className) });
|
|
16219
|
+
}
|
|
16118
16220
|
function Table({
|
|
16119
16221
|
title,
|
|
16120
16222
|
columns,
|
|
@@ -16123,8 +16225,8 @@ function Table({
|
|
|
16123
16225
|
}) {
|
|
16124
16226
|
const eui = useEUIConfig();
|
|
16125
16227
|
const resolvedShape = shape ?? eui?.config?.global?.shape ?? "square";
|
|
16126
|
-
const [sortKey, setSortKey] =
|
|
16127
|
-
const [sortOrder, setSortOrder] =
|
|
16228
|
+
const [sortKey, setSortKey] = React26.useState(null);
|
|
16229
|
+
const [sortOrder, setSortOrder] = React26.useState("asc");
|
|
16128
16230
|
const toggleSort = (key) => {
|
|
16129
16231
|
if (sortKey === key) {
|
|
16130
16232
|
setSortOrder((prev) => prev === "asc" ? "desc" : "asc");
|
|
@@ -16133,7 +16235,7 @@ function Table({
|
|
|
16133
16235
|
setSortOrder("asc");
|
|
16134
16236
|
}
|
|
16135
16237
|
};
|
|
16136
|
-
const sortedData =
|
|
16238
|
+
const sortedData = React26.useMemo(() => {
|
|
16137
16239
|
if (!sortKey) return data;
|
|
16138
16240
|
return [...data].sort((a2, b) => {
|
|
16139
16241
|
const aVal = a2[sortKey];
|
|
@@ -16147,58 +16249,49 @@ function Table({
|
|
|
16147
16249
|
}, [data, sortKey, sortOrder]);
|
|
16148
16250
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full", children: [
|
|
16149
16251
|
title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-sm font-semibold mb-3 font-poppins", children: title }),
|
|
16150
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
16151
|
-
"
|
|
16152
|
-
|
|
16153
|
-
|
|
16154
|
-
|
|
16155
|
-
|
|
16156
|
-
|
|
16157
|
-
|
|
16158
|
-
|
|
16159
|
-
|
|
16160
|
-
|
|
16161
|
-
|
|
16162
|
-
|
|
16163
|
-
|
|
16164
|
-
|
|
16165
|
-
|
|
16166
|
-
|
|
16167
|
-
|
|
16168
|
-
|
|
16169
|
-
|
|
16170
|
-
|
|
16171
|
-
|
|
16172
|
-
|
|
16173
|
-
|
|
16174
|
-
|
|
16175
|
-
|
|
16176
|
-
|
|
16177
|
-
|
|
16178
|
-
|
|
16179
|
-
|
|
16180
|
-
|
|
16181
|
-
|
|
16182
|
-
|
|
16183
|
-
|
|
16184
|
-
|
|
16185
|
-
|
|
16186
|
-
|
|
16187
|
-
|
|
16188
|
-
|
|
16189
|
-
|
|
16190
|
-
|
|
16191
|
-
|
|
16192
|
-
|
|
16193
|
-
String(col.key)
|
|
16194
|
-
);
|
|
16195
|
-
})
|
|
16196
|
-
},
|
|
16197
|
-
rowIndex
|
|
16198
|
-
)) })
|
|
16199
|
-
] })
|
|
16200
|
-
}
|
|
16201
|
-
)
|
|
16252
|
+
/* @__PURE__ */ jsxRuntime.jsx(TableFrame, { className: cn(shapes[resolvedShape]), children: /* @__PURE__ */ jsxRuntime.jsxs(TableElement, { children: [
|
|
16253
|
+
/* @__PURE__ */ jsxRuntime.jsx(TableHead, { children: /* @__PURE__ */ jsxRuntime.jsx(TableRow, { className: "border-t-0", children: columns.map((col) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
16254
|
+
TableHeaderCell,
|
|
16255
|
+
{
|
|
16256
|
+
onClick: () => col.sortable && toggleSort(String(col.key)),
|
|
16257
|
+
className: cn(
|
|
16258
|
+
"text-gray-700 dark:text-gray-200",
|
|
16259
|
+
col.sortable && "cursor-pointer select-none hover:bg-gray-200 dark:hover:bg-gray-700",
|
|
16260
|
+
sortKey === col.key && "bg-gray-300 dark:bg-gray-600"
|
|
16261
|
+
),
|
|
16262
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1", children: [
|
|
16263
|
+
col.header,
|
|
16264
|
+
col.sortable && sortKey === col.key && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs", children: sortOrder === "asc" ? "\u25B2" : "\u25BC" })
|
|
16265
|
+
] })
|
|
16266
|
+
},
|
|
16267
|
+
String(col.key)
|
|
16268
|
+
)) }) }),
|
|
16269
|
+
/* @__PURE__ */ jsxRuntime.jsx(TableBody, { children: sortedData.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(TableRow, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
16270
|
+
TableCell,
|
|
16271
|
+
{
|
|
16272
|
+
colSpan: columns.length,
|
|
16273
|
+
className: "py-4 text-center text-gray-500",
|
|
16274
|
+
children: "No data available"
|
|
16275
|
+
}
|
|
16276
|
+
) }) : sortedData.map((row, rowIndex) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
16277
|
+
TableRow,
|
|
16278
|
+
{
|
|
16279
|
+
className: "odd:eui-bg-sm even:eui-bg-md hover:bg-gray-50 dark:hover:bg-gray-900",
|
|
16280
|
+
children: columns.map((col) => {
|
|
16281
|
+
const value = col.key in row ? row[col.key] : void 0;
|
|
16282
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16283
|
+
TableCell,
|
|
16284
|
+
{
|
|
16285
|
+
className: "py-1 text-gray-800 dark:text-gray-400",
|
|
16286
|
+
children: col.render ? col.render(value, row) : String(value ?? "-")
|
|
16287
|
+
},
|
|
16288
|
+
String(col.key)
|
|
16289
|
+
);
|
|
16290
|
+
})
|
|
16291
|
+
},
|
|
16292
|
+
rowIndex
|
|
16293
|
+
)) })
|
|
16294
|
+
] }) })
|
|
16202
16295
|
] });
|
|
16203
16296
|
}
|
|
16204
16297
|
var Table_default = Table;
|
|
@@ -16224,8 +16317,8 @@ function Tooltip6({
|
|
|
16224
16317
|
className,
|
|
16225
16318
|
...rest
|
|
16226
16319
|
}) {
|
|
16227
|
-
const [pos, setPos] =
|
|
16228
|
-
|
|
16320
|
+
const [pos, setPos] = React26.useState({ x: 0, y: 0 });
|
|
16321
|
+
React26.useEffect(() => {
|
|
16229
16322
|
if (!show) return;
|
|
16230
16323
|
const handleMove = (e) => {
|
|
16231
16324
|
setPos({ x: e.clientX + offsetX, y: e.clientY + offsetY });
|
|
@@ -16354,8 +16447,8 @@ function CloudinaryVideo({
|
|
|
16354
16447
|
}
|
|
16355
16448
|
var CloudinaryVideo_default = CloudinaryVideo;
|
|
16356
16449
|
var FormObserver = ({ formik, onChange }) => {
|
|
16357
|
-
const prevValuesRef =
|
|
16358
|
-
|
|
16450
|
+
const prevValuesRef = React26.useRef(formik.values);
|
|
16451
|
+
React26.useEffect(() => {
|
|
16359
16452
|
if (!onChange) return;
|
|
16360
16453
|
const currentValues = formik.values;
|
|
16361
16454
|
const prevValues = prevValuesRef.current;
|
|
@@ -16374,7 +16467,7 @@ var FormObserver = ({ formik, onChange }) => {
|
|
|
16374
16467
|
};
|
|
16375
16468
|
var FormObserver_default = FormObserver;
|
|
16376
16469
|
var DirtyObserver = ({ formik, onDirtyChange }) => {
|
|
16377
|
-
|
|
16470
|
+
React26.useEffect(() => {
|
|
16378
16471
|
if (onDirtyChange) {
|
|
16379
16472
|
onDirtyChange(formik.dirty);
|
|
16380
16473
|
}
|
|
@@ -16383,7 +16476,7 @@ var DirtyObserver = ({ formik, onDirtyChange }) => {
|
|
|
16383
16476
|
};
|
|
16384
16477
|
var DirtyObserver_default = DirtyObserver;
|
|
16385
16478
|
var UnsavedChangesGuard = ({ formik, enabled }) => {
|
|
16386
|
-
|
|
16479
|
+
React26.useEffect(() => {
|
|
16387
16480
|
if (!enabled) return;
|
|
16388
16481
|
const handleBeforeUnload = (e) => {
|
|
16389
16482
|
if (!formik.dirty) return;
|
|
@@ -16422,7 +16515,7 @@ var Form = ({
|
|
|
16422
16515
|
/* @__PURE__ */ jsxRuntime.jsx(UnsavedChangesGuard_default, { formik: formik$1, enabled: warnOnUnsavedChanges }),
|
|
16423
16516
|
/* @__PURE__ */ jsxRuntime.jsx(DirtyObserver_default, { formik: formik$1, onDirtyChange }),
|
|
16424
16517
|
/* @__PURE__ */ jsxRuntime.jsx(FormObserver_default, { formik: formik$1, onChange }),
|
|
16425
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
16518
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames77__default.default(styles), children: children3 })
|
|
16426
16519
|
] })
|
|
16427
16520
|
}
|
|
16428
16521
|
);
|
|
@@ -16671,17 +16764,17 @@ function useToastTimer({
|
|
|
16671
16764
|
pauseOnHover,
|
|
16672
16765
|
onTimeout
|
|
16673
16766
|
}) {
|
|
16674
|
-
const [isPaused, setIsPaused] =
|
|
16675
|
-
const timeoutRef =
|
|
16676
|
-
const startedAtRef =
|
|
16677
|
-
const remainingRef =
|
|
16678
|
-
const clearTimer =
|
|
16767
|
+
const [isPaused, setIsPaused] = React26.useState(false);
|
|
16768
|
+
const timeoutRef = React26.useRef(null);
|
|
16769
|
+
const startedAtRef = React26.useRef(0);
|
|
16770
|
+
const remainingRef = React26.useRef(typeof duration === "number" ? duration : 0);
|
|
16771
|
+
const clearTimer = React26.useCallback(() => {
|
|
16679
16772
|
if (timeoutRef.current !== null) {
|
|
16680
16773
|
window.clearTimeout(timeoutRef.current);
|
|
16681
16774
|
timeoutRef.current = null;
|
|
16682
16775
|
}
|
|
16683
16776
|
}, []);
|
|
16684
|
-
const startTimer =
|
|
16777
|
+
const startTimer = React26.useCallback(() => {
|
|
16685
16778
|
if (typeof duration !== "number" || duration <= 0) {
|
|
16686
16779
|
return;
|
|
16687
16780
|
}
|
|
@@ -16691,12 +16784,12 @@ function useToastTimer({
|
|
|
16691
16784
|
onTimeout();
|
|
16692
16785
|
}, remainingRef.current);
|
|
16693
16786
|
}, [clearTimer, duration, onTimeout]);
|
|
16694
|
-
|
|
16787
|
+
React26.useEffect(() => {
|
|
16695
16788
|
remainingRef.current = typeof duration === "number" ? duration : 0;
|
|
16696
16789
|
startTimer();
|
|
16697
16790
|
return clearTimer;
|
|
16698
16791
|
}, [clearTimer, duration, startTimer]);
|
|
16699
|
-
const pauseTimer =
|
|
16792
|
+
const pauseTimer = React26.useCallback(() => {
|
|
16700
16793
|
if (!pauseOnHover || typeof duration !== "number") {
|
|
16701
16794
|
return;
|
|
16702
16795
|
}
|
|
@@ -16707,14 +16800,14 @@ function useToastTimer({
|
|
|
16707
16800
|
);
|
|
16708
16801
|
setIsPaused(true);
|
|
16709
16802
|
}, [clearTimer, duration, pauseOnHover]);
|
|
16710
|
-
const resumeTimer =
|
|
16803
|
+
const resumeTimer = React26.useCallback(() => {
|
|
16711
16804
|
if (!pauseOnHover || typeof duration !== "number") {
|
|
16712
16805
|
return;
|
|
16713
16806
|
}
|
|
16714
16807
|
setIsPaused(false);
|
|
16715
16808
|
startTimer();
|
|
16716
16809
|
}, [duration, pauseOnHover, startTimer]);
|
|
16717
|
-
const progressStyle =
|
|
16810
|
+
const progressStyle = React26.useMemo(() => {
|
|
16718
16811
|
if (typeof duration !== "number") {
|
|
16719
16812
|
return void 0;
|
|
16720
16813
|
}
|
|
@@ -16755,7 +16848,7 @@ function ToastItem({
|
|
|
16755
16848
|
const duration = item.duration ?? autoClose;
|
|
16756
16849
|
const variant = toastStatusVariantMap[item.status];
|
|
16757
16850
|
const statusStyles = toastVariantStyles[variant];
|
|
16758
|
-
const dismiss =
|
|
16851
|
+
const dismiss = React26.useCallback(() => {
|
|
16759
16852
|
toastStore.remove(item.id);
|
|
16760
16853
|
}, [item.id]);
|
|
16761
16854
|
const { pauseTimer, resumeTimer, progressStyle } = useToastTimer({
|
|
@@ -16834,16 +16927,16 @@ var Toast = ({
|
|
|
16834
16927
|
...rest
|
|
16835
16928
|
}) => {
|
|
16836
16929
|
const eui = useEUIConfig();
|
|
16837
|
-
const [items, setItems] =
|
|
16930
|
+
const [items, setItems] = React26.useState(() => {
|
|
16838
16931
|
return toastStore.getSnapshot();
|
|
16839
16932
|
});
|
|
16840
|
-
|
|
16933
|
+
React26.useEffect(() => {
|
|
16841
16934
|
return toastStore.subscribe(setItems);
|
|
16842
16935
|
}, []);
|
|
16843
|
-
const safeShape =
|
|
16936
|
+
const safeShape = React26.useMemo(() => {
|
|
16844
16937
|
return normalizeToastShape(shape ?? eui?.config?.global?.shape);
|
|
16845
16938
|
}, [shape, eui?.config?.global?.shape]);
|
|
16846
|
-
const visibleItems =
|
|
16939
|
+
const visibleItems = React26.useMemo(() => {
|
|
16847
16940
|
const orderedItems = newestOnTop ? [...items].reverse() : [...items];
|
|
16848
16941
|
return orderedItems.slice(0, maxToasts);
|
|
16849
16942
|
}, [items, maxToasts, newestOnTop]);
|
|
@@ -16939,7 +17032,7 @@ function FormResponse({
|
|
|
16939
17032
|
return /* @__PURE__ */ jsxRuntime.jsx(Transition.TransitionDropdown, { visibility: text10 ? true : false, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
16940
17033
|
"div",
|
|
16941
17034
|
{
|
|
16942
|
-
className:
|
|
17035
|
+
className: classNames77__default.default({
|
|
16943
17036
|
"font-poppins font-light text-sm": true,
|
|
16944
17037
|
[`${variantsLite[variant]}`]: variant,
|
|
16945
17038
|
[`${shapes[shape]}`]: shape,
|
|
@@ -17006,17 +17099,17 @@ function YoutubeVideo({
|
|
|
17006
17099
|
) });
|
|
17007
17100
|
}
|
|
17008
17101
|
var YoutubeVideo_default = YoutubeVideo;
|
|
17009
|
-
var ThemeContext =
|
|
17102
|
+
var ThemeContext = React26.createContext(
|
|
17010
17103
|
void 0
|
|
17011
17104
|
);
|
|
17012
17105
|
var ThemeProvider = ({
|
|
17013
17106
|
defaultTheme = "dark",
|
|
17014
17107
|
children: children3
|
|
17015
17108
|
}) => {
|
|
17016
|
-
const [theme, setTheme] =
|
|
17109
|
+
const [theme, setTheme] = React26.useState(() => {
|
|
17017
17110
|
return localStorage.getItem("theme") || defaultTheme;
|
|
17018
17111
|
});
|
|
17019
|
-
|
|
17112
|
+
React26.useEffect(() => {
|
|
17020
17113
|
if (theme === "dark") {
|
|
17021
17114
|
document.documentElement.classList.add("dark");
|
|
17022
17115
|
} else {
|
|
@@ -17030,7 +17123,7 @@ var ThemeProvider = ({
|
|
|
17030
17123
|
return /* @__PURE__ */ jsxRuntime.jsx(ThemeContext.Provider, { value: { theme, setTheme, toggleTheme }, children: children3 });
|
|
17031
17124
|
};
|
|
17032
17125
|
var ThemeSwitch = () => {
|
|
17033
|
-
const themeContext =
|
|
17126
|
+
const themeContext = React26.useContext(ThemeContext);
|
|
17034
17127
|
if (!themeContext) return null;
|
|
17035
17128
|
const { theme, toggleTheme } = themeContext;
|
|
17036
17129
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -17056,7 +17149,7 @@ var ThemeSwitch = () => {
|
|
|
17056
17149
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17057
17150
|
"div",
|
|
17058
17151
|
{
|
|
17059
|
-
className:
|
|
17152
|
+
className: classNames77__default.default(
|
|
17060
17153
|
"w-6 h-6 bg-white dark:bg-gray-600 rounded-full shadow-md transition-transform duration-300",
|
|
17061
17154
|
theme === "dark" ? "translate-x-8" : "translate-x-0"
|
|
17062
17155
|
)
|
|
@@ -17092,7 +17185,7 @@ var ShapeSwitch = () => {
|
|
|
17092
17185
|
|
|
17093
17186
|
// src/hooks/theme/useCurrentTheme.ts
|
|
17094
17187
|
var useCurrentTheme = () => {
|
|
17095
|
-
const context =
|
|
17188
|
+
const context = React26.useContext(ThemeContext);
|
|
17096
17189
|
if (!context) {
|
|
17097
17190
|
throw new Error("useCurrentTheme must be used within a ThemeProvider");
|
|
17098
17191
|
}
|
|
@@ -28435,7 +28528,7 @@ function WorldMap({
|
|
|
28435
28528
|
}
|
|
28436
28529
|
};
|
|
28437
28530
|
const mode = isDarkMode ? mapStyles.dark : mapStyles.light;
|
|
28438
|
-
const resolvedData =
|
|
28531
|
+
const resolvedData = React26.useMemo(() => {
|
|
28439
28532
|
return data.map((item) => {
|
|
28440
28533
|
const c3 = COUNTRIES.find((x3) => x3.code === item.code);
|
|
28441
28534
|
if (!c3) return null;
|
|
@@ -28447,8 +28540,8 @@ function WorldMap({
|
|
|
28447
28540
|
}).filter(Boolean);
|
|
28448
28541
|
}, [data]);
|
|
28449
28542
|
const maxValue = resolvedData.length > 0 ? Math.max(...resolvedData.map((d) => d.value)) : 0;
|
|
28450
|
-
const [showTooltip, setShowTooltip] =
|
|
28451
|
-
const [tooltipContent, setTooltipContent] =
|
|
28543
|
+
const [showTooltip, setShowTooltip] = React26.useState(false);
|
|
28544
|
+
const [tooltipContent, setTooltipContent] = React26.useState(null);
|
|
28452
28545
|
const handleMouseMove = (_e, point5) => {
|
|
28453
28546
|
setTooltipContent(
|
|
28454
28547
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
@@ -28534,7 +28627,7 @@ function Button({
|
|
|
28534
28627
|
}) {
|
|
28535
28628
|
const eui = useEUIConfig();
|
|
28536
28629
|
const resolvedShape = shape ?? eui?.config?.global?.shape ?? "square";
|
|
28537
|
-
const btnRef =
|
|
28630
|
+
const btnRef = React26.useRef(null);
|
|
28538
28631
|
const variantStyles = resolveAppearanceStyles({
|
|
28539
28632
|
appearance,
|
|
28540
28633
|
variant,
|
|
@@ -28604,7 +28697,7 @@ function InputResponse({
|
|
|
28604
28697
|
return /* @__PURE__ */ jsxRuntime.jsx(Transition.TransitionDropdown, { visibility, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
28605
28698
|
"div",
|
|
28606
28699
|
{
|
|
28607
|
-
className:
|
|
28700
|
+
className: classNames77__default.default({
|
|
28608
28701
|
"font-medium text-sm py-1 px-2": true,
|
|
28609
28702
|
[`${textVariants[variant]}`]: variant,
|
|
28610
28703
|
"transition-all ease-in-out": true,
|
|
@@ -28619,7 +28712,7 @@ function InputLabel({ text: text10, children: children3, styles }) {
|
|
|
28619
28712
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
28620
28713
|
"label",
|
|
28621
28714
|
{
|
|
28622
|
-
className:
|
|
28715
|
+
className: classNames77__default.default({
|
|
28623
28716
|
"px-0 eui-text-sm text-[13.5px] pointer-events-none select-none": true,
|
|
28624
28717
|
"transition-all ease-in-out": true,
|
|
28625
28718
|
[`${styles}`]: styles
|
|
@@ -28635,7 +28728,7 @@ var toggleType = (visibility) => {
|
|
|
28635
28728
|
var PasswordVisibilityToggler = ({
|
|
28636
28729
|
onClick
|
|
28637
28730
|
}) => {
|
|
28638
|
-
const [passwordVisibility, setPasswordVisibilty] =
|
|
28731
|
+
const [passwordVisibility, setPasswordVisibilty] = React26.useState(false);
|
|
28639
28732
|
const handleOnClick = (visibility) => {
|
|
28640
28733
|
onClick(visibility);
|
|
28641
28734
|
setPasswordVisibilty(visibility);
|
|
@@ -28660,7 +28753,7 @@ var Input = ({
|
|
|
28660
28753
|
const eui = useEUIConfig();
|
|
28661
28754
|
const resolvedShape = shape ?? eui?.config?.global?.shape ?? "square";
|
|
28662
28755
|
const [field, meta] = formik.useField(props);
|
|
28663
|
-
const [passwordVisibility, setPasswordVisibilty] =
|
|
28756
|
+
const [passwordVisibility, setPasswordVisibilty] = React26.useState(false);
|
|
28664
28757
|
const inputType = type2 === "password" ? toggleType(passwordVisibility) : type2;
|
|
28665
28758
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative w-full", children: [
|
|
28666
28759
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -28671,7 +28764,7 @@ var Input = ({
|
|
|
28671
28764
|
...field,
|
|
28672
28765
|
...props,
|
|
28673
28766
|
placeholder,
|
|
28674
|
-
className:
|
|
28767
|
+
className: classNames77__default.default({
|
|
28675
28768
|
"border peer w-full bg-eui-primary-300/10 pt-5 px-3 pb-2 text-md eui-text-md placeholder-transparent placeholder-shown:p-3 focus:outline-none h-[50px]": true,
|
|
28676
28769
|
"border-eui-primary-400 focus:border-eui-secondary-500": !(meta.touched && meta.error),
|
|
28677
28770
|
"border-eui-danger-500": meta.touched && meta.error,
|
|
@@ -28705,7 +28798,7 @@ var InputFile = ({
|
|
|
28705
28798
|
styles,
|
|
28706
28799
|
...props
|
|
28707
28800
|
}) => {
|
|
28708
|
-
const fileInputRef =
|
|
28801
|
+
const fileInputRef = React26.useRef(null);
|
|
28709
28802
|
const [field, meta, helpers] = formik.useField(props);
|
|
28710
28803
|
const handleFileChange = (e) => {
|
|
28711
28804
|
const file = e.target.files?.[0] || null;
|
|
@@ -28716,7 +28809,7 @@ var InputFile = ({
|
|
|
28716
28809
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
28717
28810
|
"div",
|
|
28718
28811
|
{
|
|
28719
|
-
className:
|
|
28812
|
+
className: classNames77__default.default(
|
|
28720
28813
|
"border rounded-sm bg-eui-primary-300/10 px-3 pt-3 text-md text-eui-dark-100 cursor-pointer h-[50px] flex items-center",
|
|
28721
28814
|
{
|
|
28722
28815
|
"border-eui-primary-400 focus:border-eui-secondary-500": !(meta.touched && meta.error),
|
|
@@ -28742,7 +28835,7 @@ var InputFile = ({
|
|
|
28742
28835
|
InputLabel_default,
|
|
28743
28836
|
{
|
|
28744
28837
|
text: placeholder,
|
|
28745
|
-
styles:
|
|
28838
|
+
styles: classNames77__default.default({
|
|
28746
28839
|
"absolute left-2 eui-text-sm peer-placeholder-shown:text-base peer-placeholder-shown:top-3 pointer-events-none": true,
|
|
28747
28840
|
"top-[0.7px]": showFloatingLabel,
|
|
28748
28841
|
"top-[13px] text-base": !showFloatingLabel
|
|
@@ -28795,7 +28888,7 @@ var InputList = ({ name: name2, placeholder, shape }) => {
|
|
|
28795
28888
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-2", children: /* @__PURE__ */ jsxRuntime.jsx(formik.FieldArray, { name: name2, children: ({ push: push2, remove: remove2, move }) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
28796
28889
|
"div",
|
|
28797
28890
|
{
|
|
28798
|
-
className:
|
|
28891
|
+
className: classNames77__default.default(
|
|
28799
28892
|
"flex w-full flex-col space-y-2 bg-eui-primary-300/10",
|
|
28800
28893
|
shapes[resolvedShape]
|
|
28801
28894
|
),
|
|
@@ -28824,7 +28917,7 @@ var InputList = ({ name: name2, placeholder, shape }) => {
|
|
|
28824
28917
|
ref: provided2.innerRef,
|
|
28825
28918
|
...draggableProps,
|
|
28826
28919
|
style: draggableStyle,
|
|
28827
|
-
className:
|
|
28920
|
+
className: classNames77__default.default(
|
|
28828
28921
|
"flex items-center space-x-2 bg-eui-primary-300/10 p-2",
|
|
28829
28922
|
shapes[resolvedShape]
|
|
28830
28923
|
),
|
|
@@ -28835,7 +28928,7 @@ var InputList = ({ name: name2, placeholder, shape }) => {
|
|
|
28835
28928
|
{
|
|
28836
28929
|
name: `${name2}[${index3}]`,
|
|
28837
28930
|
placeholder: `Item ${index3 + 1}`,
|
|
28838
|
-
className:
|
|
28931
|
+
className: classNames77__default.default(
|
|
28839
28932
|
"peer h-[50px] w-full border bg-eui-primary-300/10 px-3 pb-2 pt-5 text-md placeholder-transparent placeholder-shown:p-3 focus:outline-none eui-text-md",
|
|
28840
28933
|
shapes[resolvedShape],
|
|
28841
28934
|
hasItemError ? "border-eui-danger-500" : "border-eui-primary-400 focus:border-eui-secondary-500"
|
|
@@ -28931,7 +29024,7 @@ var InputListGroup = ({
|
|
|
28931
29024
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
28932
29025
|
"div",
|
|
28933
29026
|
{
|
|
28934
|
-
className:
|
|
29027
|
+
className: classNames77__default.default(
|
|
28935
29028
|
"flex flex-col gap-2 bg-eui-primary-300/10 p-3",
|
|
28936
29029
|
shapes[resolvedShape]
|
|
28937
29030
|
),
|
|
@@ -28943,7 +29036,7 @@ var InputListGroup = ({
|
|
|
28943
29036
|
{
|
|
28944
29037
|
name: `${name2}[${groupIndex}].name`,
|
|
28945
29038
|
placeholder: `Group ${groupIndex + 1}`,
|
|
28946
|
-
className:
|
|
29039
|
+
className: classNames77__default.default(
|
|
28947
29040
|
"h-[40px] w-full border bg-eui-primary-300/10 px-3 py-2 text-md focus:outline-none",
|
|
28948
29041
|
shapes[resolvedShape],
|
|
28949
29042
|
"border-eui-primary-400 focus:border-eui-secondary-500"
|
|
@@ -28974,7 +29067,7 @@ var InputListGroup = ({
|
|
|
28974
29067
|
{
|
|
28975
29068
|
ref: provided.innerRef,
|
|
28976
29069
|
...provided.droppableProps,
|
|
28977
|
-
className:
|
|
29070
|
+
className: classNames77__default.default(
|
|
28978
29071
|
"space-y-2 bg-eui-primary-300/10 p-2",
|
|
28979
29072
|
shapes[resolvedShape]
|
|
28980
29073
|
),
|
|
@@ -28994,7 +29087,7 @@ var InputListGroup = ({
|
|
|
28994
29087
|
ref: provided2.innerRef,
|
|
28995
29088
|
...draggableProps,
|
|
28996
29089
|
style: draggableStyle,
|
|
28997
|
-
className:
|
|
29090
|
+
className: classNames77__default.default(
|
|
28998
29091
|
"flex items-center gap-2 bg-eui-primary-300/10 p-2",
|
|
28999
29092
|
shapes[resolvedShape]
|
|
29000
29093
|
),
|
|
@@ -29005,7 +29098,7 @@ var InputListGroup = ({
|
|
|
29005
29098
|
{
|
|
29006
29099
|
name: `${itemsFieldName}[${itemIndex}]`,
|
|
29007
29100
|
placeholder: `Item ${itemIndex + 1}`,
|
|
29008
|
-
className:
|
|
29101
|
+
className: classNames77__default.default(
|
|
29009
29102
|
"h-[40px] w-full border bg-eui-primary-300/10 px-3 py-2 text-md focus:outline-none",
|
|
29010
29103
|
shapes[resolvedShape],
|
|
29011
29104
|
"border-eui-primary-400 focus:border-eui-secondary-500"
|
|
@@ -29219,7 +29312,7 @@ var DateSelector = ({
|
|
|
29219
29312
|
...field,
|
|
29220
29313
|
...props,
|
|
29221
29314
|
placeholder,
|
|
29222
|
-
className:
|
|
29315
|
+
className: classNames77__default.default({
|
|
29223
29316
|
"border border-eui-primary-400 peer w-full bg-eui-primary-300/10 pt-5 px-3 pb-2 text-md eui-text-md placeholder-transparent placeholder-shown:p-3 focus:border-eui-secondary-500 focus:outline-none h-[50px]": true,
|
|
29224
29317
|
"border-eui-danger-500": meta.touched && meta.error,
|
|
29225
29318
|
"transition-all ease-in-out": true,
|
|
@@ -29245,7 +29338,7 @@ function ImageView({ imageUrl, secure = true, alt = "image" }) {
|
|
|
29245
29338
|
) }) });
|
|
29246
29339
|
}
|
|
29247
29340
|
var ImageView_default = ImageView;
|
|
29248
|
-
var ImageInput =
|
|
29341
|
+
var ImageInput = React26.forwardRef(
|
|
29249
29342
|
({
|
|
29250
29343
|
title = "Upload Image",
|
|
29251
29344
|
uploadDir = "eg-frontend-admin-temp",
|
|
@@ -29257,10 +29350,10 @@ var ImageInput = React27.forwardRef(
|
|
|
29257
29350
|
const [field, meta, helpers] = formik.useField(props);
|
|
29258
29351
|
const { value: imageUrl } = field;
|
|
29259
29352
|
const { setValue } = helpers;
|
|
29260
|
-
const [image3, setImage] =
|
|
29261
|
-
const [url, setUrl] =
|
|
29262
|
-
const [loading, setLoading] =
|
|
29263
|
-
const [preview, setPreview] =
|
|
29353
|
+
const [image3, setImage] = React26.useState(null);
|
|
29354
|
+
const [url, setUrl] = React26.useState(imageUrl);
|
|
29355
|
+
const [loading, setLoading] = React26.useState(false);
|
|
29356
|
+
const [preview, setPreview] = React26.useState(null);
|
|
29264
29357
|
const uploadImage = async () => {
|
|
29265
29358
|
if (!image3) return;
|
|
29266
29359
|
setLoading(true);
|
|
@@ -29306,10 +29399,10 @@ var ImageInput = React27.forwardRef(
|
|
|
29306
29399
|
if (!disableSetValue) setValue("");
|
|
29307
29400
|
setLoading(false);
|
|
29308
29401
|
};
|
|
29309
|
-
|
|
29402
|
+
React26.useImperativeHandle(ref, () => ({
|
|
29310
29403
|
handleResetClick
|
|
29311
29404
|
}));
|
|
29312
|
-
|
|
29405
|
+
React26.useEffect(() => {
|
|
29313
29406
|
if (!disableSetValue) setValue(url);
|
|
29314
29407
|
}, [url, setValue, disableSetValue]);
|
|
29315
29408
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full", children: [
|
|
@@ -29328,7 +29421,7 @@ var ImageInput = React27.forwardRef(
|
|
|
29328
29421
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
29329
29422
|
"label",
|
|
29330
29423
|
{
|
|
29331
|
-
className:
|
|
29424
|
+
className: classNames77__default.default({
|
|
29332
29425
|
"border-2 border-dashed border-gray-700 bg-gray-900 h-[200px] w-[300px] flex flex-col gap-2 items-center justify-center group": true,
|
|
29333
29426
|
"hover:cursor-pointer hover:border-solid hover:border-gray-600 hover:bg-gray-900/80": true,
|
|
29334
29427
|
"transition-all ease-in-out duration-150": true
|
|
@@ -29394,14 +29487,14 @@ function MultiImageInput({
|
|
|
29394
29487
|
const [field, meta, helpers] = formik.useField(props);
|
|
29395
29488
|
const { value: imageUrls } = field;
|
|
29396
29489
|
const { setValue } = helpers;
|
|
29397
|
-
const imageInputRef =
|
|
29490
|
+
const imageInputRef = React26.useRef(null);
|
|
29398
29491
|
const onValueChanged = (url) => {
|
|
29399
29492
|
setValue([...imageUrls, url]);
|
|
29400
29493
|
if (imageInputRef.current) {
|
|
29401
29494
|
imageInputRef.current.handleResetClick();
|
|
29402
29495
|
}
|
|
29403
29496
|
};
|
|
29404
|
-
|
|
29497
|
+
React26.useEffect(() => {
|
|
29405
29498
|
}, [imageUrls]);
|
|
29406
29499
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
29407
29500
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row flex-wrap gap-5 w-ful", children: [
|
|
@@ -29445,7 +29538,7 @@ function Radio({
|
|
|
29445
29538
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
29446
29539
|
"div",
|
|
29447
29540
|
{
|
|
29448
|
-
className:
|
|
29541
|
+
className: classNames77__default.default({
|
|
29449
29542
|
"flex flex-row gap-2 items-center mx-1 my-2": true
|
|
29450
29543
|
}),
|
|
29451
29544
|
children: [
|
|
@@ -29458,7 +29551,7 @@ function Radio({
|
|
|
29458
29551
|
...props,
|
|
29459
29552
|
value: option.value,
|
|
29460
29553
|
checked: field2.value === option.value,
|
|
29461
|
-
className:
|
|
29554
|
+
className: classNames77__default.default({
|
|
29462
29555
|
"appearance-none w-4 h-4 border-2 border-eui-primary-400 rounded-full cursor-pointer transition-all duration-300": true,
|
|
29463
29556
|
// base radio button styles
|
|
29464
29557
|
"checked:bg-eui-secondary-700 checked:border-eui-primary-400": field2.value === option.value
|
|
@@ -29470,7 +29563,7 @@ function Radio({
|
|
|
29470
29563
|
"label",
|
|
29471
29564
|
{
|
|
29472
29565
|
htmlFor: option.value,
|
|
29473
|
-
className:
|
|
29566
|
+
className: classNames77__default.default({
|
|
29474
29567
|
"eui-text-md text-sm": true
|
|
29475
29568
|
}),
|
|
29476
29569
|
children: option.label
|
|
@@ -29501,9 +29594,9 @@ function StarRatingInput({
|
|
|
29501
29594
|
const { name: name2 } = props;
|
|
29502
29595
|
const [field, meta] = formik.useField(props);
|
|
29503
29596
|
const formikContext = formik.useFormikContext();
|
|
29504
|
-
const [rating, setRating] =
|
|
29505
|
-
const [hover, setHover] =
|
|
29506
|
-
|
|
29597
|
+
const [rating, setRating] = React26.useState(Number(field.value) || 0);
|
|
29598
|
+
const [hover, setHover] = React26.useState(null);
|
|
29599
|
+
React26.useEffect(() => {
|
|
29507
29600
|
setRating(Number(field.value));
|
|
29508
29601
|
}, [field.value]);
|
|
29509
29602
|
const handleOnClick = (index3) => {
|
|
@@ -29513,7 +29606,7 @@ function StarRatingInput({
|
|
|
29513
29606
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
29514
29607
|
"div",
|
|
29515
29608
|
{
|
|
29516
|
-
className:
|
|
29609
|
+
className: classNames77__default.default({
|
|
29517
29610
|
"inline-flex gap-[4px] text-[20px]": true,
|
|
29518
29611
|
[`${styles}`]: styles
|
|
29519
29612
|
}),
|
|
@@ -29526,7 +29619,7 @@ function StarRatingInput({
|
|
|
29526
29619
|
onClick: () => handleOnClick(index3),
|
|
29527
29620
|
onMouseEnter: () => setHover(index3),
|
|
29528
29621
|
onMouseLeave: () => setHover(null),
|
|
29529
|
-
className:
|
|
29622
|
+
className: classNames77__default.default({
|
|
29530
29623
|
"text-yellow-600": index3 <= (hover ?? rating - 1),
|
|
29531
29624
|
"text-gray-400": index3 > (hover ?? rating - 1)
|
|
29532
29625
|
}),
|
|
@@ -29570,7 +29663,7 @@ function Select({
|
|
|
29570
29663
|
{
|
|
29571
29664
|
as: "select",
|
|
29572
29665
|
...props,
|
|
29573
|
-
className:
|
|
29666
|
+
className: classNames77__default.default({
|
|
29574
29667
|
"border peer w-full bg-eui-primary-300/10 pt-5 px-3 pb-2 text-md eui-text-md placeholder-transparent placeholder-shown:p-3 focus:border-eui-secondary-500 focus:outline-none h-[50px]": true,
|
|
29575
29668
|
"border-eui-primary-400": !(meta.touched && meta.error),
|
|
29576
29669
|
"border-red-500": meta.touched && meta.error,
|
|
@@ -29622,7 +29715,7 @@ function Switch({
|
|
|
29622
29715
|
"div",
|
|
29623
29716
|
{
|
|
29624
29717
|
onClick: () => helpers.setValue(!field.value),
|
|
29625
|
-
className:
|
|
29718
|
+
className: classNames77__default.default(
|
|
29626
29719
|
"w-11 h-6 bg-gray-200 peer-focus:outline-none rounded-full peer dark:bg-eui-dark-100",
|
|
29627
29720
|
"peer-checked:after:translate-x-full peer-checked:after:border-white",
|
|
29628
29721
|
"after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white",
|
|
@@ -29652,7 +29745,7 @@ function Tags({
|
|
|
29652
29745
|
...props
|
|
29653
29746
|
}) {
|
|
29654
29747
|
const [field, meta, helpers] = formik.useField({ ...props });
|
|
29655
|
-
const [input, setInput] =
|
|
29748
|
+
const [input, setInput] = React26.useState("");
|
|
29656
29749
|
const handleAddTag = () => {
|
|
29657
29750
|
const trimmed = input.trim();
|
|
29658
29751
|
if (trimmed && !field.value.includes(trimmed) && field.value.length < limit) {
|
|
@@ -29679,7 +29772,7 @@ function Tags({
|
|
|
29679
29772
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
29680
29773
|
"div",
|
|
29681
29774
|
{
|
|
29682
|
-
className:
|
|
29775
|
+
className: classNames77__default.default(
|
|
29683
29776
|
"border rounded-sm flex flex-wrap items-center gap-2 px-2 pt-2 pb-6 min-h-[3rem]",
|
|
29684
29777
|
{
|
|
29685
29778
|
"bg-eui-primary-300/10 eui-text-md": true,
|
|
@@ -29727,7 +29820,7 @@ function Tags({
|
|
|
29727
29820
|
InputLabel_default,
|
|
29728
29821
|
{
|
|
29729
29822
|
text: placeholder,
|
|
29730
|
-
styles:
|
|
29823
|
+
styles: classNames77__default.default(
|
|
29731
29824
|
"absolute left-2 transition-all pointer-events-none text-eui-dark-200",
|
|
29732
29825
|
input.length > 0 || field.value.length > 0 ? "top-[2px] text-[13.5px]" : "top-3 text-base"
|
|
29733
29826
|
)
|
|
@@ -29768,7 +29861,7 @@ function TextArea({
|
|
|
29768
29861
|
as: "textarea",
|
|
29769
29862
|
...field,
|
|
29770
29863
|
...props,
|
|
29771
|
-
className:
|
|
29864
|
+
className: classNames77__default.default({
|
|
29772
29865
|
"border peer w-full bg-eui-primary-300/10 eui-text-md outline-none px-3 py-5 resize-none focus:resize-none focus:outline-none": true,
|
|
29773
29866
|
"transition-all ease-in-out": true,
|
|
29774
29867
|
"border-eui-primary-400 focus:border-eui-secondary-500": !(meta.touched && meta.error),
|
|
@@ -29782,7 +29875,7 @@ function TextArea({
|
|
|
29782
29875
|
InputLabel_default,
|
|
29783
29876
|
{
|
|
29784
29877
|
text: placeholder,
|
|
29785
|
-
styles:
|
|
29878
|
+
styles: classNames77__default.default(
|
|
29786
29879
|
"absolute left-2 transition-all pointer-events-none text-eui-dark-200",
|
|
29787
29880
|
field.value ? "top-[2px] text-[13.5px]" : "top-3 text-base"
|
|
29788
29881
|
)
|
|
@@ -29805,13 +29898,13 @@ function TextArea({
|
|
|
29805
29898
|
] });
|
|
29806
29899
|
}
|
|
29807
29900
|
var TextArea_default = TextArea;
|
|
29808
|
-
var ContentArea =
|
|
29901
|
+
var ContentArea = React26.forwardRef(
|
|
29809
29902
|
({ children: children3, styles, enablePadding = false }, ref) => {
|
|
29810
29903
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
29811
29904
|
"div",
|
|
29812
29905
|
{
|
|
29813
29906
|
ref,
|
|
29814
|
-
className:
|
|
29907
|
+
className: classNames77__default.default({
|
|
29815
29908
|
"min-h-screen h-full w-full transition-all duration-[200ms]": true,
|
|
29816
29909
|
"py-3 px-5": !enablePadding,
|
|
29817
29910
|
"py-3 px-5 lg:px-[150px]": enablePadding,
|
|
@@ -29828,7 +29921,7 @@ function FlexCol({ children: children3, gap = 3, styles }) {
|
|
|
29828
29921
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
29829
29922
|
"div",
|
|
29830
29923
|
{
|
|
29831
|
-
className:
|
|
29924
|
+
className: classNames77__default.default({
|
|
29832
29925
|
[`flex flex-col gap-${gap}`]: true,
|
|
29833
29926
|
[`${styles}`]: styles
|
|
29834
29927
|
}),
|
|
@@ -29841,7 +29934,7 @@ function FlexRow({ children: children3, gap = 3, styles }) {
|
|
|
29841
29934
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
29842
29935
|
"div",
|
|
29843
29936
|
{
|
|
29844
|
-
className:
|
|
29937
|
+
className: classNames77__default.default({
|
|
29845
29938
|
[`flex flex-row gap-${gap}`]: true,
|
|
29846
29939
|
[`${styles}`]: styles
|
|
29847
29940
|
}),
|
|
@@ -29860,7 +29953,7 @@ function Grid({ children: children3, styles }) {
|
|
|
29860
29953
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
29861
29954
|
"div",
|
|
29862
29955
|
{
|
|
29863
|
-
className:
|
|
29956
|
+
className: classNames77__default.default({
|
|
29864
29957
|
[`grid`]: true,
|
|
29865
29958
|
[`${styles}`]: styles
|
|
29866
29959
|
}),
|
|
@@ -29877,7 +29970,7 @@ var Layout = ({
|
|
|
29877
29970
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
29878
29971
|
"div",
|
|
29879
29972
|
{
|
|
29880
|
-
className:
|
|
29973
|
+
className: classNames77__default.default({
|
|
29881
29974
|
// "flex h-full w-screen bg-gray-100 overflow-auto": true,
|
|
29882
29975
|
"flex bg-eui-light-600": true,
|
|
29883
29976
|
"flex-col": flexDirection === "vertical",
|
|
@@ -29896,7 +29989,7 @@ var Header = ({
|
|
|
29896
29989
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
29897
29990
|
"div",
|
|
29898
29991
|
{
|
|
29899
|
-
className:
|
|
29992
|
+
className: classNames77__default.default({
|
|
29900
29993
|
static: position4 === "static",
|
|
29901
29994
|
fixed: position4 === "fixed",
|
|
29902
29995
|
sticky: position4 === "sticky",
|
|
@@ -29915,8 +30008,8 @@ var Header = ({
|
|
|
29915
30008
|
);
|
|
29916
30009
|
};
|
|
29917
30010
|
var useIsMobile = (breakpoint = 768) => {
|
|
29918
|
-
const [isMobile, setIsMobile] =
|
|
29919
|
-
|
|
30011
|
+
const [isMobile, setIsMobile] = React26.useState(window.innerWidth < breakpoint);
|
|
30012
|
+
React26.useEffect(() => {
|
|
29920
30013
|
const handleResize = () => {
|
|
29921
30014
|
setIsMobile(window.innerWidth < breakpoint);
|
|
29922
30015
|
};
|
|
@@ -29936,7 +30029,7 @@ var Content = ({
|
|
|
29936
30029
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
29937
30030
|
"div",
|
|
29938
30031
|
{
|
|
29939
|
-
className:
|
|
30032
|
+
className: classNames77__default.default({
|
|
29940
30033
|
"w-full min-h-screen transition-all duration-200 eui-bg-sm": true,
|
|
29941
30034
|
"md:pl-[300px]": !overlayedSidebar && sidebarVisible && !isMobile,
|
|
29942
30035
|
// Shift when sidebar is open (desktop)
|
|
@@ -29952,7 +30045,7 @@ var Footer = ({ children: children3, styles }) => {
|
|
|
29952
30045
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
29953
30046
|
"div",
|
|
29954
30047
|
{
|
|
29955
|
-
className:
|
|
30048
|
+
className: classNames77__default.default({
|
|
29956
30049
|
"bottom-0 w-full h-fit": true,
|
|
29957
30050
|
"border-t border-eui-dark-500/40 dark:border-eui-secondary-800 eui-bg-md": !styles,
|
|
29958
30051
|
[`${styles}`]: styles
|
|
@@ -30036,7 +30129,7 @@ function BreadcrumbItem({
|
|
|
30036
30129
|
{
|
|
30037
30130
|
href,
|
|
30038
30131
|
onClick,
|
|
30039
|
-
className:
|
|
30132
|
+
className: classNames77__default.default({
|
|
30040
30133
|
"text-lg font-semibold": true,
|
|
30041
30134
|
"text-gray-400 hover:text-gray-600 cursor-pointer": !active,
|
|
30042
30135
|
"text-eui-light-800": active,
|
|
@@ -30083,7 +30176,7 @@ var Breadcrumb = ({
|
|
|
30083
30176
|
const { config } = useEUIConfig();
|
|
30084
30177
|
const pathname = currentPath || (typeof window !== "undefined" ? window.location.pathname : "/");
|
|
30085
30178
|
const resolvedRoutes = routes || config?.routes || [];
|
|
30086
|
-
const resolvedData =
|
|
30179
|
+
const resolvedData = React26.useMemo(() => {
|
|
30087
30180
|
if (resolvedRoutes && resolvedRoutes.length > 0) {
|
|
30088
30181
|
return buildFromRoutes(resolvedRoutes, pathname);
|
|
30089
30182
|
}
|
|
@@ -30100,7 +30193,7 @@ var Breadcrumb = ({
|
|
|
30100
30193
|
navigate(item.href);
|
|
30101
30194
|
}
|
|
30102
30195
|
};
|
|
30103
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
30196
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(React26__default.default.Fragment, { children: [
|
|
30104
30197
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
30105
30198
|
BreadcrumbItem_default,
|
|
30106
30199
|
{
|
|
@@ -30113,7 +30206,7 @@ var Breadcrumb = ({
|
|
|
30113
30206
|
index3 < resolvedData.length - 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
30114
30207
|
"span",
|
|
30115
30208
|
{
|
|
30116
|
-
className:
|
|
30209
|
+
className: classNames77__default.default({
|
|
30117
30210
|
"text-lg font-semibold text-gray-500": true,
|
|
30118
30211
|
[`px-${gap}`]: gap
|
|
30119
30212
|
}),
|
|
@@ -30127,7 +30220,7 @@ var Breadcrumb = ({
|
|
|
30127
30220
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
30128
30221
|
"div",
|
|
30129
30222
|
{
|
|
30130
|
-
className:
|
|
30223
|
+
className: classNames77__default.default({
|
|
30131
30224
|
"inline-flex": true,
|
|
30132
30225
|
[`${styles}`]: styles
|
|
30133
30226
|
}),
|
|
@@ -30159,7 +30252,7 @@ var Drawer = ({
|
|
|
30159
30252
|
isMobile && showBackdrop && /* @__PURE__ */ jsxRuntime.jsx(TransitionFade_default, { visibility, leaveDuration: 200, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
30160
30253
|
"div",
|
|
30161
30254
|
{
|
|
30162
|
-
className:
|
|
30255
|
+
className: classNames77__default.default(
|
|
30163
30256
|
"fixed inset-0 bg-black/50 z-40",
|
|
30164
30257
|
backdropStyles
|
|
30165
30258
|
),
|
|
@@ -30170,7 +30263,7 @@ var Drawer = ({
|
|
|
30170
30263
|
"div",
|
|
30171
30264
|
{
|
|
30172
30265
|
style: drawerStyle,
|
|
30173
|
-
className:
|
|
30266
|
+
className: classNames77__default.default(
|
|
30174
30267
|
"fixed shadow-lg z-50",
|
|
30175
30268
|
{
|
|
30176
30269
|
"h-full w-[300px] top-0": isHorizontal && !hasOffset,
|
|
@@ -30199,7 +30292,7 @@ function DrawerToggler({
|
|
|
30199
30292
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
30200
30293
|
"div",
|
|
30201
30294
|
{
|
|
30202
|
-
className:
|
|
30295
|
+
className: classNames77__default.default({
|
|
30203
30296
|
"text-xl p-3 cursor-pointer": true,
|
|
30204
30297
|
"transition-all ease-in-out": true,
|
|
30205
30298
|
"text-eui-dark-500 dark:text-eui-secondary-600": !styles,
|
|
@@ -30247,7 +30340,7 @@ function FooterNav({ data = [], styles }) {
|
|
|
30247
30340
|
childrenContent = /* @__PURE__ */ jsxRuntime.jsx(
|
|
30248
30341
|
"div",
|
|
30249
30342
|
{
|
|
30250
|
-
className:
|
|
30343
|
+
className: classNames77__default.default({
|
|
30251
30344
|
"grid w-full": true,
|
|
30252
30345
|
"grid-cols-1": isMobile,
|
|
30253
30346
|
"grid-cols-3": !isMobile,
|
|
@@ -30260,7 +30353,7 @@ function FooterNav({ data = [], styles }) {
|
|
|
30260
30353
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
30261
30354
|
"div",
|
|
30262
30355
|
{
|
|
30263
|
-
className:
|
|
30356
|
+
className: classNames77__default.default({
|
|
30264
30357
|
[`${styles}`]: styles
|
|
30265
30358
|
}),
|
|
30266
30359
|
children: childrenContent
|
|
@@ -30301,7 +30394,7 @@ var FooterNavGroup = ({
|
|
|
30301
30394
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
30302
30395
|
"div",
|
|
30303
30396
|
{
|
|
30304
|
-
className:
|
|
30397
|
+
className: classNames77__default.default({
|
|
30305
30398
|
"": true,
|
|
30306
30399
|
"py-2 font-semibold eui-text-lg": !styles,
|
|
30307
30400
|
[`${styles}`]: styles
|
|
@@ -30346,7 +30439,7 @@ var FooterNavItem = ({
|
|
|
30346
30439
|
"div",
|
|
30347
30440
|
{
|
|
30348
30441
|
onClick: handleNavigation,
|
|
30349
|
-
className:
|
|
30442
|
+
className: classNames77__default.default({
|
|
30350
30443
|
"flex flex-row items-center gap-3 cursor-pointer p-1 w-full": true,
|
|
30351
30444
|
"transition-all duration-200 ease-in-out": true,
|
|
30352
30445
|
"text-sm eui-text-sm": !styles,
|
|
@@ -30375,7 +30468,7 @@ var FooterNavItemTitle = ({
|
|
|
30375
30468
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
30376
30469
|
"div",
|
|
30377
30470
|
{
|
|
30378
|
-
className:
|
|
30471
|
+
className: classNames77__default.default({
|
|
30379
30472
|
"": true,
|
|
30380
30473
|
"py-2 font-thin eui-text-md": !styles,
|
|
30381
30474
|
[`${styles}`]: styles
|
|
@@ -30428,7 +30521,7 @@ function HeaderNav({ data = [], styles }) {
|
|
|
30428
30521
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
30429
30522
|
"div",
|
|
30430
30523
|
{
|
|
30431
|
-
className:
|
|
30524
|
+
className: classNames77__default.default({
|
|
30432
30525
|
[`${styles}`]: styles
|
|
30433
30526
|
}),
|
|
30434
30527
|
children: childrenContent
|
|
@@ -30437,7 +30530,7 @@ function HeaderNav({ data = [], styles }) {
|
|
|
30437
30530
|
}
|
|
30438
30531
|
var HeaderNav_default = HeaderNav;
|
|
30439
30532
|
function useClickOutside(ref, fun) {
|
|
30440
|
-
|
|
30533
|
+
React26.useEffect(() => {
|
|
30441
30534
|
const listener = (e) => {
|
|
30442
30535
|
if (!ref.current || ref.current.contains(e.target)) {
|
|
30443
30536
|
return;
|
|
@@ -30478,8 +30571,8 @@ var HeaderNavGroup = ({
|
|
|
30478
30571
|
styles,
|
|
30479
30572
|
children: children3
|
|
30480
30573
|
}) => {
|
|
30481
|
-
const [collapsed, setCollapsed] =
|
|
30482
|
-
const headerNavGroupRef =
|
|
30574
|
+
const [collapsed, setCollapsed] = React26.useState(true);
|
|
30575
|
+
const headerNavGroupRef = React26.useRef(null);
|
|
30483
30576
|
useClickOutside(headerNavGroupRef, () => setCollapsed(true));
|
|
30484
30577
|
const handleNavigation = () => {
|
|
30485
30578
|
if (to) {
|
|
@@ -30490,7 +30583,7 @@ var HeaderNavGroup = ({
|
|
|
30490
30583
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
30491
30584
|
"div",
|
|
30492
30585
|
{
|
|
30493
|
-
className:
|
|
30586
|
+
className: classNames77__default.default({
|
|
30494
30587
|
"flex flex-row gap-2 items-center justify-between cursor-pointer p-3 w-full": true,
|
|
30495
30588
|
"transition-all duration-300 ease-in-out": true,
|
|
30496
30589
|
"eui-text-md bg-gradient-to-t from-eui-dark-500/10 dark:from-green-700/10": !styles,
|
|
@@ -30518,7 +30611,7 @@ var HeaderNavGroup = ({
|
|
|
30518
30611
|
children3 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
30519
30612
|
index_js$3.BsChevronDown,
|
|
30520
30613
|
{
|
|
30521
|
-
className:
|
|
30614
|
+
className: classNames77__default.default({
|
|
30522
30615
|
"text-md": true,
|
|
30523
30616
|
"transition-all ease-in-out duration-300": true,
|
|
30524
30617
|
"rotate-180": !collapsed
|
|
@@ -30531,7 +30624,7 @@ var HeaderNavGroup = ({
|
|
|
30531
30624
|
!collapsed && children3 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
30532
30625
|
"div",
|
|
30533
30626
|
{
|
|
30534
|
-
className:
|
|
30627
|
+
className: classNames77__default.default({
|
|
30535
30628
|
"absolute min-w-80 left-0 top-full mt-1 border border-eui-dark-300/10 dark:border-eui-dark-300/50 shadow-lg eui-shadow-lg z-50 w-full eui-bg-md": true,
|
|
30536
30629
|
"transition-all duration-300 ease-in-out": true
|
|
30537
30630
|
}),
|
|
@@ -30561,7 +30654,7 @@ var HeaderNavItem = ({
|
|
|
30561
30654
|
"div",
|
|
30562
30655
|
{
|
|
30563
30656
|
onClick: handleNavigation,
|
|
30564
|
-
className:
|
|
30657
|
+
className: classNames77__default.default({
|
|
30565
30658
|
"flex flex-row items-center gap-3 cursor-pointer p-3 w-full": true,
|
|
30566
30659
|
"transition-all duration-200 ease-in-out": true,
|
|
30567
30660
|
"eui-text-md border-b border-eui-dark-500/20 dark:border-eui-secondary-900/20 bg-gradient-to-r from-eui-dark-500/10 dark:from-eui-secondary-900/10": !styles,
|
|
@@ -30590,7 +30683,7 @@ var HeaderNavItemTitle = ({
|
|
|
30590
30683
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
30591
30684
|
"div",
|
|
30592
30685
|
{
|
|
30593
|
-
className:
|
|
30686
|
+
className: classNames77__default.default({
|
|
30594
30687
|
"p-3 font-thin": true,
|
|
30595
30688
|
"eui-text-md": !styles,
|
|
30596
30689
|
[`${styles}`]: styles
|
|
@@ -30630,7 +30723,7 @@ var Link = ({
|
|
|
30630
30723
|
href: href || "#",
|
|
30631
30724
|
target: targets[target],
|
|
30632
30725
|
onClick: handleClick,
|
|
30633
|
-
className:
|
|
30726
|
+
className: classNames77__default.default({
|
|
30634
30727
|
[`${textVariants[variant]}`]: variant,
|
|
30635
30728
|
[`${decorations[decoration]}`]: decoration,
|
|
30636
30729
|
"font-bold": bold,
|
|
@@ -30702,8 +30795,8 @@ var MenuGroup = ({
|
|
|
30702
30795
|
style: style2,
|
|
30703
30796
|
...rest
|
|
30704
30797
|
}) => {
|
|
30705
|
-
const [collapsed, setCollapsed] =
|
|
30706
|
-
|
|
30798
|
+
const [collapsed, setCollapsed] = React26.useState(!defaultOpen);
|
|
30799
|
+
React26.useEffect(() => {
|
|
30707
30800
|
if (defaultOpen !== void 0) {
|
|
30708
30801
|
setCollapsed(!defaultOpen);
|
|
30709
30802
|
}
|
|
@@ -30820,12 +30913,12 @@ var Menu = ({
|
|
|
30820
30913
|
defaultMenuElements,
|
|
30821
30914
|
currentPath
|
|
30822
30915
|
}) => {
|
|
30823
|
-
const normalizedItems =
|
|
30824
|
-
const selected =
|
|
30916
|
+
const normalizedItems = React26.useMemo(() => assignKeys(items), [items]);
|
|
30917
|
+
const selected = React26.useMemo(() => {
|
|
30825
30918
|
if (!currentPath) return void 0;
|
|
30826
30919
|
return findSelectedKey(normalizedItems, currentPath);
|
|
30827
30920
|
}, [currentPath, normalizedItems]);
|
|
30828
|
-
const parentMap =
|
|
30921
|
+
const parentMap = React26.useMemo(
|
|
30829
30922
|
() => buildParentMap(normalizedItems),
|
|
30830
30923
|
[normalizedItems]
|
|
30831
30924
|
);
|
|
@@ -30978,8 +31071,8 @@ function RouteTabs({
|
|
|
30978
31071
|
const currentPath = window.location.pathname;
|
|
30979
31072
|
return navData.find((tab2) => tab2.to === currentPath)?.to || navData[0]?.to;
|
|
30980
31073
|
};
|
|
30981
|
-
const [activeTab, setActiveTab] =
|
|
30982
|
-
|
|
31074
|
+
const [activeTab, setActiveTab] = React26.useState(getActiveTab);
|
|
31075
|
+
React26.useEffect(() => {
|
|
30983
31076
|
if (mode !== "route") return;
|
|
30984
31077
|
const handlePopState = () => {
|
|
30985
31078
|
setActiveTab(getActiveTab());
|
|
@@ -31074,7 +31167,7 @@ function AsyncStateCard({
|
|
|
31074
31167
|
}
|
|
31075
31168
|
);
|
|
31076
31169
|
}
|
|
31077
|
-
var AsyncStateCard_default =
|
|
31170
|
+
var AsyncStateCard_default = React26__default.default.memo(AsyncStateCard);
|
|
31078
31171
|
|
|
31079
31172
|
// src/components/utils/async-component-wrapper/asyncError.utils.ts
|
|
31080
31173
|
var getDefaultErrorMessage = (error) => {
|
|
@@ -31133,22 +31226,22 @@ function AsyncComponentWrapper({
|
|
|
31133
31226
|
contentClassName,
|
|
31134
31227
|
stateClassName
|
|
31135
31228
|
}) {
|
|
31136
|
-
const [isRetrying, setIsRetrying] =
|
|
31137
|
-
const retryTimerRef =
|
|
31138
|
-
const errorMessage =
|
|
31229
|
+
const [isRetrying, setIsRetrying] = React26.useState(false);
|
|
31230
|
+
const retryTimerRef = React26.useRef(null);
|
|
31231
|
+
const errorMessage = React26.useMemo(() => {
|
|
31139
31232
|
if (!isError) return "";
|
|
31140
31233
|
return errorFormatter ? errorFormatter(error) : getDefaultErrorMessage(error);
|
|
31141
31234
|
}, [isError, error, errorFormatter]);
|
|
31142
31235
|
const hasSuccess = isSuccess ?? (!isLoading && !isError && !isUninitialized);
|
|
31143
31236
|
const shouldShowRetryLoading = showLoadingOnRetry && (isRetrying || isFetching && isError);
|
|
31144
31237
|
const shouldShowLoading = isLoading || shouldShowRetryLoading;
|
|
31145
|
-
const clearRetryTimer =
|
|
31238
|
+
const clearRetryTimer = React26.useCallback(() => {
|
|
31146
31239
|
if (retryTimerRef.current) {
|
|
31147
31240
|
clearTimeout(retryTimerRef.current);
|
|
31148
31241
|
retryTimerRef.current = null;
|
|
31149
31242
|
}
|
|
31150
31243
|
}, []);
|
|
31151
|
-
const handleRetry =
|
|
31244
|
+
const handleRetry = React26.useCallback(() => {
|
|
31152
31245
|
if (!onRetry) return;
|
|
31153
31246
|
clearRetryTimer();
|
|
31154
31247
|
setIsRetrying(true);
|
|
@@ -31168,12 +31261,12 @@ function AsyncComponentWrapper({
|
|
|
31168
31261
|
throw retryError;
|
|
31169
31262
|
}
|
|
31170
31263
|
}, [onRetry, clearRetryTimer, retryLoadingFallbackMs]);
|
|
31171
|
-
|
|
31264
|
+
React26.useEffect(() => {
|
|
31172
31265
|
if (!isLoading && !isFetching && !isError) {
|
|
31173
31266
|
setIsRetrying(false);
|
|
31174
31267
|
}
|
|
31175
31268
|
}, [isLoading, isFetching, isError]);
|
|
31176
|
-
|
|
31269
|
+
React26.useEffect(() => {
|
|
31177
31270
|
return () => {
|
|
31178
31271
|
clearRetryTimer();
|
|
31179
31272
|
};
|
|
@@ -31255,7 +31348,7 @@ function AsyncComponentWrapper({
|
|
|
31255
31348
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(contentClassName), children: children3 })
|
|
31256
31349
|
] });
|
|
31257
31350
|
}
|
|
31258
|
-
var AsyncComponentWrapper_default =
|
|
31351
|
+
var AsyncComponentWrapper_default = React26__default.default.memo(AsyncComponentWrapper);
|
|
31259
31352
|
function Modal({
|
|
31260
31353
|
title,
|
|
31261
31354
|
show = false,
|
|
@@ -31271,7 +31364,7 @@ function Modal({
|
|
|
31271
31364
|
}) {
|
|
31272
31365
|
const eui = useEUIConfig();
|
|
31273
31366
|
const resolvedShape = shape ?? eui?.config?.global?.shape ?? "square";
|
|
31274
|
-
const modalRef =
|
|
31367
|
+
const modalRef = React26.useRef(null);
|
|
31275
31368
|
useClickOutside(
|
|
31276
31369
|
modalRef,
|
|
31277
31370
|
enableCloseOnClickOutside ? handleOnClose : void 0
|
|
@@ -31280,7 +31373,7 @@ function Modal({
|
|
|
31280
31373
|
"div",
|
|
31281
31374
|
{
|
|
31282
31375
|
ref: modalRef,
|
|
31283
|
-
className:
|
|
31376
|
+
className: classNames77__default.default(
|
|
31284
31377
|
"eui-bg-md eui-shadow-lg border border-gray-700/80 w-fit h-fit",
|
|
31285
31378
|
shapes[resolvedShape],
|
|
31286
31379
|
styles
|
|
@@ -31292,7 +31385,7 @@ function Modal({
|
|
|
31292
31385
|
"button",
|
|
31293
31386
|
{
|
|
31294
31387
|
type: "button",
|
|
31295
|
-
className:
|
|
31388
|
+
className: classNames77__default.default(
|
|
31296
31389
|
"w-[60px] h-[60px] flex items-center justify-center transition-standard-fast",
|
|
31297
31390
|
"hover:cursor-pointer hover:bg-eui-dark-500"
|
|
31298
31391
|
),
|
|
@@ -31323,8 +31416,8 @@ var GlowWrapper = ({
|
|
|
31323
31416
|
className = "",
|
|
31324
31417
|
hideOnLeave = true
|
|
31325
31418
|
}) => {
|
|
31326
|
-
const ref =
|
|
31327
|
-
const handleMove =
|
|
31419
|
+
const ref = React26.useRef(null);
|
|
31420
|
+
const handleMove = React26.useCallback(
|
|
31328
31421
|
(e) => {
|
|
31329
31422
|
const el = ref.current;
|
|
31330
31423
|
if (!el) return;
|
|
@@ -31346,7 +31439,7 @@ var GlowWrapper = ({
|
|
|
31346
31439
|
},
|
|
31347
31440
|
[glowSize, glowColor]
|
|
31348
31441
|
);
|
|
31349
|
-
const handleLeave =
|
|
31442
|
+
const handleLeave = React26.useCallback(() => {
|
|
31350
31443
|
const el = ref.current;
|
|
31351
31444
|
if (!el || !hideOnLeave) return;
|
|
31352
31445
|
el.style.setProperty("--glow-x", `-999px`);
|
|
@@ -31391,8 +31484,8 @@ function InfiniteScrollTrigger({
|
|
|
31391
31484
|
threshold = 0,
|
|
31392
31485
|
onLoadMore
|
|
31393
31486
|
}) {
|
|
31394
|
-
const triggerRef =
|
|
31395
|
-
|
|
31487
|
+
const triggerRef = React26.useRef(null);
|
|
31488
|
+
React26.useEffect(() => {
|
|
31396
31489
|
const element6 = triggerRef.current;
|
|
31397
31490
|
if (!element6 || !hasMore || isLoading) {
|
|
31398
31491
|
return;
|
|
@@ -31418,7 +31511,7 @@ function InfiniteScrollTrigger({
|
|
|
31418
31511
|
}
|
|
31419
31512
|
var InfiniteScrollTrigger_default = InfiniteScrollTrigger;
|
|
31420
31513
|
function ShowMore({ text: text10, limit }) {
|
|
31421
|
-
const [showMore, setShowMore] =
|
|
31514
|
+
const [showMore, setShowMore] = React26.useState(false);
|
|
31422
31515
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
31423
31516
|
showMore ? text10 : `${text10.substring(0, limit)}`,
|
|
31424
31517
|
text10.length > limit && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
|
|
@@ -31426,7 +31519,7 @@ function ShowMore({ text: text10, limit }) {
|
|
|
31426
31519
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
31427
31520
|
"div",
|
|
31428
31521
|
{
|
|
31429
|
-
className:
|
|
31522
|
+
className: classNames77__default.default({
|
|
31430
31523
|
"text-blue-300 px-1 pb-1 mt-1": true,
|
|
31431
31524
|
"bg-slate-900/70": !showMore,
|
|
31432
31525
|
"bg-gradient-to-t from-slate-900/50 to-transparent": showMore
|
|
@@ -31453,8 +31546,8 @@ function CommentComposer({
|
|
|
31453
31546
|
loading,
|
|
31454
31547
|
onSubmit
|
|
31455
31548
|
}) {
|
|
31456
|
-
const [value, setValue] =
|
|
31457
|
-
const [focused, setFocused] =
|
|
31549
|
+
const [value, setValue] = React26.useState("");
|
|
31550
|
+
const [focused, setFocused] = React26.useState(false);
|
|
31458
31551
|
async function handleSubmit() {
|
|
31459
31552
|
const content3 = value.trim();
|
|
31460
31553
|
if (!content3) {
|
|
@@ -31709,14 +31802,14 @@ function CommentHeader({ comment: comment4, config }) {
|
|
|
31709
31802
|
}
|
|
31710
31803
|
var CommentHeader_default = CommentHeader;
|
|
31711
31804
|
var useDrawer = (defaultVisibility = true) => {
|
|
31712
|
-
const [show, setShow] =
|
|
31713
|
-
const openDrawer =
|
|
31805
|
+
const [show, setShow] = React26.useState(defaultVisibility);
|
|
31806
|
+
const openDrawer = React26.useCallback(() => {
|
|
31714
31807
|
setShow(true);
|
|
31715
31808
|
}, []);
|
|
31716
|
-
const closeDrawer =
|
|
31809
|
+
const closeDrawer = React26.useCallback(() => {
|
|
31717
31810
|
setShow(false);
|
|
31718
31811
|
}, []);
|
|
31719
|
-
const toggleDrawer =
|
|
31812
|
+
const toggleDrawer = React26.useCallback(() => {
|
|
31720
31813
|
setShow((prev) => !prev);
|
|
31721
31814
|
}, []);
|
|
31722
31815
|
return {
|
|
@@ -31728,7 +31821,7 @@ var useDrawer = (defaultVisibility = true) => {
|
|
|
31728
31821
|
};
|
|
31729
31822
|
var useDrawer_default = useDrawer;
|
|
31730
31823
|
var useModal = () => {
|
|
31731
|
-
const [show, setShow] =
|
|
31824
|
+
const [show, setShow] = React26.useState(false);
|
|
31732
31825
|
const handleOpenModal = () => {
|
|
31733
31826
|
setShow(true);
|
|
31734
31827
|
};
|
|
@@ -31743,7 +31836,7 @@ var useModal = () => {
|
|
|
31743
31836
|
};
|
|
31744
31837
|
var useModal_default = useModal;
|
|
31745
31838
|
var useTheme = () => {
|
|
31746
|
-
const context =
|
|
31839
|
+
const context = React26.useContext(ThemeContext);
|
|
31747
31840
|
if (!context) {
|
|
31748
31841
|
throw new Error("useTheme must be used within a ThemeProvider");
|
|
31749
31842
|
}
|
|
@@ -31784,7 +31877,7 @@ function CommentMenu({
|
|
|
31784
31877
|
onDelete,
|
|
31785
31878
|
onReport
|
|
31786
31879
|
}) {
|
|
31787
|
-
const ref =
|
|
31880
|
+
const ref = React26.useRef(null);
|
|
31788
31881
|
useClickOutside(ref, () => setOpen(false));
|
|
31789
31882
|
const items = [];
|
|
31790
31883
|
if (canEdit) {
|
|
@@ -31912,11 +32005,11 @@ function CommentItem({
|
|
|
31912
32005
|
onDelete,
|
|
31913
32006
|
onReport
|
|
31914
32007
|
}) {
|
|
31915
|
-
const [collapsed, setCollapsed] =
|
|
31916
|
-
const [isReplying, setIsReplying] =
|
|
31917
|
-
const [menuOpen, setMenuOpen] =
|
|
31918
|
-
const [loadingReplies, setLoadingReplies] =
|
|
31919
|
-
const [repliesLoaded, setRepliesLoaded] =
|
|
32008
|
+
const [collapsed, setCollapsed] = React26.useState(true);
|
|
32009
|
+
const [isReplying, setIsReplying] = React26.useState(false);
|
|
32010
|
+
const [menuOpen, setMenuOpen] = React26.useState(false);
|
|
32011
|
+
const [loadingReplies, setLoadingReplies] = React26.useState(false);
|
|
32012
|
+
const [repliesLoaded, setRepliesLoaded] = React26.useState(false);
|
|
31920
32013
|
const resolvedDepth = Math.min(depth, config.maxDepth);
|
|
31921
32014
|
const {
|
|
31922
32015
|
Header: HeaderComponent = CommentHeader_default,
|
|
@@ -32080,18 +32173,18 @@ function CommentThread({
|
|
|
32080
32173
|
onDelete,
|
|
32081
32174
|
onReport
|
|
32082
32175
|
}) {
|
|
32083
|
-
const [comments, setComments] =
|
|
32084
|
-
const [isLoadingComments, setIsLoadingComments] =
|
|
32085
|
-
const [replyCache, setReplyCache] =
|
|
32176
|
+
const [comments, setComments] = React26.useState([]);
|
|
32177
|
+
const [isLoadingComments, setIsLoadingComments] = React26.useState(true);
|
|
32178
|
+
const [replyCache, setReplyCache] = React26.useState(
|
|
32086
32179
|
{}
|
|
32087
32180
|
);
|
|
32088
|
-
const replyCacheRef =
|
|
32181
|
+
const replyCacheRef = React26.useRef(replyCache);
|
|
32089
32182
|
const ComposerComponent = components?.Composer ?? CommentComposer_default;
|
|
32090
32183
|
const resolvedConfig = {
|
|
32091
32184
|
...DEFAULT_COMMENT_THREAD_CONFIG,
|
|
32092
32185
|
...config
|
|
32093
32186
|
};
|
|
32094
|
-
|
|
32187
|
+
React26.useEffect(() => {
|
|
32095
32188
|
async function loadComments() {
|
|
32096
32189
|
try {
|
|
32097
32190
|
const result = await dataSource.getComments({
|
|
@@ -32105,10 +32198,10 @@ function CommentThread({
|
|
|
32105
32198
|
}
|
|
32106
32199
|
void loadComments();
|
|
32107
32200
|
}, [dataSource, resolvedConfig.commentsPerPage]);
|
|
32108
|
-
|
|
32201
|
+
React26.useEffect(() => {
|
|
32109
32202
|
replyCacheRef.current = replyCache;
|
|
32110
32203
|
}, [replyCache]);
|
|
32111
|
-
|
|
32204
|
+
React26.useEffect(() => {
|
|
32112
32205
|
let cancelled = false;
|
|
32113
32206
|
async function refreshLoadedReplies() {
|
|
32114
32207
|
const parentIds = Object.keys(replyCacheRef.current);
|
|
@@ -32144,13 +32237,13 @@ function CommentThread({
|
|
|
32144
32237
|
cancelled = true;
|
|
32145
32238
|
};
|
|
32146
32239
|
}, [dataSource, resolvedConfig.repliesPerPage]);
|
|
32147
|
-
|
|
32240
|
+
React26.useEffect(() => {
|
|
32148
32241
|
if (!updatedComment) {
|
|
32149
32242
|
return;
|
|
32150
32243
|
}
|
|
32151
32244
|
updateCommentEverywhere(updatedComment.id, () => updatedComment);
|
|
32152
32245
|
}, [updatedComment]);
|
|
32153
|
-
|
|
32246
|
+
React26.useEffect(() => {
|
|
32154
32247
|
if (!deletedComment) {
|
|
32155
32248
|
return;
|
|
32156
32249
|
}
|
|
@@ -32342,7 +32435,7 @@ function DocumentationPanel({
|
|
|
32342
32435
|
return /* @__PURE__ */ jsxRuntime.jsx(MarkdownProvider_default, { markdown: value, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
32343
32436
|
"section",
|
|
32344
32437
|
{
|
|
32345
|
-
className:
|
|
32438
|
+
className: classNames77__default.default(
|
|
32346
32439
|
"eui-documentation-panel",
|
|
32347
32440
|
"min-h-0 overflow-hidden bg-white text-gray-900",
|
|
32348
32441
|
"dark:bg-gray-950 dark:text-gray-100",
|
|
@@ -32356,7 +32449,7 @@ function DocumentationPanel({
|
|
|
32356
32449
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
32357
32450
|
"main",
|
|
32358
32451
|
{
|
|
32359
|
-
className:
|
|
32452
|
+
className: classNames77__default.default(
|
|
32360
32453
|
"eui-documentation-panel-viewer",
|
|
32361
32454
|
"documentation-panel-scrollbar min-w-0 overflow-y-auto scroll-smooth",
|
|
32362
32455
|
viewerClassName
|
|
@@ -32364,7 +32457,7 @@ function DocumentationPanel({
|
|
|
32364
32457
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
32365
32458
|
"div",
|
|
32366
32459
|
{
|
|
32367
|
-
className:
|
|
32460
|
+
className: classNames77__default.default(
|
|
32368
32461
|
"mx-auto px-5 py-8 sm:px-6 lg:px-8",
|
|
32369
32462
|
contentMaxWidthClassName,
|
|
32370
32463
|
contentClassName
|
|
@@ -32377,7 +32470,7 @@ function DocumentationPanel({
|
|
|
32377
32470
|
toc ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
32378
32471
|
"aside",
|
|
32379
32472
|
{
|
|
32380
|
-
className:
|
|
32473
|
+
className: classNames77__default.default(
|
|
32381
32474
|
"eui-documentation-panel-toc",
|
|
32382
32475
|
"hidden min-w-0 border-l border-gray-200 bg-white lg:block",
|
|
32383
32476
|
"dark:border-gray-800 dark:bg-gray-950",
|
|
@@ -32386,7 +32479,7 @@ function DocumentationPanel({
|
|
|
32386
32479
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
32387
32480
|
"div",
|
|
32388
32481
|
{
|
|
32389
|
-
className:
|
|
32482
|
+
className: classNames77__default.default(
|
|
32390
32483
|
"documentation-panel-scrollbar h-full overflow-y-auto px-5 py-8"
|
|
32391
32484
|
),
|
|
32392
32485
|
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "sticky top-0", children: /* @__PURE__ */ jsxRuntime.jsx(MarkdownTOC_default, {}) })
|
|
@@ -32431,13 +32524,13 @@ function SliderItem({
|
|
|
32431
32524
|
}
|
|
32432
32525
|
var SliderItem_default = SliderItem;
|
|
32433
32526
|
function Slider({ isLoading, isSuccess, coverArt, screenshots }) {
|
|
32434
|
-
const [images, setImages] =
|
|
32527
|
+
const [images, setImages] = React26.useState([
|
|
32435
32528
|
{
|
|
32436
32529
|
img: coverArt,
|
|
32437
32530
|
selected: true
|
|
32438
32531
|
}
|
|
32439
32532
|
]);
|
|
32440
|
-
|
|
32533
|
+
React26.useEffect(() => {
|
|
32441
32534
|
setImages([
|
|
32442
32535
|
{
|
|
32443
32536
|
img: coverArt,
|
|
@@ -32445,7 +32538,7 @@ function Slider({ isLoading, isSuccess, coverArt, screenshots }) {
|
|
|
32445
32538
|
}
|
|
32446
32539
|
]);
|
|
32447
32540
|
}, [isSuccess]);
|
|
32448
|
-
|
|
32541
|
+
React26.useEffect(() => {
|
|
32449
32542
|
if (screenshots) {
|
|
32450
32543
|
const selectableScreenshots = [];
|
|
32451
32544
|
screenshots.forEach((item) => {
|
|
@@ -32457,8 +32550,8 @@ function Slider({ isLoading, isSuccess, coverArt, screenshots }) {
|
|
|
32457
32550
|
setImages((prev) => [...prev, ...selectableScreenshots]);
|
|
32458
32551
|
}
|
|
32459
32552
|
}, [isSuccess]);
|
|
32460
|
-
const [displayImg, setDisplayImg] =
|
|
32461
|
-
|
|
32553
|
+
const [displayImg, setDisplayImg] = React26.useState(coverArt);
|
|
32554
|
+
React26.useEffect(() => {
|
|
32462
32555
|
setDisplayImg(coverArt);
|
|
32463
32556
|
}, [coverArt]);
|
|
32464
32557
|
const displayImageHandler = (itemIndex, img) => {
|
|
@@ -32570,7 +32663,7 @@ function WorldMapCountryTable({
|
|
|
32570
32663
|
title = "Country Breakdown",
|
|
32571
32664
|
data
|
|
32572
32665
|
}) {
|
|
32573
|
-
const enrichedData =
|
|
32666
|
+
const enrichedData = React26.useMemo(() => {
|
|
32574
32667
|
const mapped = data.map((item) => {
|
|
32575
32668
|
const countryMeta = COUNTRIES.find((c3) => c3.code === item.code);
|
|
32576
32669
|
return {
|
|
@@ -32583,11 +32676,11 @@ function WorldMapCountryTable({
|
|
|
32583
32676
|
});
|
|
32584
32677
|
return mapped.sort((a2, b) => b.value - a2.value);
|
|
32585
32678
|
}, [data]);
|
|
32586
|
-
const total =
|
|
32679
|
+
const total = React26.useMemo(
|
|
32587
32680
|
() => enrichedData.reduce((sum, i) => sum + i.value, 0),
|
|
32588
32681
|
[enrichedData]
|
|
32589
32682
|
);
|
|
32590
|
-
const finalData =
|
|
32683
|
+
const finalData = React26.useMemo(() => {
|
|
32591
32684
|
return enrichedData.map((item) => ({
|
|
32592
32685
|
...item,
|
|
32593
32686
|
percent: total > 0 ? item.value / total * 100 : 0
|
|
@@ -32662,7 +32755,7 @@ function BoxNavItem({ icon, name: name2, to, selected, onClick }) {
|
|
|
32662
32755
|
type: "button",
|
|
32663
32756
|
onClick: handleClick,
|
|
32664
32757
|
"aria-current": selected ? "page" : void 0,
|
|
32665
|
-
className:
|
|
32758
|
+
className: classNames77__default.default(
|
|
32666
32759
|
"w-full min-w-[80px] flex flex-col items-center justify-center py-3 text-center",
|
|
32667
32760
|
"hover:text-secondary-700 hover:bg-gray-300/10 hover:cursor-pointer",
|
|
32668
32761
|
selected ? "text-eui-secondary-700 bg-gray-300/10" : "text-gray-400",
|
|
@@ -32832,7 +32925,7 @@ var TNDropdownGroup = ({
|
|
|
32832
32925
|
navigate,
|
|
32833
32926
|
className
|
|
32834
32927
|
}) => {
|
|
32835
|
-
const [open, setOpen] =
|
|
32928
|
+
const [open, setOpen] = React26.useState(true);
|
|
32836
32929
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
32837
32930
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
32838
32931
|
"div",
|
|
@@ -32921,8 +33014,8 @@ var TNGroup = ({
|
|
|
32921
33014
|
components,
|
|
32922
33015
|
selected
|
|
32923
33016
|
}) => {
|
|
32924
|
-
const [open, setOpen] =
|
|
32925
|
-
const timeoutRef =
|
|
33017
|
+
const [open, setOpen] = React26.useState(false);
|
|
33018
|
+
const timeoutRef = React26.useRef(null);
|
|
32926
33019
|
const handleEnter = () => {
|
|
32927
33020
|
if (timeoutRef.current) clearTimeout(timeoutRef.current);
|
|
32928
33021
|
setOpen(true);
|
|
@@ -33026,14 +33119,14 @@ function ReviewForm({
|
|
|
33026
33119
|
onSubmit,
|
|
33027
33120
|
onCancel
|
|
33028
33121
|
}) {
|
|
33029
|
-
const [content3, setContent] =
|
|
33030
|
-
const [rating, setRating] =
|
|
33031
|
-
const [isRecommended, setIsRecommended] =
|
|
33122
|
+
const [content3, setContent] = React26.useState(initialValues?.content ?? "");
|
|
33123
|
+
const [rating, setRating] = React26.useState(initialValues?.rating ?? 0);
|
|
33124
|
+
const [isRecommended, setIsRecommended] = React26.useState(
|
|
33032
33125
|
initialValues?.isRecommended ?? true
|
|
33033
33126
|
);
|
|
33034
|
-
const [error, setError] =
|
|
33127
|
+
const [error, setError] = React26.useState("");
|
|
33035
33128
|
const contentLength = content3.trim().length;
|
|
33036
|
-
const ratingItems =
|
|
33129
|
+
const ratingItems = React26.useMemo(() => {
|
|
33037
33130
|
return Array.from(
|
|
33038
33131
|
{
|
|
33039
33132
|
length: config.maxRating
|
|
@@ -33041,7 +33134,7 @@ function ReviewForm({
|
|
|
33041
33134
|
(_2, index3) => index3 + 1
|
|
33042
33135
|
);
|
|
33043
33136
|
}, [config.maxRating]);
|
|
33044
|
-
|
|
33137
|
+
React26.useEffect(() => {
|
|
33045
33138
|
setContent(initialValues?.content ?? "");
|
|
33046
33139
|
setRating(initialValues?.rating ?? 0);
|
|
33047
33140
|
setIsRecommended(initialValues?.isRecommended ?? true);
|
|
@@ -33485,7 +33578,7 @@ function MyReviewPanel({
|
|
|
33485
33578
|
onEditReview,
|
|
33486
33579
|
onDeleteReview
|
|
33487
33580
|
}) {
|
|
33488
|
-
const [editing, setEditing] =
|
|
33581
|
+
const [editing, setEditing] = React26.useState(false);
|
|
33489
33582
|
const ComposerComponent = components?.Composer ?? ReviewComposer_default;
|
|
33490
33583
|
const FormComponent = components?.Form ?? ReviewForm_default;
|
|
33491
33584
|
const HeaderComponent = components?.Header ?? ReviewHeader_default;
|
|
@@ -33641,7 +33734,7 @@ function ReviewMenu({
|
|
|
33641
33734
|
onReport,
|
|
33642
33735
|
onReply
|
|
33643
33736
|
}) {
|
|
33644
|
-
const ref =
|
|
33737
|
+
const ref = React26.useRef(null);
|
|
33645
33738
|
useClickOutside(ref, () => setOpen(false));
|
|
33646
33739
|
const items = [];
|
|
33647
33740
|
if (canEdit) {
|
|
@@ -33792,7 +33885,7 @@ function ReviewReplyMenu({
|
|
|
33792
33885
|
onDelete,
|
|
33793
33886
|
onReport
|
|
33794
33887
|
}) {
|
|
33795
|
-
const ref =
|
|
33888
|
+
const ref = React26.useRef(null);
|
|
33796
33889
|
useClickOutside(ref, () => setOpen(false));
|
|
33797
33890
|
const items = [];
|
|
33798
33891
|
if (canEdit) {
|
|
@@ -33861,7 +33954,7 @@ function ReviewReplyItem({
|
|
|
33861
33954
|
onDeleteReviewReply,
|
|
33862
33955
|
onReportReviewReply
|
|
33863
33956
|
}) {
|
|
33864
|
-
const [menuOpen, setMenuOpen] =
|
|
33957
|
+
const [menuOpen, setMenuOpen] = React26.useState(false);
|
|
33865
33958
|
const HeaderComponent = components?.ReplyHeader ?? ReviewReplyHeader_default;
|
|
33866
33959
|
const ContentComponent = components?.ReplyContent ?? ReviewReplyContent_default;
|
|
33867
33960
|
const MenuComponent = components?.ReplyMenu ?? ReviewReplyMenu_default;
|
|
@@ -33938,7 +34031,7 @@ function ReviewItem({
|
|
|
33938
34031
|
onDeleteReviewReply,
|
|
33939
34032
|
onReportReviewReply
|
|
33940
34033
|
}) {
|
|
33941
|
-
const [menuOpen, setMenuOpen] =
|
|
34034
|
+
const [menuOpen, setMenuOpen] = React26.useState(false);
|
|
33942
34035
|
const HeaderComponent = components?.Header ?? ReviewHeader_default;
|
|
33943
34036
|
const ContentComponent = components?.Content ?? ReviewContent_default;
|
|
33944
34037
|
const RatingComponent = components?.Rating ?? ReviewRating_default;
|
|
@@ -34088,28 +34181,28 @@ function useReviewThreadState({
|
|
|
34088
34181
|
onReviewUpdated,
|
|
34089
34182
|
onReviewDeleted
|
|
34090
34183
|
}) {
|
|
34091
|
-
const [reviews, setReviews] =
|
|
34092
|
-
const [myReview, setMyReview] =
|
|
34093
|
-
const [isLoadingReviews, setIsLoadingReviews] =
|
|
34094
|
-
const [isLoadingMyReview, setIsLoadingMyReview] =
|
|
34184
|
+
const [reviews, setReviews] = React26.useState([]);
|
|
34185
|
+
const [myReview, setMyReview] = React26.useState(null);
|
|
34186
|
+
const [isLoadingReviews, setIsLoadingReviews] = React26.useState(true);
|
|
34187
|
+
const [isLoadingMyReview, setIsLoadingMyReview] = React26.useState(
|
|
34095
34188
|
Boolean(dataSource.getMyReview && shouldLoadMyReview)
|
|
34096
34189
|
);
|
|
34097
|
-
const [isCreatingReview, setIsCreatingReview] =
|
|
34098
|
-
const [isUpdatingReview, setIsUpdatingReview] =
|
|
34099
|
-
const [isDeletingReview, setIsDeletingReview] =
|
|
34100
|
-
const [isCreatingReviewReply, setIsCreatingReviewReply] =
|
|
34101
|
-
const [isUpdatingReviewReply, setIsUpdatingReviewReply] =
|
|
34102
|
-
const [isDeletingReviewReply, setIsDeletingReviewReply] =
|
|
34103
|
-
const [reviewsError, setReviewsError] =
|
|
34104
|
-
const [myReviewError, setMyReviewError] =
|
|
34190
|
+
const [isCreatingReview, setIsCreatingReview] = React26.useState(false);
|
|
34191
|
+
const [isUpdatingReview, setIsUpdatingReview] = React26.useState(false);
|
|
34192
|
+
const [isDeletingReview, setIsDeletingReview] = React26.useState(false);
|
|
34193
|
+
const [isCreatingReviewReply, setIsCreatingReviewReply] = React26.useState(false);
|
|
34194
|
+
const [isUpdatingReviewReply, setIsUpdatingReviewReply] = React26.useState(false);
|
|
34195
|
+
const [isDeletingReviewReply, setIsDeletingReviewReply] = React26.useState(false);
|
|
34196
|
+
const [reviewsError, setReviewsError] = React26.useState(null);
|
|
34197
|
+
const [myReviewError, setMyReviewError] = React26.useState(null);
|
|
34105
34198
|
const error = reviewsError ?? myReviewError;
|
|
34106
|
-
const visibleReviews =
|
|
34199
|
+
const visibleReviews = React26.useMemo(() => {
|
|
34107
34200
|
if (config.showMyReviewInList || !myReview) {
|
|
34108
34201
|
return reviews;
|
|
34109
34202
|
}
|
|
34110
34203
|
return reviews.filter((review) => review.id !== myReview.id);
|
|
34111
34204
|
}, [config.showMyReviewInList, myReview, reviews]);
|
|
34112
|
-
const applyReview =
|
|
34205
|
+
const applyReview = React26.useCallback((review) => {
|
|
34113
34206
|
setReviews((prev) => upsertReview(prev, review));
|
|
34114
34207
|
setMyReview((prev) => {
|
|
34115
34208
|
if (!prev || prev.id !== review.id) {
|
|
@@ -34118,7 +34211,7 @@ function useReviewThreadState({
|
|
|
34118
34211
|
return review;
|
|
34119
34212
|
});
|
|
34120
34213
|
}, []);
|
|
34121
|
-
const applyReviewUpdater =
|
|
34214
|
+
const applyReviewUpdater = React26.useCallback(
|
|
34122
34215
|
(reviewId, updater) => {
|
|
34123
34216
|
setReviews((prev) => updateReview(prev, reviewId, updater));
|
|
34124
34217
|
setMyReview((prev) => {
|
|
@@ -34130,7 +34223,7 @@ function useReviewThreadState({
|
|
|
34130
34223
|
},
|
|
34131
34224
|
[]
|
|
34132
34225
|
);
|
|
34133
|
-
const removeReviewById =
|
|
34226
|
+
const removeReviewById = React26.useCallback((reviewId) => {
|
|
34134
34227
|
setReviews((prev) => removeReview(prev, reviewId));
|
|
34135
34228
|
setMyReview((prev) => {
|
|
34136
34229
|
if (!prev || prev.id !== reviewId) {
|
|
@@ -34139,7 +34232,7 @@ function useReviewThreadState({
|
|
|
34139
34232
|
return null;
|
|
34140
34233
|
});
|
|
34141
34234
|
}, []);
|
|
34142
|
-
const loadReviews =
|
|
34235
|
+
const loadReviews = React26.useCallback(async () => {
|
|
34143
34236
|
try {
|
|
34144
34237
|
setIsLoadingReviews(true);
|
|
34145
34238
|
setReviewsError(null);
|
|
@@ -34153,7 +34246,7 @@ function useReviewThreadState({
|
|
|
34153
34246
|
setIsLoadingReviews(false);
|
|
34154
34247
|
}
|
|
34155
34248
|
}, [config.reviewsPerPage, dataSource, targetId]);
|
|
34156
|
-
const loadMyReview =
|
|
34249
|
+
const loadMyReview = React26.useCallback(async () => {
|
|
34157
34250
|
if (!dataSource.getMyReview || !shouldLoadMyReview) {
|
|
34158
34251
|
setMyReview(null);
|
|
34159
34252
|
setIsLoadingMyReview(false);
|
|
@@ -34172,10 +34265,10 @@ function useReviewThreadState({
|
|
|
34172
34265
|
setIsLoadingMyReview(false);
|
|
34173
34266
|
}
|
|
34174
34267
|
}, [dataSource, shouldLoadMyReview, targetId]);
|
|
34175
|
-
const reload =
|
|
34268
|
+
const reload = React26.useCallback(async () => {
|
|
34176
34269
|
await Promise.all([loadReviews(), loadMyReview()]);
|
|
34177
34270
|
}, [loadReviews, loadMyReview]);
|
|
34178
|
-
const createReview =
|
|
34271
|
+
const createReview = React26.useCallback(
|
|
34179
34272
|
async (values) => {
|
|
34180
34273
|
try {
|
|
34181
34274
|
setIsCreatingReview(true);
|
|
@@ -34194,7 +34287,7 @@ function useReviewThreadState({
|
|
|
34194
34287
|
},
|
|
34195
34288
|
[dataSource, onReviewCreated]
|
|
34196
34289
|
);
|
|
34197
|
-
const updateReview2 =
|
|
34290
|
+
const updateReview2 = React26.useCallback(
|
|
34198
34291
|
async (review, values) => {
|
|
34199
34292
|
try {
|
|
34200
34293
|
setIsUpdatingReview(true);
|
|
@@ -34219,7 +34312,7 @@ function useReviewThreadState({
|
|
|
34219
34312
|
},
|
|
34220
34313
|
[dataSource, onReviewUpdated]
|
|
34221
34314
|
);
|
|
34222
|
-
const deleteReview =
|
|
34315
|
+
const deleteReview = React26.useCallback(
|
|
34223
34316
|
async (review) => {
|
|
34224
34317
|
try {
|
|
34225
34318
|
setIsDeletingReview(true);
|
|
@@ -34232,7 +34325,7 @@ function useReviewThreadState({
|
|
|
34232
34325
|
},
|
|
34233
34326
|
[dataSource, onReviewDeleted, removeReviewById]
|
|
34234
34327
|
);
|
|
34235
|
-
const createReviewReply =
|
|
34328
|
+
const createReviewReply = React26.useCallback(
|
|
34236
34329
|
async (input) => {
|
|
34237
34330
|
if (!dataSource.createReviewReply) {
|
|
34238
34331
|
throw new Error("createReviewReply is not implemented by dataSource.");
|
|
@@ -34255,7 +34348,7 @@ function useReviewThreadState({
|
|
|
34255
34348
|
},
|
|
34256
34349
|
[applyReview, applyReviewUpdater, config.maxRepliesPerReview, dataSource]
|
|
34257
34350
|
);
|
|
34258
|
-
const updateReviewReply2 =
|
|
34351
|
+
const updateReviewReply2 = React26.useCallback(
|
|
34259
34352
|
async (input) => {
|
|
34260
34353
|
if (!dataSource.updateReviewReply) {
|
|
34261
34354
|
throw new Error("updateReviewReply is not implemented by dataSource.");
|
|
@@ -34278,7 +34371,7 @@ function useReviewThreadState({
|
|
|
34278
34371
|
},
|
|
34279
34372
|
[applyReview, applyReviewUpdater, dataSource]
|
|
34280
34373
|
);
|
|
34281
|
-
const deleteReviewReply =
|
|
34374
|
+
const deleteReviewReply = React26.useCallback(
|
|
34282
34375
|
async (reviewId, replyId) => {
|
|
34283
34376
|
if (!dataSource.deleteReviewReply) {
|
|
34284
34377
|
throw new Error("deleteReviewReply is not implemented by dataSource.");
|
|
@@ -34301,7 +34394,7 @@ function useReviewThreadState({
|
|
|
34301
34394
|
},
|
|
34302
34395
|
[applyReview, applyReviewUpdater, dataSource]
|
|
34303
34396
|
);
|
|
34304
|
-
|
|
34397
|
+
React26.useEffect(() => {
|
|
34305
34398
|
let cancelled = false;
|
|
34306
34399
|
async function run() {
|
|
34307
34400
|
try {
|
|
@@ -34328,7 +34421,7 @@ function useReviewThreadState({
|
|
|
34328
34421
|
cancelled = true;
|
|
34329
34422
|
};
|
|
34330
34423
|
}, [config.reviewsPerPage, dataSource, targetId]);
|
|
34331
|
-
|
|
34424
|
+
React26.useEffect(() => {
|
|
34332
34425
|
let cancelled = false;
|
|
34333
34426
|
async function run() {
|
|
34334
34427
|
if (!dataSource.getMyReview || !shouldLoadMyReview) {
|
|
@@ -34360,19 +34453,19 @@ function useReviewThreadState({
|
|
|
34360
34453
|
cancelled = true;
|
|
34361
34454
|
};
|
|
34362
34455
|
}, [dataSource, shouldLoadMyReview, targetId]);
|
|
34363
|
-
|
|
34456
|
+
React26.useEffect(() => {
|
|
34364
34457
|
if (!updatedReview) {
|
|
34365
34458
|
return;
|
|
34366
34459
|
}
|
|
34367
34460
|
applyReview(updatedReview);
|
|
34368
34461
|
}, [applyReview, updatedReview]);
|
|
34369
|
-
|
|
34462
|
+
React26.useEffect(() => {
|
|
34370
34463
|
if (!deletedReview) {
|
|
34371
34464
|
return;
|
|
34372
34465
|
}
|
|
34373
34466
|
removeReviewById(deletedReview.id);
|
|
34374
34467
|
}, [deletedReview, removeReviewById]);
|
|
34375
|
-
|
|
34468
|
+
React26.useEffect(() => {
|
|
34376
34469
|
if (!updatedReviewReply) {
|
|
34377
34470
|
return;
|
|
34378
34471
|
}
|
|
@@ -34399,7 +34492,7 @@ function useReviewThreadState({
|
|
|
34399
34492
|
config.maxRepliesPerReview,
|
|
34400
34493
|
updatedReviewReply
|
|
34401
34494
|
]);
|
|
34402
|
-
|
|
34495
|
+
React26.useEffect(() => {
|
|
34403
34496
|
if (!deletedReviewReply) {
|
|
34404
34497
|
return;
|
|
34405
34498
|
}
|
|
@@ -34571,7 +34664,7 @@ function ReviewThread({
|
|
|
34571
34664
|
] });
|
|
34572
34665
|
}
|
|
34573
34666
|
var ReviewThread_default = ReviewThread;
|
|
34574
|
-
var MarkdownContext =
|
|
34667
|
+
var MarkdownContext = React26.createContext(null);
|
|
34575
34668
|
|
|
34576
34669
|
// src/compositions/markdown/utils/sanitizeHeading.ts
|
|
34577
34670
|
function sanitizeHeading(text10, options = {}) {
|
|
@@ -34792,30 +34885,30 @@ function MarkdownProvider({
|
|
|
34792
34885
|
onActiveHeadingChange
|
|
34793
34886
|
}) {
|
|
34794
34887
|
const resolvedMarkdown = value ?? markdown ?? "";
|
|
34795
|
-
const [internalActiveHeading, setInternalActiveHeading] =
|
|
34796
|
-
const headings =
|
|
34888
|
+
const [internalActiveHeading, setInternalActiveHeading] = React26.useState(defaultActiveHeading);
|
|
34889
|
+
const headings = React26.useMemo(() => {
|
|
34797
34890
|
if (externalHeadings) {
|
|
34798
34891
|
return externalHeadings;
|
|
34799
34892
|
}
|
|
34800
34893
|
return extractHeadings(resolvedMarkdown);
|
|
34801
34894
|
}, [externalHeadings, resolvedMarkdown]);
|
|
34802
|
-
const numberedHeadings =
|
|
34895
|
+
const numberedHeadings = React26.useMemo(() => {
|
|
34803
34896
|
return generateHeadingNumbers(headings);
|
|
34804
34897
|
}, [headings]);
|
|
34805
|
-
const headingMap =
|
|
34898
|
+
const headingMap = React26.useMemo(() => {
|
|
34806
34899
|
return headings.reduce((acc, heading3) => {
|
|
34807
34900
|
acc[heading3.id] = heading3;
|
|
34808
34901
|
return acc;
|
|
34809
34902
|
}, {});
|
|
34810
34903
|
}, [headings]);
|
|
34811
34904
|
const activeHeading = controlledActiveHeading ?? internalActiveHeading;
|
|
34812
|
-
const getHeadingById =
|
|
34905
|
+
const getHeadingById = React26.useCallback(
|
|
34813
34906
|
(id2) => {
|
|
34814
34907
|
return headingMap[id2];
|
|
34815
34908
|
},
|
|
34816
34909
|
[headingMap]
|
|
34817
34910
|
);
|
|
34818
|
-
const setActiveHeading =
|
|
34911
|
+
const setActiveHeading = React26.useCallback(
|
|
34819
34912
|
(id2) => {
|
|
34820
34913
|
if (controlledActiveHeading === void 0) {
|
|
34821
34914
|
setInternalActiveHeading(id2);
|
|
@@ -34824,7 +34917,7 @@ function MarkdownProvider({
|
|
|
34824
34917
|
},
|
|
34825
34918
|
[controlledActiveHeading, headingMap, onActiveHeadingChange]
|
|
34826
34919
|
);
|
|
34827
|
-
const contextValue =
|
|
34920
|
+
const contextValue = React26.useMemo(
|
|
34828
34921
|
() => ({
|
|
34829
34922
|
markdown: resolvedMarkdown,
|
|
34830
34923
|
headings,
|
|
@@ -34849,7 +34942,7 @@ function MarkdownProvider({
|
|
|
34849
34942
|
var MarkdownProvider_default = MarkdownProvider;
|
|
34850
34943
|
function useMarkdown(options = {}) {
|
|
34851
34944
|
const { required = false, errorMessage } = options;
|
|
34852
|
-
const context =
|
|
34945
|
+
const context = React26.useContext(MarkdownContext);
|
|
34853
34946
|
if (!context && required) {
|
|
34854
34947
|
throw new Error(
|
|
34855
34948
|
errorMessage || "useMarkdown must be used inside a MarkdownProvider."
|
|
@@ -34872,15 +34965,15 @@ function useActiveHeading(options = {}) {
|
|
|
34872
34965
|
onActiveHeadingChange
|
|
34873
34966
|
} = options;
|
|
34874
34967
|
const headings = externalHeadings ?? context?.headings ?? [];
|
|
34875
|
-
const [internalActiveHeading, setInternalActiveHeading] =
|
|
34968
|
+
const [internalActiveHeading, setInternalActiveHeading] = React26.useState(defaultActiveHeading);
|
|
34876
34969
|
const activeHeading = controlledActiveHeading ?? context?.activeHeading ?? internalActiveHeading;
|
|
34877
|
-
const headingMap =
|
|
34970
|
+
const headingMap = React26.useMemo(() => {
|
|
34878
34971
|
return headings.reduce((acc, heading3) => {
|
|
34879
34972
|
acc[heading3.id] = heading3;
|
|
34880
34973
|
return acc;
|
|
34881
34974
|
}, {});
|
|
34882
34975
|
}, [headings]);
|
|
34883
|
-
const setActiveHeading =
|
|
34976
|
+
const setActiveHeading = React26.useCallback(
|
|
34884
34977
|
(id2) => {
|
|
34885
34978
|
if (controlledActiveHeading === void 0 && !context) {
|
|
34886
34979
|
setInternalActiveHeading(id2);
|
|
@@ -34890,7 +34983,7 @@ function useActiveHeading(options = {}) {
|
|
|
34890
34983
|
},
|
|
34891
34984
|
[context, controlledActiveHeading, headingMap, onActiveHeadingChange]
|
|
34892
34985
|
);
|
|
34893
|
-
const scrollToHeading =
|
|
34986
|
+
const scrollToHeading = React26.useCallback(
|
|
34894
34987
|
(id2) => {
|
|
34895
34988
|
if (typeof document === "undefined") return;
|
|
34896
34989
|
const element6 = document.getElementById(id2);
|
|
@@ -34903,10 +34996,10 @@ function useActiveHeading(options = {}) {
|
|
|
34903
34996
|
},
|
|
34904
34997
|
[scrollBehavior, scrollBlock, setActiveHeading]
|
|
34905
34998
|
);
|
|
34906
|
-
const observedHeadingIds =
|
|
34999
|
+
const observedHeadingIds = React26.useMemo(() => {
|
|
34907
35000
|
return headings.map((heading3) => heading3.id).join("|");
|
|
34908
35001
|
}, [headings]);
|
|
34909
|
-
|
|
35002
|
+
React26.useEffect(() => {
|
|
34910
35003
|
if (!enabled) return;
|
|
34911
35004
|
if (typeof window === "undefined") return;
|
|
34912
35005
|
if (!("IntersectionObserver" in window)) return;
|
|
@@ -34955,7 +35048,7 @@ function useMarkdownHeadings(options = {}) {
|
|
|
34955
35048
|
minDepth = 1,
|
|
34956
35049
|
maxDepth = 6
|
|
34957
35050
|
} = options;
|
|
34958
|
-
const baseHeadings =
|
|
35051
|
+
const baseHeadings = React26.useMemo(() => {
|
|
34959
35052
|
if (externalHeadings) {
|
|
34960
35053
|
return externalHeadings;
|
|
34961
35054
|
}
|
|
@@ -34964,15 +35057,15 @@ function useMarkdownHeadings(options = {}) {
|
|
|
34964
35057
|
}
|
|
34965
35058
|
return context?.headings ?? [];
|
|
34966
35059
|
}, [context?.headings, externalHeadings, markdown]);
|
|
34967
|
-
const headings =
|
|
35060
|
+
const headings = React26.useMemo(() => {
|
|
34968
35061
|
return baseHeadings.filter((heading3) => {
|
|
34969
35062
|
return heading3.level >= minDepth && heading3.level <= maxDepth;
|
|
34970
35063
|
});
|
|
34971
35064
|
}, [baseHeadings, minDepth, maxDepth]);
|
|
34972
|
-
const numberedHeadings =
|
|
35065
|
+
const numberedHeadings = React26.useMemo(() => {
|
|
34973
35066
|
return generateHeadingNumbers(headings);
|
|
34974
35067
|
}, [headings]);
|
|
34975
|
-
const headingMap =
|
|
35068
|
+
const headingMap = React26.useMemo(() => {
|
|
34976
35069
|
return headings.reduce((acc, heading3) => {
|
|
34977
35070
|
acc[heading3.id] = heading3;
|
|
34978
35071
|
return acc;
|
|
@@ -35364,11 +35457,11 @@ function addChildren(props, children3) {
|
|
|
35364
35457
|
}
|
|
35365
35458
|
}
|
|
35366
35459
|
}
|
|
35367
|
-
function productionCreate(_2,
|
|
35460
|
+
function productionCreate(_2, jsx252, jsxs125) {
|
|
35368
35461
|
return create3;
|
|
35369
35462
|
function create3(_3, type2, props, key) {
|
|
35370
35463
|
const isStaticChildren = Array.isArray(props.children);
|
|
35371
|
-
const fn = isStaticChildren ?
|
|
35464
|
+
const fn = isStaticChildren ? jsxs125 : jsx252;
|
|
35372
35465
|
return key ? fn(type2, props, key) : fn(type2, props);
|
|
35373
35466
|
}
|
|
35374
35467
|
}
|
|
@@ -55112,6 +55205,14 @@ function rehypeSanitize(options) {
|
|
|
55112
55205
|
return result;
|
|
55113
55206
|
};
|
|
55114
55207
|
}
|
|
55208
|
+
var HEADING_STYLES = {
|
|
55209
|
+
1: "mb-6 text-4xl tracking-[-0.035em]",
|
|
55210
|
+
2: "mb-4 mt-10 border-b border-gray-200 pb-2 text-[1.75rem] tracking-[-0.025em] dark:border-gray-700",
|
|
55211
|
+
3: "mb-3 mt-8 text-[1.35rem]",
|
|
55212
|
+
4: "mb-2 mt-7 text-[1.1rem]",
|
|
55213
|
+
5: "mb-2 mt-6 text-base",
|
|
55214
|
+
6: "mb-2 mt-5 text-sm uppercase tracking-[0.08em] text-gray-500 dark:text-gray-400"
|
|
55215
|
+
};
|
|
55115
55216
|
function MarkdownHeading({
|
|
55116
55217
|
id: id2,
|
|
55117
55218
|
level,
|
|
@@ -55120,13 +55221,21 @@ function MarkdownHeading({
|
|
|
55120
55221
|
showAnchor = true,
|
|
55121
55222
|
...props
|
|
55122
55223
|
}) {
|
|
55123
|
-
const
|
|
55124
|
-
|
|
55125
|
-
|
|
55224
|
+
const normalizedLevel = Math.min(Math.max(level, 1), 6);
|
|
55225
|
+
const TypographyComponent = normalizedLevel <= 3 ? Chapter : Section;
|
|
55226
|
+
const typographyLevel = normalizedLevel <= 3 ? normalizedLevel : normalizedLevel - 3;
|
|
55227
|
+
return React26.createElement(
|
|
55228
|
+
TypographyComponent,
|
|
55126
55229
|
{
|
|
55127
55230
|
...props,
|
|
55128
55231
|
id: id2,
|
|
55129
|
-
|
|
55232
|
+
level: typographyLevel,
|
|
55233
|
+
bold: true,
|
|
55234
|
+
className: classNames77__default.default(
|
|
55235
|
+
"eui-markdown-heading group relative scroll-mt-24 font-bold leading-tight text-gray-900 dark:text-gray-100",
|
|
55236
|
+
HEADING_STYLES[level],
|
|
55237
|
+
className
|
|
55238
|
+
)
|
|
55130
55239
|
},
|
|
55131
55240
|
/* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
55132
55241
|
children3,
|
|
@@ -55134,7 +55243,7 @@ function MarkdownHeading({
|
|
|
55134
55243
|
"a",
|
|
55135
55244
|
{
|
|
55136
55245
|
href: `#${id2}`,
|
|
55137
|
-
className: "eui-markdown-heading-anchor",
|
|
55246
|
+
className: "eui-markdown-heading-anchor ml-2 text-gray-400 no-underline opacity-0 transition group-hover:opacity-100 hover:text-blue-600 focus:opacity-100 dark:text-gray-500 dark:hover:text-blue-400",
|
|
55138
55247
|
"aria-label": "Link to heading",
|
|
55139
55248
|
children: "#"
|
|
55140
55249
|
}
|
|
@@ -55187,18 +55296,18 @@ function powerSetPermutations(arr) {
|
|
|
55187
55296
|
}
|
|
55188
55297
|
}
|
|
55189
55298
|
var classNameCombinations = {};
|
|
55190
|
-
function getClassNameCombinations(
|
|
55191
|
-
if (
|
|
55192
|
-
var key =
|
|
55299
|
+
function getClassNameCombinations(classNames81) {
|
|
55300
|
+
if (classNames81.length === 0 || classNames81.length === 1) return classNames81;
|
|
55301
|
+
var key = classNames81.join(".");
|
|
55193
55302
|
if (!classNameCombinations[key]) {
|
|
55194
|
-
classNameCombinations[key] = powerSetPermutations(
|
|
55303
|
+
classNameCombinations[key] = powerSetPermutations(classNames81);
|
|
55195
55304
|
}
|
|
55196
55305
|
return classNameCombinations[key];
|
|
55197
55306
|
}
|
|
55198
|
-
function createStyleObject(
|
|
55307
|
+
function createStyleObject(classNames81) {
|
|
55199
55308
|
var elementStyle = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
55200
55309
|
var stylesheet = arguments.length > 2 ? arguments[2] : void 0;
|
|
55201
|
-
var nonTokenClassNames =
|
|
55310
|
+
var nonTokenClassNames = classNames81.filter(function(className) {
|
|
55202
55311
|
return className !== "token";
|
|
55203
55312
|
});
|
|
55204
55313
|
var classNamesCombinations = getClassNameCombinations(nonTokenClassNames);
|
|
@@ -55206,15 +55315,15 @@ function createStyleObject(classNames70) {
|
|
|
55206
55315
|
return _objectSpread(_objectSpread({}, styleObject), stylesheet[className]);
|
|
55207
55316
|
}, elementStyle);
|
|
55208
55317
|
}
|
|
55209
|
-
function createClassNameString(
|
|
55210
|
-
return
|
|
55318
|
+
function createClassNameString(classNames81) {
|
|
55319
|
+
return classNames81.join(" ");
|
|
55211
55320
|
}
|
|
55212
55321
|
function createChildren2(stylesheet, useInlineStyles) {
|
|
55213
55322
|
var childrenCount = 0;
|
|
55214
55323
|
return function(children3) {
|
|
55215
55324
|
childrenCount += 1;
|
|
55216
55325
|
return children3.map(function(child, i) {
|
|
55217
|
-
return
|
|
55326
|
+
return createElement2({
|
|
55218
55327
|
node: child,
|
|
55219
55328
|
stylesheet,
|
|
55220
55329
|
useInlineStyles,
|
|
@@ -55223,7 +55332,7 @@ function createChildren2(stylesheet, useInlineStyles) {
|
|
|
55223
55332
|
});
|
|
55224
55333
|
};
|
|
55225
55334
|
}
|
|
55226
|
-
function
|
|
55335
|
+
function createElement2(_ref) {
|
|
55227
55336
|
var node2 = _ref.node, stylesheet = _ref.stylesheet, _ref$style = _ref.style, style2 = _ref$style === void 0 ? {} : _ref$style, useInlineStyles = _ref.useInlineStyles, key = _ref.key;
|
|
55228
55337
|
var properties2 = node2.properties, type2 = node2.type, TagName = node2.tagName, value = node2.value;
|
|
55229
55338
|
if (type2 === "text") {
|
|
@@ -55252,7 +55361,7 @@ function createElement(_ref) {
|
|
|
55252
55361
|
});
|
|
55253
55362
|
}
|
|
55254
55363
|
var children3 = childrenCreator(node2.children);
|
|
55255
|
-
return /* @__PURE__ */
|
|
55364
|
+
return /* @__PURE__ */ React26__default.default.createElement(TagName, (0, import_extends.default)({
|
|
55256
55365
|
key
|
|
55257
55366
|
}, props), children3);
|
|
55258
55367
|
}
|
|
@@ -55295,7 +55404,7 @@ function getAllLineNumbers(_ref) {
|
|
|
55295
55404
|
var lines = _ref.lines, startingLineNumber = _ref.startingLineNumber, style2 = _ref.style;
|
|
55296
55405
|
return lines.map(function(_2, i) {
|
|
55297
55406
|
var number3 = i + startingLineNumber;
|
|
55298
|
-
return /* @__PURE__ */
|
|
55407
|
+
return /* @__PURE__ */ React26__default.default.createElement("span", {
|
|
55299
55408
|
key: "line-".concat(i),
|
|
55300
55409
|
className: "react-syntax-highlighter-line-number",
|
|
55301
55410
|
style: typeof style2 === "function" ? style2(number3) : style2
|
|
@@ -55307,7 +55416,7 @@ function AllLineNumbers(_ref2) {
|
|
|
55307
55416
|
"float": "left",
|
|
55308
55417
|
paddingRight: "10px"
|
|
55309
55418
|
} : _ref2$containerStyle, _ref2$numberStyle = _ref2.numberStyle, numberStyle = _ref2$numberStyle === void 0 ? {} : _ref2$numberStyle, startingLineNumber = _ref2.startingLineNumber;
|
|
55310
|
-
return /* @__PURE__ */
|
|
55419
|
+
return /* @__PURE__ */ React26__default.default.createElement("code", {
|
|
55311
55420
|
style: Object.assign({}, codeStyle, containerStyle)
|
|
55312
55421
|
}, getAllLineNumbers({
|
|
55313
55422
|
lines: codeString.replace(/\n$/, "").split("\n"),
|
|
@@ -55380,8 +55489,8 @@ function flattenCodeTree(tree) {
|
|
|
55380
55489
|
}));
|
|
55381
55490
|
} else if (node2.children) {
|
|
55382
55491
|
var _node$properties;
|
|
55383
|
-
var
|
|
55384
|
-
flattenCodeTree(node2.children,
|
|
55492
|
+
var classNames81 = className.concat(((_node$properties = node2.properties) === null || _node$properties === void 0 ? void 0 : _node$properties.className) || []);
|
|
55493
|
+
flattenCodeTree(node2.children, classNames81).forEach(function(i2) {
|
|
55385
55494
|
return newTree.push(i2);
|
|
55386
55495
|
});
|
|
55387
55496
|
}
|
|
@@ -55482,7 +55591,7 @@ function processLines(codeTree, wrapLines, lineProps, showLineNumbers, showInlin
|
|
|
55482
55591
|
function defaultRenderer(_ref5) {
|
|
55483
55592
|
var rows = _ref5.rows, stylesheet = _ref5.stylesheet, useInlineStyles = _ref5.useInlineStyles;
|
|
55484
55593
|
return rows.map(function(node2, i) {
|
|
55485
|
-
return
|
|
55594
|
+
return createElement2({
|
|
55486
55595
|
node: node2,
|
|
55487
55596
|
stylesheet,
|
|
55488
55597
|
useInlineStyles,
|
|
@@ -55528,7 +55637,7 @@ function highlight_default(defaultAstGenerator, defaultStyle) {
|
|
|
55528
55637
|
style: _objectSpread2(_objectSpread2({}, style2['code[class*="language-"]']), style2['code[class*="language-'.concat(language, '"]')])
|
|
55529
55638
|
} : _ref7$codeTagProps, _ref7$useInlineStyles = _ref7.useInlineStyles, useInlineStyles = _ref7$useInlineStyles === void 0 ? true : _ref7$useInlineStyles, _ref7$showLineNumbers = _ref7.showLineNumbers, showLineNumbers = _ref7$showLineNumbers === void 0 ? false : _ref7$showLineNumbers, _ref7$showInlineLineN = _ref7.showInlineLineNumbers, showInlineLineNumbers = _ref7$showInlineLineN === void 0 ? true : _ref7$showInlineLineN, _ref7$startingLineNum = _ref7.startingLineNumber, startingLineNumber = _ref7$startingLineNum === void 0 ? 1 : _ref7$startingLineNum, lineNumberContainerStyle = _ref7.lineNumberContainerStyle, _ref7$lineNumberStyle = _ref7.lineNumberStyle, lineNumberStyle = _ref7$lineNumberStyle === void 0 ? {} : _ref7$lineNumberStyle, wrapLines = _ref7.wrapLines, _ref7$wrapLongLines = _ref7.wrapLongLines, wrapLongLines = _ref7$wrapLongLines === void 0 ? false : _ref7$wrapLongLines, _ref7$lineProps = _ref7.lineProps, lineProps = _ref7$lineProps === void 0 ? {} : _ref7$lineProps, renderer = _ref7.renderer, _ref7$PreTag = _ref7.PreTag, PreTag = _ref7$PreTag === void 0 ? "pre" : _ref7$PreTag, _ref7$CodeTag = _ref7.CodeTag, CodeTag = _ref7$CodeTag === void 0 ? "code" : _ref7$CodeTag, _ref7$code = _ref7.code, code4 = _ref7$code === void 0 ? (Array.isArray(children3) ? children3[0] : children3) || "" : _ref7$code, astGenerator = _ref7.astGenerator, rest = (0, import_objectWithoutProperties.default)(_ref7, _excluded);
|
|
55530
55639
|
astGenerator = astGenerator || defaultAstGenerator;
|
|
55531
|
-
var allLineNumbers = showLineNumbers ? /* @__PURE__ */
|
|
55640
|
+
var allLineNumbers = showLineNumbers ? /* @__PURE__ */ React26__default.default.createElement(AllLineNumbers, {
|
|
55532
55641
|
containerStyle: lineNumberContainerStyle,
|
|
55533
55642
|
codeStyle: codeTagProps.style || {},
|
|
55534
55643
|
numberStyle: lineNumberStyle,
|
|
@@ -55555,7 +55664,7 @@ function highlight_default(defaultAstGenerator, defaultStyle) {
|
|
|
55555
55664
|
}, codeTagProps.style);
|
|
55556
55665
|
}
|
|
55557
55666
|
if (!astGenerator) {
|
|
55558
|
-
return /* @__PURE__ */
|
|
55667
|
+
return /* @__PURE__ */ React26__default.default.createElement(PreTag, preProps, allLineNumbers, /* @__PURE__ */ React26__default.default.createElement(CodeTag, codeTagProps, code4));
|
|
55559
55668
|
}
|
|
55560
55669
|
if (wrapLines === void 0 && renderer || wrapLongLines) wrapLines = true;
|
|
55561
55670
|
renderer = renderer || defaultRenderer;
|
|
@@ -55575,7 +55684,7 @@ function highlight_default(defaultAstGenerator, defaultStyle) {
|
|
|
55575
55684
|
var lineBreakCount = (_code$match$length = (_code$match = code4.match(/\n/g)) === null || _code$match === void 0 ? void 0 : _code$match.length) !== null && _code$match$length !== void 0 ? _code$match$length : 0;
|
|
55576
55685
|
var largestLineNumber = startingLineNumber + lineBreakCount;
|
|
55577
55686
|
var rows = processLines(codeTree, wrapLines, lineProps, showLineNumbers, showInlineLineNumbers, startingLineNumber, largestLineNumber, lineNumberStyle, wrapLongLines);
|
|
55578
|
-
return /* @__PURE__ */
|
|
55687
|
+
return /* @__PURE__ */ React26__default.default.createElement(PreTag, preProps, /* @__PURE__ */ React26__default.default.createElement(CodeTag, codeTagProps, !showInlineLineNumbers && allLineNumbers, renderer({
|
|
55579
55688
|
rows,
|
|
55580
55689
|
stylesheet: style2,
|
|
55581
55690
|
useInlineStyles
|
|
@@ -55912,7 +56021,7 @@ var json_default = json;
|
|
|
55912
56021
|
|
|
55913
56022
|
// node_modules/react-syntax-highlighter/dist/esm/languages/prism/jsx.js
|
|
55914
56023
|
init_jsx();
|
|
55915
|
-
var jsx_default =
|
|
56024
|
+
var jsx_default = jsx213;
|
|
55916
56025
|
|
|
55917
56026
|
// node_modules/react-syntax-highlighter/dist/esm/languages/prism/markup.js
|
|
55918
56027
|
init_markup();
|
|
@@ -56003,19 +56112,19 @@ function MarkdownCodeBlock({
|
|
|
56003
56112
|
wrapLongLines = false,
|
|
56004
56113
|
...props
|
|
56005
56114
|
}) {
|
|
56006
|
-
const [copied, setCopied] =
|
|
56007
|
-
const timeoutRef =
|
|
56115
|
+
const [copied, setCopied] = React26.useState(false);
|
|
56116
|
+
const timeoutRef = React26.useRef(null);
|
|
56008
56117
|
const title = meta?.title ?? meta?.filename;
|
|
56009
|
-
const resolvedLanguage =
|
|
56118
|
+
const resolvedLanguage = React26.useMemo(() => {
|
|
56010
56119
|
return normalizeLanguage(language);
|
|
56011
56120
|
}, [language]);
|
|
56012
56121
|
const languageLabel = language || resolvedLanguage;
|
|
56013
56122
|
const showHeader = Boolean(title || languageLabel || showCopy);
|
|
56014
|
-
const highlightLines =
|
|
56123
|
+
const highlightLines = React26.useMemo(() => {
|
|
56015
56124
|
return new Set(meta?.highlightLines ?? []);
|
|
56016
56125
|
}, [meta?.highlightLines]);
|
|
56017
56126
|
const showLineNumbers = Boolean(meta?.showLineNumbers);
|
|
56018
|
-
|
|
56127
|
+
React26.useEffect(() => {
|
|
56019
56128
|
return () => {
|
|
56020
56129
|
if (timeoutRef.current) {
|
|
56021
56130
|
window.clearTimeout(timeoutRef.current);
|
|
@@ -56041,60 +56150,70 @@ function MarkdownCodeBlock({
|
|
|
56041
56150
|
textAlign: "right",
|
|
56042
56151
|
userSelect: "none"
|
|
56043
56152
|
};
|
|
56044
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
56045
|
-
|
|
56046
|
-
|
|
56047
|
-
|
|
56048
|
-
|
|
56049
|
-
|
|
56050
|
-
|
|
56051
|
-
|
|
56052
|
-
|
|
56053
|
-
|
|
56054
|
-
className: "eui-markdown-
|
|
56055
|
-
|
|
56056
|
-
|
|
56057
|
-
|
|
56058
|
-
|
|
56059
|
-
|
|
56060
|
-
|
|
56061
|
-
|
|
56062
|
-
|
|
56063
|
-
|
|
56064
|
-
|
|
56065
|
-
|
|
56066
|
-
showLineNumbers,
|
|
56067
|
-
wrapLines: highlightLines.size > 0,
|
|
56068
|
-
wrapLongLines,
|
|
56069
|
-
PreTag: "pre",
|
|
56070
|
-
CodeTag: "code",
|
|
56071
|
-
customStyle: {
|
|
56072
|
-
margin: 0,
|
|
56073
|
-
padding: "1rem",
|
|
56074
|
-
background: "transparent",
|
|
56075
|
-
fontSize: "0.875rem",
|
|
56076
|
-
lineHeight: 1.7
|
|
56077
|
-
},
|
|
56078
|
-
codeTagProps: {
|
|
56079
|
-
style: {
|
|
56080
|
-
fontFamily: '"JetBrains Mono", "Fira Code", "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace'
|
|
56081
|
-
}
|
|
56082
|
-
},
|
|
56083
|
-
lineNumberStyle,
|
|
56084
|
-
lineProps: (lineNumber) => {
|
|
56085
|
-
const highlighted = highlightLines.has(lineNumber);
|
|
56086
|
-
return {
|
|
56087
|
-
className: highlighted ? "eui-markdown-code-line-highlighted" : void 0,
|
|
56088
|
-
style: {
|
|
56089
|
-
display: "block",
|
|
56090
|
-
background: highlighted ? "rgba(250, 204, 21, 0.12)" : void 0
|
|
56153
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
56154
|
+
"div",
|
|
56155
|
+
{
|
|
56156
|
+
...props,
|
|
56157
|
+
className: classNames77__default.default(
|
|
56158
|
+
"eui-markdown-code my-6 overflow-hidden rounded-md border border-slate-700 bg-[#0d1117] text-slate-300",
|
|
56159
|
+
className
|
|
56160
|
+
),
|
|
56161
|
+
children: [
|
|
56162
|
+
showHeader ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "eui-markdown-code-header flex min-h-10 items-center justify-between gap-3 border-b border-slate-700 bg-[#161b22] px-3 py-2", children: [
|
|
56163
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "eui-markdown-code-header-main flex min-w-0 items-center gap-2.5", children: [
|
|
56164
|
+
title ? /* @__PURE__ */ jsxRuntime.jsx(Caption, { className: "eui-markdown-code-title truncate text-[0.8125rem] font-semibold text-slate-100 opacity-100", children: title }) : null,
|
|
56165
|
+
languageLabel ? /* @__PURE__ */ jsxRuntime.jsx(Overline, { className: "eui-markdown-code-language inline-flex h-[1.35rem] items-center rounded-full border border-slate-700 bg-[#0d1117] px-2 text-[0.6875rem] font-bold uppercase tracking-wider text-slate-400", children: languageLabel }) : null
|
|
56166
|
+
] }),
|
|
56167
|
+
showCopy ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
56168
|
+
"button",
|
|
56169
|
+
{
|
|
56170
|
+
type: "button",
|
|
56171
|
+
className: "eui-markdown-copy-button inline-flex h-7 shrink-0 cursor-pointer items-center justify-center rounded-md border border-slate-700 bg-slate-800 px-2.5 text-xs font-medium leading-none text-slate-300 transition hover:border-slate-500 hover:bg-slate-700 hover:text-slate-100 active:scale-95 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-400",
|
|
56172
|
+
onClick: copyCode,
|
|
56173
|
+
"aria-label": copied ? "Code copied" : "Copy code",
|
|
56174
|
+
children: copied ? "Copied" : "Copy"
|
|
56091
56175
|
}
|
|
56092
|
-
|
|
56093
|
-
},
|
|
56094
|
-
|
|
56095
|
-
|
|
56096
|
-
|
|
56097
|
-
|
|
56176
|
+
) : null
|
|
56177
|
+
] }) : null,
|
|
56178
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
56179
|
+
prism_light_default,
|
|
56180
|
+
{
|
|
56181
|
+
className: "eui-markdown-code-highlighter !m-0 !rounded-none !border-0 !bg-transparent !shadow-none [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:border-[3px] [&::-webkit-scrollbar-thumb]:border-[#0d1117] [&::-webkit-scrollbar-thumb]:bg-slate-700 hover:[&::-webkit-scrollbar-thumb]:bg-slate-500 [&::-webkit-scrollbar-track]:bg-[#0d1117] [&::-webkit-scrollbar]:h-3 [&::-webkit-scrollbar]:w-3",
|
|
56182
|
+
language: resolvedLanguage,
|
|
56183
|
+
style: vsc_dark_plus_default,
|
|
56184
|
+
showLineNumbers,
|
|
56185
|
+
wrapLines: highlightLines.size > 0,
|
|
56186
|
+
wrapLongLines,
|
|
56187
|
+
PreTag: "pre",
|
|
56188
|
+
CodeTag: "code",
|
|
56189
|
+
customStyle: {
|
|
56190
|
+
margin: 0,
|
|
56191
|
+
padding: "1rem",
|
|
56192
|
+
background: "transparent",
|
|
56193
|
+
fontSize: "0.875rem",
|
|
56194
|
+
lineHeight: 1.7
|
|
56195
|
+
},
|
|
56196
|
+
codeTagProps: {
|
|
56197
|
+
style: {
|
|
56198
|
+
fontFamily: '"JetBrains Mono", "Fira Code", "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace'
|
|
56199
|
+
}
|
|
56200
|
+
},
|
|
56201
|
+
lineNumberStyle,
|
|
56202
|
+
lineProps: (lineNumber) => {
|
|
56203
|
+
const highlighted = highlightLines.has(lineNumber);
|
|
56204
|
+
return {
|
|
56205
|
+
className: highlighted ? "eui-markdown-code-line-highlighted border-l-[3px] border-amber-600 bg-yellow-400/10" : void 0,
|
|
56206
|
+
style: {
|
|
56207
|
+
display: "block"
|
|
56208
|
+
}
|
|
56209
|
+
};
|
|
56210
|
+
},
|
|
56211
|
+
children: code4
|
|
56212
|
+
}
|
|
56213
|
+
)
|
|
56214
|
+
]
|
|
56215
|
+
}
|
|
56216
|
+
);
|
|
56098
56217
|
}
|
|
56099
56218
|
var MarkdownCodeBlock_default = MarkdownCodeBlock;
|
|
56100
56219
|
function MarkdownInlineCode({
|
|
@@ -56103,11 +56222,14 @@ function MarkdownInlineCode({
|
|
|
56103
56222
|
...props
|
|
56104
56223
|
}) {
|
|
56105
56224
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56106
|
-
|
|
56225
|
+
Code,
|
|
56107
56226
|
{
|
|
56108
56227
|
...props,
|
|
56109
|
-
className:
|
|
56110
|
-
|
|
56228
|
+
className: classNames77__default.default(
|
|
56229
|
+
"eui-markdown-inline-code whitespace-break-spaces rounded-md border border-gray-300/70 bg-gray-200/60 px-1.5 py-0.5 font-mono text-[0.875em] font-medium text-gray-900 dark:border-gray-600/70 dark:bg-gray-700/50 dark:text-gray-200",
|
|
56230
|
+
className
|
|
56231
|
+
),
|
|
56232
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: children3 })
|
|
56111
56233
|
}
|
|
56112
56234
|
);
|
|
56113
56235
|
}
|
|
@@ -56144,7 +56266,10 @@ function MarkdownLink({
|
|
|
56144
56266
|
href: safeHref,
|
|
56145
56267
|
target: resolvedTarget,
|
|
56146
56268
|
rel,
|
|
56147
|
-
className:
|
|
56269
|
+
className: classNames77__default.default(
|
|
56270
|
+
"eui-markdown-link font-medium text-blue-600 underline underline-offset-4 transition-colors hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300",
|
|
56271
|
+
className
|
|
56272
|
+
),
|
|
56148
56273
|
children: children3
|
|
56149
56274
|
}
|
|
56150
56275
|
);
|
|
@@ -56168,7 +56293,7 @@ function MarkdownImage({
|
|
|
56168
56293
|
return null;
|
|
56169
56294
|
}
|
|
56170
56295
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56171
|
-
|
|
56296
|
+
Image2,
|
|
56172
56297
|
{
|
|
56173
56298
|
...props,
|
|
56174
56299
|
src: safeSrc,
|
|
@@ -56176,7 +56301,10 @@ function MarkdownImage({
|
|
|
56176
56301
|
title,
|
|
56177
56302
|
loading: "lazy",
|
|
56178
56303
|
decoding: "async",
|
|
56179
|
-
className:
|
|
56304
|
+
className: classNames77__default.default(
|
|
56305
|
+
"eui-markdown-image my-6 h-auto max-w-full rounded-md border border-gray-200 dark:border-gray-700",
|
|
56306
|
+
className
|
|
56307
|
+
)
|
|
56180
56308
|
}
|
|
56181
56309
|
);
|
|
56182
56310
|
}
|
|
@@ -56186,14 +56314,34 @@ function MarkdownTable({
|
|
|
56186
56314
|
className,
|
|
56187
56315
|
...props
|
|
56188
56316
|
}) {
|
|
56189
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56317
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TableFrame, { className: "eui-markdown-table-wrapper my-6 rounded-md", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
56318
|
+
TableElement,
|
|
56319
|
+
{
|
|
56320
|
+
...props,
|
|
56321
|
+
className: classNames77__default.default(
|
|
56322
|
+
"eui-markdown-table w-full border-collapse text-[0.925rem]",
|
|
56323
|
+
className
|
|
56324
|
+
),
|
|
56325
|
+
children: children3
|
|
56326
|
+
}
|
|
56327
|
+
) });
|
|
56190
56328
|
}
|
|
56191
56329
|
function MarkdownTableCell({
|
|
56192
56330
|
children: children3,
|
|
56193
56331
|
className,
|
|
56194
56332
|
...props
|
|
56195
56333
|
}) {
|
|
56196
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56334
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56335
|
+
TableCell,
|
|
56336
|
+
{
|
|
56337
|
+
...props,
|
|
56338
|
+
className: classNames77__default.default(
|
|
56339
|
+
"eui-markdown-table-cell border-b border-r border-gray-200 p-3 text-left align-top last:border-r-0 dark:border-gray-700",
|
|
56340
|
+
className
|
|
56341
|
+
),
|
|
56342
|
+
children: children3
|
|
56343
|
+
}
|
|
56344
|
+
);
|
|
56197
56345
|
}
|
|
56198
56346
|
function MarkdownTableHeaderCell({
|
|
56199
56347
|
children: children3,
|
|
@@ -56201,14 +56349,59 @@ function MarkdownTableHeaderCell({
|
|
|
56201
56349
|
...props
|
|
56202
56350
|
}) {
|
|
56203
56351
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56204
|
-
|
|
56352
|
+
TableHeaderCell,
|
|
56205
56353
|
{
|
|
56206
56354
|
...props,
|
|
56207
|
-
className:
|
|
56355
|
+
className: classNames77__default.default(
|
|
56356
|
+
"eui-markdown-table-header-cell border-b border-r border-gray-200 p-3 text-left align-top font-bold text-gray-900 last:border-r-0 dark:border-gray-700 dark:text-gray-100",
|
|
56357
|
+
className
|
|
56358
|
+
),
|
|
56208
56359
|
children: children3
|
|
56209
56360
|
}
|
|
56210
56361
|
);
|
|
56211
56362
|
}
|
|
56363
|
+
function MarkdownTableHead({
|
|
56364
|
+
className,
|
|
56365
|
+
...props
|
|
56366
|
+
}) {
|
|
56367
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56368
|
+
TableHead,
|
|
56369
|
+
{
|
|
56370
|
+
...props,
|
|
56371
|
+
className: classNames77__default.default(
|
|
56372
|
+
"eui-markdown-table-head bg-gray-50 dark:bg-gray-900",
|
|
56373
|
+
className
|
|
56374
|
+
)
|
|
56375
|
+
}
|
|
56376
|
+
);
|
|
56377
|
+
}
|
|
56378
|
+
function MarkdownTableBody({
|
|
56379
|
+
className,
|
|
56380
|
+
...props
|
|
56381
|
+
}) {
|
|
56382
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56383
|
+
TableBody,
|
|
56384
|
+
{
|
|
56385
|
+
...props,
|
|
56386
|
+
className: classNames77__default.default("eui-markdown-table-body", className)
|
|
56387
|
+
}
|
|
56388
|
+
);
|
|
56389
|
+
}
|
|
56390
|
+
function MarkdownTableRow({
|
|
56391
|
+
className,
|
|
56392
|
+
...props
|
|
56393
|
+
}) {
|
|
56394
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56395
|
+
TableRow,
|
|
56396
|
+
{
|
|
56397
|
+
...props,
|
|
56398
|
+
className: classNames77__default.default(
|
|
56399
|
+
"eui-markdown-table-row even:bg-gray-50/70 dark:even:bg-gray-900/60",
|
|
56400
|
+
className
|
|
56401
|
+
)
|
|
56402
|
+
}
|
|
56403
|
+
);
|
|
56404
|
+
}
|
|
56212
56405
|
var MarkdownTable_default = MarkdownTable;
|
|
56213
56406
|
function MarkdownBlockquote({
|
|
56214
56407
|
children: children3,
|
|
@@ -56216,15 +56409,204 @@ function MarkdownBlockquote({
|
|
|
56216
56409
|
...props
|
|
56217
56410
|
}) {
|
|
56218
56411
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56219
|
-
|
|
56412
|
+
Quote,
|
|
56220
56413
|
{
|
|
56221
56414
|
...props,
|
|
56222
|
-
|
|
56223
|
-
|
|
56415
|
+
as: "blockquote",
|
|
56416
|
+
className: classNames77__default.default(
|
|
56417
|
+
"eui-markdown-blockquote my-6 border-l-4 border-gray-300 bg-transparent px-4 py-0 text-gray-600 [&>*:first-child]:mt-0 [&>*:last-child]:mb-0 dark:border-gray-700 dark:text-gray-400",
|
|
56418
|
+
className
|
|
56419
|
+
),
|
|
56420
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: children3 })
|
|
56224
56421
|
}
|
|
56225
56422
|
);
|
|
56226
56423
|
}
|
|
56227
56424
|
var MarkdownBlockquote_default = MarkdownBlockquote;
|
|
56425
|
+
function MarkdownParagraph({
|
|
56426
|
+
children: children3,
|
|
56427
|
+
className,
|
|
56428
|
+
...props
|
|
56429
|
+
}) {
|
|
56430
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56431
|
+
Paragraph,
|
|
56432
|
+
{
|
|
56433
|
+
...props,
|
|
56434
|
+
level: 1,
|
|
56435
|
+
className: classNames77__default.default("eui-markdown-paragraph my-4", className),
|
|
56436
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: children3 })
|
|
56437
|
+
}
|
|
56438
|
+
);
|
|
56439
|
+
}
|
|
56440
|
+
var MarkdownParagraph_default = MarkdownParagraph;
|
|
56441
|
+
function MarkdownStrong({ className, ...props }) {
|
|
56442
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56443
|
+
"strong",
|
|
56444
|
+
{
|
|
56445
|
+
...props,
|
|
56446
|
+
className: classNames77__default.default(
|
|
56447
|
+
"eui-markdown-strong font-semibold text-gray-950 dark:text-gray-100",
|
|
56448
|
+
className
|
|
56449
|
+
)
|
|
56450
|
+
}
|
|
56451
|
+
);
|
|
56452
|
+
}
|
|
56453
|
+
var MarkdownStrong_default = MarkdownStrong;
|
|
56454
|
+
function MarkdownEmphasis({ className, ...props }) {
|
|
56455
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56456
|
+
"em",
|
|
56457
|
+
{
|
|
56458
|
+
...props,
|
|
56459
|
+
className: classNames77__default.default("eui-markdown-emphasis italic", className)
|
|
56460
|
+
}
|
|
56461
|
+
);
|
|
56462
|
+
}
|
|
56463
|
+
var MarkdownEmphasis_default = MarkdownEmphasis;
|
|
56464
|
+
function MarkdownStrikethrough({
|
|
56465
|
+
className,
|
|
56466
|
+
...props
|
|
56467
|
+
}) {
|
|
56468
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56469
|
+
"del",
|
|
56470
|
+
{
|
|
56471
|
+
...props,
|
|
56472
|
+
className: classNames77__default.default(
|
|
56473
|
+
"eui-markdown-strikethrough text-gray-500 dark:text-gray-400",
|
|
56474
|
+
className
|
|
56475
|
+
)
|
|
56476
|
+
}
|
|
56477
|
+
);
|
|
56478
|
+
}
|
|
56479
|
+
var MarkdownStrikethrough_default = MarkdownStrikethrough;
|
|
56480
|
+
function MarkdownUnorderedList({
|
|
56481
|
+
className,
|
|
56482
|
+
...props
|
|
56483
|
+
}) {
|
|
56484
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56485
|
+
ListRoot,
|
|
56486
|
+
{
|
|
56487
|
+
...props,
|
|
56488
|
+
as: "ul",
|
|
56489
|
+
className: cn(
|
|
56490
|
+
"eui-markdown-unordered-list",
|
|
56491
|
+
className?.includes("contains-task-list") && "list-none pl-0",
|
|
56492
|
+
className
|
|
56493
|
+
)
|
|
56494
|
+
}
|
|
56495
|
+
);
|
|
56496
|
+
}
|
|
56497
|
+
function MarkdownOrderedList({
|
|
56498
|
+
className,
|
|
56499
|
+
...props
|
|
56500
|
+
}) {
|
|
56501
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56502
|
+
ListRoot,
|
|
56503
|
+
{
|
|
56504
|
+
...props,
|
|
56505
|
+
as: "ol",
|
|
56506
|
+
className: cn("eui-markdown-ordered-list", className)
|
|
56507
|
+
}
|
|
56508
|
+
);
|
|
56509
|
+
}
|
|
56510
|
+
function MarkdownListItem({ className, ...props }) {
|
|
56511
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56512
|
+
ListItemElement,
|
|
56513
|
+
{
|
|
56514
|
+
...props,
|
|
56515
|
+
as: "li",
|
|
56516
|
+
className: cn(
|
|
56517
|
+
"eui-markdown-list-item",
|
|
56518
|
+
className?.includes("task-list-item") && "list-none pl-0",
|
|
56519
|
+
className
|
|
56520
|
+
)
|
|
56521
|
+
}
|
|
56522
|
+
);
|
|
56523
|
+
}
|
|
56524
|
+
var MarkdownListItem_default = MarkdownListItem;
|
|
56525
|
+
function MarkdownTaskCheckbox({
|
|
56526
|
+
className,
|
|
56527
|
+
...props
|
|
56528
|
+
}) {
|
|
56529
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56530
|
+
"input",
|
|
56531
|
+
{
|
|
56532
|
+
...props,
|
|
56533
|
+
className: classNames77__default.default(
|
|
56534
|
+
"eui-markdown-task-checkbox mr-2 translate-y-px accent-blue-600",
|
|
56535
|
+
className
|
|
56536
|
+
)
|
|
56537
|
+
}
|
|
56538
|
+
);
|
|
56539
|
+
}
|
|
56540
|
+
var MarkdownTaskCheckbox_default = MarkdownTaskCheckbox;
|
|
56541
|
+
function MarkdownThematicBreak({
|
|
56542
|
+
className,
|
|
56543
|
+
...props
|
|
56544
|
+
}) {
|
|
56545
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56546
|
+
"hr",
|
|
56547
|
+
{
|
|
56548
|
+
...props,
|
|
56549
|
+
className: classNames77__default.default(
|
|
56550
|
+
"eui-markdown-thematic-break my-8 border-0 border-t border-gray-200 dark:border-gray-800",
|
|
56551
|
+
className
|
|
56552
|
+
)
|
|
56553
|
+
}
|
|
56554
|
+
);
|
|
56555
|
+
}
|
|
56556
|
+
var MarkdownThematicBreak_default = MarkdownThematicBreak;
|
|
56557
|
+
function MarkdownBreak(props) {
|
|
56558
|
+
return /* @__PURE__ */ jsxRuntime.jsx("br", { ...props });
|
|
56559
|
+
}
|
|
56560
|
+
var MarkdownBreak_default = MarkdownBreak;
|
|
56561
|
+
function MarkdownDetails({ className, ...props }) {
|
|
56562
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56563
|
+
"details",
|
|
56564
|
+
{
|
|
56565
|
+
...props,
|
|
56566
|
+
className: classNames77__default.default(
|
|
56567
|
+
"eui-markdown-details my-4 rounded-md border border-gray-200 bg-gray-50 px-4 py-3 dark:border-gray-800 dark:bg-gray-900",
|
|
56568
|
+
className
|
|
56569
|
+
)
|
|
56570
|
+
}
|
|
56571
|
+
);
|
|
56572
|
+
}
|
|
56573
|
+
function MarkdownSummary({ className, ...props }) {
|
|
56574
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56575
|
+
"summary",
|
|
56576
|
+
{
|
|
56577
|
+
...props,
|
|
56578
|
+
className: classNames77__default.default(
|
|
56579
|
+
"eui-markdown-summary cursor-pointer font-semibold text-gray-950 dark:text-gray-100",
|
|
56580
|
+
className
|
|
56581
|
+
)
|
|
56582
|
+
}
|
|
56583
|
+
);
|
|
56584
|
+
}
|
|
56585
|
+
function MarkdownFigure({ className, ...props }) {
|
|
56586
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56587
|
+
"figure",
|
|
56588
|
+
{
|
|
56589
|
+
...props,
|
|
56590
|
+
className: classNames77__default.default("eui-markdown-figure my-6", className)
|
|
56591
|
+
}
|
|
56592
|
+
);
|
|
56593
|
+
}
|
|
56594
|
+
function MarkdownFigcaption({
|
|
56595
|
+
children: children3,
|
|
56596
|
+
className,
|
|
56597
|
+
...props
|
|
56598
|
+
}) {
|
|
56599
|
+
return /* @__PURE__ */ jsxRuntime.jsx("figcaption", { ...props, className: "eui-markdown-figcaption mt-2 text-center", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
56600
|
+
Caption,
|
|
56601
|
+
{
|
|
56602
|
+
className: classNames77__default.default(
|
|
56603
|
+
"text-gray-500 opacity-100 dark:text-gray-400",
|
|
56604
|
+
className
|
|
56605
|
+
),
|
|
56606
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: children3 })
|
|
56607
|
+
}
|
|
56608
|
+
) });
|
|
56609
|
+
}
|
|
56228
56610
|
function getTextContent(node2) {
|
|
56229
56611
|
if (typeof node2 === "string" || typeof node2 === "number") {
|
|
56230
56612
|
return String(node2);
|
|
@@ -56232,7 +56614,7 @@ function getTextContent(node2) {
|
|
|
56232
56614
|
if (Array.isArray(node2)) {
|
|
56233
56615
|
return node2.map(getTextContent).join("");
|
|
56234
56616
|
}
|
|
56235
|
-
if (
|
|
56617
|
+
if (React26.isValidElement(node2)) {
|
|
56236
56618
|
return getTextContent(node2.props.children);
|
|
56237
56619
|
}
|
|
56238
56620
|
return "";
|
|
@@ -56240,6 +56622,24 @@ function getTextContent(node2) {
|
|
|
56240
56622
|
function createHeadingKey(level, text10) {
|
|
56241
56623
|
return `${level}:${sanitizeHeading(text10)}`;
|
|
56242
56624
|
}
|
|
56625
|
+
function remarkCodeMetadata() {
|
|
56626
|
+
return (tree) => {
|
|
56627
|
+
const visit2 = (node2) => {
|
|
56628
|
+
if (node2.type === "code") {
|
|
56629
|
+
const data = node2.data ?? (node2.data = {});
|
|
56630
|
+
const properties2 = data.hProperties ?? (data.hProperties = {});
|
|
56631
|
+
if (node2.lang) {
|
|
56632
|
+
properties2["data-language"] = node2.lang;
|
|
56633
|
+
}
|
|
56634
|
+
if (node2.meta) {
|
|
56635
|
+
properties2["data-meta"] = node2.meta;
|
|
56636
|
+
}
|
|
56637
|
+
}
|
|
56638
|
+
node2.children?.forEach(visit2);
|
|
56639
|
+
};
|
|
56640
|
+
visit2(tree);
|
|
56641
|
+
};
|
|
56642
|
+
}
|
|
56243
56643
|
function parseNumberRanges(value) {
|
|
56244
56644
|
if (!value) return [];
|
|
56245
56645
|
const normalized = value.replace(/[{}[\]\s]/g, "");
|
|
@@ -56265,15 +56665,19 @@ function parseNumberRanges(value) {
|
|
|
56265
56665
|
}
|
|
56266
56666
|
function parseCodeMeta(metaString) {
|
|
56267
56667
|
if (!metaString) return void 0;
|
|
56268
|
-
const
|
|
56269
|
-
|
|
56270
|
-
|
|
56271
|
-
|
|
56272
|
-
|
|
56668
|
+
const readValue = (key) => {
|
|
56669
|
+
const match = metaString.match(
|
|
56670
|
+
new RegExp(`(?:^|\\s)${key}=(?:"([^"]*)"|'([^']*)'|([^\\s]+))`, "i")
|
|
56671
|
+
);
|
|
56672
|
+
return match?.[1] ?? match?.[2] ?? match?.[3];
|
|
56673
|
+
};
|
|
56674
|
+
const filename = readValue("(?:filename|file)");
|
|
56675
|
+
const title = readValue("title");
|
|
56676
|
+
const highlightMatch = metaString.match(/(?:highlight|lines)=["']?([^"'\s]+)["']?/i) || metaString.match(/{([^}]+)}/);
|
|
56273
56677
|
return {
|
|
56274
|
-
filename
|
|
56275
|
-
title
|
|
56276
|
-
showLineNumbers: /\b(showLineNumbers|lineNumbers|line-numbers)\b
|
|
56678
|
+
filename,
|
|
56679
|
+
title,
|
|
56680
|
+
showLineNumbers: /\b(showLineNumbers|lineNumbers|line-numbers)\b/i.test(
|
|
56277
56681
|
metaString
|
|
56278
56682
|
),
|
|
56279
56683
|
highlightLines: parseNumberRanges(highlightMatch?.[1])
|
|
@@ -56281,26 +56685,35 @@ function parseCodeMeta(metaString) {
|
|
|
56281
56685
|
}
|
|
56282
56686
|
function getCodeMetaString(node2) {
|
|
56283
56687
|
const value = node2;
|
|
56284
|
-
return value?.data?.meta || value?.data?.hProperties?.meta || value?.properties?.meta || value?.properties?.dataMeta || value?.meta;
|
|
56688
|
+
return value?.data?.meta || value?.data?.hProperties?.meta || value?.properties?.meta || value?.properties?.dataMeta || value?.properties?.["data-meta"] || value?.meta;
|
|
56689
|
+
}
|
|
56690
|
+
function getStringProperty(value) {
|
|
56691
|
+
if (typeof value === "string") return value;
|
|
56692
|
+
if (Array.isArray(value)) {
|
|
56693
|
+
return value.map(String).join(" ");
|
|
56694
|
+
}
|
|
56695
|
+
return void 0;
|
|
56285
56696
|
}
|
|
56286
56697
|
function getLanguageFromClassName(className) {
|
|
56287
56698
|
if (!className) return void 0;
|
|
56288
56699
|
const match = className.match(/language-([^\s]+)/);
|
|
56289
56700
|
return match?.[1];
|
|
56290
56701
|
}
|
|
56291
|
-
function
|
|
56292
|
-
|
|
56293
|
-
|
|
56294
|
-
|
|
56295
|
-
|
|
56296
|
-
|
|
56297
|
-
const
|
|
56298
|
-
const
|
|
56299
|
-
|
|
56300
|
-
|
|
56301
|
-
);
|
|
56302
|
-
const
|
|
56303
|
-
const
|
|
56702
|
+
function getAstTextContent(node2) {
|
|
56703
|
+
if (!node2) return "";
|
|
56704
|
+
if (typeof node2.value === "string") return node2.value;
|
|
56705
|
+
return node2.children?.map(getAstTextContent).join("") ?? "";
|
|
56706
|
+
}
|
|
56707
|
+
function getCodeInfoFromPreNode(node2, fallbackChildren) {
|
|
56708
|
+
const preNode = node2;
|
|
56709
|
+
const codeNode = preNode?.children?.find((child) => child.tagName === "code");
|
|
56710
|
+
const properties2 = codeNode?.properties;
|
|
56711
|
+
const className = getStringProperty(properties2?.className);
|
|
56712
|
+
const dataLanguage = getStringProperty(properties2?.dataLanguage) ?? getStringProperty(properties2?.["data-language"]);
|
|
56713
|
+
const astCode = getAstTextContent(codeNode);
|
|
56714
|
+
const code4 = (astCode || getTextContent(fallbackChildren)).replace(/\n$/, "");
|
|
56715
|
+
const language = getLanguageFromClassName(className) ?? dataLanguage;
|
|
56716
|
+
const meta = parseCodeMeta(getCodeMetaString(codeNode));
|
|
56304
56717
|
return {
|
|
56305
56718
|
code: code4,
|
|
56306
56719
|
language,
|
|
@@ -56348,6 +56761,7 @@ function MarkdownRenderer({
|
|
|
56348
56761
|
})}`;
|
|
56349
56762
|
};
|
|
56350
56763
|
const remarkPlugins = [];
|
|
56764
|
+
remarkPlugins.push(remarkCodeMetadata);
|
|
56351
56765
|
if (enableGfm) {
|
|
56352
56766
|
remarkPlugins.push(remarkGfm);
|
|
56353
56767
|
}
|
|
@@ -56443,13 +56857,15 @@ function MarkdownRenderer({
|
|
|
56443
56857
|
* Then the pre renderer can reliably extract language + meta.
|
|
56444
56858
|
*/
|
|
56445
56859
|
code: ({ node: node2, className: className2, children: children3, ...rest }) => {
|
|
56446
|
-
const
|
|
56860
|
+
const astNode = node2;
|
|
56861
|
+
const language = getLanguageFromClassName(className2) ?? getStringProperty(astNode.properties?.dataLanguage) ?? getStringProperty(astNode.properties?.["data-language"]);
|
|
56447
56862
|
if (language) {
|
|
56448
56863
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56449
56864
|
"code",
|
|
56450
56865
|
{
|
|
56451
56866
|
...rest,
|
|
56452
56867
|
className: className2,
|
|
56868
|
+
"data-language": language,
|
|
56453
56869
|
"data-meta": getCodeMetaString(node2),
|
|
56454
56870
|
children: children3
|
|
56455
56871
|
}
|
|
@@ -56463,9 +56879,9 @@ function MarkdownRenderer({
|
|
|
56463
56879
|
* React-markdown's pre props are HTMLPreElement props.
|
|
56464
56880
|
* MarkdownCodeBlock root is a div.
|
|
56465
56881
|
*/
|
|
56466
|
-
pre: ({ node:
|
|
56882
|
+
pre: ({ node: node2, children: children3 }) => {
|
|
56467
56883
|
const Component = components?.pre ?? MarkdownCodeBlock_default;
|
|
56468
|
-
const { code: code4, language, meta } =
|
|
56884
|
+
const { code: code4, language, meta } = getCodeInfoFromPreNode(node2, children3);
|
|
56469
56885
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56470
56886
|
Component,
|
|
56471
56887
|
{
|
|
@@ -56509,18 +56925,104 @@ function MarkdownRenderer({
|
|
|
56509
56925
|
const Component = components?.blockquote ?? MarkdownBlockquote_default;
|
|
56510
56926
|
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest, children: children3 });
|
|
56511
56927
|
},
|
|
56928
|
+
p: ({ node: _node, ...rest }) => {
|
|
56929
|
+
const Component = components?.p ?? MarkdownParagraph_default;
|
|
56930
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56931
|
+
},
|
|
56932
|
+
strong: ({ node: _node, ...rest }) => {
|
|
56933
|
+
const Component = components?.strong ?? MarkdownStrong_default;
|
|
56934
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56935
|
+
},
|
|
56936
|
+
em: ({ node: _node, ...rest }) => {
|
|
56937
|
+
const Component = components?.em ?? MarkdownEmphasis_default;
|
|
56938
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56939
|
+
},
|
|
56940
|
+
del: ({ node: _node, ...rest }) => {
|
|
56941
|
+
const Component = components?.del ?? MarkdownStrikethrough_default;
|
|
56942
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56943
|
+
},
|
|
56944
|
+
ul: ({ node: _node, ...rest }) => {
|
|
56945
|
+
const Component = components?.ul ?? MarkdownUnorderedList;
|
|
56946
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56947
|
+
},
|
|
56948
|
+
ol: ({ node: _node, ...rest }) => {
|
|
56949
|
+
const Component = components?.ol ?? MarkdownOrderedList;
|
|
56950
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56951
|
+
},
|
|
56952
|
+
li: ({ node: _node, ...rest }) => {
|
|
56953
|
+
const Component = components?.li ?? MarkdownListItem_default;
|
|
56954
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56955
|
+
},
|
|
56956
|
+
input: ({ node: _node, ...rest }) => {
|
|
56957
|
+
const Component = components?.input ?? MarkdownTaskCheckbox_default;
|
|
56958
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56959
|
+
},
|
|
56960
|
+
hr: ({ node: _node, ...rest }) => {
|
|
56961
|
+
const Component = components?.hr ?? MarkdownThematicBreak_default;
|
|
56962
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56963
|
+
},
|
|
56964
|
+
br: ({ node: _node, ...rest }) => {
|
|
56965
|
+
const Component = components?.br ?? MarkdownBreak_default;
|
|
56966
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56967
|
+
},
|
|
56968
|
+
details: ({ node: _node, ...rest }) => {
|
|
56969
|
+
const Component = components?.details ?? MarkdownDetails;
|
|
56970
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56971
|
+
},
|
|
56972
|
+
summary: ({ node: _node, ...rest }) => {
|
|
56973
|
+
const Component = components?.summary ?? MarkdownSummary;
|
|
56974
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56975
|
+
},
|
|
56976
|
+
figure: ({ node: _node, ...rest }) => {
|
|
56977
|
+
const Component = components?.figure ?? MarkdownFigure;
|
|
56978
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56979
|
+
},
|
|
56980
|
+
figcaption: ({ node: _node, ...rest }) => {
|
|
56981
|
+
const Component = components?.figcaption ?? MarkdownFigcaption;
|
|
56982
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56983
|
+
},
|
|
56984
|
+
thead: ({ node: _node, ...rest }) => {
|
|
56985
|
+
const Component = components?.thead ?? MarkdownTableHead;
|
|
56986
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56987
|
+
},
|
|
56988
|
+
tbody: ({ node: _node, ...rest }) => {
|
|
56989
|
+
const Component = components?.tbody ?? MarkdownTableBody;
|
|
56990
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56991
|
+
},
|
|
56992
|
+
tr: ({ node: _node, ...rest }) => {
|
|
56993
|
+
const Component = components?.tr ?? MarkdownTableRow;
|
|
56994
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ...rest });
|
|
56995
|
+
},
|
|
56512
56996
|
...components
|
|
56513
56997
|
};
|
|
56514
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56515
|
-
|
|
56998
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
56999
|
+
"div",
|
|
56516
57000
|
{
|
|
56517
|
-
|
|
56518
|
-
|
|
56519
|
-
|
|
56520
|
-
|
|
56521
|
-
children:
|
|
57001
|
+
className: classNames77__default.default(
|
|
57002
|
+
"eui-markdown markdown-body break-words bg-transparent text-[0.95rem] leading-7 text-gray-800 dark:text-gray-300",
|
|
57003
|
+
className
|
|
57004
|
+
),
|
|
57005
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
57006
|
+
"div",
|
|
57007
|
+
{
|
|
57008
|
+
className: classNames77__default.default(
|
|
57009
|
+
"[&>*:first-child]:mt-0 [&>*:last-child]:mb-0",
|
|
57010
|
+
contentClassName
|
|
57011
|
+
),
|
|
57012
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
57013
|
+
Markdown,
|
|
57014
|
+
{
|
|
57015
|
+
remarkPlugins,
|
|
57016
|
+
rehypePlugins,
|
|
57017
|
+
skipHtml: !allowHtml,
|
|
57018
|
+
components: rendererComponents,
|
|
57019
|
+
children: markdown
|
|
57020
|
+
}
|
|
57021
|
+
)
|
|
57022
|
+
}
|
|
57023
|
+
)
|
|
56522
57024
|
}
|
|
56523
|
-
)
|
|
57025
|
+
);
|
|
56524
57026
|
}
|
|
56525
57027
|
var MarkdownRenderer_default = MarkdownRenderer;
|
|
56526
57028
|
function MarkdownViewer({
|
|
@@ -56532,7 +57034,7 @@ function MarkdownViewer({
|
|
|
56532
57034
|
}) {
|
|
56533
57035
|
const context = useMarkdown();
|
|
56534
57036
|
const markdown = value ?? context?.markdown ?? "";
|
|
56535
|
-
const headings =
|
|
57037
|
+
const headings = React26.useMemo(() => {
|
|
56536
57038
|
if (externalHeadings) {
|
|
56537
57039
|
return externalHeadings;
|
|
56538
57040
|
}
|
|
@@ -56581,11 +57083,11 @@ function MarkdownTOCItem({
|
|
|
56581
57083
|
onClick: () => onSelect?.(heading3),
|
|
56582
57084
|
"aria-current": active ? "location" : void 0,
|
|
56583
57085
|
title: label,
|
|
56584
|
-
className:
|
|
57086
|
+
className: classNames77__default.default(
|
|
56585
57087
|
"eui-markdown-toc-item",
|
|
56586
57088
|
"block w-full text-left text-sm transition-all ease-in-out duration-150",
|
|
56587
57089
|
"hover:text-primary",
|
|
56588
|
-
active ?
|
|
57090
|
+
active ? classNames77__default.default("text-primary font-semibold underline", activeClassName) : classNames77__default.default("text-gray-500 dark:text-gray-400", inactiveClassName),
|
|
56589
57091
|
className
|
|
56590
57092
|
),
|
|
56591
57093
|
style: {
|
|
@@ -56624,14 +57126,14 @@ function MarkdownTOC({
|
|
|
56624
57126
|
onHeadingClick
|
|
56625
57127
|
}) {
|
|
56626
57128
|
const context = useMarkdown();
|
|
56627
|
-
const [collapsed, setCollapsed] =
|
|
57129
|
+
const [collapsed, setCollapsed] = React26.useState(defaultCollapsed);
|
|
56628
57130
|
const { headings, numberedHeadings, hasHeadings } = useMarkdownHeadings({
|
|
56629
57131
|
markdown,
|
|
56630
57132
|
headings: externalHeadings,
|
|
56631
57133
|
minDepth,
|
|
56632
57134
|
maxDepth
|
|
56633
57135
|
});
|
|
56634
|
-
const tocHeadings =
|
|
57136
|
+
const tocHeadings = React26.useMemo(() => {
|
|
56635
57137
|
return numbered ? numberedHeadings : headings;
|
|
56636
57138
|
}, [headings, numbered, numberedHeadings]);
|
|
56637
57139
|
const { activeHeading, scrollToHeading, setActiveHeading } = useActiveHeading(
|
|
@@ -56651,7 +57153,7 @@ function MarkdownTOC({
|
|
|
56651
57153
|
return emptyState ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
56652
57154
|
"div",
|
|
56653
57155
|
{
|
|
56654
|
-
className:
|
|
57156
|
+
className: classNames77__default.default(
|
|
56655
57157
|
"eui-markdown-toc",
|
|
56656
57158
|
"text-sm text-gray-500 dark:text-gray-400",
|
|
56657
57159
|
className
|
|
@@ -56671,7 +57173,7 @@ function MarkdownTOC({
|
|
|
56671
57173
|
{
|
|
56672
57174
|
type: "button",
|
|
56673
57175
|
onClick: () => setCollapsed((value) => !value),
|
|
56674
|
-
className:
|
|
57176
|
+
className: classNames77__default.default(
|
|
56675
57177
|
"eui-markdown-toc-title",
|
|
56676
57178
|
"flex w-full items-center justify-between gap-2 text-left",
|
|
56677
57179
|
"text-sm font-semibold uppercase tracking-wide",
|
|
@@ -56684,7 +57186,7 @@ function MarkdownTOC({
|
|
|
56684
57186
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
56685
57187
|
"span",
|
|
56686
57188
|
{
|
|
56687
|
-
className:
|
|
57189
|
+
className: classNames77__default.default(
|
|
56688
57190
|
"text-xs opacity-60 transition-transform duration-150",
|
|
56689
57191
|
!collapsed && "rotate-90"
|
|
56690
57192
|
),
|
|
@@ -56697,7 +57199,7 @@ function MarkdownTOC({
|
|
|
56697
57199
|
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
56698
57200
|
"h2",
|
|
56699
57201
|
{
|
|
56700
|
-
className:
|
|
57202
|
+
className: classNames77__default.default(
|
|
56701
57203
|
"eui-markdown-toc-title",
|
|
56702
57204
|
"text-sm font-semibold uppercase tracking-wide",
|
|
56703
57205
|
"text-gray-900 dark:text-gray-100",
|
|
@@ -56709,7 +57211,7 @@ function MarkdownTOC({
|
|
|
56709
57211
|
!collapsed ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
56710
57212
|
"nav",
|
|
56711
57213
|
{
|
|
56712
|
-
className:
|
|
57214
|
+
className: classNames77__default.default(
|
|
56713
57215
|
"eui-markdown-toc-list",
|
|
56714
57216
|
"space-y-1",
|
|
56715
57217
|
listClassName
|
|
@@ -56733,7 +57235,7 @@ function MarkdownTOC({
|
|
|
56733
57235
|
}
|
|
56734
57236
|
) : null
|
|
56735
57237
|
] });
|
|
56736
|
-
return /* @__PURE__ */ jsxRuntime.jsx("aside", { className:
|
|
57238
|
+
return /* @__PURE__ */ jsxRuntime.jsx("aside", { className: classNames77__default.default("eui-markdown-toc", "space-y-4", className), children: content3 });
|
|
56737
57239
|
}
|
|
56738
57240
|
var MarkdownTOC_default = MarkdownTOC;
|
|
56739
57241
|
var DEFAULT_MARKDOWN_TOOLBAR_ACTIONS = [
|
|
@@ -56832,7 +57334,7 @@ function MarkdownToolbar({
|
|
|
56832
57334
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
56833
57335
|
"div",
|
|
56834
57336
|
{
|
|
56835
|
-
className:
|
|
57337
|
+
className: classNames77__default.default(
|
|
56836
57338
|
"eui-markdown-toolbar",
|
|
56837
57339
|
"flex flex-wrap items-center gap-1 border-b border-gray-200 bg-gray-50 p-2",
|
|
56838
57340
|
"dark:border-gray-700 dark:bg-gray-900",
|
|
@@ -56846,7 +57348,7 @@ function MarkdownToolbar({
|
|
|
56846
57348
|
disabled: disabled || actionsDisabled,
|
|
56847
57349
|
title: action.shortcut ? `${action.title || action.label} (${action.shortcut})` : action.title || action.label,
|
|
56848
57350
|
onClick: () => onAction?.(action.id),
|
|
56849
|
-
className:
|
|
57351
|
+
className: classNames77__default.default(
|
|
56850
57352
|
"eui-markdown-toolbar-button",
|
|
56851
57353
|
"inline-flex items-center justify-center rounded border border-transparent",
|
|
56852
57354
|
"text-gray-700 transition-colors hover:border-gray-300 hover:bg-white",
|
|
@@ -56866,7 +57368,7 @@ function MarkdownToolbar({
|
|
|
56866
57368
|
disabled,
|
|
56867
57369
|
onClick: onViewModeToggle,
|
|
56868
57370
|
title: isPreviewMode ? "Switch to Markdown syntax" : "Switch to preview",
|
|
56869
|
-
className:
|
|
57371
|
+
className: classNames77__default.default(
|
|
56870
57372
|
"eui-markdown-view-toggle",
|
|
56871
57373
|
"inline-flex items-center justify-center rounded border font-medium transition-colors",
|
|
56872
57374
|
"border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
|
|
@@ -57052,20 +57554,20 @@ function MarkdownSourceEditor({
|
|
|
57052
57554
|
onKeyDown,
|
|
57053
57555
|
...props
|
|
57054
57556
|
}) {
|
|
57055
|
-
const textareaRef =
|
|
57557
|
+
const textareaRef = React26.useRef(null);
|
|
57056
57558
|
const isControlled = value !== void 0;
|
|
57057
57559
|
const isViewModeControlled = viewMode !== void 0;
|
|
57058
|
-
const [internalValue, setInternalValue] =
|
|
57059
|
-
const [internalViewMode, setInternalViewMode] =
|
|
57560
|
+
const [internalValue, setInternalValue] = React26.useState(defaultValue);
|
|
57561
|
+
const [internalViewMode, setInternalViewMode] = React26.useState(defaultViewMode);
|
|
57060
57562
|
const currentValue = isControlled ? value : internalValue;
|
|
57061
57563
|
const currentViewMode = isViewModeControlled ? viewMode : internalViewMode;
|
|
57062
57564
|
const resolvedValue = currentValue ?? "";
|
|
57063
|
-
|
|
57565
|
+
React26.useEffect(() => {
|
|
57064
57566
|
if (!isControlled) {
|
|
57065
57567
|
setInternalValue(defaultValue);
|
|
57066
57568
|
}
|
|
57067
57569
|
}, [defaultValue, isControlled]);
|
|
57068
|
-
|
|
57570
|
+
React26.useEffect(() => {
|
|
57069
57571
|
if (!isViewModeControlled) {
|
|
57070
57572
|
setInternalViewMode(defaultViewMode);
|
|
57071
57573
|
}
|
|
@@ -57123,7 +57625,7 @@ function MarkdownSourceEditor({
|
|
|
57123
57625
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
57124
57626
|
"div",
|
|
57125
57627
|
{
|
|
57126
|
-
className:
|
|
57628
|
+
className: classNames77__default.default(
|
|
57127
57629
|
"eui-markdown-editor",
|
|
57128
57630
|
"overflow-hidden rounded border border-gray-300 bg-white",
|
|
57129
57631
|
"dark:border-gray-700 dark:bg-gray-950",
|
|
@@ -57139,7 +57641,7 @@ function MarkdownSourceEditor({
|
|
|
57139
57641
|
actionsDisabled: readOnly,
|
|
57140
57642
|
viewMode: currentViewMode,
|
|
57141
57643
|
showViewModeToggle,
|
|
57142
|
-
className:
|
|
57644
|
+
className: classNames77__default.default(toolbarClassName, toolbarProps?.className),
|
|
57143
57645
|
onViewModeToggle: toggleViewMode,
|
|
57144
57646
|
onAction: handleToolbarAction
|
|
57145
57647
|
}
|
|
@@ -57147,7 +57649,7 @@ function MarkdownSourceEditor({
|
|
|
57147
57649
|
currentViewMode === "preview" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57148
57650
|
"div",
|
|
57149
57651
|
{
|
|
57150
|
-
className:
|
|
57652
|
+
className: classNames77__default.default(
|
|
57151
57653
|
"eui-markdown-editor-preview",
|
|
57152
57654
|
"min-h-[260px] p-4",
|
|
57153
57655
|
previewClassName
|
|
@@ -57170,7 +57672,7 @@ function MarkdownSourceEditor({
|
|
|
57170
57672
|
onChange: (event) => updateValue(event.target.value),
|
|
57171
57673
|
onBlur,
|
|
57172
57674
|
onKeyDown: handleKeyDown,
|
|
57173
|
-
className:
|
|
57675
|
+
className: classNames77__default.default(
|
|
57174
57676
|
"eui-markdown-source-textarea",
|
|
57175
57677
|
"block w-full resize-y border-0 bg-transparent p-4 font-mono text-sm leading-7",
|
|
57176
57678
|
"text-gray-900 outline-none placeholder:text-gray-400",
|
|
@@ -57200,7 +57702,7 @@ function MarkdownPreviewPane({
|
|
|
57200
57702
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
57201
57703
|
"div",
|
|
57202
57704
|
{
|
|
57203
|
-
className:
|
|
57705
|
+
className: classNames77__default.default(
|
|
57204
57706
|
"eui-markdown-preview-pane",
|
|
57205
57707
|
"rounded border border-gray-300 bg-white p-4",
|
|
57206
57708
|
"dark:border-gray-700 dark:bg-gray-950",
|
|
@@ -57233,9 +57735,9 @@ function MarkdownSplitEditor({
|
|
|
57233
57735
|
...sourceEditorProps
|
|
57234
57736
|
}) {
|
|
57235
57737
|
const isControlled = value !== void 0;
|
|
57236
|
-
const [internalValue, setInternalValue] =
|
|
57738
|
+
const [internalValue, setInternalValue] = React26.useState(defaultValue);
|
|
57237
57739
|
const currentValue = isControlled ? value : internalValue;
|
|
57238
|
-
|
|
57740
|
+
React26.useEffect(() => {
|
|
57239
57741
|
if (!isControlled) {
|
|
57240
57742
|
setInternalValue(defaultValue);
|
|
57241
57743
|
}
|
|
@@ -57250,7 +57752,7 @@ function MarkdownSplitEditor({
|
|
|
57250
57752
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
57251
57753
|
"div",
|
|
57252
57754
|
{
|
|
57253
|
-
className:
|
|
57755
|
+
className: classNames77__default.default(
|
|
57254
57756
|
"eui-markdown-split-editor",
|
|
57255
57757
|
"grid gap-4",
|
|
57256
57758
|
isHorizontal ? "grid-cols-1 lg:grid-cols-2" : "grid-cols-1",
|
|
@@ -57260,7 +57762,7 @@ function MarkdownSplitEditor({
|
|
|
57260
57762
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
57261
57763
|
"div",
|
|
57262
57764
|
{
|
|
57263
|
-
className:
|
|
57765
|
+
className: classNames77__default.default(
|
|
57264
57766
|
"eui-markdown-split-source",
|
|
57265
57767
|
"min-w-0 space-y-2",
|
|
57266
57768
|
sourceWrapperClassName
|
|
@@ -57284,7 +57786,7 @@ function MarkdownSplitEditor({
|
|
|
57284
57786
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
57285
57787
|
"div",
|
|
57286
57788
|
{
|
|
57287
|
-
className:
|
|
57789
|
+
className: classNames77__default.default(
|
|
57288
57790
|
"eui-markdown-split-preview",
|
|
57289
57791
|
"min-w-0 space-y-2",
|
|
57290
57792
|
previewWrapperClassName
|
|
@@ -57314,9 +57816,9 @@ function MarkdownEditor({
|
|
|
57314
57816
|
...sourceEditorProps
|
|
57315
57817
|
}) {
|
|
57316
57818
|
const isControlled = value !== void 0;
|
|
57317
|
-
const [internalValue, setInternalValue] =
|
|
57819
|
+
const [internalValue, setInternalValue] = React26.useState(defaultValue);
|
|
57318
57820
|
const currentValue = isControlled ? value : internalValue;
|
|
57319
|
-
|
|
57821
|
+
React26.useEffect(() => {
|
|
57320
57822
|
if (!isControlled) {
|
|
57321
57823
|
setInternalValue(defaultValue);
|
|
57322
57824
|
}
|
|
@@ -57374,7 +57876,7 @@ function MarkdownField({
|
|
|
57374
57876
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
57375
57877
|
"div",
|
|
57376
57878
|
{
|
|
57377
|
-
className:
|
|
57879
|
+
className: classNames77__default.default(
|
|
57378
57880
|
"eui-markdown-field",
|
|
57379
57881
|
"relative space-y-2",
|
|
57380
57882
|
wrapperClassName
|
|
@@ -57384,7 +57886,7 @@ function MarkdownField({
|
|
|
57384
57886
|
"label",
|
|
57385
57887
|
{
|
|
57386
57888
|
htmlFor: editorProps.id || field.name,
|
|
57387
|
-
className:
|
|
57889
|
+
className: classNames77__default.default(
|
|
57388
57890
|
"block text-sm font-medium text-gray-700 dark:text-gray-200",
|
|
57389
57891
|
labelClassName
|
|
57390
57892
|
),
|
|
@@ -57409,7 +57911,7 @@ function MarkdownField({
|
|
|
57409
57911
|
helperText && !hasError ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57410
57912
|
"p",
|
|
57411
57913
|
{
|
|
57412
|
-
className:
|
|
57914
|
+
className: classNames77__default.default(
|
|
57413
57915
|
"text-sm text-gray-500 dark:text-gray-400",
|
|
57414
57916
|
helperTextClassName
|
|
57415
57917
|
),
|
|
@@ -57422,6 +57924,414 @@ function MarkdownField({
|
|
|
57422
57924
|
);
|
|
57423
57925
|
}
|
|
57424
57926
|
var MarkdownField_default = MarkdownField;
|
|
57927
|
+
function toCssSize2(value) {
|
|
57928
|
+
if (typeof value === "number") return `${value}px`;
|
|
57929
|
+
return value;
|
|
57930
|
+
}
|
|
57931
|
+
function CodeMirrorMarkdownEditor({
|
|
57932
|
+
value,
|
|
57933
|
+
defaultValue = "",
|
|
57934
|
+
onChange,
|
|
57935
|
+
onBlur,
|
|
57936
|
+
id: id2,
|
|
57937
|
+
name: name2,
|
|
57938
|
+
placeholder = "Write markdown...",
|
|
57939
|
+
disabled = false,
|
|
57940
|
+
readOnly = false,
|
|
57941
|
+
autoFocus = false,
|
|
57942
|
+
minHeight = 320,
|
|
57943
|
+
maxHeight,
|
|
57944
|
+
height,
|
|
57945
|
+
dark = false,
|
|
57946
|
+
className,
|
|
57947
|
+
editorClassName,
|
|
57948
|
+
extensions
|
|
57949
|
+
}) {
|
|
57950
|
+
const isControlled = value !== void 0;
|
|
57951
|
+
const [internalValue, setInternalValue] = React26.useState(defaultValue);
|
|
57952
|
+
const currentValue = isControlled ? value : internalValue;
|
|
57953
|
+
React26.useEffect(() => {
|
|
57954
|
+
if (!isControlled) {
|
|
57955
|
+
setInternalValue(defaultValue);
|
|
57956
|
+
}
|
|
57957
|
+
}, [defaultValue, isControlled]);
|
|
57958
|
+
const updateValue = (nextValue) => {
|
|
57959
|
+
if (!isControlled) {
|
|
57960
|
+
setInternalValue(nextValue);
|
|
57961
|
+
}
|
|
57962
|
+
onChange?.(nextValue);
|
|
57963
|
+
};
|
|
57964
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
57965
|
+
"div",
|
|
57966
|
+
{
|
|
57967
|
+
id: id2,
|
|
57968
|
+
"data-name": name2,
|
|
57969
|
+
className: classNames77__default.default(
|
|
57970
|
+
"eui-markdown-adapter",
|
|
57971
|
+
"eui-markdown-codemirror-adapter",
|
|
57972
|
+
"overflow-hidden rounded border border-gray-300 bg-white",
|
|
57973
|
+
"dark:border-gray-700 dark:bg-gray-950",
|
|
57974
|
+
disabled && "cursor-not-allowed opacity-60",
|
|
57975
|
+
className
|
|
57976
|
+
),
|
|
57977
|
+
style: {
|
|
57978
|
+
minHeight: toCssSize2(minHeight),
|
|
57979
|
+
maxHeight: toCssSize2(maxHeight)
|
|
57980
|
+
},
|
|
57981
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
57982
|
+
CodeMirror__default.default,
|
|
57983
|
+
{
|
|
57984
|
+
value: currentValue,
|
|
57985
|
+
height,
|
|
57986
|
+
minHeight: toCssSize2(minHeight),
|
|
57987
|
+
maxHeight: toCssSize2(maxHeight),
|
|
57988
|
+
placeholder,
|
|
57989
|
+
autoFocus,
|
|
57990
|
+
editable: !disabled && !readOnly,
|
|
57991
|
+
readOnly,
|
|
57992
|
+
theme: dark ? themeOneDark.oneDark : void 0,
|
|
57993
|
+
extensions: [langMarkdown.markdown(), ...extensions ?? []],
|
|
57994
|
+
basicSetup: {
|
|
57995
|
+
lineNumbers: true,
|
|
57996
|
+
foldGutter: true,
|
|
57997
|
+
highlightActiveLine: true,
|
|
57998
|
+
highlightSelectionMatches: true,
|
|
57999
|
+
autocompletion: true,
|
|
58000
|
+
closeBrackets: true,
|
|
58001
|
+
bracketMatching: true
|
|
58002
|
+
},
|
|
58003
|
+
className: classNames77__default.default("eui-markdown-codemirror", editorClassName),
|
|
58004
|
+
onChange: updateValue,
|
|
58005
|
+
onBlur
|
|
58006
|
+
}
|
|
58007
|
+
)
|
|
58008
|
+
}
|
|
58009
|
+
);
|
|
58010
|
+
}
|
|
58011
|
+
var CodeMirrorMarkdownEditor_default = CodeMirrorMarkdownEditor;
|
|
58012
|
+
var DEFAULT_CODE_BLOCK_LANGUAGES = {
|
|
58013
|
+
js: "JavaScript",
|
|
58014
|
+
jsx: "JSX",
|
|
58015
|
+
ts: "TypeScript",
|
|
58016
|
+
tsx: "TSX",
|
|
58017
|
+
css: "CSS",
|
|
58018
|
+
scss: "SCSS",
|
|
58019
|
+
json: "JSON",
|
|
58020
|
+
bash: "Bash",
|
|
58021
|
+
sh: "Shell",
|
|
58022
|
+
html: "HTML",
|
|
58023
|
+
xml: "XML",
|
|
58024
|
+
md: "Markdown"
|
|
58025
|
+
};
|
|
58026
|
+
function toCssSize3(value) {
|
|
58027
|
+
if (typeof value === "number") return `${value}px`;
|
|
58028
|
+
return value;
|
|
58029
|
+
}
|
|
58030
|
+
function DefaultToolbar() {
|
|
58031
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
58032
|
+
editor.ConditionalContents,
|
|
58033
|
+
{
|
|
58034
|
+
options: [
|
|
58035
|
+
{
|
|
58036
|
+
when: (editor) => editor?.editorType === "codeblock",
|
|
58037
|
+
contents: () => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
58038
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.UndoRedo, {}),
|
|
58039
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.Separator, {}),
|
|
58040
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.ChangeCodeMirrorLanguage, {})
|
|
58041
|
+
] })
|
|
58042
|
+
},
|
|
58043
|
+
{
|
|
58044
|
+
fallback: () => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
58045
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.UndoRedo, {}),
|
|
58046
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.Separator, {}),
|
|
58047
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.BlockTypeSelect, {}),
|
|
58048
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.Separator, {}),
|
|
58049
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.BoldItalicUnderlineToggles, {}),
|
|
58050
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.CodeToggle, {}),
|
|
58051
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.StrikeThroughSupSubToggles, {}),
|
|
58052
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.Separator, {}),
|
|
58053
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.ListsToggle, {}),
|
|
58054
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.Separator, {}),
|
|
58055
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.CreateLink, {}),
|
|
58056
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.InsertImage, {}),
|
|
58057
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.Separator, {}),
|
|
58058
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.InsertTable, {}),
|
|
58059
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.InsertCodeBlock, {}),
|
|
58060
|
+
/* @__PURE__ */ jsxRuntime.jsx(editor.InsertThematicBreak, {})
|
|
58061
|
+
] })
|
|
58062
|
+
}
|
|
58063
|
+
]
|
|
58064
|
+
}
|
|
58065
|
+
);
|
|
58066
|
+
}
|
|
58067
|
+
function createDefaultPlugins({
|
|
58068
|
+
showToolbar,
|
|
58069
|
+
toolbarPosition,
|
|
58070
|
+
toolbarClassName,
|
|
58071
|
+
toolbarContents,
|
|
58072
|
+
defaultCodeBlockLanguage,
|
|
58073
|
+
codeMirrorOptions,
|
|
58074
|
+
imageOptions,
|
|
58075
|
+
linkDialogOptions
|
|
58076
|
+
}) {
|
|
58077
|
+
const codeBlockLanguages = codeMirrorOptions?.codeBlockLanguages ?? DEFAULT_CODE_BLOCK_LANGUAGES;
|
|
58078
|
+
return [
|
|
58079
|
+
editor.headingsPlugin(),
|
|
58080
|
+
editor.listsPlugin(),
|
|
58081
|
+
editor.quotePlugin(),
|
|
58082
|
+
editor.thematicBreakPlugin(),
|
|
58083
|
+
editor.markdownShortcutPlugin(),
|
|
58084
|
+
editor.linkPlugin(),
|
|
58085
|
+
editor.linkDialogPlugin(linkDialogOptions),
|
|
58086
|
+
editor.imagePlugin(imageOptions),
|
|
58087
|
+
editor.tablePlugin(),
|
|
58088
|
+
editor.codeBlockPlugin({
|
|
58089
|
+
defaultCodeBlockLanguage
|
|
58090
|
+
}),
|
|
58091
|
+
editor.codeMirrorPlugin({
|
|
58092
|
+
...codeMirrorOptions,
|
|
58093
|
+
codeBlockLanguages
|
|
58094
|
+
}),
|
|
58095
|
+
...showToolbar ? [
|
|
58096
|
+
editor.toolbarPlugin({
|
|
58097
|
+
toolbarContents: toolbarContents ?? DefaultToolbar,
|
|
58098
|
+
toolbarClassName: classNames77__default.default(
|
|
58099
|
+
"eui-markdown-mdx-toolbar",
|
|
58100
|
+
toolbarClassName
|
|
58101
|
+
),
|
|
58102
|
+
toolbarPosition
|
|
58103
|
+
})
|
|
58104
|
+
] : []
|
|
58105
|
+
];
|
|
58106
|
+
}
|
|
58107
|
+
var MDXMarkdownEditor = React26.forwardRef(
|
|
58108
|
+
function MDXMarkdownEditor2({
|
|
58109
|
+
value,
|
|
58110
|
+
defaultValue = "",
|
|
58111
|
+
onChange,
|
|
58112
|
+
onBlur,
|
|
58113
|
+
id: id2,
|
|
58114
|
+
name: name2,
|
|
58115
|
+
disabled = false,
|
|
58116
|
+
readOnly = false,
|
|
58117
|
+
required = false,
|
|
58118
|
+
minHeight = 360,
|
|
58119
|
+
maxHeight,
|
|
58120
|
+
dark = false,
|
|
58121
|
+
invalid = false,
|
|
58122
|
+
ariaLabel,
|
|
58123
|
+
ariaDescribedBy,
|
|
58124
|
+
className,
|
|
58125
|
+
editorClassName,
|
|
58126
|
+
contentEditableClassName,
|
|
58127
|
+
toolbarClassName,
|
|
58128
|
+
plugins,
|
|
58129
|
+
showToolbar = true,
|
|
58130
|
+
toolbarPosition = "top",
|
|
58131
|
+
toolbarContents,
|
|
58132
|
+
defaultCodeBlockLanguage = "tsx",
|
|
58133
|
+
codeMirrorOptions,
|
|
58134
|
+
imageOptions,
|
|
58135
|
+
linkDialogOptions,
|
|
58136
|
+
...props
|
|
58137
|
+
}, forwardedRef) {
|
|
58138
|
+
const editorRef = React26.useRef(null);
|
|
58139
|
+
const isControlled = value !== void 0;
|
|
58140
|
+
const [internalValue, setInternalValue] = React26.useState(defaultValue);
|
|
58141
|
+
const currentValue = isControlled ? value : internalValue;
|
|
58142
|
+
const defaultPlugins = React26.useMemo(
|
|
58143
|
+
() => createDefaultPlugins({
|
|
58144
|
+
showToolbar,
|
|
58145
|
+
toolbarPosition,
|
|
58146
|
+
toolbarClassName,
|
|
58147
|
+
toolbarContents,
|
|
58148
|
+
defaultCodeBlockLanguage,
|
|
58149
|
+
codeMirrorOptions,
|
|
58150
|
+
imageOptions,
|
|
58151
|
+
linkDialogOptions
|
|
58152
|
+
}),
|
|
58153
|
+
[
|
|
58154
|
+
codeMirrorOptions,
|
|
58155
|
+
defaultCodeBlockLanguage,
|
|
58156
|
+
imageOptions,
|
|
58157
|
+
linkDialogOptions,
|
|
58158
|
+
showToolbar,
|
|
58159
|
+
toolbarClassName,
|
|
58160
|
+
toolbarContents,
|
|
58161
|
+
toolbarPosition
|
|
58162
|
+
]
|
|
58163
|
+
);
|
|
58164
|
+
React26.useImperativeHandle(
|
|
58165
|
+
forwardedRef,
|
|
58166
|
+
() => ({
|
|
58167
|
+
focus: (callbackFn, options) => editorRef.current?.focus(callbackFn, options),
|
|
58168
|
+
getContentEditableHTML: () => editorRef.current?.getContentEditableHTML() ?? "",
|
|
58169
|
+
getMarkdown: () => editorRef.current?.getMarkdown() ?? currentValue,
|
|
58170
|
+
getSelectionMarkdown: () => editorRef.current?.getSelectionMarkdown() ?? "",
|
|
58171
|
+
insertMarkdown: (markdown) => editorRef.current?.insertMarkdown(markdown),
|
|
58172
|
+
setMarkdown: (markdown) => editorRef.current?.setMarkdown(markdown)
|
|
58173
|
+
}),
|
|
58174
|
+
[currentValue]
|
|
58175
|
+
);
|
|
58176
|
+
React26.useEffect(() => {
|
|
58177
|
+
if (!isControlled || !editorRef.current) return;
|
|
58178
|
+
const nextValue = value ?? "";
|
|
58179
|
+
if (editorRef.current.getMarkdown() !== nextValue) {
|
|
58180
|
+
editorRef.current.setMarkdown(nextValue);
|
|
58181
|
+
}
|
|
58182
|
+
}, [isControlled, value]);
|
|
58183
|
+
const updateValue = (nextValue, initialMarkdownNormalize) => {
|
|
58184
|
+
if (!isControlled) {
|
|
58185
|
+
setInternalValue(nextValue);
|
|
58186
|
+
}
|
|
58187
|
+
onChange?.(nextValue, initialMarkdownNormalize);
|
|
58188
|
+
};
|
|
58189
|
+
const handleBlur = (event) => {
|
|
58190
|
+
const nextTarget = event.relatedTarget;
|
|
58191
|
+
if (nextTarget instanceof Node && event.currentTarget.contains(nextTarget)) {
|
|
58192
|
+
return;
|
|
58193
|
+
}
|
|
58194
|
+
onBlur?.(event.nativeEvent);
|
|
58195
|
+
};
|
|
58196
|
+
const style2 = {
|
|
58197
|
+
minHeight: toCssSize3(minHeight),
|
|
58198
|
+
maxHeight: toCssSize3(maxHeight),
|
|
58199
|
+
"--eui-mdx-min-height": toCssSize3(minHeight),
|
|
58200
|
+
"--eui-mdx-max-height": toCssSize3(maxHeight)
|
|
58201
|
+
};
|
|
58202
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
58203
|
+
"div",
|
|
58204
|
+
{
|
|
58205
|
+
id: id2,
|
|
58206
|
+
role: "group",
|
|
58207
|
+
"data-name": name2,
|
|
58208
|
+
"aria-label": ariaLabel,
|
|
58209
|
+
"aria-describedby": ariaDescribedBy,
|
|
58210
|
+
"aria-disabled": disabled || void 0,
|
|
58211
|
+
"aria-readonly": readOnly || void 0,
|
|
58212
|
+
"aria-required": required || void 0,
|
|
58213
|
+
"aria-invalid": invalid || void 0,
|
|
58214
|
+
onBlurCapture: handleBlur,
|
|
58215
|
+
className: classNames77__default.default(
|
|
58216
|
+
"eui-markdown-adapter",
|
|
58217
|
+
"eui-markdown-mdx-adapter",
|
|
58218
|
+
dark && ["dark", "dark-theme"],
|
|
58219
|
+
disabled && "is-disabled",
|
|
58220
|
+
readOnly && "is-read-only",
|
|
58221
|
+
invalid && "has-error",
|
|
58222
|
+
className
|
|
58223
|
+
),
|
|
58224
|
+
style: style2,
|
|
58225
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
58226
|
+
editor.MDXEditor,
|
|
58227
|
+
{
|
|
58228
|
+
...props,
|
|
58229
|
+
ref: editorRef,
|
|
58230
|
+
markdown: currentValue ?? "",
|
|
58231
|
+
readOnly: disabled || readOnly,
|
|
58232
|
+
plugins: plugins ?? defaultPlugins,
|
|
58233
|
+
className: classNames77__default.default("eui-markdown-mdx-editor", editorClassName),
|
|
58234
|
+
contentEditableClassName: classNames77__default.default(
|
|
58235
|
+
"eui-markdown-mdx-content",
|
|
58236
|
+
contentEditableClassName
|
|
58237
|
+
),
|
|
58238
|
+
onChange: updateValue
|
|
58239
|
+
}
|
|
58240
|
+
)
|
|
58241
|
+
}
|
|
58242
|
+
);
|
|
58243
|
+
}
|
|
58244
|
+
);
|
|
58245
|
+
var MDXMarkdownEditor_default = MDXMarkdownEditor;
|
|
58246
|
+
function MDXMarkdownField({
|
|
58247
|
+
name: name2,
|
|
58248
|
+
validate,
|
|
58249
|
+
label,
|
|
58250
|
+
helperText,
|
|
58251
|
+
validateOnChange = true,
|
|
58252
|
+
validateOnBlur = true,
|
|
58253
|
+
wrapperClassName,
|
|
58254
|
+
labelClassName,
|
|
58255
|
+
helperTextClassName,
|
|
58256
|
+
...editorProps
|
|
58257
|
+
}) {
|
|
58258
|
+
const editorRef = React26.useRef(null);
|
|
58259
|
+
const [field, meta, helpers] = formik.useField({
|
|
58260
|
+
name: name2,
|
|
58261
|
+
validate
|
|
58262
|
+
});
|
|
58263
|
+
const editorId = editorProps.id || field.name;
|
|
58264
|
+
const helperId = helperText ? `${editorId}-help` : void 0;
|
|
58265
|
+
const errorId = `${editorId}-error`;
|
|
58266
|
+
const hasError = Boolean(meta.touched && meta.error);
|
|
58267
|
+
const describedBy = [helperId, hasError ? errorId : void 0].filter(Boolean).join(" ");
|
|
58268
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
58269
|
+
"div",
|
|
58270
|
+
{
|
|
58271
|
+
className: classNames77__default.default(
|
|
58272
|
+
"eui-markdown-mdx-field",
|
|
58273
|
+
"relative space-y-2",
|
|
58274
|
+
wrapperClassName
|
|
58275
|
+
),
|
|
58276
|
+
children: [
|
|
58277
|
+
label ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
58278
|
+
"label",
|
|
58279
|
+
{
|
|
58280
|
+
htmlFor: editorId,
|
|
58281
|
+
className: classNames77__default.default(
|
|
58282
|
+
"block text-sm font-medium text-gray-700 dark:text-gray-200",
|
|
58283
|
+
labelClassName
|
|
58284
|
+
),
|
|
58285
|
+
onClick: () => editorRef.current?.focus(),
|
|
58286
|
+
children: [
|
|
58287
|
+
label,
|
|
58288
|
+
editorProps.required ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-1 text-red-600", "aria-hidden": "true", children: "*" }) : null
|
|
58289
|
+
]
|
|
58290
|
+
}
|
|
58291
|
+
) : null,
|
|
58292
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
58293
|
+
MDXMarkdownEditor_default,
|
|
58294
|
+
{
|
|
58295
|
+
...editorProps,
|
|
58296
|
+
ref: editorRef,
|
|
58297
|
+
id: editorId,
|
|
58298
|
+
name: field.name,
|
|
58299
|
+
value: field.value ?? "",
|
|
58300
|
+
invalid: hasError,
|
|
58301
|
+
ariaLabel: editorProps.ariaLabel ?? label,
|
|
58302
|
+
ariaDescribedBy: describedBy || void 0,
|
|
58303
|
+
onChange: (nextValue) => {
|
|
58304
|
+
void helpers.setValue(nextValue, validateOnChange);
|
|
58305
|
+
},
|
|
58306
|
+
onBlur: () => {
|
|
58307
|
+
void helpers.setTouched(true, validateOnBlur);
|
|
58308
|
+
}
|
|
58309
|
+
}
|
|
58310
|
+
),
|
|
58311
|
+
helperText ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
58312
|
+
"p",
|
|
58313
|
+
{
|
|
58314
|
+
id: helperId,
|
|
58315
|
+
className: classNames77__default.default(
|
|
58316
|
+
"text-sm text-gray-500 dark:text-gray-400",
|
|
58317
|
+
helperTextClassName
|
|
58318
|
+
),
|
|
58319
|
+
children: helperText
|
|
58320
|
+
}
|
|
58321
|
+
) : null,
|
|
58322
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { id: errorId, role: hasError ? "alert" : void 0, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
58323
|
+
InputResponse_default,
|
|
58324
|
+
{
|
|
58325
|
+
name: field.name,
|
|
58326
|
+
visibility: hasError,
|
|
58327
|
+
variant: "danger"
|
|
58328
|
+
}
|
|
58329
|
+
) })
|
|
58330
|
+
]
|
|
58331
|
+
}
|
|
58332
|
+
);
|
|
58333
|
+
}
|
|
58334
|
+
var MDXMarkdownField_default = MDXMarkdownField;
|
|
57425
58335
|
function resolveSize(value) {
|
|
57426
58336
|
if (value === void 0) return void 0;
|
|
57427
58337
|
return typeof value === "number" ? `${value}px` : value;
|
|
@@ -57462,10 +58372,10 @@ function MarkdownLayout({
|
|
|
57462
58372
|
};
|
|
57463
58373
|
const hasLeftToc = hasToc && tocPosition === "left";
|
|
57464
58374
|
const hasRightToc = hasToc && tocPosition === "right";
|
|
57465
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
58375
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames77__default.default("eui-markdown-layout", "w-full", className), children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
57466
58376
|
"div",
|
|
57467
58377
|
{
|
|
57468
|
-
className:
|
|
58378
|
+
className: classNames77__default.default(
|
|
57469
58379
|
"eui-markdown-layout-container",
|
|
57470
58380
|
"mx-auto w-full px-4 sm:px-6 lg:px-8",
|
|
57471
58381
|
containerClassName
|
|
@@ -57477,7 +58387,7 @@ function MarkdownLayout({
|
|
|
57477
58387
|
header ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57478
58388
|
"header",
|
|
57479
58389
|
{
|
|
57480
|
-
className:
|
|
58390
|
+
className: classNames77__default.default(
|
|
57481
58391
|
"eui-markdown-layout-header",
|
|
57482
58392
|
"mb-8",
|
|
57483
58393
|
headerClassName
|
|
@@ -57488,7 +58398,7 @@ function MarkdownLayout({
|
|
|
57488
58398
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
57489
58399
|
"div",
|
|
57490
58400
|
{
|
|
57491
|
-
className:
|
|
58401
|
+
className: classNames77__default.default(
|
|
57492
58402
|
"eui-markdown-layout-grid",
|
|
57493
58403
|
"grid grid-cols-1 gap-8",
|
|
57494
58404
|
hasSidebar && hasToc && "xl:grid-cols-[16rem_minmax(0,1fr)_18rem]",
|
|
@@ -57501,7 +58411,7 @@ function MarkdownLayout({
|
|
|
57501
58411
|
hasSidebar ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57502
58412
|
"aside",
|
|
57503
58413
|
{
|
|
57504
|
-
className:
|
|
58414
|
+
className: classNames77__default.default(
|
|
57505
58415
|
"eui-markdown-layout-sidebar",
|
|
57506
58416
|
"min-w-0",
|
|
57507
58417
|
stickySidebar && "lg:sticky lg:self-start",
|
|
@@ -57514,7 +58424,7 @@ function MarkdownLayout({
|
|
|
57514
58424
|
hasLeftToc ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57515
58425
|
"aside",
|
|
57516
58426
|
{
|
|
57517
|
-
className:
|
|
58427
|
+
className: classNames77__default.default(
|
|
57518
58428
|
"eui-markdown-layout-toc",
|
|
57519
58429
|
"min-w-0",
|
|
57520
58430
|
stickyToc && "lg:sticky lg:self-start",
|
|
@@ -57527,7 +58437,7 @@ function MarkdownLayout({
|
|
|
57527
58437
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
57528
58438
|
"main",
|
|
57529
58439
|
{
|
|
57530
|
-
className:
|
|
58440
|
+
className: classNames77__default.default(
|
|
57531
58441
|
"eui-markdown-layout-content",
|
|
57532
58442
|
"min-w-0",
|
|
57533
58443
|
contentClassName
|
|
@@ -57538,7 +58448,7 @@ function MarkdownLayout({
|
|
|
57538
58448
|
hasRightToc ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57539
58449
|
"aside",
|
|
57540
58450
|
{
|
|
57541
|
-
className:
|
|
58451
|
+
className: classNames77__default.default(
|
|
57542
58452
|
"eui-markdown-layout-toc",
|
|
57543
58453
|
"min-w-0",
|
|
57544
58454
|
stickyToc && "lg:sticky lg:self-start",
|
|
@@ -57551,7 +58461,7 @@ function MarkdownLayout({
|
|
|
57551
58461
|
hasAside ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57552
58462
|
"aside",
|
|
57553
58463
|
{
|
|
57554
|
-
className:
|
|
58464
|
+
className: classNames77__default.default(
|
|
57555
58465
|
"eui-markdown-layout-aside",
|
|
57556
58466
|
"min-w-0",
|
|
57557
58467
|
stickyAside && "2xl:sticky 2xl:self-start",
|
|
@@ -57567,7 +58477,7 @@ function MarkdownLayout({
|
|
|
57567
58477
|
footer2 ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57568
58478
|
"footer",
|
|
57569
58479
|
{
|
|
57570
|
-
className:
|
|
58480
|
+
className: classNames77__default.default(
|
|
57571
58481
|
"eui-markdown-layout-footer",
|
|
57572
58482
|
"mt-10",
|
|
57573
58483
|
footerClassName
|
|
@@ -57604,7 +58514,7 @@ function MarkdownDocsLayoutContent({
|
|
|
57604
58514
|
const resolvedHeader = header ?? (title || description || headerActions ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57605
58515
|
"div",
|
|
57606
58516
|
{
|
|
57607
|
-
className:
|
|
58517
|
+
className: classNames77__default.default(
|
|
57608
58518
|
"eui-markdown-docs-header",
|
|
57609
58519
|
"flex flex-col gap-4 border-b border-gray-200 pb-6",
|
|
57610
58520
|
"dark:border-gray-700",
|
|
@@ -57615,7 +58525,7 @@ function MarkdownDocsLayoutContent({
|
|
|
57615
58525
|
title ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57616
58526
|
"h1",
|
|
57617
58527
|
{
|
|
57618
|
-
className:
|
|
58528
|
+
className: classNames77__default.default(
|
|
57619
58529
|
"eui-markdown-docs-title",
|
|
57620
58530
|
"text-3xl font-bold tracking-tight text-gray-950",
|
|
57621
58531
|
"dark:text-gray-50",
|
|
@@ -57627,7 +58537,7 @@ function MarkdownDocsLayoutContent({
|
|
|
57627
58537
|
description ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
57628
58538
|
"div",
|
|
57629
58539
|
{
|
|
57630
|
-
className:
|
|
58540
|
+
className: classNames77__default.default(
|
|
57631
58541
|
"eui-markdown-docs-description",
|
|
57632
58542
|
"max-w-3xl text-base leading-7 text-gray-600",
|
|
57633
58543
|
"dark:text-gray-400",
|
|
@@ -57715,7 +58625,7 @@ function GenericLayout({
|
|
|
57715
58625
|
return /* @__PURE__ */ jsxRuntime.jsx(ThemeProvider, { defaultTheme, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
57716
58626
|
"div",
|
|
57717
58627
|
{
|
|
57718
|
-
className:
|
|
58628
|
+
className: classNames77__default.default({
|
|
57719
58629
|
[`${styles}`]: styles
|
|
57720
58630
|
}),
|
|
57721
58631
|
children: children3
|
|
@@ -57752,7 +58662,7 @@ function SidebarLayout({
|
|
|
57752
58662
|
header = /* @__PURE__ */ jsxRuntime.jsx(Header, {}),
|
|
57753
58663
|
footer: footer2 = /* @__PURE__ */ jsxRuntime.jsx(Footer, {})
|
|
57754
58664
|
}) {
|
|
57755
|
-
const [showSidebar, setShowSidebar] =
|
|
58665
|
+
const [showSidebar, setShowSidebar] = React26.useState(true);
|
|
57756
58666
|
return /* @__PURE__ */ jsxRuntime.jsx(GenericLayout_default, { children: /* @__PURE__ */ jsxRuntime.jsx(Layout, { children: /* @__PURE__ */ jsxRuntime.jsx(Layout, { flexDirection: "horizontal", children: /* @__PURE__ */ jsxRuntime.jsxs(Content, { sidebarVisible: showSidebar, styles: "theme-bg-md pt-[60px]", children: [
|
|
57757
58667
|
/* @__PURE__ */ jsxRuntime.jsx(ContentArea_default, { children: children3 }),
|
|
57758
58668
|
footer2
|
|
@@ -57764,7 +58674,7 @@ function SidemenuLayout({ data, children: children3 }) {
|
|
|
57764
58674
|
return /* @__PURE__ */ jsxRuntime.jsx(DefaultLayout_default, { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
57765
58675
|
"div",
|
|
57766
58676
|
{
|
|
57767
|
-
className:
|
|
58677
|
+
className: classNames77__default.default({
|
|
57768
58678
|
grid: true,
|
|
57769
58679
|
"grid-cols-7 gap-10": !isMobile,
|
|
57770
58680
|
"grid-cols-1 gap-": isMobile
|
|
@@ -57806,7 +58716,7 @@ function ScrollToTop({
|
|
|
57806
58716
|
behavior = "smooth",
|
|
57807
58717
|
target
|
|
57808
58718
|
}) {
|
|
57809
|
-
|
|
58719
|
+
React26.useEffect(() => {
|
|
57810
58720
|
if (target) {
|
|
57811
58721
|
target.scrollTo({
|
|
57812
58722
|
top: 0,
|
|
@@ -57882,6 +58792,7 @@ exports.CloudinaryImage = CloudinaryImage_default;
|
|
|
57882
58792
|
exports.CloudinaryProvider = CloudinaryProvider;
|
|
57883
58793
|
exports.CloudinaryVideo = CloudinaryVideo_default;
|
|
57884
58794
|
exports.Code = Code;
|
|
58795
|
+
exports.CodeMirrorMarkdownEditor = CodeMirrorMarkdownEditor_default;
|
|
57885
58796
|
exports.CommentThread = CommentThread_default;
|
|
57886
58797
|
exports.ConfigBootstrap = ConfigBootstrap_default;
|
|
57887
58798
|
exports.Configurator = Configurator;
|
|
@@ -57945,28 +58856,49 @@ exports.LinePlot = LinePlot;
|
|
|
57945
58856
|
exports.Link = Link;
|
|
57946
58857
|
exports.List = List_default;
|
|
57947
58858
|
exports.ListItem = ListItem_default;
|
|
58859
|
+
exports.ListItemElement = ListItemElement;
|
|
58860
|
+
exports.ListRoot = ListRoot;
|
|
58861
|
+
exports.MDXMarkdownEditor = MDXMarkdownEditor_default;
|
|
58862
|
+
exports.MDXMarkdownField = MDXMarkdownField_default;
|
|
57948
58863
|
exports.MarkdownBlockquote = MarkdownBlockquote_default;
|
|
58864
|
+
exports.MarkdownBreak = MarkdownBreak_default;
|
|
57949
58865
|
exports.MarkdownCodeBlock = MarkdownCodeBlock_default;
|
|
57950
58866
|
exports.MarkdownContext = MarkdownContext;
|
|
58867
|
+
exports.MarkdownDetails = MarkdownDetails;
|
|
57951
58868
|
exports.MarkdownDocsLayout = MarkdownDocsLayout_default;
|
|
57952
58869
|
exports.MarkdownEditor = MarkdownEditor_default;
|
|
58870
|
+
exports.MarkdownEmphasis = MarkdownEmphasis_default;
|
|
57953
58871
|
exports.MarkdownField = MarkdownField_default;
|
|
58872
|
+
exports.MarkdownFigcaption = MarkdownFigcaption;
|
|
58873
|
+
exports.MarkdownFigure = MarkdownFigure;
|
|
57954
58874
|
exports.MarkdownHeadingComponent = MarkdownHeading_default;
|
|
57955
58875
|
exports.MarkdownImage = MarkdownImage_default;
|
|
57956
58876
|
exports.MarkdownInlineCode = MarkdownInlineCode_default;
|
|
57957
58877
|
exports.MarkdownLayout = MarkdownLayout_default;
|
|
57958
58878
|
exports.MarkdownLink = MarkdownLink_default;
|
|
58879
|
+
exports.MarkdownListItem = MarkdownListItem_default;
|
|
58880
|
+
exports.MarkdownOrderedList = MarkdownOrderedList;
|
|
58881
|
+
exports.MarkdownParagraph = MarkdownParagraph_default;
|
|
57959
58882
|
exports.MarkdownPreviewPane = MarkdownPreviewPane_default;
|
|
57960
58883
|
exports.MarkdownProvider = MarkdownProvider_default;
|
|
57961
58884
|
exports.MarkdownRenderer = MarkdownRenderer_default;
|
|
57962
58885
|
exports.MarkdownSourceEditor = MarkdownSourceEditor_default;
|
|
57963
58886
|
exports.MarkdownSplitEditor = MarkdownSplitEditor_default;
|
|
58887
|
+
exports.MarkdownStrikethrough = MarkdownStrikethrough_default;
|
|
58888
|
+
exports.MarkdownStrong = MarkdownStrong_default;
|
|
58889
|
+
exports.MarkdownSummary = MarkdownSummary;
|
|
57964
58890
|
exports.MarkdownTOC = MarkdownTOC_default;
|
|
57965
58891
|
exports.MarkdownTOCItem = MarkdownTOCItem_default;
|
|
57966
58892
|
exports.MarkdownTable = MarkdownTable_default;
|
|
58893
|
+
exports.MarkdownTableBody = MarkdownTableBody;
|
|
57967
58894
|
exports.MarkdownTableCell = MarkdownTableCell;
|
|
58895
|
+
exports.MarkdownTableHead = MarkdownTableHead;
|
|
57968
58896
|
exports.MarkdownTableHeaderCell = MarkdownTableHeaderCell;
|
|
58897
|
+
exports.MarkdownTableRow = MarkdownTableRow;
|
|
58898
|
+
exports.MarkdownTaskCheckbox = MarkdownTaskCheckbox_default;
|
|
58899
|
+
exports.MarkdownThematicBreak = MarkdownThematicBreak_default;
|
|
57969
58900
|
exports.MarkdownToolbar = MarkdownToolbar_default;
|
|
58901
|
+
exports.MarkdownUnorderedList = MarkdownUnorderedList;
|
|
57970
58902
|
exports.MarkdownViewer = MarkdownViewer_default;
|
|
57971
58903
|
exports.Menu = Menu;
|
|
57972
58904
|
exports.MenuGroup = MenuGroup;
|
|
@@ -58012,6 +58944,13 @@ exports.TNDropdownItem = TNDropdownItem;
|
|
|
58012
58944
|
exports.TNDropdownTitle = TNDropdownTitle;
|
|
58013
58945
|
exports.TNGroup = TNGroup;
|
|
58014
58946
|
exports.Table = Table_default;
|
|
58947
|
+
exports.TableBody = TableBody;
|
|
58948
|
+
exports.TableCell = TableCell;
|
|
58949
|
+
exports.TableElement = TableElement;
|
|
58950
|
+
exports.TableFrame = TableFrame;
|
|
58951
|
+
exports.TableHead = TableHead;
|
|
58952
|
+
exports.TableHeaderCell = TableHeaderCell;
|
|
58953
|
+
exports.TableRow = TableRow;
|
|
58015
58954
|
exports.Tag = Tag_default;
|
|
58016
58955
|
exports.Tags = Tags_default;
|
|
58017
58956
|
exports.TextArea = TextArea_default;
|