@iblai/web-containers 1.63.0 → 1.65.0
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/_virtual/index2.js +2 -2
- package/dist/cjs/_virtual/index3.js +2 -2
- package/dist/cjs/components/modals/create-agent-modal/create-agent-form.js +18 -10
- package/dist/cjs/components/modals/create-agent-modal/create-agent-form.js.map +1 -1
- package/dist/cjs/components/modals/create-agent-modal/use-create-agent-field-permissions.js +22 -0
- package/dist/cjs/components/modals/create-agent-modal/use-create-agent-field-permissions.js.map +1 -0
- package/dist/cjs/components/modals/create-agent-modal/use-create-agent-form.js +20 -22
- package/dist/cjs/components/modals/create-agent-modal/use-create-agent-form.js.map +1 -1
- package/dist/cjs/components/tenant-switch/index.js +37 -28
- package/dist/cjs/components/tenant-switch/index.js.map +1 -1
- package/dist/cjs/components/user-profile-dropdown/index.js +32 -22
- package/dist/cjs/components/user-profile-dropdown/index.js.map +1 -1
- package/dist/cjs/i18n/messages/en.json.js +2 -2
- package/dist/cjs/i18n/messages/es.json.js +2 -2
- package/dist/cjs/i18n/messages/fr.json.js +2 -2
- package/dist/cjs/i18n/messages/zh.json.js +2 -2
- package/dist/cjs/index.js +3 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/node_modules/.pnpm/css-mediaquery@0.1.2/node_modules/css-mediaquery/index.js +1 -1
- package/dist/cjs/node_modules/.pnpm/matchmediaquery@0.4.2/node_modules/matchmediaquery/index.js +1 -1
- package/dist/cjs/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/index.js +1 -1
- package/dist/cjs/web-containers/tsconfig.build.tsbuildinfo +1 -1
- package/dist/esm/_virtual/index2.js +2 -2
- package/dist/esm/_virtual/index3.js +2 -2
- package/dist/esm/components/modals/create-agent-modal/create-agent-form.js +18 -10
- package/dist/esm/components/modals/create-agent-modal/create-agent-form.js.map +1 -1
- package/dist/esm/components/modals/create-agent-modal/use-create-agent-field-permissions.js +20 -0
- package/dist/esm/components/modals/create-agent-modal/use-create-agent-field-permissions.js.map +1 -0
- package/dist/esm/components/modals/create-agent-modal/use-create-agent-form.js +20 -22
- package/dist/esm/components/modals/create-agent-modal/use-create-agent-form.js.map +1 -1
- package/dist/esm/components/tenant-switch/index.js +38 -30
- package/dist/esm/components/tenant-switch/index.js.map +1 -1
- package/dist/esm/components/user-profile-dropdown/index.js +35 -25
- package/dist/esm/components/user-profile-dropdown/index.js.map +1 -1
- package/dist/esm/i18n/messages/en.json.js +2 -2
- package/dist/esm/i18n/messages/es.json.js +2 -2
- package/dist/esm/i18n/messages/fr.json.js +2 -2
- package/dist/esm/i18n/messages/zh.json.js +2 -2
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/node_modules/.pnpm/css-mediaquery@0.1.2/node_modules/css-mediaquery/index.js +1 -1
- package/dist/esm/node_modules/.pnpm/matchmediaquery@0.4.2/node_modules/matchmediaquery/index.js +1 -1
- package/dist/esm/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/index.js +1 -1
- package/dist/esm/web-containers/tsconfig.build.tsbuildinfo +1 -1
- package/dist/index.d.ts +51 -24
- package/dist/next/index.d.ts +5 -2
- package/dist/package.json +1 -1
- package/package.json +4 -4
|
@@ -34,7 +34,7 @@ function CreateAgentForm({ org, username, initialValues, showBaseModel = false,
|
|
|
34
34
|
const fileInputRef = React.useRef(null);
|
|
35
35
|
const [activeTab, setActiveTab] = React.useState('settings');
|
|
36
36
|
const [selectedPrompt, setSelectedPrompt] = React.useState(null);
|
|
37
|
-
const { form, categories, isLoadingCategories, isCreating, models, visibilities,
|
|
37
|
+
const { form, categories, isLoadingCategories, isCreating, models, visibilities, visibility, isLoadingFieldPermissions, isSettingsComplete, hasPromptsStep, file, systemPrompt, proactivePrompt, guidedPrompt, editPrompt, handleSubmit, } = useCreateAgentForm.useCreateAgentForm({
|
|
38
38
|
org,
|
|
39
39
|
username,
|
|
40
40
|
initialValues,
|
|
@@ -45,8 +45,12 @@ function CreateAgentForm({ org, username, initialValues, showBaseModel = false,
|
|
|
45
45
|
onError,
|
|
46
46
|
onBeforeCreate,
|
|
47
47
|
});
|
|
48
|
-
const isDisabled = isLoadingCategories || isCreating;
|
|
49
|
-
|
|
48
|
+
const isDisabled = isLoadingCategories || isLoadingFieldPermissions || isCreating;
|
|
49
|
+
// The gated fields, the Prompts tab and the Next/Save choice wait for the
|
|
50
|
+
// permissions answer, so nothing shows up only to change once it lands.
|
|
51
|
+
const fieldsReady = !isLoadingFieldPermissions;
|
|
52
|
+
const showPromptsTab = fieldsReady && hasPromptsStep;
|
|
53
|
+
const disablePromptsTab = !fieldsReady || !isSettingsComplete;
|
|
50
54
|
const promptValueFor = (field) => field === 'systemPrompt'
|
|
51
55
|
? systemPrompt
|
|
52
56
|
: field === 'proactivePrompt'
|
|
@@ -77,20 +81,22 @@ function CreateAgentForm({ org, username, initialValues, showBaseModel = false,
|
|
|
77
81
|
contentAria: t('createAgentModalCreateAgentForm.guidedPromptContentAria'),
|
|
78
82
|
},
|
|
79
83
|
];
|
|
80
|
-
return (jsxRuntime.jsxs("div", { className: utils.cn('space-y-6', className), children: [jsxRuntime.jsxs(tabs.Tabs, { value: activeTab, onValueChange: setActiveTab, className: "w-full", children: [jsxRuntime.jsxs(tabs.TabsList, { className: "justify-start", children: [jsxRuntime.jsx(tabs.TabsTrigger, { value: "settings", className: "rounded-md bg-gray-100 px-4 py-2 text-sm font-medium text-gray-600 hover:bg-gray-200 data-[state=active]:bg-gradient-to-r data-[state=active]:from-[#2563EB] data-[state=active]:to-[#93C5FD] data-[state=active]:text-white", children: labels$1.tabs.settings }), jsxRuntime.jsx(tabs.TabsTrigger, { value: "prompts", disabled: disablePromptsTab, className: "rounded-md bg-gray-100 px-4 py-2 text-sm font-medium text-gray-600 hover:bg-gray-200 data-[state=active]:bg-gradient-to-r data-[state=active]:from-[#2563EB] data-[state=active]:to-[#93C5FD] data-[state=active]:text-white", children: labels$1.tabs.prompts })] }), jsxRuntime.jsx(tabs.TabsContent, { value: "settings", children: jsxRuntime.jsxs("div", { className: "space-y-6", children: [jsxRuntime.jsxs("div", { className: "flex flex-col gap-6 md:flex-row", children: [jsxRuntime.jsxs("div", { className: "order-2 space-y-6 md:order-1 md:flex-1", children: [jsxRuntime.jsx(form.Field, { name: "name", children: (field) => {
|
|
84
|
+
return (jsxRuntime.jsxs("div", { className: utils.cn('space-y-6', className), children: [jsxRuntime.jsxs(tabs.Tabs, { value: activeTab, onValueChange: setActiveTab, className: "w-full", children: [jsxRuntime.jsxs(tabs.TabsList, { className: "justify-start", children: [jsxRuntime.jsx(tabs.TabsTrigger, { value: "settings", className: "rounded-md bg-gray-100 px-4 py-2 text-sm font-medium text-gray-600 hover:bg-gray-200 data-[state=active]:bg-gradient-to-r data-[state=active]:from-[#2563EB] data-[state=active]:to-[#93C5FD] data-[state=active]:text-white", children: labels$1.tabs.settings }), showPromptsTab && (jsxRuntime.jsx(tabs.TabsTrigger, { value: "prompts", disabled: disablePromptsTab, className: "rounded-md bg-gray-100 px-4 py-2 text-sm font-medium text-gray-600 hover:bg-gray-200 data-[state=active]:bg-gradient-to-r data-[state=active]:from-[#2563EB] data-[state=active]:to-[#93C5FD] data-[state=active]:text-white", children: labels$1.tabs.prompts }))] }), jsxRuntime.jsx(tabs.TabsContent, { value: "settings", children: jsxRuntime.jsxs("div", { className: "mt-6 space-y-6", children: [jsxRuntime.jsxs("div", { className: "flex flex-col gap-6 md:flex-row", children: [jsxRuntime.jsxs("div", { className: "order-2 space-y-6 md:order-1 md:flex-1", children: [jsxRuntime.jsx(form.Field, { name: "name", children: (field) => {
|
|
81
85
|
const hasNoValueAndIsDirty = field.state.value === '' && field.state.meta.isDirty;
|
|
82
86
|
return (jsxRuntime.jsxs("div", { className: "space-y-2", children: [jsxRuntime.jsxs("label", { className: "flex items-center text-sm font-medium text-gray-700", children: [labels$1.fields.name.label, jsxRuntime.jsx("span", { className: "ml-1 text-red-500", children: "*" })] }), jsxRuntime.jsx(input.Input, { placeholder: labels$1.fields.name.placeholder, value: field.state.value, onChange: (e) => field.handleChange(e.target.value), autoComplete: "name", disabled: isDisabled }), hasNoValueAndIsDirty && (jsxRuntime.jsx("p", { className: "text-red-500 text-xs", children: labels$1.fields.name.requiredError }))] }));
|
|
83
|
-
} }), jsxRuntime.jsx(form.Field, { name: "description", children: (field) => {
|
|
87
|
+
} }), fieldsReady && visibility.description && (jsxRuntime.jsx(form.Field, { name: "description", children: (field) => {
|
|
84
88
|
const hasNoValueAndIsDirty = field.state.value === '' && field.state.meta.isDirty;
|
|
85
89
|
return (jsxRuntime.jsxs("div", { className: "space-y-2", children: [jsxRuntime.jsxs("label", { className: "flex items-center text-sm font-medium text-gray-700", children: [labels$1.fields.description.label, jsxRuntime.jsx("span", { className: "ml-1 text-red-500", children: "*" })] }), jsxRuntime.jsx(textarea.Textarea, { placeholder: labels$1.fields.description.placeholder, value: field.state.value, onChange: (e) => field.handleChange(e.target.value), required: true, disabled: isDisabled }), hasNoValueAndIsDirty && (jsxRuntime.jsx("p", { className: "text-red-500 text-xs", children: labels$1.fields.description.requiredError }))] }));
|
|
86
|
-
} }), jsxRuntime.jsx(form.Field, { name: "category", children: (field) => {
|
|
90
|
+
} })), fieldsReady && visibility.category && (jsxRuntime.jsx(form.Field, { name: "category", children: (field) => {
|
|
87
91
|
var _a;
|
|
88
92
|
return (jsxRuntime.jsxs("div", { className: "space-y-2", children: [jsxRuntime.jsxs("label", { className: "flex items-center text-sm font-medium text-gray-700", children: [labels$1.fields.category.label, jsxRuntime.jsx("span", { className: "ml-1 text-red-500", children: "*" })] }), jsxRuntime.jsxs(popover.Popover, { children: [jsxRuntime.jsx(popover.PopoverTrigger, { asChild: true, children: jsxRuntime.jsxs(button.Button, { variant: "outline", role: "combobox", "aria-label": t('createAgentModalCreateAgentForm.selectCategoryAria'), className: "w-full justify-between", children: [field.state.value
|
|
89
93
|
? (_a = categories === null || categories === void 0 ? void 0 : categories.find((cat) => cat.id === field.state.value)) === null || _a === void 0 ? void 0 : _a.name
|
|
90
94
|
: labels$1.fields.category.triggerPlaceholder, jsxRuntime.jsx(chevronsUpDown.default, { className: "opacity-50" })] }) }), jsxRuntime.jsx(popover.PopoverContent, { "aria-label": t('createAgentModalCreateAgentForm.categoriesDropdownAria'), role: "listbox", "aria-labelledby": "Categories dropdown container", className: "p-0 max-w-[490px] w-full sm:w-[400px] lg:w-[490px]", children: jsxRuntime.jsxs(command.Command, { children: [jsxRuntime.jsx(command.CommandInput, { placeholder: labels$1.fields.category.searchPlaceholder, className: "h-9" }), jsxRuntime.jsxs(command.CommandList, { children: [jsxRuntime.jsx(command.CommandEmpty, { children: labels$1.fields.category.emptyState }), jsxRuntime.jsx(command.CommandGroup, { children: categories === null || categories === void 0 ? void 0 : categories.map((cat) => (jsxRuntime.jsxs(command.CommandItem, { value: cat.id.toString(), onSelect: (currentValue) => {
|
|
91
95
|
field.handleChange(Number(currentValue));
|
|
92
|
-
}, children: [cat.name, jsxRuntime.jsx(check.default, { className: utils.cn('ml-auto', field.state.value === cat.id
|
|
93
|
-
|
|
96
|
+
}, children: [cat.name, jsxRuntime.jsx(check.default, { className: utils.cn('ml-auto', field.state.value === cat.id
|
|
97
|
+
? 'opacity-100'
|
|
98
|
+
: 'opacity-0') })] }, cat.id))) })] })] }) })] })] }));
|
|
99
|
+
} })), fieldsReady && visibility.mentorVisibility && (jsxRuntime.jsx(form.Field, { name: "mentorVisibility", children: (field) => (jsxRuntime.jsxs("div", { className: "space-y-2", children: [jsxRuntime.jsxs("label", { className: "flex items-center text-sm font-medium text-gray-700", children: [labels$1.fields.visibility.label, jsxRuntime.jsx("span", { className: "ml-1 text-red-500", children: "*" })] }), jsxRuntime.jsxs(select.Select, { value: field.state.value, onValueChange: (value) => field.handleChange(value), required: true, disabled: isDisabled, children: [jsxRuntime.jsx(select.SelectTrigger, { "aria-label": t('createAgentModalCreateAgentForm.selectVisibilityAria'), children: jsxRuntime.jsx(select.SelectValue, { placeholder: labels$1.fields.visibility.triggerPlaceholder }) }), jsxRuntime.jsx(select.SelectContent, { children: visibilities.map((option) => (jsxRuntime.jsx(select.SelectItem, { value: option.value, children: option.label }, option.value))) })] })] })) })), showBaseModel && fieldsReady && visibility.base && (jsxRuntime.jsx(form.Field, { name: "base", children: (field) => (jsxRuntime.jsxs("div", { className: "space-y-2", children: [jsxRuntime.jsxs("label", { className: "flex items-center text-sm font-medium text-gray-700", children: [labels$1.fields.base.label, jsxRuntime.jsx("span", { className: "ml-1 text-red-500", children: "*" })] }), jsxRuntime.jsxs(select.Select, { value: field.state.value, onValueChange: (value) => field.handleChange(value), required: true, disabled: isDisabled, children: [jsxRuntime.jsx(select.SelectTrigger, { "aria-label": t('createAgentModalCreateAgentForm.selectBaseModelAria'), children: jsxRuntime.jsx(select.SelectValue, { placeholder: labels$1.fields.base.triggerPlaceholder }) }), jsxRuntime.jsx(select.SelectContent, { children: models.map((model) => (jsxRuntime.jsx(select.SelectItem, { value: model.value, children: model.label }, model.value))) })] })] })) }))] }), fieldsReady && visibility.file && (jsxRuntime.jsx(form.Field, { name: "file", children: (field) => (jsxRuntime.jsxs("div", { className: "order-1 mb-4 space-y-2 md:order-2 md:mb-0 md:w-[200px]", children: [jsxRuntime.jsx("label", { className: "text-sm font-medium text-gray-700", children: labels$1.fields.image.label }), jsxRuntime.jsx("div", { className: "flex h-[200px] cursor-pointer flex-col items-center justify-center rounded-lg border-2 border-dashed border-gray-200", onClick: () => {
|
|
94
100
|
var _a;
|
|
95
101
|
if (isDisabled)
|
|
96
102
|
return;
|
|
@@ -117,11 +123,13 @@ function CreateAgentForm({ org, username, initialValues, showBaseModel = false,
|
|
|
117
123
|
if (selected) {
|
|
118
124
|
field.handleChange(selected);
|
|
119
125
|
}
|
|
120
|
-
}, "aria-label": t('createAgentModalCreateAgentForm.selectAgentImageFileAria') })] })) })] }), jsxRuntime.jsx("div", { className: "flex justify-end", children: jsxRuntime.jsx(button.Button, { type: "button", disabled: disablePromptsTab, className: "w-full gap-2 bg-gradient-to-r from-[#2563EB] to-[#93C5FD] text-white hover:opacity-90 sm:w-auto", onClick: () => setActiveTab('prompts'), children: labels$1.actions.next }) })] }) }), jsxRuntime.jsx(tabs.TabsContent, { value: "prompts", children: jsxRuntime.jsxs("form", { className: "space-y-6 mt-6", onSubmit: (formEvent) => {
|
|
126
|
+
}, "aria-label": t('createAgentModalCreateAgentForm.selectAgentImageFileAria') })] })) }))] }), fieldsReady && (jsxRuntime.jsx("div", { className: "flex justify-end", children: hasPromptsStep ? (jsxRuntime.jsx(button.Button, { type: "button", disabled: disablePromptsTab, className: "w-full gap-2 bg-gradient-to-r from-[#2563EB] to-[#93C5FD] text-white hover:opacity-90 sm:w-auto", onClick: () => setActiveTab('prompts'), children: labels$1.actions.next })) : (jsxRuntime.jsx(button.Button, { type: "button", disabled: isDisabled || disablePromptsTab, className: "w-full gap-2 bg-gradient-to-r from-[#2563EB] to-[#93C5FD] text-white hover:opacity-90 sm:w-auto", onClick: () => void handleSubmit(), children: isCreating ? labels$1.actions.creating : labels$1.actions.create })) }))] }) }), showPromptsTab && (jsxRuntime.jsx(tabs.TabsContent, { value: "prompts", children: jsxRuntime.jsxs("form", { className: "space-y-6 mt-6", onSubmit: (formEvent) => {
|
|
121
127
|
formEvent.preventDefault();
|
|
122
128
|
formEvent.stopPropagation();
|
|
123
129
|
handleSubmit();
|
|
124
|
-
}, children: [jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: promptCards
|
|
130
|
+
}, children: [jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: promptCards
|
|
131
|
+
.filter(({ field }) => visibility[field])
|
|
132
|
+
.map(({ field: fieldName, label, meta, infoAria, contentAria }) => (jsxRuntime.jsx(form.Field, { name: fieldName, children: (field) => (jsxRuntime.jsxs("div", { className: "space-y-4", children: [jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [jsxRuntime.jsx("h3", { className: "text-sm font-medium text-gray-700", children: meta.title }), jsxRuntime.jsx(tooltip.TooltipProvider, { children: jsxRuntime.jsxs(tooltip.Tooltip, { children: [jsxRuntime.jsx(tooltip.TooltipTrigger, { asChild: true, children: jsxRuntime.jsx("button", { type: "button", "aria-label": infoAria, className: "flex items-center justify-center", children: jsxRuntime.jsx(info.default, { className: "h-4 w-4 text-gray-400" }) }) }), jsxRuntime.jsx(tooltip.TooltipContent, { children: jsxRuntime.jsx("p", { children: meta.tooltip }) })] }) })] }), jsxRuntime.jsxs("div", { className: "flex h-[200px] flex-col rounded-lg bg-gray-50 p-4", children: [jsxRuntime.jsx("div", { className: "flex-1 overflow-auto", tabIndex: 0, role: "textbox", "aria-readonly": "true", "aria-label": contentAria, children: jsxRuntime.jsx("p", { className: "text-sm text-gray-600", children: field.state.value }) }), jsxRuntime.jsx("div", { className: "mt-4 flex justify-end gap-2", children: jsxRuntime.jsxs(button.Button, { type: "button", variant: "outline", size: "sm", className: "h-7 border-gray-200 px-4 text-xs font-normal text-gray-600", onClick: () => setSelectedPrompt({ field: fieldName, label }), children: [jsxRuntime.jsx(squarePen.default, { className: "mr-1.5 h-3 w-3" }), labels$1.prompts.edit] }) })] })] })) }, fieldName))) }), jsxRuntime.jsx("div", { className: "flex justify-end", children: jsxRuntime.jsx(button.Button, { type: "submit", className: "bg-gradient-to-r from-[#2563EB] to-[#93C5FD] text-white hover:opacity-90", disabled: isDisabled, children: isCreating ? labels$1.actions.creating : labels$1.actions.create }) })] }) }))] }), selectedPrompt && (jsxRuntime.jsx(editAgentPromptModal.EditAgentPromptModal, { isOpen: !!selectedPrompt, onClose: () => setSelectedPrompt(null), label: selectedPrompt.label, value: promptValueFor(selectedPrompt.field), onSave: (value) => editPrompt(value, selectedPrompt.field), disabled: isDisabled, saveLabel: labels$1.prompts.save }))] }));
|
|
125
133
|
}
|
|
126
134
|
|
|
127
135
|
exports.CreateAgentForm = CreateAgentForm;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-agent-form.js","sources":["../../../../../../../../src/components/modals/create-agent-modal/create-agent-form.tsx"],"sourcesContent":[null],"names":["useT","labels","resolveCreateAgentLabels","useCreateAgentForm","_jsxs","cn","Tabs","TabsList","_jsx","TabsTrigger","TabsContent","Input","Textarea","Popover","PopoverTrigger","Button","ChevronsUpDown","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","CommandItem","Check","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","X","TooltipProvider","Tooltip","TooltipTrigger","Info","TooltipContent","Edit","EditAgentPromptModal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create-agent-form.js","sources":["../../../../../../../../src/components/modals/create-agent-modal/create-agent-form.tsx"],"sourcesContent":[null],"names":["useT","labels","resolveCreateAgentLabels","useCreateAgentForm","_jsxs","cn","Tabs","TabsList","_jsx","TabsTrigger","TabsContent","Input","Textarea","Popover","PopoverTrigger","Button","ChevronsUpDown","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","CommandItem","Check","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","X","TooltipProvider","Tooltip","TooltipTrigger","Info","TooltipContent","Edit","EditAgentPromptModal"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA+EA;;;;;AAKG;AACG,SAAU,eAAe,CAAC,EAC9B,GAAG,EACH,QAAQ,EACR,aAAa,EACb,aAAa,GAAG,KAAK,EACrB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,SAAS,EACT,OAAO,EACP,cAAc,EACd,MAAM,EAAE,cAAc,EACtB,SAAS,GACY,EAAA;AACrB,IAAA,MAAM,CAAC,GAAGA,YAAI,EAAE;IAChB,MAAMC,QAAM,GAAGC,+BAAwB,CAAC,cAAc,EAAE,CAAC,CAAC;IAE1D,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAmB,IAAI,CAAC;AACzD,IAAA,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;AAC5D,IAAA,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAwB,IAAI,CAAC;AAEvF,IAAA,MAAM,EACJ,IAAI,EACJ,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,MAAM,EACN,YAAY,EACZ,UAAU,EACV,yBAAyB,EACzB,kBAAkB,EAClB,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,UAAU,EACV,YAAY,GACb,GAAGC,qCAAkB,CAAC;QACrB,GAAG;QACH,QAAQ;QACR,aAAa;QACb,cAAc;QACd,YAAY;QACZ,iBAAiB;QACjB,SAAS;QACT,OAAO;QACP,cAAc;AACf,KAAA,CAAC;AAEF,IAAA,MAAM,UAAU,GAAG,mBAAmB,IAAI,yBAAyB,IAAI,UAAU;;;AAGjF,IAAA,MAAM,WAAW,GAAG,CAAC,yBAAyB;AAC9C,IAAA,MAAM,cAAc,GAAG,WAAW,IAAI,cAAc;AACpD,IAAA,MAAM,iBAAiB,GAAG,CAAC,WAAW,IAAI,CAAC,kBAAkB;IAE7D,MAAM,cAAc,GAAG,CAAC,KAAqB,KAC3C,KAAK,KAAK;AACR,UAAE;UACA,KAAK,KAAK;AACV,cAAE;cACA,YAAY;;;AAIpB,IAAA,MAAM,WAAW,GAMX;AACJ,QAAA;AACE,YAAA,KAAK,EAAE,cAAc;AACrB,YAAA,KAAK,EAAE,CAAC,CAAC,mDAAmD,CAAC;AAC7D,YAAA,IAAI,EAAEF,QAAM,CAAC,OAAO,CAAC,MAAM;AAC3B,YAAA,QAAQ,EAAE,CAAC,CAAC,sDAAsD,CAAC;AACnE,YAAA,WAAW,EAAE,CAAC,CAAC,yDAAyD,CAAC;AAC1E,SAAA;AACD,QAAA;AACE,YAAA,KAAK,EAAE,iBAAiB;AACxB,YAAA,KAAK,EAAE,CAAC,CAAC,sDAAsD,CAAC;AAChE,YAAA,IAAI,EAAEA,QAAM,CAAC,OAAO,CAAC,SAAS;AAC9B,YAAA,QAAQ,EAAE,CAAC,CAAC,yDAAyD,CAAC;AACtE,YAAA,WAAW,EAAE,CAAC,CAAC,4DAA4D,CAAC;AAC7E,SAAA;AACD,QAAA;AACE,YAAA,KAAK,EAAE,cAAc;AACrB,YAAA,KAAK,EAAE,CAAC,CAAC,mDAAmD,CAAC;AAC7D,YAAA,IAAI,EAAEA,QAAM,CAAC,OAAO,CAAC,MAAM;AAC3B,YAAA,QAAQ,EAAE,CAAC,CAAC,sDAAsD,CAAC;AACnE,YAAA,WAAW,EAAE,CAAC,CAAC,yDAAyD,CAAC;AAC1E,SAAA;KACF;IAED,QACEG,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEC,QAAE,CAAC,WAAW,EAAE,SAAS,CAAC,EAAA,QAAA,EAAA,CACxCD,eAAA,CAACE,SAAI,EAAA,EAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAC,QAAQ,EAAA,QAAA,EAAA,CACrEF,eAAA,CAACG,aAAQ,EAAA,EAAC,SAAS,EAAC,eAAe,EAAA,QAAA,EAAA,CACjCC,cAAA,CAACC,gBAAW,EAAA,EACV,KAAK,EAAC,UAAU,EAChB,SAAS,EAAC,8NAA8N,EAAA,QAAA,EAEvOR,QAAM,CAAC,IAAI,CAAC,QAAQ,EAAA,CACT,EACb,cAAc,KACbO,cAAA,CAACC,gBAAW,IACV,KAAK,EAAC,SAAS,EACf,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAC,8NAA8N,EAAA,QAAA,EAEvOR,QAAM,CAAC,IAAI,CAAC,OAAO,EAAA,CACR,CACf,CAAA,EAAA,CACQ,EAEXO,cAAA,CAACE,gBAAW,EAAA,EAAC,KAAK,EAAC,UAAU,EAAA,QAAA,EAC3BN,yBAAK,SAAS,EAAC,gBAAgB,EAAA,QAAA,EAAA,CAC7BA,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,iCAAiC,EAAA,QAAA,EAAA,CAC9CA,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,wCAAwC,aACrDI,cAAA,CAAC,IAAI,CAAC,KAAK,EAAA,EAAC,IAAI,EAAC,MAAM,EAAA,QAAA,EACpB,CAAC,KAAK,KAAI;AACT,wDAAA,MAAM,oBAAoB,GACxB,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;wDACtD,QACEJ,yBAAK,SAAS,EAAC,WAAW,EAAA,QAAA,EAAA,CACxBA,eAAA,CAAA,OAAA,EAAA,EAAO,SAAS,EAAC,qDAAqD,aACnEH,QAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EACzBO,yBAAM,SAAS,EAAC,mBAAmB,EAAA,QAAA,EAAA,GAAA,EAAA,CAAS,CAAA,EAAA,CACtC,EACRA,cAAA,CAACG,WAAK,IACJ,WAAW,EAAEV,QAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAC3C,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EACxB,QAAQ,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACnD,YAAY,EAAC,MAAM,EACnB,QAAQ,EAAE,UAAU,EAAA,CACpB,EACD,oBAAoB,KACnBO,cAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAC,sBAAsB,EAAA,QAAA,EAAEP,QAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAA,CAAK,CAC3E,CAAA,EAAA,CACG;oDAEV,CAAC,EAAA,CACU,EAEZ,WAAW,IAAI,UAAU,CAAC,WAAW,KACpCO,cAAA,CAAC,IAAI,CAAC,KAAK,IAAC,IAAI,EAAC,aAAa,EAAA,QAAA,EAC3B,CAAC,KAAK,KAAI;AACT,wDAAA,MAAM,oBAAoB,GACxB,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;AACtD,wDAAA,QACEJ,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,WAAW,EAAA,QAAA,EAAA,CACxBA,2BAAO,SAAS,EAAC,qDAAqD,EAAA,QAAA,EAAA,CACnEH,QAAM,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAChCO,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,mBAAmB,EAAA,QAAA,EAAA,GAAA,EAAA,CAAS,IACtC,EACRA,cAAA,CAACI,iBAAQ,EAAA,EACP,WAAW,EAAEX,QAAM,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,EAClD,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EACxB,QAAQ,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACnD,QAAQ,QACR,QAAQ,EAAE,UAAU,EAAA,CACpB,EACD,oBAAoB,KACnBO,sBAAG,SAAS,EAAC,sBAAsB,EAAA,QAAA,EAChCP,QAAM,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,GACtC,CACL,CAAA,EAAA,CACG;oDAEV,CAAC,EAAA,CACU,CACd,EAEA,WAAW,IAAI,UAAU,CAAC,QAAQ,KACjCO,cAAA,CAAC,IAAI,CAAC,KAAK,IAAC,IAAI,EAAC,UAAU,EAAA,QAAA,EACxB,CAAC,KAAK,KAAI;;wDAAC,QACVJ,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,WAAW,EAAA,QAAA,EAAA,CACxBA,eAAA,CAAA,OAAA,EAAA,EAAO,SAAS,EAAC,qDAAqD,EAAA,QAAA,EAAA,CACnEH,QAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAC7BO,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,mBAAmB,EAAA,QAAA,EAAA,GAAA,EAAA,CAAS,CAAA,EAAA,CACtC,EACRJ,eAAA,CAACS,eAAO,EAAA,EAAA,QAAA,EAAA,CACNL,eAACM,sBAAc,EAAA,EAAC,OAAO,EAAA,IAAA,EAAA,QAAA,EACrBV,eAAA,CAACW,aAAM,EAAA,EACL,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,UAAU,EAAA,YAAA,EACH,CAAC,CAAC,oDAAoD,CAAC,EACnE,SAAS,EAAC,wBAAwB,EAAA,QAAA,EAAA,CAEjC,KAAK,CAAC,KAAK,CAAC;0FACT,CAAA,EAAA,GAAA,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,MAAA,GAAA,MAAA,GAAV,UAAU,CAAE,IAAI,CACd,CAAC,GAAiC,KAChC,GAAG,CAAC,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,KAAK,CAC/B,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE;0FACHd,QAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAC7CO,cAAA,CAACQ,sBAAc,IAAC,SAAS,EAAC,YAAY,EAAA,CAAG,CAAA,EAAA,CAClC,EAAA,CACM,EACjBR,cAAA,CAACS,sBAAc,EAAA,EAAA,YAAA,EACD,CAAC,CAAC,wDAAwD,CAAC,EACvE,IAAI,EAAC,SAAS,EAAA,iBAAA,EACE,+BAA+B,EAC/C,SAAS,EAAC,oDAAoD,EAAA,QAAA,EAE9Db,eAAA,CAACc,eAAO,eACNV,cAAA,CAACW,oBAAY,EAAA,EACX,WAAW,EAAElB,QAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EACrD,SAAS,EAAC,KAAK,EAAA,CACf,EACFG,eAAA,CAACgB,mBAAW,eACVZ,cAAA,CAACa,oBAAY,EAAA,EAAA,QAAA,EAAEpB,QAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAA,CAAgB,EAChEO,cAAA,CAACc,oBAAY,EAAA,EAAA,QAAA,EACV,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,MAAA,GAAA,MAAA,GAAV,UAAU,CAAE,GAAG,CAAC,CAAC,GAAiC,MACjDlB,eAAA,CAACmB,mBAAW,EAAA,EAEV,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,EACxB,QAAQ,EAAE,CAAC,YAAY,KAAI;wGACzB,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;oGAC1C,CAAC,EAAA,QAAA,EAAA,CAEA,GAAG,CAAC,IAAI,EACTf,cAAA,CAACgB,aAAK,EAAA,EACJ,SAAS,EAAEnB,QAAE,CACX,SAAS,EACT,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC;AACxB,kHAAE;AACF,kHAAE,WAAW,CAChB,GACD,CAAA,EAAA,EAdG,GAAG,CAAC,EAAE,CAeC,CACf,CAAC,GACW,CAAA,EAAA,CACH,CAAA,EAAA,CACN,GACK,CAAA,EAAA,CACT,CAAA,EAAA,CACN;AACP,oDAAA,CAAA,EAAA,CACU,CACd,EAEA,WAAW,IAAI,UAAU,CAAC,gBAAgB,KACzCG,cAAA,CAAC,IAAI,CAAC,KAAK,IAAC,IAAI,EAAC,kBAAkB,EAAA,QAAA,EAChC,CAAC,KAAK,MACLJ,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,WAAW,EAAA,QAAA,EAAA,CACxBA,eAAA,CAAA,OAAA,EAAA,EAAO,SAAS,EAAC,qDAAqD,EAAA,QAAA,EAAA,CACnEH,QAAM,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAC/BO,yBAAM,SAAS,EAAC,mBAAmB,EAAA,QAAA,EAAA,GAAA,EAAA,CAAS,IACtC,EACRJ,eAAA,CAACqB,aAAM,EAAA,EACL,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EACxB,aAAa,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EACnD,QAAQ,EAAA,IAAA,EACR,QAAQ,EAAE,UAAU,aAEpBjB,cAAA,CAACkB,oBAAa,EAAA,EAAA,YAAA,EACA,CAAC,CAAC,sDAAsD,CAAC,EAAA,QAAA,EAErElB,cAAA,CAACmB,kBAAW,EAAA,EACV,WAAW,EAAE1B,QAAM,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,GACxD,EAAA,CACY,EAChBO,cAAA,CAACoB,oBAAa,cACX,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,MACvBpB,cAAA,CAACqB,iBAAU,IAAoB,KAAK,EAAE,MAAM,CAAC,KAAK,EAAA,QAAA,EAC/C,MAAM,CAAC,KAAK,EAAA,EADE,MAAM,CAAC,KAAK,CAEhB,CACd,CAAC,EAAA,CACY,IACT,CAAA,EAAA,CACL,CACP,GACU,CACd,EAEA,aAAa,IAAI,WAAW,IAAI,UAAU,CAAC,IAAI,KAC9CrB,cAAA,CAAC,IAAI,CAAC,KAAK,EAAA,EAAC,IAAI,EAAC,MAAM,EAAA,QAAA,EACpB,CAAC,KAAK,MACLJ,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,WAAW,EAAA,QAAA,EAAA,CACxBA,eAAA,CAAA,OAAA,EAAA,EAAO,SAAS,EAAC,qDAAqD,EAAA,QAAA,EAAA,CACnEH,QAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EACzBO,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,mBAAmB,EAAA,QAAA,EAAA,GAAA,EAAA,CAAS,CAAA,EAAA,CACtC,EACRJ,eAAA,CAACqB,aAAM,EAAA,EACL,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EACxB,aAAa,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EACnD,QAAQ,EAAA,IAAA,EACR,QAAQ,EAAE,UAAU,aAEpBjB,cAAA,CAACkB,oBAAa,kBACA,CAAC,CAAC,qDAAqD,CAAC,EAAA,QAAA,EAEpElB,cAAA,CAACmB,kBAAW,IAAC,WAAW,EAAE1B,QAAM,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,GAAI,EAAA,CACrD,EAChBO,eAACoB,oBAAa,EAAA,EAAA,QAAA,EACX,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,MAChBpB,eAACqB,iBAAU,EAAA,EAAmB,KAAK,EAAE,KAAK,CAAC,KAAK,YAC7C,KAAK,CAAC,KAAK,EAAA,EADG,KAAK,CAAC,KAAK,CAEf,CACd,CAAC,EAAA,CACY,CAAA,EAAA,CACT,IACL,CACP,EAAA,CACU,CACd,CAAA,EAAA,CACG,EAEL,WAAW,IAAI,UAAU,CAAC,IAAI,KAC7BrB,cAAA,CAAC,IAAI,CAAC,KAAK,EAAA,EAAC,IAAI,EAAC,MAAM,YACpB,CAAC,KAAK,MACLJ,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,wDAAwD,aACrEI,cAAA,CAAA,OAAA,EAAA,EAAO,SAAS,EAAC,mCAAmC,YACjDP,QAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAA,CACpB,EACRO,cAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAC,sHAAsH,EAChI,OAAO,EAAE,MAAK;;AACZ,4DAAA,IAAI,UAAU;gEAAE;AAChB,4DAAA,CAAA,EAAA,GAAA,YAAY,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,KAAK,EAAE;AAC/B,wDAAA,CAAC,EACD,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,EAAA,YAAA,EACC,CAAC,CAAC,sDAAsD,CAAC,EACrE,SAAS,EAAE,CAAC,CAAC,KAAI;;AACf,4DAAA,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE;gEACtC,CAAC,CAAC,cAAc,EAAE;gEAClB,IAAI,CAAC,UAAU,EAAE;AACf,oEAAA,CAAA,EAAA,GAAA,YAAY,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,KAAK,EAAE;gEAC/B;4DACF;AACF,wDAAA,CAAC,EAAA,QAAA,EAEA,IAAI,IACHJ,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,wBAAwB,EAAA,QAAA,EAAA,CAErCI,cAAA,CAAA,KAAA,EAAA,EACE,GAAG,EAAE,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,EAC9B,GAAG,EAAEP,QAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAChC,SAAS,EAAC,4BAA4B,EACtC,KAAK,EAAE,GAAG,EACV,MAAM,EAAE,GAAG,EAAA,CACX,EACFO,cAAA,CAACO,aAAM,EAAA,EACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,IAAI,EACT,SAAS,EAAC,oDAAoD,EAC9D,OAAO,EAAE,CAAC,KAAK,KAAI;AACjB,wEAAA,IAAI,UAAU;4EAAE;wEAChB,KAAK,CAAC,eAAe,EAAE;AACvB,wEAAA,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC;AACxB,wEAAA,IAAI,YAAY,CAAC,OAAO,EAAE;AACxB,4EAAA,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE;wEACjC;AACF,oEAAA,CAAC,EAAA,YAAA,EACWd,QAAM,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,EAAA,QAAA,EAE/CO,cAAA,CAACsB,SAAC,EAAA,EAAC,SAAS,EAAC,SAAS,EAAA,CAAG,EAAA,CAClB,CAAA,EAAA,CACL,KAENtB,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,uBAAuB,EAAA,QAAA,EACpCP,QAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAA,CAC1B,CACR,EAAA,CACG,EACNO,cAAA,CAAA,OAAA,EAAA,EACE,GAAG,EAAE,YAAY,EACjB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,SAAS,EAChB,SAAS,EAAC,QAAQ,EAClB,QAAQ,EAAE,CAAC,KAAK,KAAI;;4DAClB,MAAM,QAAQ,GAAG,CAAA,EAAA,GAAA,KAAK,CAAC,MAAM,CAAC,KAAK,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAG,CAAC,CAAC;4DACxC,IAAI,QAAQ,EAAE;AACZ,gEAAA,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC;4DAC9B;AACF,wDAAA,CAAC,EAAA,YAAA,EACW,CAAC,CAAC,0DAA0D,CAAC,EAAA,CACzE,CAAA,EAAA,CACE,CACP,EAAA,CACU,CACd,CAAA,EAAA,CACG,EAEL,WAAW,KACVA,cAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,kBAAkB,EAAA,QAAA,EAC9B,cAAc,IACbA,cAAA,CAACO,aAAM,EAAA,EACL,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAC,iGAAiG,EAC3G,OAAO,EAAE,MAAM,YAAY,CAAC,SAAS,CAAC,EAAA,QAAA,EAErCd,QAAM,CAAC,OAAO,CAAC,IAAI,EAAA,CACb,KAETO,cAAA,CAACO,aAAM,EAAA,EACL,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,UAAU,IAAI,iBAAiB,EACzC,SAAS,EAAC,iGAAiG,EAC3G,OAAO,EAAE,MAAM,KAAK,YAAY,EAAE,EAAA,QAAA,EAEjC,UAAU,GAAGd,QAAM,CAAC,OAAO,CAAC,QAAQ,GAAGA,QAAM,CAAC,OAAO,CAAC,MAAM,EAAA,CACtD,CACV,EAAA,CACG,CACP,CAAA,EAAA,CACG,EAAA,CACM,EAEb,cAAc,KACbO,cAAA,CAACE,gBAAW,EAAA,EAAC,KAAK,EAAC,SAAS,EAAA,QAAA,EAC1BN,eAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAC,gBAAgB,EAC1B,QAAQ,EAAE,CAAC,SAAS,KAAI;gCACtB,SAAS,CAAC,cAAc,EAAE;gCAC1B,SAAS,CAAC,eAAe,EAAE;AAC3B,gCAAA,YAAY,EAAE;AAChB,4BAAA,CAAC,aAEDI,cAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,sDAAsD,YAClE;AACE,yCAAA,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,UAAU,CAAC,KAAK,CAAC;AACvC,yCAAA,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAC5DA,eAAC,IAAI,CAAC,KAAK,EAAA,EAAiB,IAAI,EAAE,SAAS,EAAA,QAAA,EACxC,CAAC,KAAK,MACLJ,yBAAK,SAAS,EAAC,WAAW,EAAA,QAAA,EAAA,CACxBA,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,yBAAyB,aACtCI,cAAA,CAAA,IAAA,EAAA,EAAI,SAAS,EAAC,mCAAmC,YAAE,IAAI,CAAC,KAAK,EAAA,CAAM,EACnEA,cAAA,CAACuB,uBAAe,EAAA,EAAA,QAAA,EACd3B,eAAA,CAAC4B,eAAO,EAAA,EAAA,QAAA,EAAA,CACNxB,cAAA,CAACyB,sBAAc,EAAA,EAAC,OAAO,EAAA,IAAA,EAAA,QAAA,EACrBzB,cAAA,CAAA,QAAA,EAAA,EACE,IAAI,EAAC,QAAQ,EAAA,YAAA,EACD,QAAQ,EACpB,SAAS,EAAC,kCAAkC,EAAA,QAAA,EAE5CA,cAAA,CAAC0B,YAAI,EAAA,EAAC,SAAS,EAAC,uBAAuB,GAAG,EAAA,CACnC,EAAA,CACM,EACjB1B,cAAA,CAAC2B,sBAAc,EAAA,EAAA,QAAA,EACb3B,cAAA,CAAA,GAAA,EAAA,EAAA,QAAA,EAAI,IAAI,CAAC,OAAO,EAAA,CAAK,EAAA,CACN,CAAA,EAAA,CACT,EAAA,CACM,IACd,EACNJ,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,mDAAmD,EAAA,QAAA,EAAA,CAChEI,cAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAC,sBAAsB,EAChC,QAAQ,EAAE,CAAC,EACX,IAAI,EAAC,SAAS,EAAA,eAAA,EACA,MAAM,EAAA,YAAA,EACR,WAAW,EAAA,QAAA,EAEvBA,cAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAC,uBAAuB,EAAA,QAAA,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAA,CAAK,GACxD,EACNA,cAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,6BAA6B,EAAA,QAAA,EAC1CJ,eAAA,CAACW,aAAM,EAAA,EACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,IAAI,EACT,SAAS,EAAC,4DAA4D,EACtE,OAAO,EAAE,MAAM,iBAAiB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAA,QAAA,EAAA,CAE7DP,cAAA,CAAC4B,iBAAI,IAAC,SAAS,EAAC,gBAAgB,EAAA,CAAG,EAClCnC,QAAM,CAAC,OAAO,CAAC,IAAI,CAAA,EAAA,CACb,EAAA,CACL,CAAA,EAAA,CACF,CAAA,EAAA,CACF,CACP,EAAA,EA9Cc,SAAS,CA+Cb,CACd,CAAC,EAAA,CACA,EAENO,cAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,kBAAkB,EAAA,QAAA,EAC/BA,cAAA,CAACO,aAAM,IACL,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,0EAA0E,EACpF,QAAQ,EAAE,UAAU,EAAA,QAAA,EAEnB,UAAU,GAAGd,QAAM,CAAC,OAAO,CAAC,QAAQ,GAAGA,QAAM,CAAC,OAAO,CAAC,MAAM,EAAA,CACtD,EAAA,CACL,CAAA,EAAA,CACD,EAAA,CACK,CACf,CAAA,EAAA,CACI,EAEN,cAAc,KACbO,cAAA,CAAC6B,yCAAoB,EAAA,EACnB,MAAM,EAAE,CAAC,CAAC,cAAc,EACxB,OAAO,EAAE,MAAM,iBAAiB,CAAC,IAAI,CAAC,EACtC,KAAK,EAAE,cAAc,CAAC,KAAK,EAC3B,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,EAC3C,MAAM,EAAE,CAAC,KAAK,KAAK,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,EAC1D,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAEpC,QAAM,CAAC,OAAO,CAAC,IAAI,EAAA,CAC9B,CACH,CAAA,EAAA,CACG;AAEV;;;;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var dataLayer = require('@iblai/data-layer');
|
|
5
|
+
var webUtils = require('@iblai/web-utils');
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Which Create Agent fields this person may set (iblai-platform#2766). An
|
|
9
|
+
* answer the backend cannot give — a 403, an older backend's 404, a network
|
|
10
|
+
* failure — leaves every field writable, today's behaviour; only an explicit
|
|
11
|
+
* `{ write: false }` hides one.
|
|
12
|
+
*/
|
|
13
|
+
function useCreateAgentFieldPermissions({ org, skip = false, }) {
|
|
14
|
+
const { data, isLoading, isError } = dataLayer.useGetAgentSettingsFieldPermissionsQuery({ org }, { skip: skip || !org });
|
|
15
|
+
const permissions = isError ? undefined : data;
|
|
16
|
+
const visibility = React.useMemo(() => webUtils.getCreateAgentFieldVisibility(permissions), [permissions]);
|
|
17
|
+
const canWrite = React.useCallback((field) => webUtils.canWriteAgentField(permissions, field), [permissions]);
|
|
18
|
+
return { permissions, visibility, isLoading, canWrite };
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
exports.useCreateAgentFieldPermissions = useCreateAgentFieldPermissions;
|
|
22
|
+
//# sourceMappingURL=use-create-agent-field-permissions.js.map
|
package/dist/cjs/components/modals/create-agent-modal/use-create-agent-field-permissions.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-create-agent-field-permissions.js","sources":["../../../../../../../../src/components/modals/create-agent-modal/use-create-agent-field-permissions.ts"],"sourcesContent":[null],"names":["useGetAgentSettingsFieldPermissionsQuery","useMemo","getCreateAgentFieldVisibility","useCallback","canWriteAgentField"],"mappings":";;;;;;AA2BA;;;;;AAKG;AACG,SAAU,8BAA8B,CAAC,EAC7C,GAAG,EACH,IAAI,GAAG,KAAK,GACuB,EAAA;IACnC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAGA,kDAAwC,CAC3E,EAAE,GAAG,EAAE,EACP,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CACvB;IACD,MAAM,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,IAAI;AAE9C,IAAA,MAAM,UAAU,GAAGC,aAAO,CAAC,MAAMC,sCAA6B,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;IAC3F,MAAM,QAAQ,GAAGC,iBAAW,CAC1B,CAAC,KAAa,KAAKC,2BAAkB,CAAC,WAAW,EAAE,KAAK,CAAC,EACzD,CAAC,WAAW,CAAC,CACd;IAED,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE;AACzD;;;;"}
|
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
var index = require('../../../node_modules/.pnpm/@tanstack_react-store@0.7.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-store/dist/esm/index.js');
|
|
4
4
|
var useForm = require('../../../node_modules/.pnpm/@tanstack_react-form@1.11.2_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-form/dist/esm/useForm.js');
|
|
5
5
|
var dataLayer = require('@iblai/data-layer');
|
|
6
|
+
var webUtils = require('@iblai/web-utils');
|
|
6
7
|
var defaults = require('./defaults.js');
|
|
8
|
+
var useCreateAgentFieldPermissions = require('./use-create-agent-field-permissions.js');
|
|
7
9
|
|
|
8
10
|
/** Strip `undefined` values so a partial override only overrides set keys. */
|
|
9
11
|
function pickDefined(obj) {
|
|
@@ -17,9 +19,10 @@ function pickDefined(obj) {
|
|
|
17
19
|
return out;
|
|
18
20
|
}
|
|
19
21
|
/**
|
|
20
|
-
* Owns the Create Agent form state (TanStack form), the categories query,
|
|
21
|
-
* the create mutation. Identity/config come in as
|
|
22
|
-
* side effects are callbacks (no toast/navigation),
|
|
22
|
+
* Owns the Create Agent form state (TanStack form), the categories query, the
|
|
23
|
+
* field-permissions query and the create mutation. Identity/config come in as
|
|
24
|
+
* args (no app context), and side effects are callbacks (no toast/navigation),
|
|
25
|
+
* so it works for any host.
|
|
23
26
|
*/
|
|
24
27
|
function useCreateAgentForm({ org, username, initialValues, defaultPrompts, modelOptions, visibilityOptions, onCreated, onError, onBeforeCreate, }) {
|
|
25
28
|
var _a, _b, _c, _d, _e, _f;
|
|
@@ -28,6 +31,7 @@ function useCreateAgentForm({ org, username, initialValues, defaultPrompts, mode
|
|
|
28
31
|
{ org, userId: username }, {
|
|
29
32
|
skip: !org || !username,
|
|
30
33
|
});
|
|
34
|
+
const { permissions: fieldPermissions, visibility, isLoading: isLoadingFieldPermissions, } = useCreateAgentFieldPermissions.useCreateAgentFieldPermissions({ org });
|
|
31
35
|
const [createMentor, { isLoading: isCreating }] = dataLayer.useCreateMentorMutation();
|
|
32
36
|
const models = modelOptions !== null && modelOptions !== void 0 ? modelOptions : defaults.DEFAULT_MODEL_OPTIONS;
|
|
33
37
|
const visibilities = visibilityOptions !== null && visibilityOptions !== void 0 ? visibilityOptions : defaults.DEFAULT_VISIBILITY_OPTIONS;
|
|
@@ -51,28 +55,14 @@ function useCreateAgentForm({ org, username, initialValues, defaultPrompts, mode
|
|
|
51
55
|
const form = useForm.useForm({
|
|
52
56
|
defaultValues,
|
|
53
57
|
onSubmit: async ({ value }) => {
|
|
54
|
-
|
|
58
|
+
const formData = webUtils.buildCreateAgentPayload(value, fieldPermissions);
|
|
55
59
|
try {
|
|
56
60
|
const mentor = await createMentor({
|
|
57
61
|
org,
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
new_mentor_name: value.name,
|
|
63
|
-
display_name: value.name,
|
|
64
|
-
template_name: value.base,
|
|
65
|
-
metadata: {
|
|
66
|
-
category: value.category,
|
|
67
|
-
},
|
|
68
|
-
guided_prompt_instructions: value.guidedPrompt,
|
|
69
|
-
proactive_prompt: value.proactivePrompt,
|
|
70
|
-
moderation_system_prompt: value.moderationPrompt,
|
|
71
|
-
system_prompt: value.systemPrompt,
|
|
72
|
-
description: value.description,
|
|
73
|
-
mentor_visibility: value.mentorVisibility,
|
|
74
|
-
...(value.category && { categories: [value.category] }),
|
|
75
|
-
},
|
|
62
|
+
// @ts-expect-error - uploaded_profile_image is a File upload, which the
|
|
63
|
+
// generated form-data type declares as a string, and template_name is left
|
|
64
|
+
// out when the person may not set it, which that type requires.
|
|
65
|
+
formData,
|
|
76
66
|
userId: username,
|
|
77
67
|
}).unwrap();
|
|
78
68
|
onCreated === null || onCreated === void 0 ? void 0 : onCreated(mentor);
|
|
@@ -89,6 +79,10 @@ function useCreateAgentForm({ org, username, initialValues, defaultPrompts, mode
|
|
|
89
79
|
const systemPrompt = index.useStore(form.store, (state) => state.values.systemPrompt);
|
|
90
80
|
const proactivePrompt = index.useStore(form.store, (state) => state.values.proactivePrompt);
|
|
91
81
|
const guidedPrompt = index.useStore(form.store, (state) => state.values.guidedPrompt);
|
|
82
|
+
// A field the person may not write is not shown, so it cannot be required.
|
|
83
|
+
const isSettingsComplete = name !== '' &&
|
|
84
|
+
(!visibility.description || description !== '') &&
|
|
85
|
+
(!visibility.category || category !== null);
|
|
92
86
|
const editPrompt = (prompt, type) => {
|
|
93
87
|
form.setFieldValue(type, prompt);
|
|
94
88
|
};
|
|
@@ -108,6 +102,10 @@ function useCreateAgentForm({ org, username, initialValues, defaultPrompts, mode
|
|
|
108
102
|
isCreating,
|
|
109
103
|
models,
|
|
110
104
|
visibilities,
|
|
105
|
+
visibility,
|
|
106
|
+
isLoadingFieldPermissions,
|
|
107
|
+
isSettingsComplete,
|
|
108
|
+
hasPromptsStep: visibility.anyPrompt,
|
|
111
109
|
name,
|
|
112
110
|
description,
|
|
113
111
|
category,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-create-agent-form.js","sources":["../../../../../../../../src/components/modals/create-agent-modal/use-create-agent-form.ts"],"sourcesContent":[null],"names":["useGetMentorCategoriesQuery","useCreateMentorMutation","DEFAULT_MODEL_OPTIONS","DEFAULT_VISIBILITY_OPTIONS","DEFAULT_AGENT_PROMPTS","DEFAULT_AGENT_TEMPLATE","DEFAULT_VISIBILITY_INDEX","useForm","useStore"],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-create-agent-form.js","sources":["../../../../../../../../src/components/modals/create-agent-modal/use-create-agent-form.ts"],"sourcesContent":[null],"names":["useGetMentorCategoriesQuery","useCreateAgentFieldPermissions","useCreateMentorMutation","DEFAULT_MODEL_OPTIONS","DEFAULT_VISIBILITY_OPTIONS","DEFAULT_AGENT_PROMPTS","DEFAULT_AGENT_TEMPLATE","DEFAULT_VISIBILITY_INDEX","useForm","buildCreateAgentPayload","useStore"],"mappings":"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"}
|
|
@@ -2,17 +2,34 @@
|
|
|
2
2
|
|
|
3
3
|
var jsxRuntime = require('react/jsx-runtime');
|
|
4
4
|
var React = require('react');
|
|
5
|
-
var select = require('../ui/select.js');
|
|
6
5
|
var webUtils = require('@iblai/web-utils');
|
|
7
6
|
var context = require('../../i18n/context.js');
|
|
8
7
|
require('../../packages/i18n/dist/index.esm.js');
|
|
9
8
|
|
|
10
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Whether this row leads anywhere — the organization settings an admin (or a
|
|
11
|
+
* user with the management permissions) can open. Exported so a host that owns
|
|
12
|
+
* the activation itself, like a menu item wrapping this row, can ask the same
|
|
13
|
+
* question without reaching inside.
|
|
14
|
+
*/
|
|
15
|
+
function canOpenOrganizationSettings(options) {
|
|
11
16
|
var _a;
|
|
17
|
+
const { currentTenantKey, tenants, visitingTenant, rbacPermissions, enableRbac = false, } = options;
|
|
18
|
+
if (!currentTenantKey || currentTenantKey === 'main')
|
|
19
|
+
return false;
|
|
20
|
+
const candidates = visitingTenant ? [visitingTenant, ...tenants] : tenants;
|
|
21
|
+
if ((_a = candidates.find((tenant) => tenant.key === currentTenantKey)) === null || _a === void 0 ? void 0 : _a.is_admin)
|
|
22
|
+
return true;
|
|
23
|
+
return webUtils.checkRbacPermission(rbacPermissions, `/platforms/${currentTenantKey}/#can_manage_users|/groups/#list|/roles/#list|/policies/#list|/usergroups/#list|/platforms/${currentTenantKey}/#can_invite`, enableRbac);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Shows the organization the user is currently in. Picking a different one
|
|
27
|
+
* happens on the auth SPA (the "Organizations" item of the profile menu) —
|
|
28
|
+
* only it can mint the target organization's tokens.
|
|
29
|
+
*/
|
|
30
|
+
function TenantSwitcher({ currentTenantKey, tenants, visitingTenant, interactive = true, setHideTenantSwitcher, setOpenAccount, setLoadingTenantInfo, rbacPermissions, enableRbac = false, }) {
|
|
12
31
|
const t = context.useT();
|
|
13
|
-
const [selectedTenant, setSelectedTenant] = React.useState(currentTenantKey);
|
|
14
32
|
const [selectedTenantName, setSelectedTenantName] = React.useState(currentTenantKey || '');
|
|
15
|
-
// Using lazy query to leverage RTK Query caching - subsequent calls with same key will use cached data.
|
|
16
33
|
const [tenantList, setTenantList] = React.useState([]);
|
|
17
34
|
const [internallyHideTenantSwitcher, setInternallyHideTenantSwitcher] = React.useState(false);
|
|
18
35
|
const handleUpdateTenantsList = async () => {
|
|
@@ -70,34 +87,26 @@ function TenantSwitcher({ currentTenantKey, tenants, visitingTenant, onTenantCha
|
|
|
70
87
|
React.useEffect(() => {
|
|
71
88
|
handleUpdateTenantsList();
|
|
72
89
|
}, [tenants.length]);
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
90
|
+
// Resolved at render rather than on click, so the name is a real button only
|
|
91
|
+
// when it leads somewhere — a keyboard user gets the affordance the mouse had.
|
|
92
|
+
const opensOrganizationSettings = interactive &&
|
|
93
|
+
!!setOpenAccount &&
|
|
94
|
+
canOpenOrganizationSettings({
|
|
95
|
+
currentTenantKey,
|
|
96
|
+
tenants: tenantList,
|
|
97
|
+
rbacPermissions,
|
|
98
|
+
enableRbac,
|
|
99
|
+
});
|
|
83
100
|
if (internallyHideTenantSwitcher) {
|
|
84
101
|
return null;
|
|
85
102
|
}
|
|
86
|
-
const
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
: selectedTenantName }), showSwitcherDropdown && (jsxRuntime.jsxs(select.Select
|
|
92
|
-
//disabled={tenantList?.length <= 1}
|
|
93
|
-
, {
|
|
94
|
-
//disabled={tenantList?.length <= 1}
|
|
95
|
-
value: '', onValueChange: (value) => {
|
|
96
|
-
setSelectedTenant(value);
|
|
97
|
-
onTenantChange(value);
|
|
98
|
-
}, children: [jsxRuntime.jsx(select.SelectTrigger, { className: "w-[35px] pr-0 border-none text-black placeholder:text-black [&>svg]:text-black [&>svg]:opacity-100 py-0 -mr-[5px] focus-visible:ring-transparent", "aria-label": t('tenantSwitchIndex.selectTenantAriaLabel'), children: jsxRuntime.jsx(select.SelectValue, { placeholder: "" }) }), jsxRuntime.jsx(select.SelectContent, { children: Array.isArray(tenantList) &&
|
|
99
|
-
tenantList.map((tenant) => (jsxRuntime.jsx(select.SelectItem, { value: tenant === null || tenant === void 0 ? void 0 : tenant.key, children: (tenant === null || tenant === void 0 ? void 0 : tenant.name) || (tenant === null || tenant === void 0 ? void 0 : tenant.key) }, tenant === null || tenant === void 0 ? void 0 : tenant.key))) })] }))] }) }));
|
|
103
|
+
const displayName = webUtils.isAlphaNumeric32(selectedTenantName)
|
|
104
|
+
? t('tenantSwitchIndex.account')
|
|
105
|
+
: selectedTenantName;
|
|
106
|
+
const nameClassName = 'pl-[32px] pt-[8px] pb-[8px] text-sm truncate min-w-0 flex-1 max-w-[225px] min-w-[200px] text-left';
|
|
107
|
+
return (jsxRuntime.jsx("div", { className: "w-full flex items-center gap-1 justify-between -ml-[20px] min-h-[36px]", children: opensOrganizationSettings ? (jsxRuntime.jsx("button", { type: "button", onClick: () => setOpenAccount === null || setOpenAccount === void 0 ? void 0 : setOpenAccount('organization'), className: `${nameClassName} cursor-pointer rounded-sm focus:outline-none focus-visible:ring-2 focus-visible:ring-black/20`, children: displayName })) : (jsxRuntime.jsx("div", { className: nameClassName, children: displayName })) }));
|
|
100
108
|
}
|
|
101
109
|
|
|
102
110
|
exports.TenantSwitcher = TenantSwitcher;
|
|
111
|
+
exports.canOpenOrganizationSettings = canOpenOrganizationSettings;
|
|
103
112
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../../src/components/tenant-switch/index.tsx"],"sourcesContent":[null],"names":["
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../../src/components/tenant-switch/index.tsx"],"sourcesContent":[null],"names":["checkRbacPermission","useT","useEffect","isAlphaNumeric32","_jsx"],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ var user = require('../../node_modules/.pnpm/lucide-react@0.528.0_react@19.1.0/n
|
|
|
18
18
|
var settings = require('../../node_modules/.pnpm/lucide-react@0.528.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/settings.js');
|
|
19
19
|
var graduationCap = require('../../node_modules/.pnpm/lucide-react@0.528.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/graduation-cap.js');
|
|
20
20
|
var building2 = require('../../node_modules/.pnpm/lucide-react@0.528.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/building-2.js');
|
|
21
|
+
var arrowLeftRight = require('../../node_modules/.pnpm/lucide-react@0.528.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/arrow-left-right.js');
|
|
21
22
|
var lifeBuoy = require('../../node_modules/.pnpm/lucide-react@0.528.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/life-buoy.js');
|
|
22
23
|
var externalLink = require('../../node_modules/.pnpm/lucide-react@0.528.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/external-link.js');
|
|
23
24
|
var logOut = require('../../node_modules/.pnpm/lucide-react@0.528.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/log-out.js');
|
|
@@ -28,11 +29,11 @@ username, userIsAdmin = false, userIsStudent = false, userIsVisiting = false,
|
|
|
28
29
|
// Tenant data
|
|
29
30
|
tenantKey, visitingTenant, mentorId, userTenants = [],
|
|
30
31
|
// Configuration
|
|
31
|
-
showProfileTab = true, showAccountTab = false, showTenantSwitcher = true, showHelpLink = true, showLogoutButton = true, showLearnerModeSwitch = false,
|
|
32
|
+
showProfileTab = true, showAccountTab = false, showTenantSwitcher = true, showOrganizationsLink = true, showHelpLink = true, showLogoutButton = true, showLearnerModeSwitch = false,
|
|
32
33
|
// Customization
|
|
33
34
|
helpCenterUrl = '', enableGravatarOnProfilePic = true,
|
|
34
35
|
// Callbacks
|
|
35
|
-
onProfileClick, onTabChange, onBillingTabRequest, onLogout,
|
|
36
|
+
onProfileClick, onTabChange, onBillingTabRequest, onLogout, onOrganizationsClick, onHelpClick,
|
|
36
37
|
// Modal props
|
|
37
38
|
currentPlan = '', userActiveApp = null,
|
|
38
39
|
// Custom components
|
|
@@ -85,7 +86,6 @@ isModalOpen, onModalOpenChange, defaultActiveTab, onAccountDeleted, enableMemory
|
|
|
85
86
|
const [isOpen, setIsOpen] = React.useState(false);
|
|
86
87
|
const [hideTenantSwitcher, setHideTenantSwitcher] = React.useState(false);
|
|
87
88
|
const [loadingTenantInfo, setLoadingTenantInfo] = React.useState(false);
|
|
88
|
-
const tenantSelectRef = React.useRef(null);
|
|
89
89
|
// Update activeTab when defaultActiveTab changes (controlled mode)
|
|
90
90
|
React.useEffect(() => {
|
|
91
91
|
if (defaultActiveTab) {
|
|
@@ -101,8 +101,15 @@ isModalOpen, onModalOpenChange, defaultActiveTab, onAccountDeleted, enableMemory
|
|
|
101
101
|
const handleLogout = () => {
|
|
102
102
|
onLogout === null || onLogout === void 0 ? void 0 : onLogout();
|
|
103
103
|
};
|
|
104
|
-
const
|
|
105
|
-
|
|
104
|
+
const handleOrganizationsClick = () => {
|
|
105
|
+
setIsOpen(false);
|
|
106
|
+
if (onOrganizationsClick) {
|
|
107
|
+
onOrganizationsClick();
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
// Its own tab: this one stays where it is, and a tab the user closes
|
|
111
|
+
// without picking means no switch at all.
|
|
112
|
+
webUtils.openTenantSwitcher({ authUrl: authURL, tenant: tenantKey, popup: true });
|
|
106
113
|
};
|
|
107
114
|
// The help link is a target="_blank" anchor, so when a consumer handles
|
|
108
115
|
// opening via onHelpClick the native navigation must be cancelled, or the
|
|
@@ -163,22 +170,25 @@ isModalOpen, onModalOpenChange, defaultActiveTab, onAccountDeleted, enableMemory
|
|
|
163
170
|
if (!showTenantSwitcher || hideTenantSwitcher) {
|
|
164
171
|
return null;
|
|
165
172
|
}
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
173
|
+
// The row names the organization the user is in, and for an admin it also
|
|
174
|
+
// opens that organization's settings. Activation belongs to the menu item:
|
|
175
|
+
// Radix dispatches a keyboard Enter on the item, never on a control nested
|
|
176
|
+
// inside it, and interactive content in `role="menuitem"` is invalid ARIA.
|
|
177
|
+
// When it leads nowhere it is a plain label, not a focusable menu item.
|
|
178
|
+
const opensOrganizationSettings = index.canOpenOrganizationSettings({
|
|
179
|
+
currentTenantKey: tenantKey || null,
|
|
180
|
+
tenants: userTenants,
|
|
181
|
+
visitingTenant,
|
|
182
|
+
rbacPermissions,
|
|
183
|
+
enableRbac,
|
|
184
|
+
});
|
|
185
|
+
const tenantRow = (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(building2.default, { className: "mr-1 h-4 w-4 text-gray-600" }), jsxRuntime.jsx("div", { className: "w-full", children: jsxRuntime.jsx(index.TenantSwitcher, { currentTenantKey: tenantKey || null, tenants: userTenants, visitingTenant: visitingTenant, interactive: false, setHideTenantSwitcher: setHideTenantSwitcher, setLoadingTenantInfo: setLoadingTenantInfo, rbacPermissions: rbacPermissions, enableRbac: enableRbac }) })] }));
|
|
186
|
+
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [opensOrganizationSettings ? (jsxRuntime.jsx(dropdownMenu.DropdownMenuItem, { className: `gap-0 py-0 rounded-md px-2 h-10 text-sm text-gray-700 hover:bg-gray-100`, onSelect: () => handleProfileClick('organization'), children: tenantRow })) : (jsxRuntime.jsx("div", { className: "flex items-center gap-0 rounded-md px-2 h-10 text-sm text-gray-700", children: tenantRow })), jsxRuntime.jsx(dropdownMenu.DropdownMenuSeparator, { className: `h-px bg-gray-200 ${loadingTenantInfo ? 'hidden' : ''}` })] }));
|
|
187
|
+
};
|
|
188
|
+
const renderOrganizationsLink = () => {
|
|
189
|
+
if (!showOrganizationsLink || !authURL)
|
|
190
|
+
return null;
|
|
191
|
+
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(dropdownMenu.DropdownMenuItem, { onClick: handleOrganizationsClick, className: "flex cursor-pointer items-center rounded-md px-2 h-10 text-sm text-gray-700 hover:bg-gray-100", children: [jsxRuntime.jsx(arrowLeftRight.default, { className: "mr-2 h-4 w-4 text-gray-600" }), t('userProfileDropdownIndex.organizations')] }), jsxRuntime.jsx(dropdownMenu.DropdownMenuSeparator, { className: `h-px bg-gray-200` })] }));
|
|
182
192
|
};
|
|
183
193
|
const renderHelpLink = () => {
|
|
184
194
|
if (!showHelpLink || !metadataLoaded) {
|
|
@@ -262,7 +272,7 @@ isModalOpen, onModalOpenChange, defaultActiveTab, onAccountDeleted, enableMemory
|
|
|
262
272
|
}
|
|
263
273
|
return jsxRuntime.jsx(userProfileModal.UserProfileModal, { ...modalProps });
|
|
264
274
|
};
|
|
265
|
-
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(dropdownMenu.DropdownMenu, { open: isOpen, onOpenChange: setIsOpen, children: [jsxRuntime.jsx(dropdownMenu.DropdownMenuTrigger, { asChild: true, children: jsxRuntime.jsx(button.Button, { variant: "ghost", size: "icon", className: `cursor-pointer rounded-full hover:bg-gray-100 ${className}`, "aria-label": t('userProfileDropdownIndex.moreOptions'), children: renderAvatar() }) }), jsxRuntime.jsx(dropdownMenu.DropdownMenuContent, { className: utils.cn(dropdownClassName, 'w-auto', 'min-w-[200px]'), children: jsxRuntime.jsxs("div", { className: "px-2 space-y-1", children: [renderProfileMenuItem(), renderAccountMenuItem(), renderLearnerModeSwitch(), renderTenantSwitcher(), renderHelpLink(), renderLogoutButton()] }) })] }), renderProfileModal()] }));
|
|
275
|
+
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(dropdownMenu.DropdownMenu, { open: isOpen, onOpenChange: setIsOpen, children: [jsxRuntime.jsx(dropdownMenu.DropdownMenuTrigger, { asChild: true, children: jsxRuntime.jsx(button.Button, { variant: "ghost", size: "icon", className: `cursor-pointer rounded-full hover:bg-gray-100 ${className}`, "aria-label": t('userProfileDropdownIndex.moreOptions'), children: renderAvatar() }) }), jsxRuntime.jsx(dropdownMenu.DropdownMenuContent, { className: utils.cn(dropdownClassName, 'w-auto', 'min-w-[200px]'), children: jsxRuntime.jsxs("div", { className: "px-2 space-y-1", children: [renderProfileMenuItem(), renderAccountMenuItem(), renderLearnerModeSwitch(), renderTenantSwitcher(), renderOrganizationsLink(), renderHelpLink(), renderLogoutButton()] }) })] }), renderProfileModal()] }));
|
|
266
276
|
}
|
|
267
277
|
|
|
268
278
|
exports.UserProfileDropdown = UserProfileDropdown;
|