@burdenoff/fluidgrids-fe-sdk 2026.922.3 → 2026.922.4
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/{WorkflowBuilder-FB5JSGDC.js → WorkflowBuilder-Z5ODM5N6.js} +5 -5
- package/dist/{WorkflowBuilder-FB5JSGDC.js.map → WorkflowBuilder-Z5ODM5N6.js.map} +1 -1
- package/dist/{WorkflowsList-J6IDS3SR.js → WorkflowsList-3ZSKFYLJ.js} +4 -4
- package/dist/{WorkflowsList-J6IDS3SR.js.map → WorkflowsList-3ZSKFYLJ.js.map} +1 -1
- package/dist/{chunk-2RVL6DT3.js → chunk-3HXKZ7NO.js} +3 -3
- package/dist/{chunk-2RVL6DT3.js.map → chunk-3HXKZ7NO.js.map} +1 -1
- package/dist/{chunk-TCMY3ZN3.js → chunk-4EMSQKU5.js} +4 -4
- package/dist/{chunk-TCMY3ZN3.js.map → chunk-4EMSQKU5.js.map} +1 -1
- package/dist/{chunk-I3WUYESA.js → chunk-5UQ24KKS.js} +9 -2
- package/dist/chunk-5UQ24KKS.js.map +1 -0
- package/dist/{chunk-T6EWXQBI.js → chunk-E266N5W5.js} +4 -4
- package/dist/{chunk-T6EWXQBI.js.map → chunk-E266N5W5.js.map} +1 -1
- package/dist/{chunk-K4U4WX4R.js → chunk-FX62UCC7.js} +3 -3
- package/dist/{chunk-K4U4WX4R.js.map → chunk-FX62UCC7.js.map} +1 -1
- package/dist/{chunk-NVQOHU5Y.js → chunk-N2LUT3AF.js} +4 -4
- package/dist/{chunk-NVQOHU5Y.js.map → chunk-N2LUT3AF.js.map} +1 -1
- package/dist/index.js +10 -10
- package/dist/templates.js +3 -3
- package/dist/workflow-builder.js +4 -4
- package/dist/workflows-list.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-I3WUYESA.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -6,12 +6,12 @@ import './chunk-N4URMBJP.js';
|
|
|
6
6
|
export { HistoryPage } from './chunk-FH5QBQXV.js';
|
|
7
7
|
export { NodesPage, fetchAllNodesWithManifests, useLazyNodeManifest, useNodeEndpoint, useNodeEndpoints, useNodeManifest } from './chunk-VJDLWE5S.js';
|
|
8
8
|
export { SettingsPage } from './chunk-ACRXNUU2.js';
|
|
9
|
-
import { ThemeProvider, extractTemplateGraph } from './chunk-
|
|
10
|
-
export { A2AMessagePriority, A2AMessageStatus, A2ATrustLevel, ActionExecutionStatus, ActionSourceType, ActionStatus, ActionStyle, ActionTriggerType, ActionType, ActivityCategory, ActivityType, ActorType, AgentVisibility, AiPromptCategory, AiPromptStatus, AlertSeverity, AnalyticsEntityType, AnalyticsEventSeverity, AnalyticsGranularity, AnalyticsInsightSeverity, AppCategory, AppInstallationState, AppPermission, AppStatus, AppType, AppVisibility, ApprovalStatus, ArtifactType, AssetBudgetStatus, AssetCondition, AssetStatus, AssignmentSource, AttendeeRole, AuthType, AuthorType, AutomationExecutionStatus, AutomationStatus, AutomationTriggerType, BackoffStrategy, BatchDownloadStatus, BigConsoleConflictResolution, BillingType, BoardColumnType, BoardType, BookingFormFieldType, BookingPageType, BookingStatus, BotAppStatus, BotAppType, BotAppVisibility, BotlitAgentCapability, BotlitAgentStatus, BotlitAgentType, BotlitHealthStatus, BotlitLlmProviderType, BudgetStatus, BulkConversationAction, CalendarEventStatus, CalendarExecutionStatus, CalendarExportFormat, CalendarPromptStatus, CalendarResourceType, CalendarType, CallParticipantChangeType, CallState, CallType, CatalogVisibility, ChangeRisk, ChangeStatus, ChannelMessageStatus, ChannelPlatform, ChannelStatus, ChannelType, ChatRole, CheckInStatus, ChunkingMethod, CircuitState, CohortType, CollaboratorRole, CollectionActivityType, CollectionItemSortField, CollectionSortField, CollectionType, CollectionVisibility, CommentExportFormat, CommentScheduleType, CommentStatus, CommentVisibility, ComparisonOperator, ComplianceStatus, ComponentLifecycle, ComponentType, ConfigScope, ConflictResolution, ConnectionCredentialSource, ConnectionQuality, ConnectionStatus, ContentSearchEngine, ContentSearchStatus, ContentType, ConversationPermission, ConversationSortField, ConversationState, ConversationType, ConversationVisibility, ConversationsExportFormat, CustomFieldType, DashboardCategory, DashboardLayout, DashboardSortField, DashboardStatus, DashboardStyleType, DashboardVisibility, DataSinkRefreshType, DataSinkSetupState, DataSinkSourceType, DataSinkStatus, DataSinkUpdateEventType, DataSourceTestStatus, DataSourceType, DayOfWeek, DeliveryChannelType, DependencyStatus, DependencyType, DiscoveryJobStatus, DlqStatus, DocumentStatus, DriverStatus, EncryptionAlgorithm, EnergyLevel, EntityStatus, ErrorType, EventStatus, EventType, EventValidationStatus, EventVisibility, EventfullymanagedConfigScope, EventfullymanagedSessionStatus, EventfullymanagedSessionType, EventfullymanagedVibeStatus, EventfullymanagedVibeType, ExecutionStatus, ExecutionType, ExecutorType, ExpenseOrderByField, ExpenseStatus, ExportArchiveFormat, ExportFormat, ExportJobStatus, ExportScope, ExportSortField, ExternalCalendarSyncDirection, ExternalCalendarSyncStatus, ExternalProviderType, FeatureRequestStatus, FieldMaskStrategy, FileEventType, FileMetadataSortField, FileShareAccessLevel, FileShareType, FileSortField, FileStatus, FileVisibility, FilterDataType, FilterOperator, FilterType, FluidGridsEventType, FluidGridsWorkflowStatus, FolderSortField, FolderStatus, FunnelStepOrder, GeneratedLayoutType, GenerationStatus, GeofenceEventType, GeofenceTrigger, GgnomadBookingStatus, GgnomadBookingType, GgnomadListingStatus, GitopsProviderType, GitopsSnapshotType, GraphMetadataOperator, GraphSearchMode, GraphSearchSortBy, GroupCompositionMode, GroupExportFormat, GroupScope, GroupSortField, GroupStatus, GroupType, GroupVisibility, GroupsExportFormat, HeadshotmarketingAdCampaignStatus, HeadshotmarketingAdCreativeStatus, HeadshotmarketingAdCreativeType, HeadshotmarketingAdPlatform, HeadshotmarketingAiToolCategory, HeadshotmarketingAiToolExecutionStatus, HeadshotmarketingAssetType, HeadshotmarketingCampaignStatus, HeadshotmarketingCampaignType, HeadshotmarketingContactStatus, HeadshotmarketingContentItemStatus, HeadshotmarketingContentItemType, HeadshotmarketingDateRangePreset, HeadshotmarketingDealStatus, HeadshotmarketingEventRegistrationStatus, HeadshotmarketingEventStatus, HeadshotmarketingEventType, HeadshotmarketingInfluencerCampaignStatus, HeadshotmarketingInfluencerRelationshipStatus, HeadshotmarketingInfluencerTier, HeadshotmarketingLandingPageSectionType, HeadshotmarketingLandingPageStatus, HeadshotmarketingLeadSource, HeadshotmarketingLeadStatus, HeadshotmarketingMetricType, HeadshotmarketingReportStatus, HeadshotmarketingReportType, HeadshotmarketingSeoAuditSeverity, HeadshotmarketingSeoAuditStatus, HeadshotmarketingSeoKeywordStatus, HeadshotmarketingSocialAccountStatus, HeadshotmarketingSocialPlatform, HeadshotmarketingSocialPostStatus, HeadshotmarketingWorkflowExecutionStatus, HeadshotmarketingWorkflowStatus, HeadshotmarketingWorkflowTriggerType, HttpMethod, IncidentStatus, IndexStatus, InstallMode, InventoryTransactionType, InvitationStatus, InviteStatus, InvoiceStatus, IssueTokenErrorCode, JobStatus, KadaikodiInvestmentStatus, KadaikodiOfferingKind, KadaikodiOrderStatus, KadaikodiPaymentStatus, KadaikodiProviderStatus, KadaikodiRiskLevel, KadaikodiServiceCategory, KeyStatus, KeyType, KnowledgeArticleStatus, LocationType, LockType, LogAction, LogLevel, McpConnectionStatus, McpResourceType, McpToolStatus, MeetingActionItemStatus, MeetingOrderByField, MeetingParticipantRole, MeetingParticipantStatus, MeetingProvider, MeetingType, MemberPresenceStatus, MembershipRole, MembershipSource, MembershipStatus, MembershipType, MentionType, MessageContentType, MessageReportResolutionAction, MessageReportStatus, MessageStatus, MessageType, MetadataValueType, MetricAggregation, MetricAggregationField, MetricType, MilestoneStatus, MisfirePolicy, Mood, NatsFilterType, NavigationMode, NodeConfigStatus, NodeStatus, NotificationLevel, OrderDirection, OrderPriority, OrderStatus, OrderType, OverrideType, PackageKind, PageLayout, ParserStatus, ParserType, ParticipantChangeType, ParticipantRole, PipelineExecutionStatus, PipelineStatus, PlanmagnetProjectStatus, PlanmagnetSyncDirection, PlanmagnetSyncProvider, PlanmagnetSyncStatus, PluginStatus, PolicyStatus, PolicyType, PomodoroGoalPeriod, PomodoroGoalType, PomodoroSessionOrderByField, PomodoroSessionType, PortfolioStatus, PresenceStatus, Priority, ProblemStatus, ProductType, ProjectMethodology, ProjectOrderField, ProjectStatus, PromptGenerationStatus, PromptPriority, PromptStatus, PropertyStatus, PropertyType, ProviderCategory, PublishType, QualityGateStatus, RbacChangeType, ReactionChangeType, RecordingMode, ReleaseStatus, ReminderChannel, ReminderType, ReportFormat, ReportScheduleStatus, ResourceBookingStatus, RetrievalMode, RiskSeverity, RiskStatus, RoadmapItemStatus, RoadmapType, RoleLevel, RouteStatus, RoutingStrategy, RsvpStatus, RuleActionType, RuleConditionOperator, RuleRunMode, RunLogLevel, RunLogStream, RunStatus, SandboxChangeType, SandboxExportFormat, SandboxExportJobStatus, SandboxKind, SandboxMode, SandboxSource, SandboxStatus, SandboxTemplate, SchedulePriority, ScheduleType, ScorecardMetricStatus, ScorecardMetricType, ScorecardOwnerType, SecretStatus, SecretType, SecurityExportFormat, SecuritySeverity, SecuritySubscriptionEvent, SegmentVisibility, SessionSharePermission, SettingsCategory, SharePermission, ShareRecipientType, ShareSortField, ShareStatus, ShareTokenType, ShipmentStatus, SmartCollectionConditionField, SmartCollectionConditionOperator, SmartCollectionOperator, SortDirection, SortOrder, SprintStatus, StageErrorHandling, StageExecutionStatus, StorageMode, StrategicAlignment, StressLevel, SubmissionStatus, SuggestedDataSourceType, SyncDirection, SyncFromGlobalOperation, SyncProvider, SystemEventType, TagCardinality, TagDataType, TagFilterOperator, TagRelationType, TagScope, TagsExportFormat, TargetType, TaskOrderField, TaskPriority, TaskStatus, TemplateAuthorType, TemplateCategory, TemplateComplexity, TemplatePreview, TemplateStatus, TemplateVisibility, TemplatesPage, TimeBucket, TimeCampusChannelType, TimeCampusConfigScope, TimeCampusProjectStatus, TimeCampusSortDirection, TimeEntryOrderField, TimeEntryStatus, TimeGrain, TimeRange, TlsMode, ToolRiskLevel, TrackingEventType, TransactionStatus, TransactionType, TraversalDirection, TunnelDomainType, TunnelDomainVerificationStatus, TunnelEnvironment, TunnelProtocol, TunnelProviderKey, TunnelSessionStatus, TunnelShardStatus, TunnelStatus, UpdateScope, UploadStatus, UploadType, UsageStatus, ValidationMethod, VaultIncidentSeverity, VaultIncidentStatus, VaultMemberRole, VaultRotationStatus, VaultScope, VaultSecurityEventSeverity, VaultSecurityEventType, VaultStatus, VaultSyncStatus, VehicleStatus, VehicleType, VersionStatus, VibeAuditAction, VibeAuditExportFormat, VibeAuditResourceType, VibeAuditStatus, VibeCalendarExecutionStatus, VibeCalendarTaskStatus, VibeDeckButtonActionType, VibeDeckSharePermission, VibeDeckShareStatus, VibeDeckShareVisibility, VibeStatus, VibeType, VibecontrolsActionType, VibecontrolsDocsBuildImagePullPolicy, VibecontrolsDocsBuildImageScanStatus, VibecontrolsDocsBuildImageStatus, VibecontrolsDocsBuildRuntime, VibecontrolsDocsPageStatus, VibecontrolsDocsRevisionStatus, VibecontrolsDocsSiteOwnerType, VibecontrolsDocsSiteVisibility, VibecontrolsSessionStatus, VibecontrolsSessionType, VibecontrolsTemplateCategory, VibecontrolsTemplateStatus, Visibility, VisibilityType, VocabularyKind, VocabularyScope, WarehouseType, WebhookAuthType, WidgetConfidence, WidgetRenderer, WidgetType, WorkItemPriority, WorkItemStatus, WorkItemType, WorkOrderStatus, WorkOrderType, WorkPatternInsightType, WorkflowStatus, WorkspaceResourceStatus, WorkspaceResourceType, WorkspaceStatus, WorkspaceType, WorkspacesExportFormat } from './chunk-
|
|
11
|
-
export { WorkflowBuilder, WorkflowBuilderCore, WorkflowSearchRedirect } from './chunk-
|
|
12
|
-
export { WorkflowBuilder as WorkflowBuilderPage } from './chunk-
|
|
13
|
-
import { FluidGridsProvider, FlowBuilderPage } from './chunk-
|
|
14
|
-
export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, ConnectionFormDialog, ConnectionSelector, EntityTagPicker, FLUIDGRIDS_ENTITY_TYPES, FluidGridsProvider, ProviderPicker, SchemaConnectionForm, ScopePicker, listCustomBlocks, refetchStoreNodes, registerCustomBlock, resolveUiSpec, stripSubmitActions, tagLabel, useAvailableTags, useConnection, useConnectionDialog, useConnections, useConnectionsByProvider, useCreateConnection, useCreateTag, useDraftEntityTags, useEntityTags, useFluidGridsContext, useInitiateOAuth, useNodeExecution, useProviderByKey, useProviderCatalog, useProviders, useReplaceEntityTags, useSearchTags, useTagEntity, useUntagEntity } from './chunk-
|
|
9
|
+
import { ThemeProvider, extractTemplateGraph } from './chunk-N2LUT3AF.js';
|
|
10
|
+
export { A2AMessagePriority, A2AMessageStatus, A2ATrustLevel, ActionExecutionStatus, ActionSourceType, ActionStatus, ActionStyle, ActionTriggerType, ActionType, ActivityCategory, ActivityType, ActorType, AgentVisibility, AiPromptCategory, AiPromptStatus, AlertSeverity, AnalyticsEntityType, AnalyticsEventSeverity, AnalyticsGranularity, AnalyticsInsightSeverity, AppCategory, AppInstallationState, AppPermission, AppStatus, AppType, AppVisibility, ApprovalStatus, ArtifactType, AssetBudgetStatus, AssetCondition, AssetStatus, AssignmentSource, AttendeeRole, AuthType, AuthorType, AutomationExecutionStatus, AutomationStatus, AutomationTriggerType, BackoffStrategy, BatchDownloadStatus, BigConsoleConflictResolution, BillingType, BoardColumnType, BoardType, BookingFormFieldType, BookingPageType, BookingStatus, BotAppStatus, BotAppType, BotAppVisibility, BotlitAgentCapability, BotlitAgentStatus, BotlitAgentType, BotlitHealthStatus, BotlitLlmProviderType, BudgetStatus, BulkConversationAction, CalendarEventStatus, CalendarExecutionStatus, CalendarExportFormat, CalendarPromptStatus, CalendarResourceType, CalendarType, CallParticipantChangeType, CallState, CallType, CatalogVisibility, ChangeRisk, ChangeStatus, ChannelMessageStatus, ChannelPlatform, ChannelStatus, ChannelType, ChatRole, CheckInStatus, ChunkingMethod, CircuitState, CohortType, CollaboratorRole, CollectionActivityType, CollectionItemSortField, CollectionSortField, CollectionType, CollectionVisibility, CommentExportFormat, CommentScheduleType, CommentStatus, CommentVisibility, ComparisonOperator, ComplianceStatus, ComponentLifecycle, ComponentType, ConfigScope, ConflictResolution, ConnectionCredentialSource, ConnectionQuality, ConnectionStatus, ContentSearchEngine, ContentSearchStatus, ContentType, ConversationPermission, ConversationSortField, ConversationState, ConversationType, ConversationVisibility, ConversationsExportFormat, CustomFieldType, DashboardCategory, DashboardLayout, DashboardSortField, DashboardStatus, DashboardStyleType, DashboardVisibility, DataSinkRefreshType, DataSinkSetupState, DataSinkSourceType, DataSinkStatus, DataSinkUpdateEventType, DataSourceTestStatus, DataSourceType, DayOfWeek, DeliveryChannelType, DependencyStatus, DependencyType, DiscoveryJobStatus, DlqStatus, DocumentStatus, DriverStatus, EncryptionAlgorithm, EnergyLevel, EntityStatus, ErrorType, EventStatus, EventType, EventValidationStatus, EventVisibility, EventfullymanagedConfigScope, EventfullymanagedSessionStatus, EventfullymanagedSessionType, EventfullymanagedVibeStatus, EventfullymanagedVibeType, ExecutionStatus, ExecutionType, ExecutorType, ExpenseOrderByField, ExpenseStatus, ExportArchiveFormat, ExportFormat, ExportJobStatus, ExportScope, ExportSortField, ExternalCalendarSyncDirection, ExternalCalendarSyncStatus, ExternalProviderType, FeatureRequestStatus, FieldMaskStrategy, FileEventType, FileMetadataSortField, FileShareAccessLevel, FileShareType, FileSortField, FileStatus, FileVisibility, FilterDataType, FilterOperator, FilterType, FluidGridsEventType, FluidGridsWorkflowStatus, FolderSortField, FolderStatus, FunnelStepOrder, GeneratedLayoutType, GenerationStatus, GeofenceEventType, GeofenceTrigger, GgnomadBookingStatus, GgnomadBookingType, GgnomadListingStatus, GitopsProviderType, GitopsSnapshotType, GraphMetadataOperator, GraphSearchMode, GraphSearchSortBy, GroupCompositionMode, GroupExportFormat, GroupScope, GroupSortField, GroupStatus, GroupType, GroupVisibility, GroupsExportFormat, HeadshotmarketingAdCampaignStatus, HeadshotmarketingAdCreativeStatus, HeadshotmarketingAdCreativeType, HeadshotmarketingAdPlatform, HeadshotmarketingAiToolCategory, HeadshotmarketingAiToolExecutionStatus, HeadshotmarketingAssetType, HeadshotmarketingCampaignStatus, HeadshotmarketingCampaignType, HeadshotmarketingContactStatus, HeadshotmarketingContentItemStatus, HeadshotmarketingContentItemType, HeadshotmarketingDateRangePreset, HeadshotmarketingDealStatus, HeadshotmarketingEventRegistrationStatus, HeadshotmarketingEventStatus, HeadshotmarketingEventType, HeadshotmarketingInfluencerCampaignStatus, HeadshotmarketingInfluencerRelationshipStatus, HeadshotmarketingInfluencerTier, HeadshotmarketingLandingPageSectionType, HeadshotmarketingLandingPageStatus, HeadshotmarketingLeadSource, HeadshotmarketingLeadStatus, HeadshotmarketingMetricType, HeadshotmarketingReportStatus, HeadshotmarketingReportType, HeadshotmarketingSeoAuditSeverity, HeadshotmarketingSeoAuditStatus, HeadshotmarketingSeoKeywordStatus, HeadshotmarketingSocialAccountStatus, HeadshotmarketingSocialPlatform, HeadshotmarketingSocialPostStatus, HeadshotmarketingWorkflowExecutionStatus, HeadshotmarketingWorkflowStatus, HeadshotmarketingWorkflowTriggerType, HttpMethod, IncidentStatus, IndexStatus, InstallMode, InventoryTransactionType, InvitationStatus, InviteStatus, InvoiceStatus, IssueTokenErrorCode, JobStatus, KadaikodiInvestmentStatus, KadaikodiOfferingKind, KadaikodiOrderStatus, KadaikodiPaymentStatus, KadaikodiProviderStatus, KadaikodiRiskLevel, KadaikodiServiceCategory, KeyStatus, KeyType, KnowledgeArticleStatus, LocationType, LockType, LogAction, LogLevel, McpConnectionStatus, McpResourceType, McpToolStatus, MeetingActionItemStatus, MeetingOrderByField, MeetingParticipantRole, MeetingParticipantStatus, MeetingProvider, MeetingType, MemberPresenceStatus, MembershipRole, MembershipSource, MembershipStatus, MembershipType, MentionType, MessageContentType, MessageReportResolutionAction, MessageReportStatus, MessageStatus, MessageType, MetadataValueType, MetricAggregation, MetricAggregationField, MetricType, MilestoneStatus, MisfirePolicy, Mood, NatsFilterType, NavigationMode, NodeConfigStatus, NodeStatus, NotificationLevel, OrderDirection, OrderPriority, OrderStatus, OrderType, OverrideType, PackageKind, PageLayout, ParserStatus, ParserType, ParticipantChangeType, ParticipantRole, PipelineExecutionStatus, PipelineStatus, PlanmagnetProjectStatus, PlanmagnetSyncDirection, PlanmagnetSyncProvider, PlanmagnetSyncStatus, PluginStatus, PolicyStatus, PolicyType, PomodoroGoalPeriod, PomodoroGoalType, PomodoroSessionOrderByField, PomodoroSessionType, PortfolioStatus, PresenceStatus, Priority, ProblemStatus, ProductType, ProjectMethodology, ProjectOrderField, ProjectStatus, PromptGenerationStatus, PromptPriority, PromptStatus, PropertyStatus, PropertyType, ProviderCategory, PublishType, QualityGateStatus, RbacChangeType, ReactionChangeType, RecordingMode, ReleaseStatus, ReminderChannel, ReminderType, ReportFormat, ReportScheduleStatus, ResourceBookingStatus, RetrievalMode, RiskSeverity, RiskStatus, RoadmapItemStatus, RoadmapType, RoleLevel, RouteStatus, RoutingStrategy, RsvpStatus, RuleActionType, RuleConditionOperator, RuleRunMode, RunLogLevel, RunLogStream, RunStatus, SandboxChangeType, SandboxExportFormat, SandboxExportJobStatus, SandboxKind, SandboxMode, SandboxSource, SandboxStatus, SandboxTemplate, SchedulePriority, ScheduleType, ScorecardMetricStatus, ScorecardMetricType, ScorecardOwnerType, SecretStatus, SecretType, SecurityExportFormat, SecuritySeverity, SecuritySubscriptionEvent, SegmentVisibility, SessionSharePermission, SettingsCategory, SharePermission, ShareRecipientType, ShareSortField, ShareStatus, ShareTokenType, ShipmentStatus, SmartCollectionConditionField, SmartCollectionConditionOperator, SmartCollectionOperator, SortDirection, SortOrder, SprintStatus, StageErrorHandling, StageExecutionStatus, StorageMode, StrategicAlignment, StressLevel, SubmissionStatus, SuggestedDataSourceType, SyncDirection, SyncFromGlobalOperation, SyncProvider, SystemEventType, TagCardinality, TagDataType, TagFilterOperator, TagRelationType, TagScope, TagsExportFormat, TargetType, TaskOrderField, TaskPriority, TaskStatus, TemplateAuthorType, TemplateCategory, TemplateComplexity, TemplatePreview, TemplateStatus, TemplateVisibility, TemplatesPage, TimeBucket, TimeCampusChannelType, TimeCampusConfigScope, TimeCampusProjectStatus, TimeCampusSortDirection, TimeEntryOrderField, TimeEntryStatus, TimeGrain, TimeRange, TlsMode, ToolRiskLevel, TrackingEventType, TransactionStatus, TransactionType, TraversalDirection, TunnelDomainType, TunnelDomainVerificationStatus, TunnelEnvironment, TunnelProtocol, TunnelProviderKey, TunnelSessionStatus, TunnelShardStatus, TunnelStatus, UpdateScope, UploadStatus, UploadType, UsageStatus, ValidationMethod, VaultIncidentSeverity, VaultIncidentStatus, VaultMemberRole, VaultRotationStatus, VaultScope, VaultSecurityEventSeverity, VaultSecurityEventType, VaultStatus, VaultSyncStatus, VehicleStatus, VehicleType, VersionStatus, VibeAuditAction, VibeAuditExportFormat, VibeAuditResourceType, VibeAuditStatus, VibeCalendarExecutionStatus, VibeCalendarTaskStatus, VibeDeckButtonActionType, VibeDeckSharePermission, VibeDeckShareStatus, VibeDeckShareVisibility, VibeStatus, VibeType, VibecontrolsActionType, VibecontrolsDocsBuildImagePullPolicy, VibecontrolsDocsBuildImageScanStatus, VibecontrolsDocsBuildImageStatus, VibecontrolsDocsBuildRuntime, VibecontrolsDocsPageStatus, VibecontrolsDocsRevisionStatus, VibecontrolsDocsSiteOwnerType, VibecontrolsDocsSiteVisibility, VibecontrolsSessionStatus, VibecontrolsSessionType, VibecontrolsTemplateCategory, VibecontrolsTemplateStatus, Visibility, VisibilityType, VocabularyKind, VocabularyScope, WarehouseType, WebhookAuthType, WidgetConfidence, WidgetRenderer, WidgetType, WorkItemPriority, WorkItemStatus, WorkItemType, WorkOrderStatus, WorkOrderType, WorkPatternInsightType, WorkflowStatus, WorkspaceResourceStatus, WorkspaceResourceType, WorkspaceStatus, WorkspaceType, WorkspacesExportFormat } from './chunk-N2LUT3AF.js';
|
|
11
|
+
export { WorkflowBuilder, WorkflowBuilderCore, WorkflowSearchRedirect } from './chunk-4EMSQKU5.js';
|
|
12
|
+
export { WorkflowBuilder as WorkflowBuilderPage } from './chunk-E266N5W5.js';
|
|
13
|
+
import { FluidGridsProvider, FlowBuilderPage } from './chunk-3HXKZ7NO.js';
|
|
14
|
+
export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, ConnectionFormDialog, ConnectionSelector, EntityTagPicker, FLUIDGRIDS_ENTITY_TYPES, FluidGridsProvider, ProviderPicker, SchemaConnectionForm, ScopePicker, listCustomBlocks, refetchStoreNodes, registerCustomBlock, resolveUiSpec, stripSubmitActions, tagLabel, useAvailableTags, useConnection, useConnectionDialog, useConnections, useConnectionsByProvider, useCreateConnection, useCreateTag, useDraftEntityTags, useEntityTags, useFluidGridsContext, useInitiateOAuth, useNodeExecution, useProviderByKey, useProviderCatalog, useProviders, useReplaceEntityTags, useSearchTags, useTagEntity, useUntagEntity } from './chunk-3HXKZ7NO.js';
|
|
15
15
|
export { Input } from './chunk-P5PKRQAO.js';
|
|
16
16
|
export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger } from './chunk-NH5YCY37.js';
|
|
17
17
|
export { Badge, Button, badgeVariants, buttonVariants } from './chunk-DBOMRIP5.js';
|
|
@@ -19,8 +19,8 @@ import { createGlobalStoreClient } from './chunk-BQXHJIER.js';
|
|
|
19
19
|
export { createGlobalStoreClient, getGlobalStoreClient, resetGlobalStoreClient, setGlobalStoreClient } from './chunk-BQXHJIER.js';
|
|
20
20
|
import './chunk-6LXMUIR3.js';
|
|
21
21
|
import './chunk-XQP33UJR.js';
|
|
22
|
-
export { WorkflowsList } from './chunk-
|
|
23
|
-
export { useFlowStore } from './chunk-
|
|
22
|
+
export { WorkflowsList } from './chunk-FX62UCC7.js';
|
|
23
|
+
export { useFlowStore } from './chunk-5UQ24KKS.js';
|
|
24
24
|
export { ALLOW_ALL_PERMISSIONS, FLUIDGRIDS_PERMISSIONS, FluidGridsPermissionsProvider, SdkPermissionButton, SdkPermissionGate, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, evaluatePermissionCheck, useFluidGridsPermission } from './chunk-UIY2HBWA.js';
|
|
25
25
|
import { cn } from './chunk-3ZYUGTIT.js';
|
|
26
26
|
export { cn } from './chunk-3ZYUGTIT.js';
|
|
@@ -49,10 +49,10 @@ import * as SwitchPrimitives from '@radix-ui/react-switch';
|
|
|
49
49
|
import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
50
50
|
|
|
51
51
|
var WorkflowsList2 = lazy(
|
|
52
|
-
() => import('./WorkflowsList-
|
|
52
|
+
() => import('./WorkflowsList-3ZSKFYLJ.js').then((m) => ({ default: m.WorkflowsList }))
|
|
53
53
|
);
|
|
54
54
|
var WorkflowBuilder3 = lazy(
|
|
55
|
-
() => import('./WorkflowBuilder-
|
|
55
|
+
() => import('./WorkflowBuilder-Z5ODM5N6.js').then((m) => ({
|
|
56
56
|
default: m.WorkflowBuilder
|
|
57
57
|
}))
|
|
58
58
|
);
|
package/dist/templates.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export { TemplatePreview, TemplatesPage } from './chunk-
|
|
2
|
-
import './chunk-
|
|
1
|
+
export { TemplatePreview, TemplatesPage } from './chunk-N2LUT3AF.js';
|
|
2
|
+
import './chunk-3HXKZ7NO.js';
|
|
3
3
|
import './chunk-P5PKRQAO.js';
|
|
4
4
|
import './chunk-NH5YCY37.js';
|
|
5
5
|
import './chunk-DBOMRIP5.js';
|
|
6
6
|
import './chunk-BQXHJIER.js';
|
|
7
7
|
import './chunk-6LXMUIR3.js';
|
|
8
8
|
import './chunk-XQP33UJR.js';
|
|
9
|
-
import './chunk-
|
|
9
|
+
import './chunk-5UQ24KKS.js';
|
|
10
10
|
import './chunk-UIY2HBWA.js';
|
|
11
11
|
import './chunk-3ZYUGTIT.js';
|
|
12
12
|
import './chunk-ELB3LXRJ.js';
|
package/dist/workflow-builder.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export { WorkflowBuilder, WorkflowBuilderCore, WorkflowSearchRedirect } from './chunk-
|
|
2
|
-
export { WorkflowBuilder as WorkflowBuilderPage } from './chunk-
|
|
3
|
-
export { refetchStoreNodes } from './chunk-
|
|
1
|
+
export { WorkflowBuilder, WorkflowBuilderCore, WorkflowSearchRedirect } from './chunk-4EMSQKU5.js';
|
|
2
|
+
export { WorkflowBuilder as WorkflowBuilderPage } from './chunk-E266N5W5.js';
|
|
3
|
+
export { refetchStoreNodes } from './chunk-3HXKZ7NO.js';
|
|
4
4
|
import './chunk-P5PKRQAO.js';
|
|
5
5
|
import './chunk-NH5YCY37.js';
|
|
6
6
|
import './chunk-DBOMRIP5.js';
|
|
7
7
|
import './chunk-BQXHJIER.js';
|
|
8
8
|
import './chunk-6LXMUIR3.js';
|
|
9
9
|
import './chunk-XQP33UJR.js';
|
|
10
|
-
export { useFlowStore } from './chunk-
|
|
10
|
+
export { useFlowStore } from './chunk-5UQ24KKS.js';
|
|
11
11
|
import './chunk-UIY2HBWA.js';
|
|
12
12
|
import './chunk-3ZYUGTIT.js';
|
|
13
13
|
import './chunk-ELB3LXRJ.js';
|
package/dist/workflows-list.js
CHANGED
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/builder/stores/flow-store.ts","../src/components/shared/QuotaExhaustedDialog.tsx"],"names":[],"mappings":";;;;;;;;AA2DA,IAAM,aAAA,GAAgB,GAAA;AAItB,IAAM,YAAA,GAAe,EAAA;AASrB,SAAS,WAAc,KAAA,EAAa;AAClC,EAAA,IAAI;AACF,IAAA,OAAO,gBAAgB,KAAK,CAAA;AAAA,EAC9B,CAAA,CAAA,MAAQ;AACN,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,IAAA,CAAK,SAAA,CAAU,KAAK,CAAC,CAAA;AAAA,EACzC;AACF;AAkKA,IAAM,IAAA,GAAc;AAAA,EAClB,EAAE,KAAA,EAAO,WAAA,EAAa,KAAA,EAAO,WAAA,EAAa,OAAO,SAAA,EAAU;AAAA,EAC3D,EAAE,KAAA,EAAO,SAAA,EAAW,KAAA,EAAO,SAAA,EAAW,OAAO,SAAA,EAAU;AAAA,EACvD,EAAE,KAAA,EAAO,MAAA,EAAQ,KAAA,EAAO,MAAA,EAAQ,OAAO,SAAA,EAAU;AAAA,EACjD,EAAE,KAAA,EAAO,KAAA,EAAO,KAAA,EAAO,KAAA,EAAO,OAAO,SAAA;AACvC,CAAA;AAQA,IAAM,iBAAA,GAAoC;AAAA,EACxC,WAAA,EAAa,KAAA;AAAA,EACb,eAAA,EAAiB,IAAA;AAAA,EACjB,YAAA,EAAc,IAAA;AAAA,EACd,MAAM,EAAC;AAAA,EACP,aAAA,EAAe,IAAA;AAAA,EACf,aAAA,EAAe,KAAA;AAAA,EACf,cAAc,EAAC;AAAA,EACf,gBAAgB;AAClB,CAAA;AAEA,IAAM,kBAAgC,EAAE,IAAA,EAAM,EAAC,EAAG,MAAA,EAAQ,EAAC,EAAE;AAEtD,IAAM,YAAA,GAAe,MAAA,EAAmB,CAAE,CAAC,KAAK,GAAA,KAAQ;AAI7D,EAAA,IAAI,kBAAA,GAAoC,IAAA;AACxC,EAAA,IAAI,gBAAA,GAAmB,CAAA;AAavB,EAAA,SAAS,cAAA,CAAe,MAAc,QAAA,EAAmB;AACvD,IAAA,MAAM,GAAA,GAAM,KAAK,GAAA,EAAI;AACrB,IAAA,MAAM,WAAA,GACJ,QAAA,IAAY,IAAA,KAAS,kBAAA,IAAsB,MAAM,gBAAA,GAAmB,GAAA;AAEtE,IAAA,IAAI,CAAC,WAAA,EAAa;AAChB,MAAA,MAAM,QAAQ,GAAA,EAAI;AAClB,MAAA,MAAM,QAAA,GAA4B;AAAA,QAChC,KAAA,EAAO,UAAA,CAAW,KAAA,CAAM,QAAA,CAAS,KAAK,CAAA;AAAA,QACtC,KAAA,EAAO,UAAA,CAAW,KAAA,CAAM,QAAA,CAAS,KAAK;AAAA,OACxC;AACA,MAAA,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,QACV,OAAA,EAAS;AAAA,UACP,IAAA,EAAM,CAAC,GAAG,CAAA,CAAE,OAAA,CAAQ,MAAM,QAAQ,CAAA,CAAE,KAAA,CAAM,CAAC,aAAa,CAAA;AAAA,UACxD,QAAQ;AAAC;AACX,OACF,CAAE,CAAA;AAAA,IACJ,WAAW,GAAA,EAAI,CAAE,OAAA,CAAQ,MAAA,CAAO,SAAS,CAAA,EAAG;AAG1C,MAAA,GAAA,CAAI,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,EAAE,GAAG,CAAA,CAAE,OAAA,EAAS,MAAA,EAAQ,EAAC,EAAE,EAAE,CAAE,CAAA;AAAA,IACxD;AAEA,IAAA,kBAAA,GAAqB,IAAA;AACrB,IAAA,gBAAA,GAAmB,GAAA;AAAA,EACrB;AAGA,EAAA,SAAS,eAAA,GAAkB;AACzB,IAAA,kBAAA,GAAqB,IAAA;AACrB,IAAA,gBAAA,GAAmB,CAAA;AAAA,EACrB;AAEA,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,IAAA;AAAA,IACN,OAAA,EAAS,EAAE,GAAG,eAAA,EAAgB;AAAA,IAC9B,QAAA,EAAU;AAAA,MACR,IAAI,MAAA,EAAO;AAAA,MACX,WAAA,EAAa,EAAA;AAAA,MACb,IAAA,EAAM,EAAA;AAAA,MACN,OAAA,EAAS,EAAA;AAAA,MACT,KAAA,EAAO,EAAA;AAAA,MACP,OAAO,EAAC;AAAA,MACR,OAAO,EAAC;AAAA,MACR,GAAA,EAAK,IAAA;AAAA,MACL,WAAA,EAAa,IAAA;AAAA,MACb,iBAAA,EAAmB,IAAA;AAAA,MACnB,cAAA,EAAgB,IAAA;AAAA,MAChB,OAAA,EAAS;AAAA,QACP,MAAA,EAAQ,MAAA;AAAA,QACR,MAAA,EAAQ;AAAA,UACN,cAAA,EAAgB;AAAA,YACd,YAAA,EAAc;AAAA;AAChB;AACF;AACF,KACF;AAAA,IACA,SAAA,EAAW,EAAE,GAAG,iBAAA,EAAkB;AAAA,IAClC,OAAA,EAAS;AAAA,MACP,cAAc,MAAM;AAClB,QAAA,MAAM,EAAE,QAAA,EAAS,GAAI,GAAA,EAAI;AACzB,QAAA,MAAM,EAAE,IAAI,IAAA,EAAM,OAAA,EAAS,OAAO,IAAA,EAAM,MAAA,EAAQ,KAAA,EAAO,KAAA,EAAM,GAC3D,QAAA;AACF,QAAA,GAAA,CAAI,EAAE,UAAU,CAAA;AAChB,QAAA,OAAO,EAAE,IAAI,IAAA,EAAM,OAAA,EAAS,OAAO,IAAA,EAAM,MAAA,EAAQ,OAAO,KAAA,EAAM;AAAA,MAChE,CAAA;AAAA,MACA,WAAA,EAAa,CAAC,QAAA,KAA8C;AAC1D,QAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,UACd,QAAA,EAAU;AAAA,YACR,GAAG,KAAA,CAAM,QAAA;AAAA,YACT,GAAG;AAAA;AACL,SACF,CAAE,CAAA;AAAA,MACJ,CAAA;AAAA,MACA,eAAe,MAAM;AACnB,QAAA,eAAA,EAAgB;AAChB,QAAA,GAAA,CAAI,OAAO;AAAA,UACT,QAAA,EAAU;AAAA,YACR,IAAI,MAAA,EAAO;AAAA,YACX,WAAA,EAAa,EAAA;AAAA,YACb,IAAA,EAAM,EAAA;AAAA,YACN,OAAA,EAAS,EAAA;AAAA,YACT,KAAA,EAAO,EAAA;AAAA,YACP,IAAA,EAAM,MAAA;AAAA,YACN,MAAA,EAAQ,MAAA;AAAA,YACR,OAAO,EAAC;AAAA,YACR,OAAO,EAAC;AAAA,YACR,GAAA,EAAK,IAAA;AAAA,YACL,WAAA,EAAa,IAAA;AAAA,YACb,iBAAA,EAAmB,IAAA;AAAA,YACnB,cAAA,EAAgB,IAAA;AAAA,YAChB,OAAA,EAAS;AAAA,cACP,MAAA,EAAQ,MAAA;AAAA,cACR,MAAA,EAAQ;AAAA,gBACN,cAAA,EAAgB;AAAA,kBACd,YAAA,EAAc;AAAA;AAChB;AACF;AACF,WACF;AAAA;AAAA;AAAA;AAAA,UAIA,SAAA,EAAW,EAAE,GAAG,iBAAA,EAAkB;AAAA;AAAA;AAAA,UAGlC,OAAA,EAAS,EAAE,GAAG,eAAA;AAAgB,SAChC,CAAE,CAAA;AAAA,MACJ,CAAA;AAAA,MACA,OAAA,EAAS;AAAA,QACP,MAAM,MAAM;AACV,UAAA,MAAM,EAAE,IAAA,EAAM,MAAA,EAAO,GAAI,KAAI,CAAE,OAAA;AAC/B,UAAA,MAAM,QAAA,GAAW,IAAA,CAAK,IAAA,CAAK,MAAA,GAAS,CAAC,CAAA;AACrC,UAAA,IAAI,CAAC,QAAA,EAAU;AACf,UAAA,MAAM,EAAE,KAAA,EAAO,KAAA,EAAM,GAAI,KAAI,CAAE,QAAA;AAC/B,UAAA,MAAM,OAAA,GAA2B;AAAA,YAC/B,KAAA,EAAO,WAAW,KAAK,CAAA;AAAA,YACvB,KAAA,EAAO,WAAW,KAAK;AAAA,WACzB;AACA,UAAA,eAAA,EAAgB;AAChB,UAAA,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,YACV,QAAA,EAAU;AAAA,cACR,GAAG,CAAA,CAAE,QAAA;AAAA,cACL,OAAO,QAAA,CAAS,KAAA;AAAA,cAChB,OAAO,QAAA,CAAS;AAAA,aAClB;AAAA,YACA,OAAA,EAAS;AAAA,cACP,IAAA,EAAM,IAAA,CAAK,KAAA,CAAM,CAAA,EAAG,EAAE,CAAA;AAAA,cACtB,MAAA,EAAQ,CAAC,OAAA,EAAS,GAAG,MAAM,CAAA,CAAE,KAAA,CAAM,GAAG,aAAa;AAAA;AACrD,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,MAAM,MAAM;AACV,UAAA,MAAM,EAAE,IAAA,EAAM,MAAA,EAAO,GAAI,KAAI,CAAE,OAAA;AAC/B,UAAA,MAAM,IAAA,GAAO,OAAO,CAAC,CAAA;AACrB,UAAA,IAAI,CAAC,IAAA,EAAM;AACX,UAAA,MAAM,EAAE,KAAA,EAAO,KAAA,EAAM,GAAI,KAAI,CAAE,QAAA;AAC/B,UAAA,MAAM,OAAA,GAA2B;AAAA,YAC/B,KAAA,EAAO,WAAW,KAAK,CAAA;AAAA,YACvB,KAAA,EAAO,WAAW,KAAK;AAAA,WACzB;AACA,UAAA,eAAA,EAAgB;AAChB,UAAA,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,YACV,QAAA,EAAU;AAAA,cACR,GAAG,CAAA,CAAE,QAAA;AAAA,cACL,OAAO,IAAA,CAAK,KAAA;AAAA,cACZ,OAAO,IAAA,CAAK;AAAA,aACd;AAAA,YACA,OAAA,EAAS;AAAA,cACP,IAAA,EAAM,CAAC,GAAG,IAAA,EAAM,OAAO,CAAA,CAAE,KAAA,CAAM,CAAC,aAAa,CAAA;AAAA,cAC7C,MAAA,EAAQ,MAAA,CAAO,KAAA,CAAM,CAAC;AAAA;AACxB,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,OAAO,MAAM;AACX,UAAA,eAAA,EAAgB;AAChB,UAAA,GAAA,CAAI,EAAE,OAAA,EAAS,EAAE,GAAG,eAAA,IAAmB,CAAA;AAAA,QACzC;AAAA,OACF;AAAA,MACA,GAAA,EAAK;AAAA;AAAA;AAAA,QAGH,IAAA,EAAM,CAAC,IAAA,KACL,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,UACd,QAAA,EAAU,EAAE,GAAG,KAAA,CAAM,UAAU,GAAA,EAAK,IAAA,EAAM,aAAa,IAAA;AAAK,SAC9D,CAAE,CAAA;AAAA,QACJ,KAAA,EAAO,MACL,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,UACd,UAAU,EAAE,GAAG,KAAA,CAAM,QAAA,EAAU,KAAK,IAAA;AAAK,SAC3C,CAAE;AAAA,OACN;AAAA,MACA,WAAA,EAAa;AAAA,QACX,IAAA,EAAM,CAAC,IAAA,KACL,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,UACd,UAAU,EAAE,GAAG,KAAA,CAAM,QAAA,EAAU,aAAa,IAAA;AAAK,SACnD,CAAE,CAAA;AAAA,QACJ,KAAA,EAAO,MACL,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,UACd,UAAU,EAAE,GAAG,KAAA,CAAM,QAAA,EAAU,aAAa,IAAA;AAAK,SACnD,CAAE;AAAA,OACN;AAAA,MACA,iBAAA,EAAmB;AAAA,QACjB,KAAA,EAAO,CAAC,UAAA,KACN,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,UACd,QAAA,EAAU;AAAA,YACR,GAAG,KAAA,CAAM,QAAA;AAAA,YACT,iBAAA,EAAmB,UAAA;AAAA,YACnB,SAAS,EAAE,GAAG,MAAM,QAAA,CAAS,OAAA,EAAS,QAAQ,cAAA;AAAe;AAC/D,SACF,CAAE,CAAA;AAAA,QACJ,KAAA,EAAO,MACL,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,UACd,UAAU,EAAE,GAAG,KAAA,CAAM,QAAA,EAAU,mBAAmB,IAAA;AAAK,SACzD,CAAE;AAAA,OACN;AAAA,MACA,OAAA,EAAS;AAAA;AAAA;AAAA,QAGP,cAAA,EAAgB,CAAC,KAAA,KACf,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,UACd,QAAA,EAAU;AAAA,YACR,GAAG,KAAA,CAAM,QAAA;AAAA,YACT,SAAS,EAAE,GAAG,MAAM,QAAA,CAAS,OAAA,EAAS,QAAQ,KAAA,EAAM;AAAA,YACpD,GAAI,KAAA,KAAU,cAAA,GAAiB,EAAE,iBAAA,EAAmB,IAAA,KAAS;AAAC;AAChE,SACF,CAAE,CAAA;AAAA,QACJ,oBAAA,EAAsB,CAAC,IAAA,KAGjB;AACJ,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,QAAA,EAAU;AAAA,cACR,GAAG,KAAA,CAAM,QAAA;AAAA,cACT,iBAAA,EAAmB,IAAA;AAAA,cACnB,OAAA,EAAS;AAAA,gBACP,GAAG,MAAM,QAAA,CAAS,OAAA;AAAA,gBAClB,MAAA,EAAQ,iBAAA;AAAA,gBACR,MAAA,EAAQ;AAAA,kBACN,GAAG,KAAA,CAAM,QAAA,CAAS,OAAA,CAAQ,MAAA;AAAA,kBAC1B,cAAA,EAAgB;AAAA,oBACd,GAAG,KAAA,CAAM,QAAA,CAAS,OAAA,CAAQ,MAAA,CAAO,cAAA;AAAA,oBACjC,YAAA,EAAc;AAAA;AAChB;AACF;AACF;AACF,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,MAAA,EAAQ;AAAA,UACN,cAAA,EAAgB;AAAA,YACd,eAAA,EAAiB,CACf,IAAA,KAEA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,cACd,QAAA,EAAU;AAAA,gBACR,GAAG,KAAA,CAAM,QAAA;AAAA,gBACT,OAAA,EAAS;AAAA,kBACP,GAAG,MAAM,QAAA,CAAS,OAAA;AAAA,kBAClB,MAAA,EAAQ;AAAA,oBACN,GAAG,KAAA,CAAM,QAAA,CAAS,OAAA,CAAQ,MAAA;AAAA,oBAC1B,cAAA,EAAgB;AAAA,sBACd,GAAG,KAAA,CAAM,QAAA,CAAS,OAAA,CAAQ,MAAA,CAAO,cAAA;AAAA,sBACjC,YAAA,EAAc;AAAA;AAChB;AACF;AACF;AACF,aACF,CAAE;AAAA,WACN;AAAA,UACA,IAAA,EAAM;AAAA,YACJ,SAAS,CAAC,IAAA,KAAgB,GAAA,CAAI,EAAE,MAAM,CAAA;AAAA,YACtC,SAAA,EAAW,CAAC,GAAA,KACV,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,cACd,IAAA,EAAM,CAAC,GAAG,KAAA,CAAM,MAAM,GAAG;AAAA,aAC3B,CAAE,CAAA;AAAA,YACJ,WAAW,CAAC,GAAA,EAAU,MAAA,KACpB,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,cACd,IAAA,EAAM,MAAM,IAAA,CAAK,GAAA;AAAA,gBAAI,CAAC,CAAA,KACpB,CAAA,CAAE,KAAA,KAAU,GAAA,CAAI,QAAQ,MAAA,GAAS;AAAA;AACnC,aACF,CAAE,CAAA;AAAA,YACJ,SAAA,EAAW,CAAC,GAAA,KACV,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,cACd,IAAA,EAAM,MAAM,IAAA,CAAK,MAAA,CAAO,CAAC,CAAA,KAAM,CAAA,CAAE,KAAA,KAAU,GAAA,CAAI,KAAK;AAAA,aACtD,CAAE;AAAA;AACN;AACF,OACF;AAAA,MACA,KAAA,EAAO;AAAA,QACL,aAAA,EAAe,CAAC,OAAA,KAAY;AAC1B,UAAA,MAAM,aAAa,IAAI,GAAA;AAAA,YACrB,OAAA,CACG,MAAA;AAAA,cACC,CAAC,CAAA,KACC,CAAA,CAAE,IAAA,KAAS;AAAA,aACf,CACC,GAAA,CAAI,CAAC,CAAA,KAAM,EAAE,EAAE;AAAA,WACpB;AACA,UAAA,IAAI,UAAA,CAAW,OAAO,CAAA,EAAG;AACvB,YAAA,MAAM,YAAA,GAAe,GAAA,EAAI,CAAE,QAAA,CAAS,KAAA,CAAM,IAAA;AAAA,cAAK,CAAC,CAAA,KAC9C,UAAA,CAAW,GAAA,CAAI,EAAE,EAAE;AAAA,aACrB;AACA,YAAA,IAAI,YAAA,EAAc,cAAA,CAAe,cAAA,EAAgB,KAAK,CAAA;AAAA,UACxD,CAAA,MAAO;AACL,YAAA,MAAM,kBAAkB,OAAA,CAAQ,MAAA;AAAA,cAC9B,CAAC,CAAA,KACC,CAAA,CAAE,IAAA,KAAS,UAAA,IAAc,EAAE,QAAA,KAAa;AAAA,aAC5C;AACA,YAAA,MAAM,aAAA,GAAgB,eAAA,CAAgB,IAAA,CAAK,CAAC,CAAA,KAAM;AAChD,cAAA,MAAM,OAAA,GAAU,GAAA,EAAI,CAAE,QAAA,CAAS,KAAA,CAAM,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,EAAA,KAAO,CAAA,CAAE,EAAE,CAAA;AAC9D,cAAA,OACE,OAAA,IACA,CAAA,CAAE,QAAA,KACD,OAAA,CAAQ,QAAA,CAAS,CAAA,KAAM,CAAA,CAAE,QAAA,CAAS,CAAA,IACjC,OAAA,CAAQ,QAAA,CAAS,CAAA,KAAM,EAAE,QAAA,CAAS,CAAA,CAAA;AAAA,YAExC,CAAC,CAAA;AACD,YAAA,IAAI,aAAA,EAAe,cAAA,CAAe,YAAA,EAAc,KAAK,CAAA;AAAA,UACvD;AAEA,UAAA,GAAA;AAAA,YAAI,CAAC,KAAA,KACH,OAAA,CAAQ,KAAA,EAAO,CAAC,KAAA,KAAU;AACxB,cAAA,MAAM,YAAA,GAAe,gBAAA;AAAA,gBACnB,OAAA;AAAA,gBACA,MAAM,QAAA,CAAS;AAAA,eACjB;AACA,cAAA,KAAA,CAAM,SAAS,KAAA,GAAQ,YAAA;AAAA,YACzB,CAAC;AAAA,WACH;AAAA,QACF,CAAA;AAAA,QACA,QAAA,EAAU,CAAC,KAAA,EAAO,IAAA,KAAS;AACzB,UAAA,IAAI,CAAC,MAAM,WAAA,EAAa;AACtB,YAAA,cAAA;AAAA,cACE,MAAM,WAAA,IAAe,WAAA;AAAA,cACrB,CAAC,CAAC,IAAA,EAAM;AAAA,aACV;AAAA,UACF;AACA,UAAA,GAAA,CAAI,EAAE,UAAU,EAAE,GAAG,KAAI,CAAE,QAAA,EAAU,KAAA,EAAM,EAAG,CAAA;AAAA,QAChD,CAAA;AAAA,QACA,UAAA,EAAY,CAAC,IAAA,KAAe;AAC1B,UAAA,MAAM,MAAA,GAAS,GAAA,EAAI,CAAE,QAAA,CAAS,KAAA,CAAM,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,EAAA,KAAO,IAAA,CAAK,EAAE,CAAA;AAChE,UAAA,IAAI,MAAA,EAAQ,cAAA,CAAe,cAAA,EAAgB,KAAK,CAAA;AAChD,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,QAAA,EAAU;AAAA,cACR,GAAG,KAAA,CAAM,QAAA;AAAA,cACT,KAAA,EAAO,KAAA,CAAM,QAAA,CAAS,KAAA,CAAM,MAAA,CAAO,CAAC,CAAA,KAAM,CAAA,CAAE,EAAA,KAAO,IAAA,CAAK,EAAE,CAAA;AAAA;AAAA,cAE1D,GAAI,KAAA,CAAM,QAAA,CAAS,WAAA,EAAa,MAAA,KAAW,IAAA,CAAK,EAAA,GAC5C,EAAE,WAAA,EAAa,IAAA,EAAK,GACpB,EAAC;AAAA,cACL,GAAI,KAAA,CAAM,QAAA,CAAS,iBAAA,EAAmB,MAAA,KAAW,IAAA,CAAK,EAAA,GAClD,EAAE,iBAAA,EAAmB,IAAA,EAAK,GAC1B;AAAC;AACP,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,WAAA,EAAa,CAAC,KAAA,KAAkB;AAC9B,UAAA,MAAM,GAAA,GAAM,IAAI,GAAA,CAAI,KAAA,CAAM,IAAI,CAAC,CAAA,KAAM,CAAA,CAAE,EAAE,CAAC,CAAA;AAC1C,UAAA,IAAI,GAAA,CAAI,SAAS,CAAA,EAAG;AACpB,UAAA,MAAM,QAAA,GAAW,GAAA,EAAI,CAAE,QAAA,CAAS,KAAA,CAAM,IAAA,CAAK,CAAC,CAAA,KAAM,GAAA,CAAI,GAAA,CAAI,CAAA,CAAE,EAAE,CAAC,CAAA;AAC/D,UAAA,IAAI,QAAA,EAAU,cAAA,CAAe,cAAA,EAAgB,KAAK,CAAA;AAClD,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,QAAA,EAAU;AAAA,cACR,GAAG,KAAA,CAAM,QAAA;AAAA,cACT,KAAA,EAAO,KAAA,CAAM,QAAA,CAAS,KAAA,CAAM,MAAA,CAAO,CAAC,CAAA,KAAM,CAAC,GAAA,CAAI,GAAA,CAAI,CAAA,CAAE,EAAE,CAAC,CAAA;AAAA,cACxD,KAAA,EAAO,KAAA,CAAM,QAAA,CAAS,KAAA,CAAM,MAAA;AAAA,gBAC1B,CAAC,CAAA,KAAM,CAAC,GAAA,CAAI,GAAA,CAAI,CAAA,CAAE,MAAM,CAAA,IAAK,CAAC,GAAA,CAAI,GAAA,CAAI,CAAA,CAAE,MAAM;AAAA,eAChD;AAAA,cACA,GAAI,KAAA,CAAM,QAAA,CAAS,WAAA,IACnB,IAAI,GAAA,CAAI,KAAA,CAAM,QAAA,CAAS,WAAA,CAAY,MAAM,CAAA,GACrC,EAAE,WAAA,EAAa,IAAA,KACf,EAAC;AAAA,cACL,GAAI,KAAA,CAAM,QAAA,CAAS,iBAAA,IACnB,IAAI,GAAA,CAAI,KAAA,CAAM,QAAA,CAAS,iBAAA,CAAkB,MAAM,CAAA,GAC3C,EAAE,iBAAA,EAAmB,IAAA,KACrB;AAAC;AACP,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,cAAA,EAAgB,CAAC,OAAA,KAAsB;AACrC,UAAA,MAAM,EAAE,KAAA,EAAO,KAAA,EAAM,GAAI,KAAI,CAAE,QAAA;AAC/B,UAAA,MAAM,KAAA,GAAQ,IAAI,GAAA,CAAI,OAAO,CAAA;AAC7B,UAAA,MAAM,QAAA,GAAW,MAAM,MAAA,CAAO,CAAC,MAAM,KAAA,CAAM,GAAA,CAAI,CAAA,CAAE,EAAE,CAAC,CAAA;AACpD,UAAA,IAAI,QAAA,CAAS,WAAW,CAAA,EAAG;AAC3B,UAAA,cAAA,CAAe,mBAAmB,KAAK,CAAA;AAEvC,UAAA,MAAM,KAAA,uBAAY,GAAA,EAAoB;AACtC,UAAA,MAAM,MAAA,GAAS,QAAA,CAAS,GAAA,CAAI,CAAC,CAAA,KAAM;AACjC,YAAA,MAAM,QAAQ,MAAA,EAAO;AACrB,YAAA,KAAA,CAAM,GAAA,CAAI,CAAA,CAAE,EAAA,EAAI,KAAK,CAAA;AACrB,YAAA,MAAM,MAAA,GAAS,WAAW,CAAC,CAAA;AAC3B,YAAA,OAAO;AAAA,cACL,GAAG,MAAA;AAAA,cACH,EAAA,EAAI,KAAA;AAAA,cACJ,QAAA,EAAU;AAAA,gBACR,CAAA,EAAG,MAAA,CAAO,QAAA,CAAS,CAAA,GAAI,YAAA;AAAA,gBACvB,CAAA,EAAG,MAAA,CAAO,QAAA,CAAS,CAAA,GAAI;AAAA,eACzB;AAAA,cACA,QAAA,EAAU;AAAA,aACZ;AAAA,UACF,CAAC,CAAA;AAID,UAAA,MAAM,cAAc,KAAA,CACjB,MAAA,CAAO,CAAC,CAAA,KAAM,KAAA,CAAM,IAAI,CAAA,CAAE,MAAM,CAAA,IAAK,KAAA,CAAM,IAAI,CAAA,CAAE,MAAM,CAAC,CAAA,CACxD,GAAA,CAAI,CAAC,CAAA,KAAM;AACV,YAAA,MAAM,MAAA,GAAS,WAAW,CAAC,CAAA;AAC3B,YAAA,OAAO;AAAA,cACL,GAAG,MAAA;AAAA,cACH,IAAI,MAAA,EAAO;AAAA,cACX,MAAA,EAAQ,KAAA,CAAM,GAAA,CAAI,CAAA,CAAE,MAAM,CAAA;AAAA,cAC1B,MAAA,EAAQ,KAAA,CAAM,GAAA,CAAI,CAAA,CAAE,MAAM,CAAA;AAAA,cAC1B,QAAA,EAAU;AAAA,aACZ;AAAA,UACF,CAAC,CAAA;AAEH,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,QAAA,EAAU;AAAA,cACR,GAAG,KAAA,CAAM,QAAA;AAAA,cACT,KAAA,EAAO;AAAA,gBACL,GAAG,KAAA,CAAM,QAAA,CAAS,KAAA,CAAM,GAAA;AAAA,kBAAI,CAAC,CAAA,KAC3B,KAAA,CAAM,GAAA,CAAI,CAAA,CAAE,EAAE,CAAA,GAAI,EAAE,GAAG,CAAA,EAAG,QAAA,EAAU,KAAA,EAAM,GAAI;AAAA,iBAChD;AAAA,gBACA,GAAG;AAAA,eACL;AAAA,cACA,OAAO,CAAC,GAAG,MAAM,QAAA,CAAS,KAAA,EAAO,GAAG,WAAW;AAAA;AACjD,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,UAAA,EAAY,CAAC,OAAA,KAA8C;AACzD,UAAA,MAAM,YAAA,GAAe,OAAA,CAAQ,KAAA,IAAS,EAAC;AACvC,UAAA,IAAI,YAAA,CAAa,WAAW,CAAA,EAAG;AAC/B,UAAA,cAAA,CAAe,eAAe,KAAK,CAAA;AAEnC,UAAA,MAAM,KAAA,uBAAY,GAAA,EAAoB;AACtC,UAAA,MAAM,MAAA,GAAS,YAAA,CAAa,GAAA,CAAI,CAAC,CAAA,KAAM;AACrC,YAAA,MAAM,QAAQ,MAAA,EAAO;AACrB,YAAA,KAAA,CAAM,GAAA,CAAI,CAAA,CAAE,EAAA,EAAI,KAAK,CAAA;AACrB,YAAA,MAAM,MAAA,GAAS,WAAW,CAAC,CAAA;AAC3B,YAAA,OAAO;AAAA,cACL,GAAG,MAAA;AAAA,cACH,EAAA,EAAI,KAAA;AAAA,cACJ,QAAA,EAAU;AAAA,gBACR,CAAA,EAAA,CAAI,MAAA,CAAO,QAAA,EAAU,CAAA,IAAK,CAAA,IAAK,YAAA;AAAA,gBAC/B,CAAA,EAAA,CAAI,MAAA,CAAO,QAAA,EAAU,CAAA,IAAK,CAAA,IAAK;AAAA,eACjC;AAAA,cACA,QAAA,EAAU;AAAA,aACZ;AAAA,UACF,CAAC,CAAA;AACD,UAAA,MAAM,WAAA,GAAA,CAAe,QAAQ,KAAA,IAAS,IACnC,MAAA,CAAO,CAAC,MAAM,KAAA,CAAM,GAAA,CAAI,EAAE,MAAM,CAAA,IAAK,MAAM,GAAA,CAAI,CAAA,CAAE,MAAM,CAAC,CAAA,CACxD,GAAA,CAAI,CAAC,CAAA,KAAM;AACV,YAAA,MAAM,MAAA,GAAS,WAAW,CAAC,CAAA;AAC3B,YAAA,OAAO;AAAA,cACL,GAAG,MAAA;AAAA,cACH,IAAI,MAAA,EAAO;AAAA,cACX,MAAA,EAAQ,KAAA,CAAM,GAAA,CAAI,CAAA,CAAE,MAAM,CAAA;AAAA,cAC1B,MAAA,EAAQ,KAAA,CAAM,GAAA,CAAI,CAAA,CAAE,MAAM,CAAA;AAAA,cAC1B,QAAA,EAAU;AAAA,aACZ;AAAA,UACF,CAAC,CAAA;AAEH,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,QAAA,EAAU;AAAA,cACR,GAAG,KAAA,CAAM,QAAA;AAAA,cACT,KAAA,EAAO;AAAA,gBACL,GAAG,KAAA,CAAM,QAAA,CAAS,KAAA,CAAM,GAAA,CAAI,CAAC,CAAA,MAAO,EAAE,GAAG,CAAA,EAAG,QAAA,EAAU,KAAA,EAAM,CAAE,CAAA;AAAA,gBAC9D,GAAG;AAAA,eACL;AAAA,cACA,OAAO,CAAC,GAAG,MAAM,QAAA,CAAS,KAAA,EAAO,GAAG,WAAW;AAAA;AACjD,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,cAAA,EAAgB,CAAC,MAAA,KAAmB;AAClC,UAAA,cAAA,CAAe,iBAAiB,KAAK,CAAA;AACrC,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,QAAA,EAAU;AAAA,cACR,GAAG,KAAA,CAAM,QAAA;AAAA,cACT,OAAO,KAAA,CAAM,QAAA,CAAS,KAAA,CAAM,GAAA,CAAI,CAAC,CAAA,KAAM;AACrC,gBAAA,IAAI,CAAA,CAAE,EAAA,KAAO,MAAA,EAAQ,OAAO,CAAA;AAC5B,gBAAA,MAAM,IAAA,GAAQ,CAAA,CAAE,IAAA,IAAQ,EAAC;AACzB,gBAAA,OAAO;AAAA,kBACL,GAAG,CAAA;AAAA,kBACH,IAAA,EAAM,EAAE,GAAG,IAAA,EAAM,UAAU,EAAE,IAAA,CAAK,aAAa,IAAA,CAAA;AAAM,iBACvD;AAAA,cACF,CAAC;AAAA;AACH,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,UAAA,EAAY,CAAC,MAAA,EAAgB,KAAA,KAAkB;AAC7C,UAAA,cAAA,CAAe,gBAAgB,KAAK,CAAA;AACpC,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,QAAA,EAAU;AAAA,cACR,GAAG,KAAA,CAAM,QAAA;AAAA,cACT,KAAA,EAAO,KAAA,CAAM,QAAA,CAAS,KAAA,CAAM,GAAA;AAAA,gBAAI,CAAC,CAAA,KAC/B,CAAA,CAAE,EAAA,KAAO,MAAA,GACL,EAAE,GAAG,CAAA,EAAG,IAAA,EAAM,EAAE,GAAI,CAAA,CAAE,IAAA,IAAQ,EAAC,EAAI,KAAA,IAAQ,GAC3C;AAAA,eACN;AAAA,cACA,cAAA,EAAgB;AAAA;AAClB,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,WAAA,EAAa,CAAC,MAAA,KAAmB;AAC/B,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,UAAU,EAAE,GAAG,KAAA,CAAM,QAAA,EAAU,gBAAgB,MAAA;AAAO,WACxD,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,WAAW,MAAM;AACf,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,UAAU,EAAE,GAAG,KAAA,CAAM,QAAA,EAAU,gBAAgB,IAAA;AAAK,WACtD,CAAE,CAAA;AAAA,QACJ;AAAA,OACF;AAAA,MACA,KAAA,EAAO;AAAA,QACL,aAAA,EAAe,CAAC,OAAA,KAAY;AAC1B,UAAA,MAAM,aAAa,IAAI,GAAA;AAAA,YACrB,OAAA,CACG,MAAA;AAAA,cACC,CAAC,CAAA,KACC,CAAA,CAAE,IAAA,KAAS;AAAA,aACf,CACC,GAAA,CAAI,CAAC,CAAA,KAAM,EAAE,EAAE;AAAA,WACpB;AACA,UAAA,IAAI,UAAA,CAAW,OAAO,CAAA,EAAG;AACvB,YAAA,MAAM,YAAA,GAAe,GAAA,EAAI,CAAE,QAAA,CAAS,KAAA,CAAM,IAAA;AAAA,cAAK,CAAC,CAAA,KAC9C,UAAA,CAAW,GAAA,CAAI,EAAE,EAAE;AAAA,aACrB;AACA,YAAA,IAAI,YAAA,EAAc,cAAA,CAAe,cAAA,EAAgB,KAAK,CAAA;AAAA,UACxD;AAEA,UAAA,GAAA;AAAA,YAAI,CAAC,KAAA,KACH,OAAA,CAAQ,KAAA,EAAO,CAAC,KAAA,KAAU;AACxB,cAAA,MAAM,YAAA,GAAe,gBAAA;AAAA,gBACnB,OAAA;AAAA,gBACA,MAAM,QAAA,CAAS;AAAA,eACjB;AACA,cAAA,KAAA,CAAM,SAAS,KAAA,GAAQ,YAAA;AAAA,YACzB,CAAC;AAAA,WACH;AAAA,QACF,CAAA;AAAA,QACA,SAAA,EAAW,CAAC,UAAA,KAAe;AACzB,UAAA,cAAA,CAAe,iBAAiB,KAAK,CAAA;AACrC,UAAA,MAAM,IAAA,GAAO;AAAA,YACX,GAAG,UAAA;AAAA,YACH,IAAI,MAAA,EAAO;AAAA,YACX,IAAA,EAAM;AAAA,WACR;AACA,UAAA,GAAA,CAAI;AAAA,YACF,QAAA,EAAU;AAAA,cACR,GAAG,KAAI,CAAE,QAAA;AAAA,cACT,OAAO,OAAA,CAAQ,IAAA,EAAM,GAAA,EAAI,CAAE,SAAS,KAAK;AAAA;AAC3C,WACD,CAAA;AAAA,QACH,CAAA;AAAA,QACA,QAAA,EAAU,CAAC,KAAA,EAAO,IAAA,KAAS;AACzB,UAAA,IAAI,CAAC,MAAM,WAAA,EAAa;AACtB,YAAA,cAAA;AAAA,cACE,MAAM,WAAA,IAAe,WAAA;AAAA,cACrB,CAAC,CAAC,IAAA,EAAM;AAAA,aACV;AAAA,UACF;AACA,UAAA,GAAA,CAAI,EAAE,UAAU,EAAE,GAAG,KAAI,CAAE,QAAA,EAAU,KAAA,EAAM,EAAG,CAAA;AAAA,QAChD,CAAA;AAAA,QACA,UAAA,EAAY,CAAC,IAAA,KAAe;AAC1B,UAAA,MAAM,MAAA,GAAS,GAAA,EAAI,CAAE,QAAA,CAAS,KAAA,CAAM,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,EAAA,KAAO,IAAA,CAAK,EAAE,CAAA;AAChE,UAAA,IAAI,MAAA,EAAQ,cAAA,CAAe,cAAA,EAAgB,KAAK,CAAA;AAChD,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,QAAA,EAAU;AAAA,cACR,GAAG,KAAA,CAAM,QAAA;AAAA,cACT,KAAA,EAAO,KAAA,CAAM,QAAA,CAAS,KAAA,CAAM,MAAA,CAAO,CAAC,CAAA,KAAM,CAAA,CAAE,EAAA,KAAO,IAAA,CAAK,EAAE;AAAA;AAC5D,WACF,CAAE,CAAA;AAAA,QACJ;AAAA,OACF;AAAA,MACA,SAAA,EAAW;AAAA,QACT,cAAA,EAAgB,CAAC,MAAA,EAAgB,KAAA,KAAkB;AACjD,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,SAAA,EAAW;AAAA,cACT,GAAG,KAAA,CAAM,SAAA;AAAA,cACT,WAAA,EAAa,IAAA;AAAA,cACb,eAAA,EAAiB,MAAA;AAAA,cACjB,YAAA,EAAc,KAAA;AAAA,cACd,aAAA,EAAe,IAAA;AAAA,cACf,YAAA,EAAc;AAAA,gBACZ,GAAG,MAAM,SAAA,CAAU,YAAA;AAAA,gBACnB,CAAC,MAAM,GAAG;AAAA;AACZ;AACF,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,MAAA,EAAQ,CAAC,GAAA,KAAsB;AAC7B,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,SAAA,EAAW;AAAA,cACT,GAAG,KAAA,CAAM,SAAA;AAAA,cACT,MAAM,CAAC,GAAG,KAAA,CAAM,SAAA,CAAU,MAAM,GAAG,CAAA;AAAA,cACnC,eAAe,GAAA,CAAI;AAAA;AACrB,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,SAAA,EAAW,CAAC,KAAA,EAAe,OAAA,KAAmC;AAC5D,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,SAAA,EAAW;AAAA,cACT,GAAG,KAAA,CAAM,SAAA;AAAA,cACT,IAAA,EAAM,KAAA,CAAM,SAAA,CAAU,IAAA,CAAK,GAAA;AAAA,gBAAI,CAAC,GAAA,KAC9B,GAAA,CAAI,EAAA,KAAO,KAAA,GAAQ,EAAE,GAAG,GAAA,EAAK,GAAG,OAAA,EAAQ,GAAI;AAAA;AAC9C;AACF,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,aAAA,EAAe,CACb,MAAA,EACA,MAAA,KACG;AACH,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,SAAA,EAAW;AAAA,cACT,GAAG,KAAA,CAAM,SAAA;AAAA,cACT,YAAA,EAAc;AAAA,gBACZ,GAAG,MAAM,SAAA,CAAU,YAAA;AAAA,gBACnB,CAAC,MAAM,GAAG;AAAA;AACZ;AACF,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,gBAAA,EAAkB,CAAC,MAAA,EAAgB,KAAA,KAAkB;AACnD,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,SAAA,EAAW;AAAA,cACT,GAAG,KAAA,CAAM,SAAA;AAAA,cACT,cAAA,EAAgB;AAAA,gBACd,GAAG,MAAM,SAAA,CAAU,cAAA;AAAA,gBACnB,CAAC,MAAM,GAAG;AAAA;AACZ;AACF,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,SAAA,EAAW,CAAC,KAAA,KAAyB;AACnC,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,SAAA,EAAW;AAAA,cACT,GAAG,KAAA,CAAM,SAAA;AAAA,cACT,aAAA,EAAe;AAAA;AACjB,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,aAAa,MAAM;AACjB,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,SAAA,EAAW;AAAA,cACT,GAAG,KAAA,CAAM,SAAA;AAAA,cACT,aAAA,EAAe,CAAC,KAAA,CAAM,SAAA,CAAU;AAAA;AAClC,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,WAAW,MAAM;AACf,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,SAAA,EAAW;AAAA,cACT,GAAG,KAAA,CAAM,SAAA;AAAA,cACT,MAAM,EAAC;AAAA,cACP,aAAA,EAAe,IAAA;AAAA,cACf,cAAc,EAAC;AAAA,cACf,gBAAgB;AAAC;AACnB,WACF,CAAE,CAAA;AAAA,QACJ,CAAA;AAAA,QACA,mBAAmB,MAAM;AACvB,UAAA,GAAA,CAAI,CAAC,KAAA,MAAW;AAAA,YACd,SAAA,EAAW;AAAA,cACT,GAAG,KAAA,CAAM,SAAA;AAAA,cACT,WAAA,EAAa,KAAA;AAAA,cACb,eAAA,EAAiB;AAAA;AACnB,WACF,CAAE,CAAA;AAAA,QACJ;AAAA;AACF;AACF,GACF;AACF,CAAC;AAID,IAAI,OAAO,MAAA,KAAW,WAAA,IAAe,MAAA,CAAA,IAAA,CAAY,KAAK,GAAA,EAAK;AACzD,EAAC,OAA8C,aAAA,GAAgB,YAAA;AACjE;ACr5BO,SAAS,oBAAA,CAAqB;AAAA,EACnC,IAAA;AAAA,EACA,YAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA;AACF,CAAA,EAA8B;AAC5B,EAAA,MAAM,KAAK,KAAA,EAAM;AAGjB,EAAA,MAAM,gBACJ,KAAA,IACA,EAAA;AAAA,IACE,kDAAA;AAAA,IACA;AAAA,GACF;AACF,EAAA,MAAM,sBACJ,WAAA,IACA,EAAA;AAAA,IACE,wDAAA;AAAA,IACA;AAAA,GACF;AAEF,EAAA,uBACE,GAAA,CAAC,WAAA,EAAA,EAAY,IAAA,EAAY,YAAA,EACvB,+BAAC,kBAAA,EAAA,EACC,QAAA,EAAA;AAAA,oBAAA,IAAA,CAAC,iBAAA,EAAA,EACC,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,oBAAkB,QAAA,EAAA,aAAA,EAAc,CAAA;AAAA,sBACjC,GAAA,CAAC,0BAAwB,QAAA,EAAA,mBAAA,EAAoB;AAAA,KAAA,EAC/C,CAAA;AAAA,yBACC,iBAAA,EAAA,EACC,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,iBAAA,EAAA,EACE,QAAA,EAAA,EAAA;AAAA,QACC,oDAAA;AAAA,QACA;AAAA,OACF,EACF,CAAA;AAAA,sBACA,GAAA,CAAC,iBAAA,EAAA,EAAkB,OAAA,EAAS,SAAA,EACzB,QAAA,EAAA,EAAA;AAAA,QACC,wDAAA;AAAA,QACA;AAAA,OACF,EACF;AAAA,KAAA,EACF;AAAA,GAAA,EACF,CAAA,EACF,CAAA;AAEJ","file":"chunk-I3WUYESA.js","sourcesContent":["import { nanoid } from \"nanoid/non-secure\";\nimport {\n addEdge,\n applyEdgeChanges,\n applyNodeChanges,\n type Connection,\n type Edge,\n type EdgeChange,\n type Node,\n type NodeChange,\n} from \"@xyflow/react\";\nimport { create } from \"zustand\";\nimport { produce } from \"immer\";\nimport type {\n ExtendedNodeType,\n EdgeCondition,\n EdgeMapping,\n} from \"../../types/node\";\nimport type { Tag } from \"../../types/workflow\";\nimport type { ExecutionLog } from \"../../types/execution\";\n\n// Node execution state for visual display\nexport interface NodeExecutionState {\n status: \"idle\" | \"running\" | \"success\" | \"error\";\n itemCount?: number;\n error?: string;\n}\n\n// Execution state for step execution feature\ninterface ExecutionState {\n isExecuting: boolean;\n executingNodeId: string | null;\n currentRunId: string | null;\n logs: ExecutionLog[];\n selectedLogId: string | null;\n panelExpanded: boolean;\n nodeStatuses: Record<string, \"idle\" | \"running\" | \"success\" | \"error\">;\n nodeItemCounts: Record<string, number>;\n}\n\ninterface CustomEdgeProps extends Edge {\n condition?: EdgeCondition;\n mapping?: EdgeMapping;\n}\n\n/** A point-in-time snapshot of canvas structure for undo/redo. */\nexport interface HistorySnapshot {\n nodes: Node[];\n edges: CustomEdgeProps[];\n}\n\n/** Undo/redo stacks for the currently open workflow. */\nexport interface HistoryState {\n past: HistorySnapshot[];\n future: HistorySnapshot[];\n}\n\n/** Bounds how far back undo can go — generous for an editing session without\n * letting the stacks grow unbounded on a long-lived tab. */\nconst HISTORY_LIMIT = 100;\n\n/** Canvas offset applied to duplicated/pasted nodes so clones never land\n * exactly on top of their source (n8n/Figma-style paste offset). */\nconst CLONE_OFFSET = 48;\n\n/**\n * Deep-clone a value for history snapshots / node-and-edge duplication.\n * `structuredClone` is preferred (fast, handles Dates/Maps/etc.), with a\n * JSON round-trip fallback for the rare manifest blob that carries something\n * structuredClone can't handle (e.g. a stray function reference) — dropping\n * that field is safer than throwing and losing the whole undo/copy action.\n */\nfunction cloneValue<T>(value: T): T {\n try {\n return structuredClone(value);\n } catch {\n return JSON.parse(JSON.stringify(value)) as T;\n }\n}\n\ninterface State {\n nodes: Node[];\n edges: CustomEdgeProps[];\n /** Node currently open in the n8n-style 3-pane Node Detail View modal. */\n ndv?: { nodeId: string; type: ExtendedNodeType } | null;\n /** Node currently in inline-rename edit mode (F2 or double-click on its\n * title). Only one node can be renamed at a time. */\n renamingNodeId?: string | null;\n /**\n * Node currently open in the single-click floating quick-config panel\n * (Make-style, attached beside the node). The panel derives its own screen\n * position from the node's live rect, so no anchor is stored here.\n */\n quickConfig?: {\n nodeId: string;\n type: ExtendedNodeType;\n } | null;\n /**\n * Source handle awaiting attachment via the Node Store (the n8n-style \"+\"\n * button on an output handle). While set, clicking an operation in the\n * store panel creates the node and wires it to this handle.\n */\n pendingConnection?: { nodeId: string; handleId: string } | null;\n sidebar: {\n active: \"node-properties\" | \"store-browse\" | \"none\";\n panels: {\n nodeProperties: {\n selectedNode: { id: string; type: ExtendedNodeType } | null | undefined;\n };\n };\n };\n}\n\ninterface Actions {\n actions: {\n saveWorkflow: () => {\n id: string;\n name: string;\n version: string;\n alias?: string;\n dbId?: string;\n status?: string;\n nodes: Node[];\n edges: Edge[];\n };\n setWorkflow: (workflow: Partial<IFlowState[\"workflow\"]>) => void;\n resetWorkflow: () => void;\n history: {\n undo: () => void;\n redo: () => void;\n /** Wipe both stacks — called when a (different) workflow is loaded so\n * undo can never reach back into a previously open workflow. */\n clear: () => void;\n };\n nodes: {\n onNodesChange: (changes: NodeChange[]) => void;\n /** `historyKind` groups rapid same-kind writes (e.g. keystrokes in one\n * field) into a single undo step; `skipHistory` opts a caller out of\n * history entirely (e.g. transient UI-only patches). */\n setNodes: (\n nodes: Node[],\n opts?: { historyKind?: string; skipHistory?: boolean },\n ) => void;\n deleteNode: (node: Node) => void;\n /** Bulk delete (multi-select) — one undo step for the whole selection. */\n deleteNodes: (nodes: Node[]) => void;\n /** Clone the given nodes (+ edges strictly between them) with fresh ids,\n * offset on the canvas, and select only the clones. */\n duplicateNodes: (nodeIds: string[]) => void;\n /** Insert a clipboard payload (possibly from another workflow/tab):\n * fresh ids, offset, selects the pasted nodes. */\n pasteNodes: (payload: { nodes: Node[]; edges: Edge[] }) => void;\n toggleDisabled: (nodeId: string) => void;\n renameNode: (nodeId: string, label: string) => void;\n startRename: (nodeId: string) => void;\n endRename: () => void;\n };\n edges: {\n onEdgesChange: (changes: EdgeChange[]) => void;\n onConnect: (connection: Connection) => void;\n setEdges: (\n edges: Edge[],\n opts?: { historyKind?: string; skipHistory?: boolean },\n ) => void;\n deleteEdge: (edge: Edge) => void;\n };\n ndv: {\n open: (node: { nodeId: string; type: ExtendedNodeType }) => void;\n close: () => void;\n };\n quickConfig: {\n open: (node: { nodeId: string; type: ExtendedNodeType }) => void;\n close: () => void;\n };\n pendingConnection: {\n /** Arm attach mode for a source handle and open the Node Store panel. */\n start: (connection: { nodeId: string; handleId: string }) => void;\n clear: () => void;\n };\n sidebar: {\n setActivePanel: (\n panel: \"node-properties\" | \"store-browse\" | \"none\",\n ) => void;\n showNodePropertiesOf: (node: {\n id: string;\n type: ExtendedNodeType;\n block?: string;\n }) => void;\n panels: {\n nodeProperties: {\n setSelectedNode: (\n node: { id: string; type: ExtendedNodeType } | undefined | null,\n ) => void;\n };\n tags: {\n setTags: (tags: Tag[]) => void;\n createTag: (tag: Tag) => void;\n deleteTag: (tag: Tag) => void;\n updateTag: (tag: Tag, newTag: Tag) => void;\n };\n };\n };\n };\n}\n\nexport interface IFlowState {\n tags: Tag[];\n /** Undo/redo stacks — canvas structure (nodes/edges) AND parameter edits,\n * since both flow through the same `setNodes`/`setEdges` writes. */\n history: HistoryState;\n workflow: {\n id: string;\n workflowKey: string;\n name: string;\n version: string;\n alias?: string;\n /** Database row ID (used for updateWorkflowDefinition) */\n dbId?: string;\n /** Current workflow status: DRAFT | ACTIVE | ARCHIVED | DEPRECATED */\n status?: string;\n } & State;\n execution: ExecutionState;\n actions: Actions[\"actions\"] & {\n execution: {\n startExecution: (nodeId: string, runId: string) => void;\n addLog: (log: ExecutionLog) => void;\n updateLog: (logId: string, updates: Partial<ExecutionLog>) => void;\n setNodeStatus: (\n nodeId: string,\n status: \"idle\" | \"running\" | \"success\" | \"error\",\n ) => void;\n setNodeItemCount: (nodeId: string, count: number) => void;\n selectLog: (logId: string | null) => void;\n togglePanel: () => void;\n clearLogs: () => void;\n completeExecution: () => void;\n };\n };\n}\n\nconst TAGS: Tag[] = [\n { value: \"marketing\", label: \"Marketing\", color: \"#ef4444\" },\n { value: \"support\", label: \"Support\", color: \"#ef4444\" },\n { value: \"lead\", label: \"Lead\", color: \"#eab308\" },\n { value: \"new\", label: \"New\", color: \"#22c55e\" },\n];\n\n/**\n * Pristine execution state. The `execution` slice is global (one run at a\n * time), so it MUST be reset whenever a different workflow is loaded —\n * otherwise the previous workflow's run logs leak into the next workflow's\n * Logs panel. Shared by the store initializer and `resetWorkflow`.\n */\nconst INITIAL_EXECUTION: ExecutionState = {\n isExecuting: false,\n executingNodeId: null,\n currentRunId: null,\n logs: [],\n selectedLogId: null,\n panelExpanded: false,\n nodeStatuses: {},\n nodeItemCounts: {},\n};\n\nconst INITIAL_HISTORY: HistoryState = { past: [], future: [] };\n\nexport const useFlowStore = create<IFlowState>()((set, get) => {\n // Coalescing bookkeeping for history checkpoints. Plain closure vars (not\n // store state) — they're write-tracking metadata, not something a\n // component should ever render off of.\n let lastCheckpointKind: string | null = null;\n let lastCheckpointAt = 0;\n\n /**\n * Record an undo point BEFORE a mutation is applied.\n *\n * `coalesce: true` merges this call into the immediately preceding one when\n * they share the same `kind` and land within the coalescing window — used\n * for bursty writes (keystrokes in one field, a drag in progress) so undo\n * has one step per logical edit, not one per change event. Structural\n * actions (delete, connect, duplicate, disable, rename, …) always pass\n * `coalesce: false` so each is its own undo step even if done quickly in\n * succession.\n */\n function pushCheckpoint(kind: string, coalesce: boolean) {\n const now = Date.now();\n const isCoalesced =\n coalesce && kind === lastCheckpointKind && now - lastCheckpointAt < 800;\n\n if (!isCoalesced) {\n const state = get();\n const snapshot: HistorySnapshot = {\n nodes: cloneValue(state.workflow.nodes),\n edges: cloneValue(state.workflow.edges),\n };\n set((s) => ({\n history: {\n past: [...s.history.past, snapshot].slice(-HISTORY_LIMIT),\n future: [],\n },\n }));\n } else if (get().history.future.length > 0) {\n // Still invalidate redo on a coalesced edit — the user has diverged\n // from whatever redo state existed.\n set((s) => ({ history: { ...s.history, future: [] } }));\n }\n\n lastCheckpointKind = kind;\n lastCheckpointAt = now;\n }\n\n /** Reset coalescing so the next edit always starts a fresh checkpoint. */\n function resetCoalescing() {\n lastCheckpointKind = null;\n lastCheckpointAt = 0;\n }\n\n return {\n tags: TAGS,\n history: { ...INITIAL_HISTORY },\n workflow: {\n id: nanoid(),\n workflowKey: \"\",\n name: \"\",\n version: \"\",\n alias: \"\",\n edges: [],\n nodes: [],\n ndv: null,\n quickConfig: null,\n pendingConnection: null,\n renamingNodeId: null,\n sidebar: {\n active: \"none\",\n panels: {\n nodeProperties: {\n selectedNode: null,\n },\n },\n },\n },\n execution: { ...INITIAL_EXECUTION },\n actions: {\n saveWorkflow: () => {\n const { workflow } = get();\n const { id, name, version, alias, dbId, status, nodes, edges } =\n workflow;\n set({ workflow });\n return { id, name, version, alias, dbId, status, nodes, edges };\n },\n setWorkflow: (workflow: Partial<IFlowState[\"workflow\"]>) => {\n set((state) => ({\n workflow: {\n ...state.workflow,\n ...workflow,\n },\n }));\n },\n resetWorkflow: () => {\n resetCoalescing();\n set(() => ({\n workflow: {\n id: nanoid(),\n workflowKey: \"\",\n name: \"\",\n version: \"\",\n alias: \"\",\n dbId: undefined,\n status: undefined,\n edges: [],\n nodes: [],\n ndv: null,\n quickConfig: null,\n pendingConnection: null,\n renamingNodeId: null,\n sidebar: {\n active: \"none\",\n panels: {\n nodeProperties: {\n selectedNode: null,\n },\n },\n },\n },\n // Wipe run state too — resetWorkflow fires when the builder loads a\n // (different) workflow, so the previous workflow's logs must not carry\n // over into this one's Logs panel.\n execution: { ...INITIAL_EXECUTION },\n // A freshly loaded workflow must not be undo-able back to empty —\n // undo/redo only ever applies within the currently open workflow.\n history: { ...INITIAL_HISTORY },\n }));\n },\n history: {\n undo: () => {\n const { past, future } = get().history;\n const previous = past[past.length - 1];\n if (!previous) return;\n const { nodes, edges } = get().workflow;\n const current: HistorySnapshot = {\n nodes: cloneValue(nodes),\n edges: cloneValue(edges),\n };\n resetCoalescing();\n set((s) => ({\n workflow: {\n ...s.workflow,\n nodes: previous.nodes,\n edges: previous.edges,\n },\n history: {\n past: past.slice(0, -1),\n future: [current, ...future].slice(0, HISTORY_LIMIT),\n },\n }));\n },\n redo: () => {\n const { past, future } = get().history;\n const next = future[0];\n if (!next) return;\n const { nodes, edges } = get().workflow;\n const current: HistorySnapshot = {\n nodes: cloneValue(nodes),\n edges: cloneValue(edges),\n };\n resetCoalescing();\n set((s) => ({\n workflow: {\n ...s.workflow,\n nodes: next.nodes,\n edges: next.edges,\n },\n history: {\n past: [...past, current].slice(-HISTORY_LIMIT),\n future: future.slice(1),\n },\n }));\n },\n clear: () => {\n resetCoalescing();\n set({ history: { ...INITIAL_HISTORY } });\n },\n },\n ndv: {\n // Opening the full NDV supersedes the floating quick-config panel — the\n // two edit the same node data, so only one should be visible at a time.\n open: (node: { nodeId: string; type: ExtendedNodeType }) =>\n set((state) => ({\n workflow: { ...state.workflow, ndv: node, quickConfig: null },\n })),\n close: () =>\n set((state) => ({\n workflow: { ...state.workflow, ndv: null },\n })),\n },\n quickConfig: {\n open: (node: { nodeId: string; type: ExtendedNodeType }) =>\n set((state) => ({\n workflow: { ...state.workflow, quickConfig: node },\n })),\n close: () =>\n set((state) => ({\n workflow: { ...state.workflow, quickConfig: null },\n })),\n },\n pendingConnection: {\n start: (connection: { nodeId: string; handleId: string }) =>\n set((state) => ({\n workflow: {\n ...state.workflow,\n pendingConnection: connection,\n sidebar: { ...state.workflow.sidebar, active: \"store-browse\" },\n },\n })),\n clear: () =>\n set((state) => ({\n workflow: { ...state.workflow, pendingConnection: null },\n })),\n },\n sidebar: {\n // Leaving the store panel abandons any armed \"+\" attach mode — the\n // pending handle would otherwise silently capture a later insert.\n setActivePanel: (panel: \"node-properties\" | \"store-browse\" | \"none\") =>\n set((state) => ({\n workflow: {\n ...state.workflow,\n sidebar: { ...state.workflow.sidebar, active: panel },\n ...(panel !== \"store-browse\" ? { pendingConnection: null } : {}),\n },\n })),\n showNodePropertiesOf: (node: {\n id: string;\n type: ExtendedNodeType;\n }) => {\n set((state) => ({\n workflow: {\n ...state.workflow,\n pendingConnection: null,\n sidebar: {\n ...state.workflow.sidebar,\n active: \"node-properties\",\n panels: {\n ...state.workflow.sidebar.panels,\n nodeProperties: {\n ...state.workflow.sidebar.panels.nodeProperties,\n selectedNode: node,\n },\n },\n },\n },\n }));\n },\n panels: {\n nodeProperties: {\n setSelectedNode: (\n node: { id: string; type: ExtendedNodeType } | undefined | null,\n ) =>\n set((state) => ({\n workflow: {\n ...state.workflow,\n sidebar: {\n ...state.workflow.sidebar,\n panels: {\n ...state.workflow.sidebar.panels,\n nodeProperties: {\n ...state.workflow.sidebar.panels.nodeProperties,\n selectedNode: node,\n },\n },\n },\n },\n })),\n },\n tags: {\n setTags: (tags: Tag[]) => set({ tags }),\n createTag: (tag: Tag) =>\n set((state) => ({\n tags: [...state.tags, tag],\n })),\n updateTag: (tag: Tag, newTag: Tag) =>\n set((state) => ({\n tags: state.tags.map((f) =>\n f.value === tag.value ? newTag : f,\n ),\n })),\n deleteTag: (tag: Tag) =>\n set((state) => ({\n tags: state.tags.filter((f) => f.value !== tag.value),\n })),\n },\n },\n },\n nodes: {\n onNodesChange: (changes) => {\n const removedIds = new Set(\n changes\n .filter(\n (c): c is Extract<NodeChange, { type: \"remove\" }> =>\n c.type === \"remove\",\n )\n .map((c) => c.id),\n );\n if (removedIds.size > 0) {\n const stillPresent = get().workflow.nodes.some((n) =>\n removedIds.has(n.id),\n );\n if (stillPresent) pushCheckpoint(\"nodes:remove\", false);\n } else {\n const finishedDragIds = changes.filter(\n (c): c is Extract<NodeChange, { type: \"position\" }> =>\n c.type === \"position\" && c.dragging === false,\n );\n const actuallyMoved = finishedDragIds.some((c) => {\n const current = get().workflow.nodes.find((n) => n.id === c.id);\n return (\n current &&\n c.position &&\n (current.position.x !== c.position.x ||\n current.position.y !== c.position.y)\n );\n });\n if (actuallyMoved) pushCheckpoint(\"nodes:move\", false);\n }\n\n set((state) =>\n produce(state, (draft) => {\n const updatedNodes = applyNodeChanges(\n changes,\n draft.workflow.nodes,\n );\n draft.workflow.nodes = updatedNodes;\n }),\n );\n },\n setNodes: (nodes, opts) => {\n if (!opts?.skipHistory) {\n pushCheckpoint(\n opts?.historyKind ?? \"nodes:set\",\n !!opts?.historyKind,\n );\n }\n set({ workflow: { ...get().workflow, nodes } });\n },\n deleteNode: (node: Node) => {\n const exists = get().workflow.nodes.some((n) => n.id === node.id);\n if (exists) pushCheckpoint(\"nodes:delete\", false);\n set((state) => ({\n workflow: {\n ...state.workflow,\n nodes: state.workflow.nodes.filter((n) => n.id !== node.id),\n // Drop any UI state pointing at the removed node.\n ...(state.workflow.quickConfig?.nodeId === node.id\n ? { quickConfig: null }\n : {}),\n ...(state.workflow.pendingConnection?.nodeId === node.id\n ? { pendingConnection: null }\n : {}),\n },\n }));\n },\n deleteNodes: (nodes: Node[]) => {\n const ids = new Set(nodes.map((n) => n.id));\n if (ids.size === 0) return;\n const anyExist = get().workflow.nodes.some((n) => ids.has(n.id));\n if (anyExist) pushCheckpoint(\"nodes:delete\", false);\n set((state) => ({\n workflow: {\n ...state.workflow,\n nodes: state.workflow.nodes.filter((n) => !ids.has(n.id)),\n edges: state.workflow.edges.filter(\n (e) => !ids.has(e.source) && !ids.has(e.target),\n ),\n ...(state.workflow.quickConfig &&\n ids.has(state.workflow.quickConfig.nodeId)\n ? { quickConfig: null }\n : {}),\n ...(state.workflow.pendingConnection &&\n ids.has(state.workflow.pendingConnection.nodeId)\n ? { pendingConnection: null }\n : {}),\n },\n }));\n },\n duplicateNodes: (nodeIds: string[]) => {\n const { nodes, edges } = get().workflow;\n const idSet = new Set(nodeIds);\n const selected = nodes.filter((n) => idSet.has(n.id));\n if (selected.length === 0) return;\n pushCheckpoint(\"nodes:duplicate\", false);\n\n const idMap = new Map<string, string>();\n const clones = selected.map((n) => {\n const newId = nanoid();\n idMap.set(n.id, newId);\n const cloned = cloneValue(n);\n return {\n ...cloned,\n id: newId,\n position: {\n x: cloned.position.x + CLONE_OFFSET,\n y: cloned.position.y + CLONE_OFFSET,\n },\n selected: true,\n };\n });\n // Only edges strictly BETWEEN two duplicated nodes come along —\n // an edge to a non-duplicated neighbor would otherwise silently\n // rewire the original graph.\n const clonedEdges = edges\n .filter((e) => idMap.has(e.source) && idMap.has(e.target))\n .map((e) => {\n const cloned = cloneValue(e);\n return {\n ...cloned,\n id: nanoid(),\n source: idMap.get(e.source) as string,\n target: idMap.get(e.target) as string,\n selected: false,\n };\n });\n\n set((state) => ({\n workflow: {\n ...state.workflow,\n nodes: [\n ...state.workflow.nodes.map((n) =>\n idSet.has(n.id) ? { ...n, selected: false } : n,\n ),\n ...clones,\n ],\n edges: [...state.workflow.edges, ...clonedEdges],\n },\n }));\n },\n pasteNodes: (payload: { nodes: Node[]; edges: Edge[] }) => {\n const pasteNodesIn = payload.nodes ?? [];\n if (pasteNodesIn.length === 0) return;\n pushCheckpoint(\"nodes:paste\", false);\n\n const idMap = new Map<string, string>();\n const clones = pasteNodesIn.map((n) => {\n const newId = nanoid();\n idMap.set(n.id, newId);\n const cloned = cloneValue(n);\n return {\n ...cloned,\n id: newId,\n position: {\n x: (cloned.position?.x ?? 0) + CLONE_OFFSET,\n y: (cloned.position?.y ?? 0) + CLONE_OFFSET,\n },\n selected: true,\n };\n });\n const clonedEdges = (payload.edges ?? [])\n .filter((e) => idMap.has(e.source) && idMap.has(e.target))\n .map((e) => {\n const cloned = cloneValue(e);\n return {\n ...cloned,\n id: nanoid(),\n source: idMap.get(e.source) as string,\n target: idMap.get(e.target) as string,\n selected: false,\n };\n });\n\n set((state) => ({\n workflow: {\n ...state.workflow,\n nodes: [\n ...state.workflow.nodes.map((n) => ({ ...n, selected: false })),\n ...clones,\n ],\n edges: [...state.workflow.edges, ...clonedEdges],\n },\n }));\n },\n toggleDisabled: (nodeId: string) => {\n pushCheckpoint(\"nodes:disable\", false);\n set((state) => ({\n workflow: {\n ...state.workflow,\n nodes: state.workflow.nodes.map((n) => {\n if (n.id !== nodeId) return n;\n const data = (n.data ?? {}) as Record<string, unknown>;\n return {\n ...n,\n data: { ...data, disabled: !(data.disabled === true) },\n };\n }),\n },\n }));\n },\n renameNode: (nodeId: string, label: string) => {\n pushCheckpoint(\"nodes:rename\", false);\n set((state) => ({\n workflow: {\n ...state.workflow,\n nodes: state.workflow.nodes.map((n) =>\n n.id === nodeId\n ? { ...n, data: { ...(n.data ?? {}), label } }\n : n,\n ),\n renamingNodeId: null,\n },\n }));\n },\n startRename: (nodeId: string) => {\n set((state) => ({\n workflow: { ...state.workflow, renamingNodeId: nodeId },\n }));\n },\n endRename: () => {\n set((state) => ({\n workflow: { ...state.workflow, renamingNodeId: null },\n }));\n },\n },\n edges: {\n onEdgesChange: (changes) => {\n const removedIds = new Set(\n changes\n .filter(\n (c): c is Extract<EdgeChange, { type: \"remove\" }> =>\n c.type === \"remove\",\n )\n .map((c) => c.id),\n );\n if (removedIds.size > 0) {\n const stillPresent = get().workflow.edges.some((e) =>\n removedIds.has(e.id),\n );\n if (stillPresent) pushCheckpoint(\"edges:remove\", false);\n }\n\n set((state) =>\n produce(state, (draft) => {\n const updatedEdges = applyEdgeChanges(\n changes,\n draft.workflow.edges,\n );\n draft.workflow.edges = updatedEdges;\n }),\n );\n },\n onConnect: (connection) => {\n pushCheckpoint(\"edges:connect\", false);\n const edge = {\n ...connection,\n id: nanoid(),\n type: \"deletable\",\n } as Edge;\n set({\n workflow: {\n ...get().workflow,\n edges: addEdge(edge, get().workflow.edges),\n },\n });\n },\n setEdges: (edges, opts) => {\n if (!opts?.skipHistory) {\n pushCheckpoint(\n opts?.historyKind ?? \"edges:set\",\n !!opts?.historyKind,\n );\n }\n set({ workflow: { ...get().workflow, edges } });\n },\n deleteEdge: (edge: Edge) => {\n const exists = get().workflow.edges.some((e) => e.id === edge.id);\n if (exists) pushCheckpoint(\"edges:delete\", false);\n set((state) => ({\n workflow: {\n ...state.workflow,\n edges: state.workflow.edges.filter((e) => e.id !== edge.id),\n },\n }));\n },\n },\n execution: {\n startExecution: (nodeId: string, runId: string) => {\n set((state) => ({\n execution: {\n ...state.execution,\n isExecuting: true,\n executingNodeId: nodeId,\n currentRunId: runId,\n panelExpanded: true,\n nodeStatuses: {\n ...state.execution.nodeStatuses,\n [nodeId]: \"running\",\n },\n },\n }));\n },\n addLog: (log: ExecutionLog) => {\n set((state) => ({\n execution: {\n ...state.execution,\n logs: [...state.execution.logs, log],\n selectedLogId: log.id,\n },\n }));\n },\n updateLog: (logId: string, updates: Partial<ExecutionLog>) => {\n set((state) => ({\n execution: {\n ...state.execution,\n logs: state.execution.logs.map((log) =>\n log.id === logId ? { ...log, ...updates } : log,\n ),\n },\n }));\n },\n setNodeStatus: (\n nodeId: string,\n status: \"idle\" | \"running\" | \"success\" | \"error\",\n ) => {\n set((state) => ({\n execution: {\n ...state.execution,\n nodeStatuses: {\n ...state.execution.nodeStatuses,\n [nodeId]: status,\n },\n },\n }));\n },\n setNodeItemCount: (nodeId: string, count: number) => {\n set((state) => ({\n execution: {\n ...state.execution,\n nodeItemCounts: {\n ...state.execution.nodeItemCounts,\n [nodeId]: count,\n },\n },\n }));\n },\n selectLog: (logId: string | null) => {\n set((state) => ({\n execution: {\n ...state.execution,\n selectedLogId: logId,\n },\n }));\n },\n togglePanel: () => {\n set((state) => ({\n execution: {\n ...state.execution,\n panelExpanded: !state.execution.panelExpanded,\n },\n }));\n },\n clearLogs: () => {\n set((state) => ({\n execution: {\n ...state.execution,\n logs: [],\n selectedLogId: null,\n nodeStatuses: {},\n nodeItemCounts: {},\n },\n }));\n },\n completeExecution: () => {\n set((state) => ({\n execution: {\n ...state.execution,\n isExecuting: false,\n executingNodeId: null,\n },\n }));\n },\n },\n },\n };\n});\n\n// Dev-only debug handle so the store can be inspected/driven from the browser\n// console or automated tests. No-op in production builds.\nif (typeof window !== \"undefined\" && import.meta.env?.DEV) {\n (window as unknown as Record<string, unknown>).__fgFlowStore = useFlowStore;\n}\n","import {\n AlertDialog,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogTitle,\n} from \"@burdenoff/fe-libs/ui\";\nimport { useTr } from \"../../hooks/useTr\";\n\ninterface QuotaExhaustedDialogProps {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n /** Called when the user clicks \"View Billing\". */\n onUpgrade: () => void;\n title?: string;\n description?: string;\n}\n\n/**\n * Alert shown when a workflow-creating action (save/duplicate/import) is\n * rejected with `QUOTA_EXHAUSTED` for `fluidgrids.workflows.count`. Mirrors\n * the \"Folder Limit Reached\" dialog in microfe-files' BrowserPage.tsx, built\n * on the same `AlertDialog` primitives already used elsewhere in this SDK\n * (see card-workflow.tsx's delete-confirmation dialog).\n */\nexport function QuotaExhaustedDialog({\n open,\n onOpenChange,\n onUpgrade,\n title,\n description,\n}: QuotaExhaustedDialogProps) {\n const tr = useTr();\n // Defaults are resolved here rather than as default parameter values so the\n // copy can go through `tr()` — a hook cannot be called in a parameter list.\n const resolvedTitle =\n title ??\n tr(\n \"fluidgrids.components.quotaExhaustedDialog.title\",\n \"Workflow Limit Reached\",\n );\n const resolvedDescription =\n description ??\n tr(\n \"fluidgrids.components.quotaExhaustedDialog.description\",\n \"You've reached the workflow limit for your plan. Upgrade your plan to create more workflows.\",\n );\n\n return (\n <AlertDialog open={open} onOpenChange={onOpenChange}>\n <AlertDialogContent>\n <AlertDialogHeader>\n <AlertDialogTitle>{resolvedTitle}</AlertDialogTitle>\n <AlertDialogDescription>{resolvedDescription}</AlertDialogDescription>\n </AlertDialogHeader>\n <AlertDialogFooter>\n <AlertDialogCancel>\n {tr(\n \"fluidgrids.components.quotaExhaustedDialog.dismiss\",\n \"Dismiss\",\n )}\n </AlertDialogCancel>\n <AlertDialogAction onClick={onUpgrade}>\n {tr(\n \"fluidgrids.components.quotaExhaustedDialog.viewBilling\",\n \"View Billing\",\n )}\n </AlertDialogAction>\n </AlertDialogFooter>\n </AlertDialogContent>\n </AlertDialog>\n );\n}\n"]}
|