mirror of
https://github.com/simstudioai/sim.git
synced 2026-02-22 03:01:08 -05:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
12534163c1 | ||
|
|
55920e9b03 | ||
|
|
958dd64740 |
@@ -2,7 +2,7 @@
|
||||
|
||||
import { useCallback, useEffect, useMemo, useRef, useState } from 'react'
|
||||
import { Command } from 'cmdk'
|
||||
import { Database, HelpCircle, Layout, Settings, Table } from 'lucide-react'
|
||||
import { Database, HelpCircle, Layout, Settings } from 'lucide-react'
|
||||
import { useParams, useRouter } from 'next/navigation'
|
||||
import { createPortal } from 'react-dom'
|
||||
import { Library } from '@/components/emcn'
|
||||
@@ -119,13 +119,14 @@ export function SearchModal({
|
||||
href: `/workspace/${workspaceId}/knowledge`,
|
||||
hidden: permissionConfig.hideKnowledgeBaseTab,
|
||||
},
|
||||
{
|
||||
id: 'tables',
|
||||
name: 'Tables',
|
||||
icon: Table,
|
||||
href: `/workspace/${workspaceId}/tables`,
|
||||
hidden: permissionConfig.hideTablesTab,
|
||||
},
|
||||
// TODO: Uncomment when working on tables
|
||||
// {
|
||||
// id: 'tables',
|
||||
// name: 'Tables',
|
||||
// icon: Table,
|
||||
// href: `/workspace/${workspaceId}/tables`,
|
||||
// hidden: permissionConfig.hideTablesTab,
|
||||
// },
|
||||
{
|
||||
id: 'help',
|
||||
name: 'Help',
|
||||
@@ -145,7 +146,6 @@ export function SearchModal({
|
||||
openSettingsModal,
|
||||
permissionConfig.hideTemplates,
|
||||
permissionConfig.hideKnowledgeBaseTab,
|
||||
permissionConfig.hideTablesTab,
|
||||
]
|
||||
)
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
import { memo, useCallback, useEffect, useMemo, useRef, useState } from 'react'
|
||||
import { createLogger } from '@sim/logger'
|
||||
import { Database, HelpCircle, Layout, Plus, Search, Settings, Table } from 'lucide-react'
|
||||
import { Database, HelpCircle, Layout, Plus, Search, Settings } from 'lucide-react'
|
||||
import Link from 'next/link'
|
||||
import { useParams, usePathname, useRouter } from 'next/navigation'
|
||||
import { Button, Download, FolderPlus, Library, Loader, Tooltip } from '@/components/emcn'
|
||||
@@ -268,13 +268,14 @@ export const Sidebar = memo(function Sidebar() {
|
||||
href: `/workspace/${workspaceId}/knowledge`,
|
||||
hidden: permissionConfig.hideKnowledgeBaseTab,
|
||||
},
|
||||
{
|
||||
id: 'tables',
|
||||
label: 'Tables',
|
||||
icon: Table,
|
||||
href: `/workspace/${workspaceId}/tables`,
|
||||
hidden: permissionConfig.hideTablesTab,
|
||||
},
|
||||
// TODO: Uncomment when working on tables
|
||||
// {
|
||||
// id: 'tables',
|
||||
// label: 'Tables',
|
||||
// icon: Table,
|
||||
// href: `/workspace/${workspaceId}/tables`,
|
||||
// hidden: permissionConfig.hideTablesTab,
|
||||
// },
|
||||
{
|
||||
id: 'help',
|
||||
label: 'Help',
|
||||
@@ -288,12 +289,7 @@ export const Sidebar = memo(function Sidebar() {
|
||||
onClick: () => openSettingsModal(),
|
||||
},
|
||||
].filter((item) => !item.hidden),
|
||||
[
|
||||
workspaceId,
|
||||
permissionConfig.hideTemplates,
|
||||
permissionConfig.hideKnowledgeBaseTab,
|
||||
permissionConfig.hideTablesTab,
|
||||
]
|
||||
[workspaceId, permissionConfig.hideTemplates, permissionConfig.hideKnowledgeBaseTab]
|
||||
)
|
||||
|
||||
const isLoading = workflowsLoading || sessionLoading
|
||||
|
||||
@@ -100,6 +100,19 @@ export const JiraServiceManagementBlock: BlockConfig<JsmResponse> = {
|
||||
title: 'Service Desk ID',
|
||||
type: 'short-input',
|
||||
placeholder: 'Enter service desk ID',
|
||||
required: {
|
||||
field: 'operation',
|
||||
value: [
|
||||
'get_request_types',
|
||||
'create_request',
|
||||
'get_customers',
|
||||
'add_customer',
|
||||
'get_organizations',
|
||||
'add_organization',
|
||||
'get_queues',
|
||||
'get_request_type_fields',
|
||||
],
|
||||
},
|
||||
condition: {
|
||||
field: 'operation',
|
||||
value: [
|
||||
@@ -207,9 +220,10 @@ Return ONLY the description text - no explanations.`,
|
||||
},
|
||||
{
|
||||
id: 'requestFieldValues',
|
||||
title: 'Custom Field Values',
|
||||
title: 'Request Field Values',
|
||||
type: 'long-input',
|
||||
placeholder: 'JSON object of custom field values (e.g., {"customfield_10010": "value"})',
|
||||
placeholder:
|
||||
'JSON object of field values (e.g., {"summary": "Title", "customfield_10010": "value"})',
|
||||
condition: { field: 'operation', value: 'create_request' },
|
||||
},
|
||||
{
|
||||
@@ -775,7 +789,7 @@ Return ONLY the comment text - no explanations.`,
|
||||
description: 'Comma-separated account IDs for request participants',
|
||||
},
|
||||
channel: { type: 'string', description: 'Channel (e.g., portal, email)' },
|
||||
requestFieldValues: { type: 'string', description: 'JSON object of custom field values' },
|
||||
requestFieldValues: { type: 'string', description: 'JSON object of request field values' },
|
||||
searchQuery: { type: 'string', description: 'Filter request types by name' },
|
||||
groupId: { type: 'string', description: 'Filter by request type group ID' },
|
||||
expand: { type: 'string', description: 'Comma-separated fields to expand' },
|
||||
|
||||
@@ -139,7 +139,6 @@ import { StarterBlock } from '@/blocks/blocks/starter'
|
||||
import { StripeBlock } from '@/blocks/blocks/stripe'
|
||||
import { SttBlock, SttV2Block } from '@/blocks/blocks/stt'
|
||||
import { SupabaseBlock } from '@/blocks/blocks/supabase'
|
||||
import { TableBlock } from '@/blocks/blocks/table'
|
||||
import { TavilyBlock } from '@/blocks/blocks/tavily'
|
||||
import { TelegramBlock } from '@/blocks/blocks/telegram'
|
||||
import { TextractBlock, TextractV2Block } from '@/blocks/blocks/textract'
|
||||
@@ -331,7 +330,8 @@ export const registry: Record<string, BlockConfig> = {
|
||||
stt: SttBlock,
|
||||
stt_v2: SttV2Block,
|
||||
supabase: SupabaseBlock,
|
||||
table: TableBlock,
|
||||
// TODO: Uncomment when working on tables
|
||||
// table: TableBlock,
|
||||
tavily: TavilyBlock,
|
||||
telegram: TelegramBlock,
|
||||
textract: TextractBlock,
|
||||
|
||||
@@ -679,11 +679,15 @@ function spawnWorker(): Promise<WorkerInfo> {
|
||||
}
|
||||
|
||||
const currentDir = path.dirname(fileURLToPath(import.meta.url))
|
||||
const workerPath = path.join(currentDir, 'isolated-vm-worker.cjs')
|
||||
const candidatePaths = [
|
||||
path.join(currentDir, 'isolated-vm-worker.cjs'),
|
||||
path.join(process.cwd(), 'lib', 'execution', 'isolated-vm-worker.cjs'),
|
||||
]
|
||||
const workerPath = candidatePaths.find((p) => fs.existsSync(p))
|
||||
|
||||
if (!fs.existsSync(workerPath)) {
|
||||
if (!workerPath) {
|
||||
settleSpawnInProgress()
|
||||
reject(new Error(`Worker file not found at ${workerPath}`))
|
||||
reject(new Error(`Worker file not found at any of: ${candidatePaths.join(', ')}`))
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@ export const jsmCreateRequestTool: ToolConfig<JsmCreateRequestParams, JsmCreateR
|
||||
required: false,
|
||||
visibility: 'user-or-llm',
|
||||
description:
|
||||
'Custom field values as key-value pairs (overrides summary/description if provided)',
|
||||
'Request field values as key-value pairs (overrides summary/description if provided)',
|
||||
},
|
||||
requestParticipants: {
|
||||
type: 'string',
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { additionalPackages } from '@trigger.dev/build/extensions/core'
|
||||
import { additionalFiles, additionalPackages } from '@trigger.dev/build/extensions/core'
|
||||
import { defineConfig } from '@trigger.dev/sdk'
|
||||
import { env } from './lib/core/config/env'
|
||||
|
||||
@@ -15,9 +15,11 @@ export default defineConfig({
|
||||
},
|
||||
dirs: ['./background'],
|
||||
build: {
|
||||
external: ['isolated-vm'],
|
||||
extensions: [
|
||||
additionalFiles({ files: ['./lib/execution/isolated-vm-worker.cjs'] }),
|
||||
additionalPackages({
|
||||
packages: ['unpdf', 'pdf-lib'],
|
||||
packages: ['unpdf', 'pdf-lib', 'isolated-vm'],
|
||||
}),
|
||||
],
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user