@emblemvault/hustle-react 1.4.3 → 1.4.5
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/browser/hustle-react.js +138 -39
- package/dist/browser/hustle-react.js.map +1 -1
- package/dist/components/index.cjs +113 -38
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.d.cts +2 -2
- package/dist/components/index.d.ts +2 -2
- package/dist/components/index.js +113 -38
- package/dist/components/index.js.map +1 -1
- package/dist/hooks/index.cjs +24 -0
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.js +24 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/index.cjs +138 -38
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -1
- package/dist/index.d.ts +7 -1
- package/dist/index.js +138 -39
- package/dist/index.js.map +1 -1
- package/dist/plugins/index.cjs +9 -0
- package/dist/plugins/index.cjs.map +1 -1
- package/dist/plugins/index.js +9 -0
- package/dist/plugins/index.js.map +1 -1
- package/dist/providers/index.cjs +24 -0
- package/dist/providers/index.cjs.map +1 -1
- package/dist/providers/index.js +24 -0
- package/dist/providers/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -2116,6 +2116,30 @@ function HustleProvider({
|
|
|
2116
2116
|
}
|
|
2117
2117
|
};
|
|
2118
2118
|
}, [client]);
|
|
2119
|
+
useEffect(() => {
|
|
2120
|
+
if (typeof window !== "undefined") {
|
|
2121
|
+
const win = window;
|
|
2122
|
+
win.__hustleGetModel = () => selectedModel;
|
|
2123
|
+
win.__hustleSetModel = (model) => setSelectedModel(model);
|
|
2124
|
+
win.__hustleGetSystemPrompt = () => systemPrompt;
|
|
2125
|
+
win.__hustleSetSystemPrompt = (prompt) => setSystemPrompt(prompt);
|
|
2126
|
+
win.__hustleGetSkipServerPrompt = () => skipServerPrompt;
|
|
2127
|
+
win.__hustleSetSkipServerPrompt = (skip) => setSkipServerPrompt(skip);
|
|
2128
|
+
win.__hustleGetModels = () => models;
|
|
2129
|
+
}
|
|
2130
|
+
return () => {
|
|
2131
|
+
if (typeof window !== "undefined") {
|
|
2132
|
+
const win = window;
|
|
2133
|
+
delete win.__hustleGetModel;
|
|
2134
|
+
delete win.__hustleSetModel;
|
|
2135
|
+
delete win.__hustleGetSystemPrompt;
|
|
2136
|
+
delete win.__hustleSetSystemPrompt;
|
|
2137
|
+
delete win.__hustleGetSkipServerPrompt;
|
|
2138
|
+
delete win.__hustleSetSkipServerPrompt;
|
|
2139
|
+
delete win.__hustleGetModels;
|
|
2140
|
+
}
|
|
2141
|
+
};
|
|
2142
|
+
}, [selectedModel, setSelectedModel, systemPrompt, setSystemPrompt, skipServerPrompt, setSkipServerPrompt, models]);
|
|
2119
2143
|
const loadModels = useCallback(async () => {
|
|
2120
2144
|
if (!client) {
|
|
2121
2145
|
log("Cannot load models - client not ready");
|
|
@@ -3715,6 +3739,15 @@ Executors run in the browser context with full access to:
|
|
|
3715
3739
|
- **window.__hustleListPlugins()** - List all installed plugins
|
|
3716
3740
|
- **window.__hustleGetPlugin(name)** - Get a specific plugin by name
|
|
3717
3741
|
|
|
3742
|
+
### Hustle Settings Globals (Read/Write)
|
|
3743
|
+
- **window.__hustleGetModel()** - Get the current model override (empty string = server default)
|
|
3744
|
+
- **window.__hustleSetModel(model)** - Set the model override (e.g., "anthropic/claude-3-opus")
|
|
3745
|
+
- **window.__hustleGetSystemPrompt()** - Get the current system prompt override
|
|
3746
|
+
- **window.__hustleSetSystemPrompt(prompt)** - Set the system prompt override
|
|
3747
|
+
- **window.__hustleGetSkipServerPrompt()** - Get whether server prompt is skipped (boolean)
|
|
3748
|
+
- **window.__hustleSetSkipServerPrompt(skip)** - Set whether to skip server prompt
|
|
3749
|
+
- **window.__hustleGetModels()** - Get list of available models (read-only)
|
|
3750
|
+
|
|
3718
3751
|
### DOM Manipulation Examples
|
|
3719
3752
|
Create a modal: document.createElement('div'), style it, append to document.body
|
|
3720
3753
|
Add event listeners: element.addEventListener('click', handler)
|
|
@@ -15784,12 +15817,16 @@ function SettingsIcon() {
|
|
|
15784
15817
|
function AttachIcon() {
|
|
15785
15818
|
return /* @__PURE__ */ jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: /* @__PURE__ */ jsx("path", { d: "M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48" }) });
|
|
15786
15819
|
}
|
|
15820
|
+
|
|
15821
|
+
// src/constants/index.ts
|
|
15822
|
+
var AGENT_HUSTLE_ICON = "data:image/jpeg;base64,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";
|
|
15787
15823
|
var sizeConfigs = {
|
|
15788
15824
|
sm: { width: "320px", height: "400px" },
|
|
15789
15825
|
md: { width: "380px", height: "520px" },
|
|
15790
15826
|
lg: { width: "420px", height: "600px" },
|
|
15791
15827
|
xl: { width: "480px", height: "700px" },
|
|
15792
|
-
full: { width: "100vw", height: "100vh" }
|
|
15828
|
+
full: { width: "100vw", height: "100vh" },
|
|
15829
|
+
sideDock: { width: "380px", height: "100vh" }
|
|
15793
15830
|
};
|
|
15794
15831
|
var widgetStyles = {
|
|
15795
15832
|
// Container for absolute positioning
|
|
@@ -15867,6 +15904,21 @@ var widgetStyles = {
|
|
|
15867
15904
|
width: "100vw",
|
|
15868
15905
|
height: "100vh"
|
|
15869
15906
|
},
|
|
15907
|
+
// Side dock mode overrides
|
|
15908
|
+
panelSideDock: {
|
|
15909
|
+
position: "fixed",
|
|
15910
|
+
top: 0,
|
|
15911
|
+
right: 0,
|
|
15912
|
+
bottom: 0,
|
|
15913
|
+
borderRadius: 0,
|
|
15914
|
+
width: "380px",
|
|
15915
|
+
height: "100vh",
|
|
15916
|
+
borderLeft: `1px solid ${tokens.colors.borderPrimary}`,
|
|
15917
|
+
boxShadow: `-4px 0 24px rgba(0, 0, 0, 0.3)`
|
|
15918
|
+
},
|
|
15919
|
+
// Hustle avatar in launcher
|
|
15920
|
+
launcherAvatar: {
|
|
15921
|
+
borderRadius: tokens.radius.full},
|
|
15870
15922
|
// Close button in panel header
|
|
15871
15923
|
closeBtn: {
|
|
15872
15924
|
width: "32px",
|
|
@@ -15886,23 +15938,35 @@ var widgetStyles = {
|
|
|
15886
15938
|
color: tokens.colors.textPrimary
|
|
15887
15939
|
}
|
|
15888
15940
|
};
|
|
15889
|
-
function ChatIcon() {
|
|
15890
|
-
return /* @__PURE__ */ jsx("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsx("path", { d: "M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z" }) });
|
|
15891
|
-
}
|
|
15892
15941
|
function CloseIcon() {
|
|
15893
15942
|
return /* @__PURE__ */ jsxs("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
15894
15943
|
/* @__PURE__ */ jsx("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
|
|
15895
15944
|
/* @__PURE__ */ jsx("line", { x1: "6", y1: "6", x2: "18", y2: "18" })
|
|
15896
15945
|
] });
|
|
15897
15946
|
}
|
|
15898
|
-
function
|
|
15947
|
+
function ExpandIcon() {
|
|
15899
15948
|
return /* @__PURE__ */ jsxs("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
15900
|
-
/* @__PURE__ */ jsx("polyline", { points: "
|
|
15901
|
-
/* @__PURE__ */ jsx("polyline", { points: "
|
|
15902
|
-
/* @__PURE__ */ jsx("line", { x1: "
|
|
15949
|
+
/* @__PURE__ */ jsx("polyline", { points: "15 3 21 3 21 9" }),
|
|
15950
|
+
/* @__PURE__ */ jsx("polyline", { points: "9 21 3 21 3 15" }),
|
|
15951
|
+
/* @__PURE__ */ jsx("line", { x1: "21", y1: "3", x2: "14", y2: "10" }),
|
|
15903
15952
|
/* @__PURE__ */ jsx("line", { x1: "3", y1: "21", x2: "10", y2: "14" })
|
|
15904
15953
|
] });
|
|
15905
15954
|
}
|
|
15955
|
+
function AgentHustleAvatar({ size = 40 }) {
|
|
15956
|
+
return /* @__PURE__ */ jsx(
|
|
15957
|
+
"img",
|
|
15958
|
+
{
|
|
15959
|
+
src: AGENT_HUSTLE_ICON,
|
|
15960
|
+
alt: "Agent Hustle",
|
|
15961
|
+
style: {
|
|
15962
|
+
width: size,
|
|
15963
|
+
height: size,
|
|
15964
|
+
borderRadius: "50%",
|
|
15965
|
+
objectFit: "cover"
|
|
15966
|
+
}
|
|
15967
|
+
}
|
|
15968
|
+
);
|
|
15969
|
+
}
|
|
15906
15970
|
function HustleChatWidget({
|
|
15907
15971
|
config = {},
|
|
15908
15972
|
...chatProps
|
|
@@ -15910,7 +15974,7 @@ function HustleChatWidget({
|
|
|
15910
15974
|
const {
|
|
15911
15975
|
position = "bottom-right",
|
|
15912
15976
|
size = "md",
|
|
15913
|
-
title = "
|
|
15977
|
+
title = "Agent Hustle",
|
|
15914
15978
|
defaultOpen = false,
|
|
15915
15979
|
launcherIcon,
|
|
15916
15980
|
offset = { x: 24, y: 24 },
|
|
@@ -15985,7 +16049,7 @@ function HustleChatWidget({
|
|
|
15985
16049
|
style: {
|
|
15986
16050
|
...widgetStyles.panel,
|
|
15987
16051
|
...positionStyles.panel,
|
|
15988
|
-
...size === "full" ? widgetStyles.panelFull : {
|
|
16052
|
+
...size === "full" ? widgetStyles.panelFull : size === "sideDock" ? widgetStyles.panelSideDock : {
|
|
15989
16053
|
width: sizeConfig.width,
|
|
15990
16054
|
height: sizeConfig.height
|
|
15991
16055
|
},
|
|
@@ -16003,35 +16067,70 @@ function HustleChatWidget({
|
|
|
16003
16067
|
padding: `${tokens.spacing.md} ${tokens.spacing.lg}`,
|
|
16004
16068
|
background: tokens.colors.bgPrimary,
|
|
16005
16069
|
borderBottom: `1px solid ${tokens.colors.borderPrimary}`,
|
|
16006
|
-
borderRadius: `${tokens.radius.xl} ${tokens.radius.xl} 0 0`,
|
|
16070
|
+
borderRadius: size === "sideDock" || size === "full" ? 0 : `${tokens.radius.xl} ${tokens.radius.xl} 0 0`,
|
|
16007
16071
|
flexShrink: 0
|
|
16008
16072
|
},
|
|
16009
16073
|
children: [
|
|
16010
|
-
/* @__PURE__ */
|
|
16011
|
-
|
|
16012
|
-
{
|
|
16013
|
-
|
|
16014
|
-
|
|
16015
|
-
|
|
16016
|
-
|
|
16017
|
-
|
|
16018
|
-
|
|
16019
|
-
|
|
16020
|
-
|
|
16021
|
-
|
|
16022
|
-
|
|
16023
|
-
|
|
16024
|
-
|
|
16025
|
-
|
|
16026
|
-
|
|
16027
|
-
|
|
16028
|
-
|
|
16029
|
-
|
|
16030
|
-
|
|
16031
|
-
|
|
16032
|
-
|
|
16033
|
-
|
|
16034
|
-
|
|
16074
|
+
/* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: tokens.spacing.md }, children: [
|
|
16075
|
+
/* @__PURE__ */ jsx(AgentHustleAvatar, { size: 32 }),
|
|
16076
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
16077
|
+
/* @__PURE__ */ jsx(
|
|
16078
|
+
"span",
|
|
16079
|
+
{
|
|
16080
|
+
style: {
|
|
16081
|
+
display: "block",
|
|
16082
|
+
fontWeight: tokens.typography.fontWeightSemibold,
|
|
16083
|
+
color: tokens.colors.textPrimary,
|
|
16084
|
+
fontSize: tokens.typography.fontSizeMd
|
|
16085
|
+
},
|
|
16086
|
+
children: title
|
|
16087
|
+
}
|
|
16088
|
+
),
|
|
16089
|
+
/* @__PURE__ */ jsx(
|
|
16090
|
+
"span",
|
|
16091
|
+
{
|
|
16092
|
+
style: {
|
|
16093
|
+
display: "block",
|
|
16094
|
+
fontSize: tokens.typography.fontSizeXs,
|
|
16095
|
+
color: tokens.colors.textTertiary
|
|
16096
|
+
},
|
|
16097
|
+
children: "Protocol Companion"
|
|
16098
|
+
}
|
|
16099
|
+
)
|
|
16100
|
+
] })
|
|
16101
|
+
] }),
|
|
16102
|
+
/* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: tokens.spacing.xs }, children: [
|
|
16103
|
+
size === "sideDock" && /* @__PURE__ */ jsx(
|
|
16104
|
+
"button",
|
|
16105
|
+
{
|
|
16106
|
+
onClick: () => {
|
|
16107
|
+
},
|
|
16108
|
+
onMouseEnter: () => {
|
|
16109
|
+
},
|
|
16110
|
+
onMouseLeave: () => {
|
|
16111
|
+
},
|
|
16112
|
+
style: {
|
|
16113
|
+
...widgetStyles.closeBtn
|
|
16114
|
+
},
|
|
16115
|
+
title: "Expand",
|
|
16116
|
+
children: /* @__PURE__ */ jsx(ExpandIcon, {})
|
|
16117
|
+
}
|
|
16118
|
+
),
|
|
16119
|
+
/* @__PURE__ */ jsx(
|
|
16120
|
+
"button",
|
|
16121
|
+
{
|
|
16122
|
+
onClick: toggle,
|
|
16123
|
+
onMouseEnter: () => setCloseHovered(true),
|
|
16124
|
+
onMouseLeave: () => setCloseHovered(false),
|
|
16125
|
+
style: {
|
|
16126
|
+
...widgetStyles.closeBtn,
|
|
16127
|
+
...closeHovered ? widgetStyles.closeBtnHover : {}
|
|
16128
|
+
},
|
|
16129
|
+
title: "Close chat",
|
|
16130
|
+
children: size === "full" || size === "sideDock" ? /* @__PURE__ */ jsx(CloseIcon, {}) : /* @__PURE__ */ jsx(CloseIcon, {})
|
|
16131
|
+
}
|
|
16132
|
+
)
|
|
16133
|
+
] })
|
|
16035
16134
|
]
|
|
16036
16135
|
}
|
|
16037
16136
|
),
|
|
@@ -16039,7 +16138,7 @@ function HustleChatWidget({
|
|
|
16039
16138
|
]
|
|
16040
16139
|
}
|
|
16041
16140
|
),
|
|
16042
|
-
(size !== "full" || !isOpen) && /* @__PURE__ */ jsxs(
|
|
16141
|
+
(size !== "full" && size !== "sideDock" || !isOpen) && /* @__PURE__ */ jsxs(
|
|
16043
16142
|
"button",
|
|
16044
16143
|
{
|
|
16045
16144
|
onClick: toggle,
|
|
@@ -16055,7 +16154,7 @@ function HustleChatWidget({
|
|
|
16055
16154
|
title: isOpen ? "Close chat" : "Open chat",
|
|
16056
16155
|
"aria-label": isOpen ? "Close chat" : "Open chat",
|
|
16057
16156
|
children: [
|
|
16058
|
-
launcherIcon || /* @__PURE__ */ jsx(
|
|
16157
|
+
launcherIcon || /* @__PURE__ */ jsx(AgentHustleAvatar, { size: 40 }),
|
|
16059
16158
|
showBadge && badgeContent && !isOpen && /* @__PURE__ */ jsx("span", { style: widgetStyles.badge, children: badgeContent })
|
|
16060
16159
|
]
|
|
16061
16160
|
}
|
|
@@ -16149,6 +16248,6 @@ var DEFAULTS = {
|
|
|
16149
16248
|
EMBLEM_MODAL_URL: "https://emblemvault.ai/connect"
|
|
16150
16249
|
};
|
|
16151
16250
|
|
|
16152
|
-
export { DEFAULTS, HustleChat, HustleChatWidget, HustleProvider, MarkdownContent, STORAGE_KEYS, availablePlugins, debounce, formatFileSize, getAvailablePlugin, hydratePlugin, migrateFunPlugin, pluginRegistry, predictionMarketPlugin, tokens, useHustle, usePlugins };
|
|
16251
|
+
export { AGENT_HUSTLE_ICON, DEFAULTS, HustleChat, HustleChatWidget, HustleProvider, MarkdownContent, STORAGE_KEYS, availablePlugins, debounce, formatFileSize, getAvailablePlugin, hydratePlugin, migrateFunPlugin, pluginRegistry, predictionMarketPlugin, tokens, useHustle, usePlugins };
|
|
16153
16252
|
//# sourceMappingURL=hustle-react.js.map
|
|
16154
16253
|
//# sourceMappingURL=hustle-react.js.map
|