@@ -87,16 +41,18 @@ export const ErrorDisplay = ({
- {details.name}
+ {/* eg Error */}
+ Error
- {details.message}
+ {/* eg Something went wrong */}
+ {message}
- {details.code && (
-
- Error Code:
- {details.code}
-
- )}
-
- {details.cause && (
-
- Cause:
- {details.cause}
-
- )}
-
- {Object.keys(details.additional).length > 0 && (
-
-
Additional Information:
-
- {Object.keys(details.additional).map(key => `${key}:\n${details.additional[key]}`).join('\n')}
-
-
- )}
- {/* {details.stack && (
-
-
Stack Trace:
-
- {details.stack}
-
-
- )} */}
+
+
Full Error:
+
{details}
+
)}
diff --git a/src/vs/workbench/contrib/void/browser/react/src/sidebar-tsx/ModelSelectionSettings.tsx b/src/vs/workbench/contrib/void/browser/react/src/sidebar-tsx/ModelSelectionSettings.tsx
new file mode 100644
index 00000000..ef84f752
--- /dev/null
+++ b/src/vs/workbench/contrib/void/browser/react/src/sidebar-tsx/ModelSelectionSettings.tsx
@@ -0,0 +1,68 @@
+/*---------------------------------------------------------------------------------------------
+ * Copyright (c) Glass Devtools, Inc. All rights reserved.
+ * Void Editor additions licensed under the AGPL 3.0 License.
+ *--------------------------------------------------------------------------------------------*/
+
+import { useCallback, useEffect, useRef } from 'react'
+import { FeatureName, featureNames, ProviderName, providerNames } from '../../../../../../../platform/void/common/voidConfigTypes.js'
+import { useConfigState, useService } from '../util/services.js'
+import ErrorBoundary from './ErrorBoundary.js'
+import { VoidSelectBox } from './inputs.js'
+import { SelectBox } from '../../../../../../../base/browser/ui/selectBox/selectBox.js'
+
+
+
+
+export const ModelSelectionOfFeature = ({ featureName }: { featureName: FeatureName }) => {
+
+ const voidConfigService = useService('configStateService')
+ const voidConfigState = useConfigState()
+
+ const modelOptions: { text: string, value: [string, string] }[] = []
+
+ modelOptions.push({ text: 'Select a Provider', value: ['MyProvider', 'MyModel'] })
+
+ for (const providerName of providerNames) {
+ const providerConfig = voidConfigState[providerName]
+ if (providerConfig.enabled !== 'true') continue
+ providerConfig.models?.forEach(model => {
+ modelOptions.push({ text: `${providerName} - ${model}`, value: [providerName, model] })
+ })
+ }
+
+
+
+ return <>
+