@gen3/frontend 0.10.84 → 0.10.86
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/cjs/index.js +269 -89
- package/dist/cjs/index.js.map +1 -1
- package/dist/dts/features/Analysis/AnalysisCard.d.ts +5 -0
- package/dist/dts/features/Analysis/AnalysisCard.d.ts.map +1 -0
- package/dist/dts/features/Analysis/AnalysisCard.js +14 -0
- package/dist/dts/features/Analysis/AnalysisCard.js.map +1 -0
- package/dist/dts/features/Analysis/AnalysisCardCompact.d.ts +6 -0
- package/dist/dts/features/Analysis/AnalysisCardCompact.d.ts.map +1 -0
- package/dist/dts/features/Analysis/AnalysisCardCompact.js +12 -0
- package/dist/dts/features/Analysis/AnalysisCardCompact.js.map +1 -0
- package/dist/dts/features/Analysis/AnalysisCardCompact.stories.d.ts +32 -0
- package/dist/dts/features/Analysis/AnalysisCardCompact.stories.d.ts.map +1 -0
- package/dist/dts/features/Analysis/AnalysisCardCompact.stories.js +23 -0
- package/dist/dts/features/Analysis/AnalysisCardCompact.stories.js.map +1 -0
- package/dist/dts/features/Analysis/AnalysisCardEditor.js.map +1 -1
- package/dist/dts/features/Analysis/AnalysisCenter.d.ts.map +1 -1
- package/dist/dts/features/Analysis/AnalysisCenter.js +3 -10
- package/dist/dts/features/Analysis/AnalysisCenter.js.map +1 -1
- package/dist/dts/features/Analysis/AnalysisCenterWithSections.d.ts +22 -0
- package/dist/dts/features/Analysis/AnalysisCenterWithSections.d.ts.map +1 -0
- package/dist/dts/features/Analysis/AnalysisCenterWithSections.js +53 -0
- package/dist/dts/features/Analysis/AnalysisCenterWithSections.js.map +1 -0
- package/dist/dts/features/Analysis/AnalysisCenterWithSections.stories.d.ts +13 -0
- package/dist/dts/features/Analysis/AnalysisCenterWithSections.stories.d.ts.map +1 -0
- package/dist/dts/features/Analysis/AnalysisCenterWithSections.stories.js +113 -0
- package/dist/dts/features/Analysis/AnalysisCenterWithSections.stories.js.map +1 -0
- package/dist/dts/features/Analysis/TextDescription.d.ts.map +1 -1
- package/dist/dts/features/Analysis/TextDescription.js +16 -2
- package/dist/dts/features/Analysis/TextDescription.js.map +1 -1
- package/dist/dts/features/Analysis/index.d.ts +3 -1
- package/dist/dts/features/Analysis/index.d.ts.map +1 -1
- package/dist/dts/features/Analysis/index.js +2 -1
- package/dist/dts/features/Analysis/index.js.map +1 -1
- package/dist/dts/features/Analysis/types.d.ts +15 -2
- package/dist/dts/features/Analysis/types.d.ts.map +1 -1
- package/dist/dts/features/Analysis/types.js +20 -1
- package/dist/dts/features/Analysis/types.js.map +1 -1
- package/dist/dts/index.d.ts +2 -2
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/index.js +1 -1
- package/dist/dts/index.js.map +1 -1
- package/dist/dts/pages/Analysis/Analysis.d.ts +1 -1
- package/dist/dts/pages/Analysis/Analysis.d.ts.map +1 -1
- package/dist/dts/pages/Analysis/Analysis.js +7 -4
- package/dist/dts/pages/Analysis/Analysis.js.map +1 -1
- package/dist/dts/pages/Analysis/data.d.ts.map +1 -1
- package/dist/dts/pages/Analysis/data.js +2 -2
- package/dist/dts/pages/Analysis/data.js.map +1 -1
- package/dist/dts/pages/Analysis/index.d.ts +1 -0
- package/dist/dts/pages/Analysis/index.d.ts.map +1 -1
- package/dist/dts/pages/Analysis/index.js.map +1 -1
- package/dist/dts/pages/Analysis/types.d.ts +4 -2
- package/dist/dts/pages/Analysis/types.d.ts.map +1 -1
- package/dist/esm/index.js +269 -90
- package/dist/esm/index.js.map +1 -1
- package/dist/index.d.ts +39 -5
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
package/dist/cjs/index.js
CHANGED
|
@@ -11954,18 +11954,35 @@ const Workspace = ({ config })=>{
|
|
|
11954
11954
|
|
|
11955
11955
|
const TextDescription = ({ description })=>{
|
|
11956
11956
|
const [extend, setExtend] = React.useState(false);
|
|
11957
|
+
const textRef = React.useRef(null);
|
|
11958
|
+
const [isClamped, setClamped] = React.useState(false);
|
|
11959
|
+
React.useEffect(()=>{
|
|
11960
|
+
// Function that should be called on window resize
|
|
11961
|
+
function handleResize() {
|
|
11962
|
+
if (textRef && textRef.current) {
|
|
11963
|
+
setClamped(textRef.current.scrollHeight > textRef.current.clientHeight);
|
|
11964
|
+
}
|
|
11965
|
+
}
|
|
11966
|
+
// Add event listener to window resize
|
|
11967
|
+
window.addEventListener('resize', handleResize);
|
|
11968
|
+
// Remove event listener on cleanup
|
|
11969
|
+
return ()=>window.removeEventListener('resize', handleResize);
|
|
11970
|
+
}, []); // Empty array ensures that it would only run on mount
|
|
11957
11971
|
return /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
11958
11972
|
children: [
|
|
11959
11973
|
!extend ? /*#__PURE__*/ jsxRuntime.jsx(core$1.Text, {
|
|
11974
|
+
ref: textRef,
|
|
11975
|
+
size: "sm",
|
|
11960
11976
|
lineClamp: 4,
|
|
11961
11977
|
children: description
|
|
11962
11978
|
}) : /*#__PURE__*/ jsxRuntime.jsx(core$1.Text, {
|
|
11979
|
+
size: "sm",
|
|
11963
11980
|
children: description
|
|
11964
11981
|
}),
|
|
11965
|
-
/*#__PURE__*/ jsxRuntime.jsx("button", {
|
|
11982
|
+
isClamped && /*#__PURE__*/ jsxRuntime.jsx("button", {
|
|
11966
11983
|
onClick: ()=>setExtend((extend)=>!extend),
|
|
11967
11984
|
children: /*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
11968
|
-
className: "flex text-xs font-semibold text-
|
|
11985
|
+
className: "flex text-xs font-semibold text-base-contrast-light",
|
|
11969
11986
|
children: [
|
|
11970
11987
|
!extend ? 'Extend Text' : 'Collapse Text',
|
|
11971
11988
|
' ',
|
|
@@ -11980,6 +11997,90 @@ const TextDescription = ({ description })=>{
|
|
|
11980
11997
|
});
|
|
11981
11998
|
};
|
|
11982
11999
|
|
|
12000
|
+
const AnalysisCard = ({ title, description, type, icon, image, hasDemo, loginRequired, href })=>{
|
|
12001
|
+
return /*#__PURE__*/ jsxRuntime.jsx(core$1.Stack, {
|
|
12002
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
12003
|
+
className: "rounded-sm bg-base-max",
|
|
12004
|
+
children: [
|
|
12005
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12006
|
+
className: "p-0 rounded-sm",
|
|
12007
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(core$1.Image, {
|
|
12008
|
+
component: Image,
|
|
12009
|
+
src: `${image}`,
|
|
12010
|
+
alt: `${title} image`,
|
|
12011
|
+
height: 1000,
|
|
12012
|
+
width: 1000,
|
|
12013
|
+
radius: "md"
|
|
12014
|
+
})
|
|
12015
|
+
}),
|
|
12016
|
+
/*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
12017
|
+
className: "flex -mt-5 relative z-10",
|
|
12018
|
+
children: [
|
|
12019
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12020
|
+
className: "p-0.5 rounded-sm bg-base-lightest ml-5 border-2 border-base",
|
|
12021
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(core$1.Image, {
|
|
12022
|
+
component: Image,
|
|
12023
|
+
src: `${icon}`,
|
|
12024
|
+
alt: `${title} logo`,
|
|
12025
|
+
width: 40,
|
|
12026
|
+
height: 40,
|
|
12027
|
+
radius: "lg"
|
|
12028
|
+
})
|
|
12029
|
+
}),
|
|
12030
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12031
|
+
className: "relative mb-0 ml-2",
|
|
12032
|
+
children: /*#__PURE__*/ jsxRuntime.jsx("span", {
|
|
12033
|
+
className: "absolute bottom-0 left-0 text-xs text-gray-700 w-max",
|
|
12034
|
+
children: type === 'application' ? 'Application' : 'Jupyter Notebook'
|
|
12035
|
+
})
|
|
12036
|
+
})
|
|
12037
|
+
]
|
|
12038
|
+
}),
|
|
12039
|
+
/*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
12040
|
+
className: "flex flex-col mt-2 ml-2",
|
|
12041
|
+
children: [
|
|
12042
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12043
|
+
className: "text-sm font-black h-6",
|
|
12044
|
+
children: title
|
|
12045
|
+
}),
|
|
12046
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12047
|
+
className: "text-xs text-gray-400 h-6",
|
|
12048
|
+
children: loginRequired ? 'Login Required' : ' '
|
|
12049
|
+
}),
|
|
12050
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12051
|
+
className: "text-sm p-2 h-fit",
|
|
12052
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(TextDescription, {
|
|
12053
|
+
description: description
|
|
12054
|
+
})
|
|
12055
|
+
}),
|
|
12056
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12057
|
+
className: "flex mb-4 rounded-b-md",
|
|
12058
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
12059
|
+
className: "m-auto",
|
|
12060
|
+
children: [
|
|
12061
|
+
/*#__PURE__*/ jsxRuntime.jsx(core$1.NavLink, {
|
|
12062
|
+
component: Link,
|
|
12063
|
+
href: href ?? '_blank',
|
|
12064
|
+
classNames: {
|
|
12065
|
+
root: 'bg-accent text-accent-contrast hover:bg-accent-darker p-2 rounded-sm',
|
|
12066
|
+
label: 'text-sm font-semibold'
|
|
12067
|
+
},
|
|
12068
|
+
label: `Run ${type === 'application' ? 'App' : 'Notebook'}`
|
|
12069
|
+
}),
|
|
12070
|
+
hasDemo && /*#__PURE__*/ jsxRuntime.jsx("button", {
|
|
12071
|
+
className: "ml-2 p-1.5 rounded-sm text-sm font-semibold",
|
|
12072
|
+
children: "Demo"
|
|
12073
|
+
})
|
|
12074
|
+
]
|
|
12075
|
+
})
|
|
12076
|
+
})
|
|
12077
|
+
]
|
|
12078
|
+
})
|
|
12079
|
+
]
|
|
12080
|
+
})
|
|
12081
|
+
}, title);
|
|
12082
|
+
};
|
|
12083
|
+
|
|
11983
12084
|
const AnalysisCenter = ({ tools, showFilterAndSort = false })=>{
|
|
11984
12085
|
const [cards, setCards] = React.useState({
|
|
11985
12086
|
type: '',
|
|
@@ -12049,91 +12150,158 @@ const AnalysisCenter = ({ tools, showFilterAndSort = false })=>{
|
|
|
12049
12150
|
children: /*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12050
12151
|
className: "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6 p-1 mx-4 overflow-y-scroll",
|
|
12051
12152
|
children: tools.map(({ title, description, type, icon, image, hasDemo, loginRequired, href }, key)=>{
|
|
12052
|
-
return /*#__PURE__*/ jsxRuntime.jsx(
|
|
12053
|
-
|
|
12054
|
-
|
|
12153
|
+
return /*#__PURE__*/ jsxRuntime.jsx(AnalysisCard, {
|
|
12154
|
+
title,
|
|
12155
|
+
description,
|
|
12156
|
+
type,
|
|
12157
|
+
icon,
|
|
12158
|
+
image,
|
|
12159
|
+
hasDemo,
|
|
12160
|
+
loginRequired,
|
|
12161
|
+
href,
|
|
12162
|
+
cardType: 'regular'
|
|
12163
|
+
}, title);
|
|
12164
|
+
})
|
|
12165
|
+
})
|
|
12166
|
+
})
|
|
12167
|
+
]
|
|
12168
|
+
});
|
|
12169
|
+
};
|
|
12170
|
+
|
|
12171
|
+
const AnalysisCardCompact = ({ title, description, type = 'application', icon, hasDemo = false, loginRequired = false, href, count, countUnits })=>{
|
|
12172
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(core$1.Stack, {
|
|
12173
|
+
gap: "xs",
|
|
12174
|
+
classNames: {
|
|
12175
|
+
root: 'rounded-lg border-3 border-contrast bg-base-max h-full'
|
|
12176
|
+
},
|
|
12177
|
+
children: [
|
|
12178
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12179
|
+
className: "rounded-t-lg bg-secondary border-b-4 border-accent-warm h-12"
|
|
12180
|
+
}),
|
|
12181
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12182
|
+
className: "flex relative -mt-10 z-10 p-2 max-w-90",
|
|
12183
|
+
children: /*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12184
|
+
className: "relative rounded-lg bg-base-lightest ml-5 border-4 border-base-light mx-2 w-1/4 aspect-square",
|
|
12185
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(core$1.Image, {
|
|
12186
|
+
component: Image,
|
|
12187
|
+
src: `${icon}`,
|
|
12188
|
+
alt: `${title} logo`,
|
|
12189
|
+
fill: true,
|
|
12190
|
+
fit: "cover",
|
|
12191
|
+
radius: "lg"
|
|
12192
|
+
})
|
|
12193
|
+
})
|
|
12194
|
+
}),
|
|
12195
|
+
/*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
12196
|
+
className: "flex flex-col ml-2 px-4 pb-2 h-full justify-between",
|
|
12197
|
+
children: [
|
|
12198
|
+
/*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
12199
|
+
className: "flex flex-col",
|
|
12200
|
+
children: [
|
|
12201
|
+
/*#__PURE__*/ jsxRuntime.jsx(core$1.Text, {
|
|
12202
|
+
fw: "bold",
|
|
12203
|
+
classNames: {
|
|
12204
|
+
root: 'font-header sm:text-xl lg:text-2xl'
|
|
12205
|
+
},
|
|
12206
|
+
children: title
|
|
12207
|
+
}),
|
|
12208
|
+
/*#__PURE__*/ jsxRuntime.jsxs(core$1.Text, {
|
|
12209
|
+
size: "md",
|
|
12210
|
+
fw: "semibold",
|
|
12211
|
+
c: "base-contrast.5",
|
|
12055
12212
|
children: [
|
|
12056
|
-
|
|
12057
|
-
|
|
12058
|
-
|
|
12059
|
-
component: Image,
|
|
12060
|
-
src: `${image}`,
|
|
12061
|
-
alt: `${title} image`,
|
|
12062
|
-
height: 1000,
|
|
12063
|
-
width: 1000,
|
|
12064
|
-
radius: "md"
|
|
12065
|
-
})
|
|
12066
|
-
}),
|
|
12067
|
-
/*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
12068
|
-
className: "flex -mt-5 relative z-10",
|
|
12069
|
-
children: [
|
|
12070
|
-
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12071
|
-
className: "p-0.5 rounded-sm bg-base-lightest ml-5 border-2 border-base",
|
|
12072
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(core$1.Image, {
|
|
12073
|
-
component: Image,
|
|
12074
|
-
src: `${icon}`,
|
|
12075
|
-
alt: `${title} logo`,
|
|
12076
|
-
width: 40,
|
|
12077
|
-
height: 40,
|
|
12078
|
-
radius: "lg"
|
|
12079
|
-
})
|
|
12080
|
-
}),
|
|
12081
|
-
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12082
|
-
className: "relative mb-0 ml-2",
|
|
12083
|
-
children: /*#__PURE__*/ jsxRuntime.jsx("span", {
|
|
12084
|
-
className: "absolute bottom-0 left-0 text-xs text-gray-700 w-max",
|
|
12085
|
-
children: type === 'application' ? 'Application' : 'Jupyter Notebook'
|
|
12086
|
-
})
|
|
12087
|
-
})
|
|
12088
|
-
]
|
|
12089
|
-
}),
|
|
12090
|
-
/*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
12091
|
-
className: "flex flex-col mt-2 ml-2",
|
|
12092
|
-
children: [
|
|
12093
|
-
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12094
|
-
className: "text-sm font-black h-6",
|
|
12095
|
-
children: title
|
|
12096
|
-
}),
|
|
12097
|
-
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12098
|
-
className: "text-xs text-gray-400 h-6",
|
|
12099
|
-
children: loginRequired ? 'Login Required' : ' '
|
|
12100
|
-
}),
|
|
12101
|
-
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12102
|
-
className: "text-sm p-2 h-fit",
|
|
12103
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(TextDescription, {
|
|
12104
|
-
description: description
|
|
12105
|
-
})
|
|
12106
|
-
}),
|
|
12107
|
-
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12108
|
-
className: "flex mb-4 rounded-b-md",
|
|
12109
|
-
children: /*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
12110
|
-
className: "m-auto",
|
|
12111
|
-
children: [
|
|
12112
|
-
/*#__PURE__*/ jsxRuntime.jsx(core$1.NavLink, {
|
|
12113
|
-
component: Link,
|
|
12114
|
-
href: href ?? '_blank',
|
|
12115
|
-
classNames: {
|
|
12116
|
-
root: 'bg-accent text-accent-contrast hover:bg-accent-darker p-2 rounded-sm',
|
|
12117
|
-
label: 'text-sm font-semibold'
|
|
12118
|
-
},
|
|
12119
|
-
label: `Run ${type === 'application' ? 'App' : 'Notebook'}`
|
|
12120
|
-
}),
|
|
12121
|
-
hasDemo && /*#__PURE__*/ jsxRuntime.jsx("button", {
|
|
12122
|
-
className: "ml-2 p-1.5 rounded-sm text-sm font-semibold",
|
|
12123
|
-
children: "Demo"
|
|
12124
|
-
})
|
|
12125
|
-
]
|
|
12126
|
-
})
|
|
12127
|
-
})
|
|
12128
|
-
]
|
|
12129
|
-
})
|
|
12213
|
+
count?.toLocaleString(),
|
|
12214
|
+
" ",
|
|
12215
|
+
countUnits
|
|
12130
12216
|
]
|
|
12217
|
+
}),
|
|
12218
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12219
|
+
className: "py-2 min-h-24 h-full",
|
|
12220
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(TextDescription, {
|
|
12221
|
+
description: description
|
|
12222
|
+
})
|
|
12131
12223
|
})
|
|
12132
|
-
|
|
12224
|
+
]
|
|
12225
|
+
}),
|
|
12226
|
+
/*#__PURE__*/ jsxRuntime.jsxs(core$1.Group, {
|
|
12227
|
+
className: "mb-4",
|
|
12228
|
+
children: [
|
|
12229
|
+
/*#__PURE__*/ jsxRuntime.jsxs(core$1.Button, {
|
|
12230
|
+
color: "primary.4",
|
|
12231
|
+
children: [
|
|
12232
|
+
"Run ",
|
|
12233
|
+
type === 'application' ? 'App' : 'Notebook'
|
|
12234
|
+
]
|
|
12235
|
+
}),
|
|
12236
|
+
hasDemo && /*#__PURE__*/ jsxRuntime.jsx(core$1.Button, {
|
|
12237
|
+
variant: "outline",
|
|
12238
|
+
color: "primary.4",
|
|
12239
|
+
children: "Demo"
|
|
12240
|
+
})
|
|
12241
|
+
]
|
|
12133
12242
|
})
|
|
12134
|
-
|
|
12243
|
+
]
|
|
12135
12244
|
})
|
|
12136
12245
|
]
|
|
12246
|
+
}, title);
|
|
12247
|
+
};
|
|
12248
|
+
|
|
12249
|
+
/**
|
|
12250
|
+
* AnalysisPanelWithSections component.
|
|
12251
|
+
*
|
|
12252
|
+
* This React functional component renders a panel that organizes tools into sections. Each section
|
|
12253
|
+
* includes a title, a divider, and a grid of tool cards. The component supports customizable styling
|
|
12254
|
+
* for global and section-specific classNames.
|
|
12255
|
+
*
|
|
12256
|
+
* @type {React.FC<AnalysisCenterWithSectionsConfiguration>}
|
|
12257
|
+
*
|
|
12258
|
+
* @param {Object} props - The component properties.
|
|
12259
|
+
* @param {Array} props.sections - The array of sections to display in the panel. Each section includes
|
|
12260
|
+
* a label, an optional classNames object for custom styling, and an array of tools.
|
|
12261
|
+
* @param {Object} [props.classNames] - An optional object of global classNames used for styling
|
|
12262
|
+
* components within the panel. These can be overridden on a per-section basis.
|
|
12263
|
+
*
|
|
12264
|
+
* @returns {ReactElement} A React element that renders the analysis panel with sections.
|
|
12265
|
+
*/ const AnalysisCenterWithSections = ({ sections, classNames })=>{
|
|
12266
|
+
const rootClassNamesDefaults = {
|
|
12267
|
+
title: 'font-header font-bold text-2xl uppercase',
|
|
12268
|
+
divider: 'text-accent w-[100px] border-accent mb-4'
|
|
12269
|
+
};
|
|
12270
|
+
const mergedGlobalClassnames = mergeDefaultTailwindClassnames(rootClassNamesDefaults, classNames ?? {});
|
|
12271
|
+
const sectionPanels = React.useMemo(()=>sections.map((section)=>{
|
|
12272
|
+
const sectionClassnames = mergeDefaultTailwindClassnames(mergedGlobalClassnames, section.classNames ?? {});
|
|
12273
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(core$1.Stack, {
|
|
12274
|
+
gap: "xs",
|
|
12275
|
+
children: [
|
|
12276
|
+
/*#__PURE__*/ jsxRuntime.jsx(core$1.Text, {
|
|
12277
|
+
classNames: {
|
|
12278
|
+
root: sectionClassnames['title']
|
|
12279
|
+
},
|
|
12280
|
+
children: section.label
|
|
12281
|
+
}),
|
|
12282
|
+
/*#__PURE__*/ jsxRuntime.jsx(core$1.Divider, {
|
|
12283
|
+
size: "lg",
|
|
12284
|
+
classNames: {
|
|
12285
|
+
root: sectionClassnames['divider']
|
|
12286
|
+
}
|
|
12287
|
+
}),
|
|
12288
|
+
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12289
|
+
className: "grid sm:grid-cols-2 md:grid-cols-4 lg:grid-cols-5 gap-4 items-stretch",
|
|
12290
|
+
children: section.tools.map((tool)=>{
|
|
12291
|
+
return /*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
12292
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(AnalysisCardCompact, {
|
|
12293
|
+
...tool
|
|
12294
|
+
})
|
|
12295
|
+
}, tool.title);
|
|
12296
|
+
})
|
|
12297
|
+
})
|
|
12298
|
+
]
|
|
12299
|
+
}, section.label);
|
|
12300
|
+
}), [
|
|
12301
|
+
sections
|
|
12302
|
+
]);
|
|
12303
|
+
return /*#__PURE__*/ jsxRuntime.jsx(core$1.Stack, {
|
|
12304
|
+
children: sectionPanels
|
|
12137
12305
|
});
|
|
12138
12306
|
};
|
|
12139
12307
|
|
|
@@ -17659,8 +17827,8 @@ const AnalysisPanel = ({ tools })=>{
|
|
|
17659
17827
|
});
|
|
17660
17828
|
};
|
|
17661
17829
|
|
|
17662
|
-
const AnalysisPage = ({ headerProps, footerProps, tools })=>{
|
|
17663
|
-
return /*#__PURE__*/ jsxRuntime.
|
|
17830
|
+
const AnalysisPage = ({ headerProps, footerProps, tools, sections, classNames })=>{
|
|
17831
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(NavPageLayout, {
|
|
17664
17832
|
headerProps,
|
|
17665
17833
|
footerProps,
|
|
17666
17834
|
headerData: {
|
|
@@ -17668,9 +17836,21 @@ const AnalysisPage = ({ headerProps, footerProps, tools })=>{
|
|
|
17668
17836
|
content: 'Analysis Center',
|
|
17669
17837
|
key: 'gen3-analysis-center'
|
|
17670
17838
|
},
|
|
17671
|
-
children:
|
|
17672
|
-
tools
|
|
17673
|
-
|
|
17839
|
+
children: [
|
|
17840
|
+
!tools && !sections && /*#__PURE__*/ jsxRuntime.jsx(core$1.Center, {
|
|
17841
|
+
className: "mt-20",
|
|
17842
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(ErrorCard, {
|
|
17843
|
+
message: "No tools or sections found"
|
|
17844
|
+
})
|
|
17845
|
+
}),
|
|
17846
|
+
tools && /*#__PURE__*/ jsxRuntime.jsx(AnalysisPanel, {
|
|
17847
|
+
tools: tools
|
|
17848
|
+
}),
|
|
17849
|
+
sections && /*#__PURE__*/ jsxRuntime.jsx(AnalysisCenterWithSections, {
|
|
17850
|
+
sections: sections,
|
|
17851
|
+
classNames: classNames
|
|
17852
|
+
})
|
|
17853
|
+
]
|
|
17674
17854
|
});
|
|
17675
17855
|
};
|
|
17676
17856
|
|
|
@@ -17684,11 +17864,10 @@ const AnalysisPageGetServerSideProps = async ()=>{
|
|
|
17684
17864
|
}
|
|
17685
17865
|
};
|
|
17686
17866
|
} catch (err) {
|
|
17687
|
-
console.
|
|
17867
|
+
console.warn(err);
|
|
17688
17868
|
return {
|
|
17689
17869
|
props: {
|
|
17690
|
-
...await getNavPageLayoutPropsFromConfig()
|
|
17691
|
-
tools: []
|
|
17870
|
+
...await getNavPageLayoutPropsFromConfig()
|
|
17692
17871
|
}
|
|
17693
17872
|
};
|
|
17694
17873
|
}
|
|
@@ -20856,6 +21035,7 @@ exports.AdminAuthZPageGetServerSideProps = AdminAuthZPageGetServerSideProps;
|
|
|
20856
21035
|
exports.AiSearch = AiSearch;
|
|
20857
21036
|
exports.AiSearchPage = AISearchPage;
|
|
20858
21037
|
exports.AnalysisCenter = AnalysisCenter;
|
|
21038
|
+
exports.AnalysisCenterWithSections = AnalysisCenterWithSections;
|
|
20859
21039
|
exports.AnalysisEditorPage = AnalysisEditorPage;
|
|
20860
21040
|
exports.AnalysisEditorPageGetServerSideProps = AnalysisEditorPageGetServerSideProps;
|
|
20861
21041
|
exports.AnalysisPage = AnalysisPage;
|