@usecrow/ui 0.1.66 → 0.1.67
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +41 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +24 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.js +41 -5
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1638,6 +1638,12 @@ function useWidgetStyles({
|
|
|
1638
1638
|
const [selectedModel, setSelectedModel] = React3.useState(
|
|
1639
1639
|
styleCache.get(key)?.model ?? void 0
|
|
1640
1640
|
);
|
|
1641
|
+
const [modelSelectionEnabled, setModelSelectionEnabled] = React3.useState(
|
|
1642
|
+
styleCache.get(key)?.modelSelectionEnabled || false
|
|
1643
|
+
);
|
|
1644
|
+
const [availableModels, setAvailableModels] = React3.useState(
|
|
1645
|
+
styleCache.get(key)?.availableModels || []
|
|
1646
|
+
);
|
|
1641
1647
|
const hasFetchedRef = React3.useRef(false);
|
|
1642
1648
|
const fetchStyles = async () => {
|
|
1643
1649
|
if (skip) return;
|
|
@@ -1657,6 +1663,8 @@ function useWidgetStyles({
|
|
|
1657
1663
|
setSelectedModel(config.model ?? void 0);
|
|
1658
1664
|
setInitialSuggestions(config.initialSuggestions || []);
|
|
1659
1665
|
setToolConsentSettings(config.toolConsentSettings || {});
|
|
1666
|
+
setModelSelectionEnabled(config.modelSelectionEnabled || false);
|
|
1667
|
+
setAvailableModels(config.availableModels || []);
|
|
1660
1668
|
} catch (err) {
|
|
1661
1669
|
console.error("[CrowWidget] Failed to fetch styles:", err);
|
|
1662
1670
|
setError(err instanceof Error ? err : new Error(String(err)));
|
|
@@ -1675,6 +1683,8 @@ function useWidgetStyles({
|
|
|
1675
1683
|
setPersistAnonymousConversations(cached.persistAnonymousConversations ?? true);
|
|
1676
1684
|
setWelcomeMessage(cached.welcomeMessage ?? void 0);
|
|
1677
1685
|
setSelectedModel(cached.model ?? void 0);
|
|
1686
|
+
setModelSelectionEnabled(cached.modelSelectionEnabled || false);
|
|
1687
|
+
setAvailableModels(cached.availableModels || []);
|
|
1678
1688
|
setIsLoading(false);
|
|
1679
1689
|
return;
|
|
1680
1690
|
}
|
|
@@ -1696,6 +1706,8 @@ function useWidgetStyles({
|
|
|
1696
1706
|
selectedModel,
|
|
1697
1707
|
initialSuggestions,
|
|
1698
1708
|
toolConsentSettings,
|
|
1709
|
+
modelSelectionEnabled,
|
|
1710
|
+
availableModels,
|
|
1699
1711
|
refetch: fetchStyles
|
|
1700
1712
|
};
|
|
1701
1713
|
}
|
|
@@ -1735,6 +1747,12 @@ function useCopilotStyles({
|
|
|
1735
1747
|
const [toolConsentSettings, setToolConsentSettings] = React3.useState(
|
|
1736
1748
|
styleCache.get(key)?.toolConsentSettings || {}
|
|
1737
1749
|
);
|
|
1750
|
+
const [modelSelectionEnabled, setModelSelectionEnabled] = React3.useState(
|
|
1751
|
+
styleCache.get(key)?.modelSelectionEnabled || false
|
|
1752
|
+
);
|
|
1753
|
+
const [availableModels, setAvailableModels] = React3.useState(
|
|
1754
|
+
styleCache.get(key)?.availableModels || []
|
|
1755
|
+
);
|
|
1738
1756
|
const hasFetchedRef = React3.useRef(false);
|
|
1739
1757
|
const fetchStyles = async () => {
|
|
1740
1758
|
if (skip) return;
|
|
@@ -1752,6 +1770,8 @@ function useCopilotStyles({
|
|
|
1752
1770
|
setWelcomeMessage(config.welcomeMessage ?? void 0);
|
|
1753
1771
|
setSelectedModel(config.model ?? void 0);
|
|
1754
1772
|
setToolConsentSettings(config.toolConsentSettings || {});
|
|
1773
|
+
setModelSelectionEnabled(config.modelSelectionEnabled || false);
|
|
1774
|
+
setAvailableModels(config.availableModels || []);
|
|
1755
1775
|
} catch (err) {
|
|
1756
1776
|
console.error("[CrowCopilot] Failed to fetch styles:", err);
|
|
1757
1777
|
setError(err instanceof Error ? err : new Error(String(err)));
|
|
@@ -1771,6 +1791,8 @@ function useCopilotStyles({
|
|
|
1771
1791
|
setPersistAnonymousConversations(cached.persistAnonymousConversations ?? true);
|
|
1772
1792
|
setWelcomeMessage(cached.welcomeMessage ?? void 0);
|
|
1773
1793
|
setSelectedModel(cached.model ?? void 0);
|
|
1794
|
+
setModelSelectionEnabled(cached.modelSelectionEnabled || false);
|
|
1795
|
+
setAvailableModels(cached.availableModels || []);
|
|
1774
1796
|
setIsLoading(false);
|
|
1775
1797
|
return;
|
|
1776
1798
|
}
|
|
@@ -1790,6 +1812,8 @@ function useCopilotStyles({
|
|
|
1790
1812
|
welcomeMessage,
|
|
1791
1813
|
selectedModel,
|
|
1792
1814
|
toolConsentSettings,
|
|
1815
|
+
modelSelectionEnabled,
|
|
1816
|
+
availableModels,
|
|
1793
1817
|
refetch: fetchStyles
|
|
1794
1818
|
};
|
|
1795
1819
|
}
|
|
@@ -3231,7 +3255,9 @@ var ModelSelector = ({
|
|
|
3231
3255
|
const dropdownRef = React3.useRef(null);
|
|
3232
3256
|
React3.useEffect(() => {
|
|
3233
3257
|
const handleClickOutside = (event) => {
|
|
3234
|
-
if (
|
|
3258
|
+
if (!dropdownRef.current) return;
|
|
3259
|
+
const path = event.composedPath();
|
|
3260
|
+
if (!path.includes(dropdownRef.current)) {
|
|
3235
3261
|
setIsOpen(false);
|
|
3236
3262
|
}
|
|
3237
3263
|
};
|
|
@@ -4216,7 +4242,9 @@ function CrowWidget({
|
|
|
4216
4242
|
welcomeMessage: welcomeMessageFromAPI,
|
|
4217
4243
|
selectedModel: selectedModelFromAPI,
|
|
4218
4244
|
initialSuggestions,
|
|
4219
|
-
toolConsentSettings
|
|
4245
|
+
toolConsentSettings,
|
|
4246
|
+
modelSelectionEnabled,
|
|
4247
|
+
availableModels: availableModelsFromAPI
|
|
4220
4248
|
} = useWidgetStyles({
|
|
4221
4249
|
productId,
|
|
4222
4250
|
apiUrl,
|
|
@@ -4813,7 +4841,10 @@ function CrowWidget({
|
|
|
4813
4841
|
showStopButton: isBrowserUseActive || !!askUserResolver || !!pendingConfirmation,
|
|
4814
4842
|
highlighted: !!askUserResolver,
|
|
4815
4843
|
className: "crow-backdrop-blur-md",
|
|
4816
|
-
backendUrl: apiUrl
|
|
4844
|
+
backendUrl: apiUrl,
|
|
4845
|
+
selectedModel: chat.selectedModel || selectedModelFromAPI,
|
|
4846
|
+
onModelChange: chat.setSelectedModel,
|
|
4847
|
+
availableModels: modelSelectionEnabled ? availableModelsFromAPI : []
|
|
4817
4848
|
}
|
|
4818
4849
|
)
|
|
4819
4850
|
] })
|
|
@@ -5148,7 +5179,9 @@ function CrowCopilot({
|
|
|
5148
5179
|
persistAnonymousConversations,
|
|
5149
5180
|
welcomeMessage: welcomeMessageFromAPI,
|
|
5150
5181
|
selectedModel,
|
|
5151
|
-
toolConsentSettings
|
|
5182
|
+
toolConsentSettings,
|
|
5183
|
+
modelSelectionEnabled,
|
|
5184
|
+
availableModels: availableModelsFromAPI
|
|
5152
5185
|
} = useCopilotStyles({
|
|
5153
5186
|
productId,
|
|
5154
5187
|
apiUrl,
|
|
@@ -6113,7 +6146,10 @@ function CrowCopilot({
|
|
|
6113
6146
|
onSend: handleSend,
|
|
6114
6147
|
onStop: handleStop,
|
|
6115
6148
|
placeholder: "Ask anything...",
|
|
6116
|
-
isLoading: chat.isLoading
|
|
6149
|
+
isLoading: chat.isLoading,
|
|
6150
|
+
selectedModel: chat.selectedModel || selectedModel,
|
|
6151
|
+
onModelChange: chat.setSelectedModel,
|
|
6152
|
+
availableModels: modelSelectionEnabled ? availableModelsFromAPI : []
|
|
6117
6153
|
}
|
|
6118
6154
|
)
|
|
6119
6155
|
]
|