@defikitdotnet/education-module-ai
Version:
AI Education Module using Agent Framework
44 lines (43 loc) • 1.57 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AgentProvider = exports.useAgent = void 0;
var jsx_runtime_1 = require("react/jsx-runtime");
var react_1 = require("react");
// Default context values
var defaultAgentContext = {
agent: null,
isAgentAuthenticated: false,
setCurrentAgent: function () { },
clearCurrentAgent: function () { },
};
// Create context
var AgentContext = (0, react_1.createContext)(defaultAgentContext);
// Hook for using the agent context
var useAgent = function () { return (0, react_1.useContext)(AgentContext); };
exports.useAgent = useAgent;
// Provider component with ref forwarding for dev mode
exports.AgentProvider = (0, react_1.forwardRef)(function (_a, ref) {
var children = _a.children;
var _b = (0, react_1.useState)(null), agent = _b[0], setAgent = _b[1];
// Set current agent from parent system
var setCurrentAgent = function (agentInfo) {
setAgent(agentInfo);
};
// Clear agent data
var clearCurrentAgent = function () {
setAgent(null);
};
// Expose methods via ref
(0, react_1.useImperativeHandle)(ref, function () { return ({
setCurrentAgent: setCurrentAgent,
}); });
// Context value
var value = {
agent: agent,
isAgentAuthenticated: agent !== null,
setCurrentAgent: setCurrentAgent,
clearCurrentAgent: clearCurrentAgent,
};
return ((0, jsx_runtime_1.jsx)(AgentContext.Provider, { value: value, children: children }));
});
exports.default = AgentContext;