@graphlearning/graphl-flow 0.7.0 → 0.8.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/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/00039-icon-service-Event-Hubs.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/00042-icon-service-Stream-Analytics-Jobs.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/00606-icon-service-Azure-Synapse-Analytics.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/03332-icon-service-Power-BI-Embedded.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/10126-icon-service-Data-Factories.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/10148-icon-service-Analysis-Services.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/10787-icon-service-Azure-Databricks.js","../node_modules/@threeveloper/azure-react-icons/dist/components/compute/10021-icon-service-Virtual-Machine.js","../node_modules/@threeveloper/azure-react-icons/dist/components/compute/10023-icon-service-Kubernetes-Services.js","../node_modules/@threeveloper/azure-react-icons/dist/components/compute/10029-icon-service-Function-Apps.js","../node_modules/@threeveloper/azure-react-icons/dist/components/databases/02390-icon-service-Azure-SQL.js","../node_modules/@threeveloper/azure-react-icons/dist/components/databases/02517-icon-service-Azure-Purview-Accounts.js","../node_modules/@threeveloper/azure-react-icons/dist/components/databases/10121-icon-service-Azure-Cosmos-DB.js","../node_modules/@threeveloper/azure-react-icons/dist/components/devops/10261-icon-service-Azure-DevOps.js","../node_modules/@threeveloper/azure-react-icons/dist/components/integration/10836-icon-service-Azure-Service-Bus.js","../node_modules/@threeveloper/azure-react-icons/dist/components/management + governance/00009-icon-service-Log-Analytics-Workspaces.js","../node_modules/@threeveloper/azure-react-icons/dist/components/monitor/00001-icon-service-Monitor.js","../node_modules/@threeveloper/azure-react-icons/dist/components/security/10241-icon-service-Microsoft-Defender-for-Cloud.js","../node_modules/@threeveloper/azure-react-icons/dist/components/security/10245-icon-service-Key-Vaults.js","../node_modules/@threeveloper/azure-react-icons/dist/components/storage/10086-icon-service-Storage-Accounts.js","../node_modules/@threeveloper/azure-react-icons/dist/components/storage/10090-icon-service-Data-Lake-Storage-Gen1.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonSimpleStorageService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSGlue.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonRedshift.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonAthena.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonKinesis.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonDataFirehose.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonEMR.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSLambda.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonDynamoDB.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonRDS.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonAurora.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonCloudWatch.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSIdentityandAccessManagement.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonManagedStreamingforApacheKafka.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSLakeFormation.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonEC2.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonSimpleQueueService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonSimpleNotificationService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSStepFunctions.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonEventBridge.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSKeyManagementService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSSecretsManager.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonElasticKubernetesService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonSageMaker.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonAPIGateway.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonVirtualPrivateCloud.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSCloudFormation.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonManagedWorkflowsforApacheAirflow.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSDatabaseMigrationService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonElastiCache.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonElasticContainerService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSFargate.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonElasticContainerRegistry.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceElasticLoadBalancing.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonRoute53.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonCloudFront.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSWAF.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSCloudTrail.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSCertificateManager.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSBackup.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSOrganizations.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSSystemsManager.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSBudgets.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSCostExplorer.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSIAMIdentityCenter.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSXRay.js","../node_modules/aws-react-icons/lib/icons/ArchitectureGroupRegion.js","../node_modules/aws-react-icons/lib/icons/ArchitectureGroupAWSAccount.js","../node_modules/aws-react-icons/lib/icons/ArchitectureGroupPublicsubnet.js","../node_modules/aws-react-icons/lib/icons/ArchitectureGroupPrivatesubnet.js","../node_modules/aws-react-icons/lib/icons/ArchitectureGroupAutoScalinggroup.js","../node_modules/aws-react-icons/lib/icons/ResourceElasticLoadBalancingApplicationLoadBalancer.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonVPCNATGateway.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonVPCInternetGateway.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonVPCEndpoints.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonVPCRouter.js","../node_modules/aws-react-icons/lib/icons/ResourceAWSIdentityAccessManagementAWSSTS.js","../node_modules/aws-react-icons/lib/icons/ResourceAWSIdentityAccessManagementRole.js","../node_modules/aws-react-icons/lib/icons/ResourceAWSIdentityAccessManagementPermissions.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonElasticContainerServiceTask.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonElasticContainerServiceService.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonElasticContainerServiceContainer1.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonSimpleStorageServiceBucket.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonSimpleQueueServiceQueue.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonSimpleQueueServiceMessage.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonSimpleNotificationServiceTopic.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonRoute53HostedZone.js","../node_modules/simple-icons/index.mjs","../src/icons.tsx","../src/Edges.tsx","../src/Table.tsx","../src/highlight.ts","../src/Code.tsx","../src/Plot.tsx","../src/Tree.tsx","../src/Tty.tsx","../src/routing.ts","../src/fit.ts","../src/theme.ts","../src/Scene.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"import type { ComponentType, ReactElement } from 'react'\nimport {\n Activity, Bell, Box, Building2, ChartColumn, ChartPie, ClipboardCheck, Clock, Cloud, Code2, Cpu,\n CreditCard, Database, Factory, FileText, Filter, Fingerprint, Folder, GitBranch, Globe, HardDrive,\n KeyRound, Layers, Lock, Monitor, Network, Package, RadioTower, Search, Server, Settings, ShieldCheck,\n Table2, Terminal, User, UserCog, Users, Workflow, Zap, Waves, Brain, Boxes, MemoryStick,\n Archive, BadgeCheck, BrickWall, Gauge, Laptop, Power, ScrollText, Timer, type LucideIcon,\n} from 'lucide-react'\nimport {\n AnalysisServices, AzureCosmosDBDatabases, AzureDatabricks, AzureDevOps, AzurePurviewAccounts, AzureServiceBus,\n AzureSQL, AzureSynapseAnalyticsAnalytics, DataFactoriesAnalytics, DataLakeStorageGen1, EventHubsAnalytics,\n FunctionAppsCompute, KeyVaults, KubernetesServicesCompute, LogAnalyticsWorkspacesManagementGovernance,\n MicrosoftDefenderForCloud, MonitorMonitor, PowerBIEmbedded, StorageAccounts, StreamAnalyticsJobsAnalytics,\n VirtualMachine,\n} from '@threeveloper/azure-react-icons'\nimport S3 from 'aws-react-icons/icons/ArchitectureServiceAmazonSimpleStorageService'\nimport Glue from 'aws-react-icons/icons/ArchitectureServiceAWSGlue'\nimport Redshift from 'aws-react-icons/icons/ArchitectureServiceAmazonRedshift'\nimport Athena from 'aws-react-icons/icons/ArchitectureServiceAmazonAthena'\nimport Kinesis from 'aws-react-icons/icons/ArchitectureServiceAmazonKinesis'\nimport Firehose from 'aws-react-icons/icons/ArchitectureServiceAmazonDataFirehose'\nimport EMR from 'aws-react-icons/icons/ArchitectureServiceAmazonEMR'\nimport Lambda from 'aws-react-icons/icons/ArchitectureServiceAWSLambda'\nimport DynamoDB from 'aws-react-icons/icons/ArchitectureServiceAmazonDynamoDB'\nimport RDS from 'aws-react-icons/icons/ArchitectureServiceAmazonRDS'\nimport Aurora from 'aws-react-icons/icons/ArchitectureServiceAmazonAurora'\nimport CloudWatch from 'aws-react-icons/icons/ArchitectureServiceAmazonCloudWatch'\nimport IAM from 'aws-react-icons/icons/ArchitectureServiceAWSIdentityandAccessManagement'\nimport MSK from 'aws-react-icons/icons/ArchitectureServiceAmazonManagedStreamingforApacheKafka'\nimport LakeFormation from 'aws-react-icons/icons/ArchitectureServiceAWSLakeFormation'\nimport EC2 from 'aws-react-icons/icons/ArchitectureServiceAmazonEC2'\nimport SQS from 'aws-react-icons/icons/ArchitectureServiceAmazonSimpleQueueService'\nimport SNS from 'aws-react-icons/icons/ArchitectureServiceAmazonSimpleNotificationService'\nimport StepFunctions from 'aws-react-icons/icons/ArchitectureServiceAWSStepFunctions'\nimport EventBridge from 'aws-react-icons/icons/ArchitectureServiceAmazonEventBridge'\nimport KMS from 'aws-react-icons/icons/ArchitectureServiceAWSKeyManagementService'\nimport SecretsManager from 'aws-react-icons/icons/ArchitectureServiceAWSSecretsManager'\nimport EKS from 'aws-react-icons/icons/ArchitectureServiceAmazonElasticKubernetesService'\nimport SageMaker from 'aws-react-icons/icons/ArchitectureServiceAmazonSageMaker'\nimport APIGateway from 'aws-react-icons/icons/ArchitectureServiceAmazonAPIGateway'\nimport VPC from 'aws-react-icons/icons/ArchitectureServiceAmazonVirtualPrivateCloud'\nimport CloudFormation from 'aws-react-icons/icons/ArchitectureServiceAWSCloudFormation'\nimport MWAA from 'aws-react-icons/icons/ArchitectureServiceAmazonManagedWorkflowsforApacheAirflow'\nimport DMS from 'aws-react-icons/icons/ArchitectureServiceAWSDatabaseMigrationService'\nimport ElastiCache from 'aws-react-icons/icons/ArchitectureServiceAmazonElastiCache'\nimport ECS from 'aws-react-icons/icons/ArchitectureServiceAmazonElasticContainerService'\nimport Fargate from 'aws-react-icons/icons/ArchitectureServiceAWSFargate'\nimport ECR from 'aws-react-icons/icons/ArchitectureServiceAmazonElasticContainerRegistry'\nimport ELB from 'aws-react-icons/icons/ArchitectureServiceElasticLoadBalancing'\nimport Route53 from 'aws-react-icons/icons/ArchitectureServiceAmazonRoute53'\nimport CloudFront from 'aws-react-icons/icons/ArchitectureServiceAmazonCloudFront'\nimport WAF from 'aws-react-icons/icons/ArchitectureServiceAWSWAF'\nimport CloudTrail from 'aws-react-icons/icons/ArchitectureServiceAWSCloudTrail'\nimport ACM from 'aws-react-icons/icons/ArchitectureServiceAWSCertificateManager'\nimport Backup from 'aws-react-icons/icons/ArchitectureServiceAWSBackup'\nimport Organizations from 'aws-react-icons/icons/ArchitectureServiceAWSOrganizations'\nimport SystemsManager from 'aws-react-icons/icons/ArchitectureServiceAWSSystemsManager'\nimport Budgets from 'aws-react-icons/icons/ArchitectureServiceAWSBudgets'\nimport CostExplorer from 'aws-react-icons/icons/ArchitectureServiceAWSCostExplorer'\nimport IdentityCenter from 'aws-react-icons/icons/ArchitectureServiceAWSIAMIdentityCenter'\nimport XRay from 'aws-react-icons/icons/ArchitectureServiceAWSXRay'\nimport Region from 'aws-react-icons/icons/ArchitectureGroupRegion'\nimport Account from 'aws-react-icons/icons/ArchitectureGroupAWSAccount'\nimport PublicSubnet from 'aws-react-icons/icons/ArchitectureGroupPublicsubnet'\nimport PrivateSubnet from 'aws-react-icons/icons/ArchitectureGroupPrivatesubnet'\nimport AutoScalingGroup from 'aws-react-icons/icons/ArchitectureGroupAutoScalinggroup'\nimport ALB from 'aws-react-icons/icons/ResourceElasticLoadBalancingApplicationLoadBalancer'\nimport NATGateway from 'aws-react-icons/icons/ResourceAmazonVPCNATGateway'\nimport InternetGateway from 'aws-react-icons/icons/ResourceAmazonVPCInternetGateway'\nimport VPCEndpoint from 'aws-react-icons/icons/ResourceAmazonVPCEndpoints'\nimport Router from 'aws-react-icons/icons/ResourceAmazonVPCRouter'\nimport STS from 'aws-react-icons/icons/ResourceAWSIdentityAccessManagementAWSSTS'\nimport IAMRole from 'aws-react-icons/icons/ResourceAWSIdentityAccessManagementRole'\nimport IAMPermissions from 'aws-react-icons/icons/ResourceAWSIdentityAccessManagementPermissions'\nimport ECSTask from 'aws-react-icons/icons/ResourceAmazonElasticContainerServiceTask'\nimport ECSService from 'aws-react-icons/icons/ResourceAmazonElasticContainerServiceService'\nimport Container from 'aws-react-icons/icons/ResourceAmazonElasticContainerServiceContainer1'\nimport Bucket from 'aws-react-icons/icons/ResourceAmazonSimpleStorageServiceBucket'\nimport Queue from 'aws-react-icons/icons/ResourceAmazonSimpleQueueServiceQueue'\nimport Message from 'aws-react-icons/icons/ResourceAmazonSimpleQueueServiceMessage'\nimport Topic from 'aws-react-icons/icons/ResourceAmazonSimpleNotificationServiceTopic'\nimport HostedZone from 'aws-react-icons/icons/ResourceAmazonRoute53HostedZone'\nimport {\n siApacheairflow, siApacheflink, siApachekafka, siApachemaven, siApachespark, siDocker, siDuckdb, siGit, siGithub,\n siGithubactions, siGrafana, siJunit5, siJupyter, siKubernetes, siMongodb, siOpenjdk, siPandas, siPostgresql,\n siPrometheus, siPython, siSnowflake, siTerraform,\n siAlmalinux, siApple, siArchlinux, siDebian, siFedora, siGnubash, siLetsencrypt, siLinux, siMacos, siNginx,\n siRedhat, siRockylinux, siUbuntu, siZsh,\n} from 'simple-icons'\n\n// Four sets, ONE key space. Every icon is a NAMED (or per-file) import, so the bundle carries only\n// these; add a key when a scene needs it. Keys match @graphlearning/flow's where both exist, so a\n// scene ports without renaming. A key may appear in ONE set only — `ICONS` throws on a duplicate.\n\n/** Generic glyphs, drawn in the node's tone accent. */\nexport const LUCIDE: Record<string, LucideIcon> = {\n activity: Activity, bell: Bell, box: Box, building: Building2, chart: ChartColumn, pie: ChartPie,\n check: ClipboardCheck, clock: Clock, cloud: Cloud, code: Code2, cpu: Cpu, card: CreditCard,\n database: Database, factory: Factory, file: FileText, filter: Filter, fingerprint: Fingerprint,\n folder: Folder, branch: GitBranch, globe: Globe, disk: HardDrive, key: KeyRound, layers: Layers,\n lock: Lock, screen: Monitor, network: Network, package: Package, stream: RadioTower, search: Search,\n server: Server, settings: Settings, shield: ShieldCheck, table: Table2, terminal: Terminal,\n user: User, admin: UserCog, users: Users, workflow: Workflow, zap: Zap, waves: Waves, brain: Brain,\n boxes: Boxes, memory: MemoryStick,\n // A server's life (0.7): no vendor draws these, so they stay generic.\n archive: Archive, cert: BadgeCheck, firewall: BrickWall, gauge: Gauge, laptop: Laptop, power: Power,\n log: ScrollText, timer: Timer,\n}\n\n/** Azure service tiles, in their own colours. The package ships no viewBox; 0 0 18 18 fits all. */\nexport const AZURE: Record<string, ComponentType<{ size?: string; viewBox?: string }>> = {\n datafactory: DataFactoriesAnalytics, eventhubs: EventHubsAnalytics, adls: DataLakeStorageGen1, storage: StorageAccounts,\n databricks: AzureDatabricks, synapse: AzureSynapseAnalyticsAnalytics, analysisservices: AnalysisServices,\n purview: AzurePurviewAccounts, keyvault: KeyVaults, defender: MicrosoftDefenderForCloud, monitor: MonitorMonitor,\n loganalytics: LogAnalyticsWorkspacesManagementGovernance, devops: AzureDevOps, powerbi: PowerBIEmbedded,\n azuresql: AzureSQL, cosmos: AzureCosmosDBDatabases, functions: FunctionAppsCompute, aks: KubernetesServicesCompute,\n streamanalytics: StreamAnalyticsJobsAnalytics, servicebus: AzureServiceBus, vm: VirtualMachine,\n}\n\n/** AWS architecture icons, in their own colours on their own rounded tile. */\nexport const AWS: Record<string, ComponentType<{ size?: number | string }>> = {\n s3: S3, glue: Glue, redshift: Redshift, athena: Athena, kinesis: Kinesis, firehose: Firehose, emr: EMR,\n lambda: Lambda, dynamodb: DynamoDB, rds: RDS, aurora: Aurora, cloudwatch: CloudWatch, iam: IAM, msk: MSK,\n lakeformation: LakeFormation, ec2: EC2, sqs: SQS, sns: SNS, stepfunctions: StepFunctions, eventbridge: EventBridge,\n kms: KMS, secretsmanager: SecretsManager, eks: EKS, sagemaker: SageMaker, apigateway: APIGateway, vpc: VPC,\n cloudformation: CloudFormation, mwaa: MWAA, dms: DMS, elasticache: ElastiCache,\n ecs: ECS, fargate: Fargate, ecr: ECR, elb: ELB, route53: Route53, cloudfront: CloudFront, waf: WAF,\n cloudtrail: CloudTrail, acm: ACM, backup: Backup, organizations: Organizations, ssm: SystemsManager,\n budgets: Budgets, costexplorer: CostExplorer, identitycenter: IdentityCenter, xray: XRay,\n // AWS's GROUP marks: the tile an architecture diagram puts on a Region, account, subnet or group's corner.\n region: Region, account: Account, publicsubnet: PublicSubnet, privatesubnet: PrivateSubnet,\n autoscaling: AutoScalingGroup,\n}\n\n/** AWS RESOURCE icons: a single-colour glyph, no tile — the parts inside a service (a NAT gateway, a\n * task, a queue), drawn smaller-looking than a service on purpose, as AWS's own diagrams do. */\nexport const AWS_RESOURCE: Record<string, ComponentType<{ size?: number | string }>> = {\n alb: ALB, natgateway: NATGateway, igw: InternetGateway, vpcendpoint: VPCEndpoint, router: Router, sts: STS,\n iamrole: IAMRole, permissions: IAMPermissions, ecstask: ECSTask, ecsservice: ECSService, container: Container,\n bucket: Bucket, queue: Queue, message: Message, topic: Topic, hostedzone: HostedZone,\n}\n\n/** Open-source / product marks (simple-icons), in the brand's colour unless it would vanish. */\nexport const BRAND: Record<string, { title: string; hex: string; path: string }> = {\n kafka: siApachekafka, spark: siApachespark, airflow: siApacheairflow, flink: siApacheflink, snowflakedb: siSnowflake,\n python: siPython, pandas: siPandas, jupyter: siJupyter, duckdb: siDuckdb, postgresql: siPostgresql, mongodb: siMongodb,\n docker: siDocker, kubernetes: siKubernetes, terraform: siTerraform, git: siGit, github: siGithub,\n githubactions: siGithubactions, grafana: siGrafana, prometheus: siPrometheus,\n // simple-icons ships no Java mark (the trademark is Oracle's); OpenJDK's is the one it has, and\n // it is what a Java scene means. Both it and Maven are near-black/deep-red — see brandFill.\n java: siOpenjdk, maven: siApachemaven, junit: siJunit5,\n // Linux (0.7): the kernel's Tux, the two families and their members, macOS, the shells, the web\n // server and the CA. simple-icons has no OpenSSH or systemd mark: those scenes use `key`/`settings`.\n linux: siLinux, debian: siDebian, ubuntu: siUbuntu, redhat: siRedhat, fedora: siFedora, rocky: siRockylinux,\n almalinux: siAlmalinux, arch: siArchlinux, apple: siApple, macos: siMacos, bash: siGnubash, zsh: siZsh,\n nginx: siNginx, letsencrypt: siLetsencrypt,\n}\n\n/** `size` is a CSS length — in em, so an icon scales WITH its text and the ratio stays designed. */\ntype Draw = (size: string, surface: string, ink: string) => ReactElement\n\nfunction merge(...sets: Record<string, Draw>[]): Record<string, Draw> {\n const out: Record<string, Draw> = {}\n for (const set of sets)\n for (const [k, v] of Object.entries(set)) {\n if (k in out) throw new Error(`graphl-flow: icon key \"${k}\" is defined in two icon sets`)\n out[k] = v\n }\n return out\n}\n\nconst map = <T,>(set: Record<string, T>, draw: (v: T) => Draw) => Object.fromEntries(Object.entries(set).map(([k, v]) => [k, draw(v)]))\n\nconst luminance = (hex: string) => {\n const c = [1, 3, 5].map((i) => parseInt(hex.slice(i, i + 2), 16) / 255).map((v) => (v <= 0.04045 ? v / 12.92 : ((v + 0.055) / 1.055) ** 2.4))\n return 0.2126 * c[0] + 0.7152 * c[1] + 0.0722 * c[2]\n}\n\n/** A brand mark under this contrast against the surface draws in ink (Kafka's black on dark). */\nexport const BRAND_MIN_CONTRAST = 2.2\n\nfunction brandFill(hex: string, surface: string, ink: string) {\n const a = luminance(`#${hex}`), b = luminance(surface)\n return (Math.max(a, b) + 0.05) / (Math.min(a, b) + 0.05) < BRAND_MIN_CONTRAST ? ink : `#${hex}`\n}\n\nexport const ICONS: Record<string, Draw> = merge(\n map(LUCIDE, (Icon) => (size) => <Icon className=\"gf-icon\" size={size} strokeWidth={1.75} aria-hidden />),\n map(AZURE, (Icon) => (size) => <span className=\"gf-icon gf-vendor\"><Icon size={size} viewBox=\"0 0 18 18\" /></span>),\n map(AWS, (Icon) => (size) => <span className=\"gf-icon gf-vendor gf-aws\"><Icon size={size} /></span>),\n map(AWS_RESOURCE, (Icon) => (size) => <span className=\"gf-icon gf-vendor\"><Icon size={size} /></span>),\n map(BRAND, (b) => (size, surface, ink) => (\n <svg className=\"gf-icon\" width={size} height={size} viewBox=\"0 0 24 24\" role=\"img\" aria-label={b.title}>\n <path d={b.path} fill={brandFill(b.hex, surface, ink)} />\n </svg>\n )),\n)\n","import { useId } from 'react'\nimport type { Routed } from './routing'\nimport type { Size } from './fit'\n\n/**\n * The pulse period, in seconds. A RECORDER CONTRACT: ui-shell's record-course.mjs / record-reels.mjs\n * loop every video on PULSE_S = 2.4. Change it here alone and every loop join in every recorded video\n * shows a jump. Same value, same linear motion as @graphlearning/flow's FlowEdge.\n */\nexport const PULSE_S = 2.4\n\n/**\n * The shaft stops HEAD_TRIM short of a headed end, inside the head, and the marker's ref point moves\n * back by the same amount so the TIP still lands on the endpoint. Without it the 2px stroke poked out\n * past the tip — near its point the triangle is narrower than the line (visible at 4K on every arrow).\n */\nconst HEAD_TRIM = 6\n\ntype P = { x: number; y: number }\nfunction trim(points: P[], start: boolean, end: boolean): P[] {\n const out = points.map((p) => ({ ...p }))\n // Never past the run's other end: a trim longer than the run reverses the shaft, and the marker\n // (orient auto) follows it — the head flips. The router keeps runs ≥ HEAD_LEN; this is the guard.\n const pull = (a: P, b: P) => {\n const d = Math.hypot(b.x - a.x, b.y - a.y)\n if (d < 1) return\n const k = Math.min(HEAD_TRIM, d - 0.5) / d\n a.x += (b.x - a.x) * k; a.y += (b.y - a.y) * k\n }\n if (end) pull(out[out.length - 1], out[out.length - 2])\n if (start) pull(out[0], out[1])\n return out\n}\nconst pathOf = (points: P[]) => `M ${points.map((p) => `${p.x},${p.y}`).join(' L ')}`\n\nconst LABEL_SHIFT = {\n on: { h: 'translate(-50%, -50%)', v: 'translate(-50%, -50%)' },\n before: { h: 'translate(-50%, calc(-100% - 3px))', v: 'translate(calc(-100% - 3px), -50%)' },\n after: { h: 'translate(-50%, 3px)', v: 'translate(3px, -50%)' },\n}\n\n/** Draws routed edges over the content, in the content's own (unscaled) coordinates. */\nexport function Edges({ routed, size, pulse }: { routed: Routed[]; size: Size; pulse: boolean }) {\n const uid = useId().replace(/[^\\w-]/g, '')\n const arrow = `gf-arrow-${uid}`, glow = `gf-glow-${uid}`\n // A dot travelling the path once per PULSE_S; `reverse` runs it from `to` back to `from`.\n const dot = (d: string, reverse: boolean) => (\n <circle r={4.5} className=\"gf-pulse\" filter={`url(#${glow})`}>\n <animateMotion dur={`${PULSE_S}s`} repeatCount=\"indefinite\" path={d} calcMode=\"linear\" {...(reverse && { keyPoints: '1;0', keyTimes: '0;1' })} />\n </circle>\n )\n return (\n <>\n <svg className=\"gf-edges\" width={size.w} height={size.h} aria-hidden>\n <defs>\n {/* auto-start-reverse: the same head serves the far end of a bidirectional edge. */}\n <marker id={arrow} viewBox=\"0 0 10 10\" refX={10 - HEAD_TRIM} refY=\"5\" markerWidth=\"10\" markerHeight=\"10\" markerUnits=\"userSpaceOnUse\" orient=\"auto-start-reverse\">\n <path d=\"M0,0 L10,5 L0,10 z\" className=\"gf-arrowhead\" />\n </marker>\n <filter id={glow} x=\"-100%\" y=\"-100%\" width=\"300%\" height=\"300%\">\n <feGaussianBlur stdDeviation=\"2.5\" result=\"b\" />\n <feMerge><feMergeNode in=\"b\" /><feMergeNode in=\"SourceGraphic\" /></feMerge>\n </filter>\n </defs>\n {routed.map((r, i) => {\n // `d` is the full route (pulses travel it); the stroke is trimmed at its headed ends.\n const d = pathOf(r.points)\n return (\n <g key={i}>\n <path\n className=\"gf-edge\"\n data-from={r.edge.from}\n data-to={r.edge.to}\n data-edge={r.index}\n data-route={d}\n d={pathOf(trim(r.points, !!r.edge.bidirectional, true))}\n strokeDasharray={r.edge.dashed ? '6 5' : undefined}\n markerEnd={`url(#${arrow})`}\n markerStart={r.edge.bidirectional ? `url(#${arrow})` : undefined}\n />\n {pulse && dot(d, false)}\n {pulse && r.edge.bidirectional && dot(d, true)}\n </g>\n )\n })}\n </svg>\n {routed.map((r, i) =>\n r.edge.label ? (\n <div\n key={i}\n className=\"gf-edge-label\"\n data-edge={r.index}\n style={{ left: r.label.x, top: r.label.y, transform: LABEL_SHIFT[r.label.side][r.label.seg] }}\n >\n {r.edge.label}\n </div>\n ) : null,\n )}\n </>\n )\n}\n","import type { CSSProperties } from 'react'\nimport type { Theme } from './theme'\nimport type { Table, TableRow, Tone } from './types'\n\nconst PLAIN = /^[\\w$-]+$/\n\n/**\n * Normalised rows with their ADDRESS: explicit `id`, else the first cell when it is a plain word\n * and unique in the table. Shared by the renderer (data-id) and the edge planner (parent links),\n * so the two cannot disagree about which rows exist.\n */\nexport function tableRows(table: Table): (TableRow & { address?: string })[] {\n const rows = table.rows.map((r) => (Array.isArray(r) ? { cells: r } : r))\n const firsts = rows.map((r) => String(r.cells[0] ?? ''))\n return rows.map((r, i) => {\n const own = r.id ?? (PLAIN.test(firsts[i]) && firsts.indexOf(firsts[i]) === firsts.lastIndexOf(firsts[i]) ? firsts[i] : undefined)\n return { ...r, address: own && `${table.id}.${own}` }\n })\n}\n\nconst tint = (theme: Theme, tone?: Tone): CSSProperties | undefined =>\n tone && ({ '--gf-accent': theme.tones[tone].accent, '--gf-tint': theme.tones[tone].tint } as CSSProperties)\n\nexport function TableView({ node, theme, style }: { node: Table; theme: Theme; style?: CSSProperties }) {\n const rows = tableRows(node)\n const tagged = rows.some((r) => r.tag)\n const width = Math.max(node.columns?.length ?? 0, ...rows.map((r) => r.cells.length))\n return (\n <div className=\"gf-table\" data-id={node.id} style={style}>\n {node.title && <div className=\"gf-table-title\">{node.title}</div>}\n <table>\n {node.columns && (\n <thead>\n <tr>\n {tagged && <th aria-hidden />}\n {node.columns.map((c, i) => <th key={i}>{c}</th>)}\n </tr>\n </thead>\n )}\n <tbody>\n {rows.map((r, i) => (\n <tr key={i} data-id={r.address} data-tone={r.tone} style={tint(theme, r.tone)}>\n {tagged && <td className=\"gf-tag-cell\">{r.tag && <span className=\"gf-tag\">{r.tag}</span>}</td>}\n {Array.from({ length: width }, (_, j) => <td key={j}>{r.cells[j] ?? ''}</td>)}\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n )\n}\n","// A tokenizer, not a parser: one regex and a keyword set, ported from @graphlearning/flow's\n// codeHighlight. Small on purpose — slides show short excerpts, and every language shares the\n// same seven colours. The comment marker is the only per-language rule.\n\nexport type TokClass = 'var' | 'method' | 'keyword' | 'string' | 'number' | 'punct' | 'ws' | 'comment'\nexport interface Tok { cls: TokClass; text: string }\nexport type Lang = 'python' | 'sql' | 'scala' | 'java' | 'js' | 'ts' | 'shell' | 'hcl' | 'ini' | 'nginx' | 'nft' | 'text'\n\nconst KEYWORDS = new Set([\n 'import', 'from', 'def', 'return', 'lambda', 'class', 'val', 'var', 'new', 'if', 'else', 'for',\n 'in', 'as', 'and', 'or', 'not', 'null', 'true', 'false', 'is',\n 'select', 'where', 'group', 'by', 'join', 'inner', 'left', 'right', 'full', 'outer', 'cross',\n 'on', 'using', 'having', 'order', 'asc', 'desc', 'limit', 'offset', 'distinct', 'with', 'recursive',\n 'union', 'intersect', 'except', 'all', 'insert', 'into', 'values', 'update', 'set', 'delete',\n 'over', 'partition', 'between', 'like', 'exists', 'case', 'when', 'then', 'end', 'count', 'sum', 'avg', 'min', 'max',\n 'while', 'elif', 'try', 'raise', 'finally', 'pass', 'break', 'continue', 'yield', 'async', 'await', 'assert', 'del',\n 'global', 'nonlocal', 'none', 'match',\n 'const', 'let', 'function', 'export', 'default', 'interface', 'type', 'extends', 'implements', 'public',\n 'private', 'static', 'void', 'object', 'trait', 'def', 'catch', 'throw', 'this', 'super', 'undefined',\n // Java's own, the primitive types included — `int x` read as two plain names without them.\n 'abstract', 'boolean', 'byte', 'char', 'do', 'double', 'enum', 'final', 'float', 'goto', 'instanceof',\n 'int', 'long', 'native', 'package', 'permits', 'protected', 'record', 'sealed', 'short', 'strictfp',\n 'switch', 'synchronized', 'throws', 'transient', 'volatile',\n])\n\n// Terraform's block types and meta-arguments, as keywords in HCL ONLY: `data`, `output` and `module`\n// are everyday names in Python, and the shared set above would recolour every Python scene.\nconst HCL_KEYWORDS = new Set([\n 'terraform', 'provider', 'resource', 'data', 'variable', 'output', 'locals', 'module', 'backend',\n 'required_providers', 'moved', 'import', 'removed', 'check', 'lifecycle', 'dynamic', 'for_each', 'count',\n 'depends_on', 'each', 'var', 'local',\n])\n\n// nginx's directives and blocks (0.7), keywords in `lang: 'nginx'` ONLY — `root`, `index`, `user` and\n// `include` are names everywhere else. A value word (`on`, `off`, a path) stays plain.\nconst NGINX_KEYWORDS = new Set([\n 'http', 'server', 'location', 'events', 'upstream', 'listen', 'server_name', 'root', 'index', 'try_files',\n 'return', 'rewrite', 'include', 'user', 'worker_processes', 'worker_connections', 'pid', 'error_log',\n 'access_log', 'sendfile', 'keepalive_timeout', 'gzip', 'ssl_certificate', 'ssl_certificate_key',\n 'ssl_protocols', 'ssl_ciphers', 'proxy_pass', 'proxy_set_header', 'add_header', 'default_type', 'types',\n 'client_max_body_size', 'autoindex', 'alias', 'expires', 'default_server', 'ssl', 'http2', 'deny', 'allow',\n])\n\n// nftables' grammar words (0.7), in `lang: 'nft'` ONLY.\nconst NFT_KEYWORDS = new Set([\n 'table', 'chain', 'type', 'hook', 'priority', 'policy', 'accept', 'drop', 'reject', 'counter', 'ct',\n 'state', 'established', 'related', 'invalid', 'new', 'iif', 'oif', 'iifname', 'oifname', 'tcp', 'udp',\n 'dport', 'sport', 'ip', 'ip6', 'saddr', 'daddr', 'inet', 'filter', 'input', 'output', 'forward', 'nat',\n 'masquerade', 'flush', 'ruleset', 'add', 'rule', 'set', 'elements', 'icmp', 'icmpv6', 'meta', 'l4proto',\n 'log', 'prefix', 'limit', 'rate', 'jump', 'goto', 'return', 'define',\n])\n\nconst COMMENT: Record<Lang, string> = {\n python: '#', shell: '#', hcl: '#', ini: '#', nginx: '#', nft: '#', sql: '--', scala: '//', java: '//', js: '//', ts: '//', text: '\\u0000',\n}\n\n// Bash's reserved words (0.7). Before it, shell took the SHARED set, so `/var/www` drew `var` as a\n// JavaScript keyword and `in`/`set`/`select` lit up inside paths and arguments.\nconst SHELL_KEYWORDS = new Set([\n 'if', 'then', 'else', 'elif', 'fi', 'for', 'while', 'until', 'do', 'done', 'case', 'esac', 'in',\n 'function', 'select', 'time', 'return', 'local', 'export', 'readonly',\n])\n\nconst OWN: Partial<Record<Lang, Set<string>>> = { hcl: HCL_KEYWORDS, shell: SHELL_KEYWORDS, nginx: NGINX_KEYWORDS, nft: NFT_KEYWORDS }\n\n/**\n * An ini file — a systemd unit, a `.conf` — is LINE-shaped, so it has its own rule instead of the\n * token regex: `[Section]` is a keyword, `Key=` a method (the setting), the value plain, and a line\n * starting with `#` or `;` a comment. The shared keyword set never applies (`After=` is not SQL).\n */\nfunction tokenizeIni(src: string): Tok[] {\n const lead = src.match(/^\\s*/)![0]\n const rest = src.slice(lead.length)\n const out: Tok[] = lead ? [{ cls: 'ws', text: lead }] : []\n if (rest.startsWith('#') || rest.startsWith(';')) return [...out, { cls: 'comment', text: rest }]\n if (rest.startsWith('[')) return [...out, { cls: 'keyword', text: rest }]\n const kv = rest.match(/^([\\w.@-]+)(\\s*=\\s*)([\\s\\S]*)$/)\n if (!kv) return [...out, { cls: 'var', text: rest }]\n out.push({ cls: 'method', text: kv[1] }, { cls: 'punct', text: kv[2] })\n if (kv[3]) out.push({ cls: 'var', text: kv[3] })\n return out\n}\n\n// Where a dot is a file extension or an address (`job.py`, `ana.example`), not a member access; and\n// where `@` is part of an address (`ana@web-01`), not an annotation; and where a word after `/` is a\n// path segment (`/var/www`), never a keyword.\nconst NO_MEMBER = new Set<Lang>(['shell', 'nginx', 'nft'])\n\nconst escape = (s: string) => s.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&')\n\nexport function tokenize(src: string, lang: Lang): Tok[] {\n if (lang === 'text') return [{ cls: 'var', text: src }]\n if (lang === 'ini') return tokenizeIni(src)\n const own = OWN[lang]\n // A config file's own words replace the shared set: `index` and `set` are not SQL there.\n const isKeyword = (word: string) => own && lang !== 'hcl' ? own.has(word) : KEYWORDS.has(word.toLowerCase()) || !!own?.has(word)\n // A number carries its suffix and separators (`10L`, `1_000_000`, `3.14f`); an `@Name` is one\n // token — a Java annotation or a Python decorator, both drawn as keywords (not in NO_MEMBER languages).\n const token = new RegExp(`(\\\\s+)|(${escape(COMMENT[lang])}[\\\\s\\\\S]*)|('[^']*'?|\"[^\"]*\"?)|(\\\\d[\\\\w.]*)|(@[A-Za-z_]\\\\w*)|([A-Za-z_]\\\\w*)|(\\\\.\\\\.\\\\.|[\\\\s\\\\S])`, 'g')\n const out: Tok[] = []\n let afterDot = false\n const plain = NO_MEMBER.has(lang)\n let afterSlash = false\n // nginx: only a statement's FIRST word is a directive (`index index.html` — the second is a value).\n let statement = true\n for (const [text, ws, comment, str, num, anno, word] of src.matchAll(token)) {\n // `web-01`: in shell, digits joined to a name by `-` are part of the name, not a number.\n const joined = plain && num && out.at(-1)?.text === '-' && out.at(-2)?.cls === 'var'\n const cls: TokClass = ws ? 'ws' : comment ? 'comment' : str ? 'string' : num ? (joined ? 'var' : 'number')\n : anno ? (plain ? 'var' : 'keyword')\n : word ? (afterDot ? 'method' : !(plain && afterSlash) && (lang !== 'nginx' || statement) && isKeyword(word) ? 'keyword' : 'var') : 'punct'\n afterSlash = cls === 'punct' && text === '/'\n if (cls !== 'ws' && cls !== 'comment') statement = cls === 'punct' && (text === ';' || text === '{' || text === '}')\n out.push({ cls, text })\n if (cls !== 'ws') afterDot = !NO_MEMBER.has(lang) && cls === 'punct' && text === '.'\n }\n return out\n}\n\n/** Drop a leading/trailing blank line and the common indent, so scenes can use indented template literals. */\nexport function dedent(src: string): string[] {\n const lines = src.replace(/^\\s*\\n/, '').replace(/\\n\\s*$/, '').split('\\n')\n const indent = Math.min(...lines.filter((l) => l.trim()).map((l) => l.match(/^ */)![0].length))\n return lines.map((l) => l.slice(Number.isFinite(indent) ? indent : 0))\n}\n","import type { CSSProperties } from 'react'\nimport { dedent, tokenize, type Tok } from './highlight'\nimport type { Code } from './types'\n\ntype Row = { n: number; text: string } | { fold: number }\n\n/**\n * The lines a `code` node draws: every line, or only the `show` ranges with each skipped run\n * folded into one `··· N lines` row — a terminal too (0.6: a long Terraform plan keeps its command,\n * its resource line and its summary). Line numbers are the FILE's. Shared with the edge planner via\n * `codeLineIds`, so a line edges can address is a line that is drawn.\n */\nexport function codeRows(node: Code): Row[] {\n const lines = dedent(node.code)\n if (!node.show?.length || node.output) return lines.map((text, i) => ({ n: i + 1, text }))\n const keep = new Set(node.show.flatMap(([a, b]) => Array.from({ length: b - a + 1 }, (_, i) => a + i)))\n const rows: Row[] = []\n lines.forEach((text, i) => {\n if (keep.has(i + 1)) rows.push({ n: i + 1, text })\n else if (rows.length && 'fold' in rows[rows.length - 1]) (rows[rows.length - 1] as { fold: number }).fold++\n else rows.push({ fold: 1 })\n })\n return rows\n}\n\nexport const codeLineIds = (node: Code): string[] => codeRows(node).flatMap((r) => ('n' in r ? [`${node.id}.L${r.n}`] : []))\n\n// U+00B7, not ⋯: a fallback-font glyph would change the advance next to Plex Mono.\nconst foldLabel = (n: number) => `··· ${n} line${n === 1 ? '' : 's'}`\n\n/** A shell prompt, as the three shells the course meets draw it. `sigil` is `$`/`%`, or `#` for root. */\nexport interface Prompt { user: string; host: string; cwd: string; sigil: string; style: 'debian' | 'redhat' | 'zsh'; cmd: string }\n\nconst PROMPTS: [Prompt['style'], RegExp][] = [\n ['debian', /^([\\w.-]+)@([\\w.-]+):(\\S*?)([$#])(?: (.*))?$/],\n ['redhat', /^\\[([\\w.-]+)@([\\w.-]+) ([^\\]]*)\\]([$#])(?: (.*))?$/],\n ['zsh', /^([\\w.-]+)@([\\w.-]+) (\\S+) ([%#])(?: (.*))?$/],\n]\n\nexport function parsePrompt(row: string): Prompt | null {\n for (const [style, re] of PROMPTS) {\n const m = row.match(re)\n if (m) return { style, user: m[1], host: m[2], cwd: m[3], sigil: m[4], cmd: m[5] ?? '' }\n }\n return null\n}\n\ntype ConsoleRow =\n | { n: number; kind: 'cmd'; prompt: Prompt; toks: Tok[] }\n | { n: number; kind: 'cont'; toks: Tok[] }\n | { n: number; kind: 'out'; text: string }\n\n/**\n * Classify a transcript's rows. A prompt row is a command; a command row exactly `cols` wide wrapped,\n * so the rows after it continue the command until one is shorter. The command is tokenized WHOLE and\n * its tokens cut back into rows, so a string or a path that crosses the wrap keeps its colour.\n */\nexport function consoleRows(lines: string[], cols: number): Map<number, ConsoleRow> {\n const out = new Map<number, ConsoleRow>()\n for (let i = 0; i < lines.length; i++) {\n const prompt = parsePrompt(lines[i])\n if (!prompt) { out.set(i + 1, { n: i + 1, kind: 'out', text: lines[i] }); continue }\n const rows = [i]\n while (lines[rows[rows.length - 1]].length === cols && rows[rows.length - 1] + 1 < lines.length) rows.push(rows[rows.length - 1] + 1)\n const head = lines[i].length - prompt.cmd.length\n const widths = rows.map((r, k) => (k === 0 ? lines[r].length - head : lines[r].length))\n const toks = tokenize(rows.map((r, k) => (k === 0 ? prompt.cmd : lines[r])).join(''), 'shell')\n const cut: Tok[][] = widths.map(() => [])\n let row = 0, left = widths[0]\n for (const t of toks) {\n let text = t.text\n while (text.length > left && row < widths.length - 1) {\n if (left) cut[row].push({ cls: t.cls, text: text.slice(0, left) })\n text = text.slice(left); row++; left = widths[row]\n }\n cut[row].push({ cls: t.cls, text }); left -= text.length\n }\n rows.forEach((r, k) => out.set(r + 1, k === 0 ? { n: r + 1, kind: 'cmd', prompt, toks: cut[0] } : { n: r + 1, kind: 'cont', toks: cut[k] }))\n i = rows[rows.length - 1]\n }\n return out\n}\n\nconst PromptView = ({ p }: { p: Prompt }) => (\n <span className=\"gf-ps\" data-root={p.sigil === '#' || undefined}>\n {p.style === 'redhat' && '['}\n <span className=\"gf-ps-who\">{p.user}@{p.host}</span>\n {p.style === 'debian' ? ':' : ' '}\n <span className=\"gf-ps-cwd\">{p.cwd}</span>\n {p.style === 'redhat' && ']'}\n {p.style === 'zsh' && ' '}\n {p.sigil}{' '}\n </span>\n)\n\nfunction ConsoleView({ node, style }: { node: Code; style?: CSSProperties }) {\n const lit = new Set(node.highlight ?? [])\n const rows = consoleRows(dedent(node.code), node.cols ?? 80)\n return (\n <div className=\"gf-code\" data-id={node.id} data-console style={style}>\n <div className=\"gf-code-bar\">\n <span className=\"gf-dots\" aria-hidden><i /><i /><i /></span>\n {node.filename && <span className=\"gf-code-name\">{node.filename}</span>}\n </div>\n <div className=\"gf-code-body\">\n {codeRows(node).map((r, i) => {\n if ('fold' in r) return <div key={i} className=\"gf-line gf-fold\">{foldLabel(r.fold)}</div>\n const row = rows.get(r.n)!\n return (\n <div key={i} className=\"gf-line\" data-id={`${node.id}.L${r.n}`} data-kind={row.kind} data-lit={lit.has(r.n) || undefined}\n data-root={row.kind === 'cmd' && row.prompt.sigil === '#' || undefined}>\n {row.kind === 'out' ? <span>{row.text}</span> : <>\n {row.kind === 'cmd' && <PromptView p={row.prompt} />}\n {row.toks.map((t, k) => <span key={k} className={`tok-${t.cls}`}>{t.text}</span>)}\n {row.kind === 'cont' && !row.toks.length && ' '}\n </>}\n </div>\n )\n })}\n </div>\n </div>\n )\n}\n\nexport function CodeView({ node, style }: { node: Code; style?: CSSProperties }) {\n if (node.console) return <ConsoleView node={node} style={style} />\n const lit = new Set(node.highlight ?? [])\n const lang = node.lang ?? (node.terminal ? 'shell' : 'text')\n // A cell's output: what the kernel printed, under its input — no bar, no frame, no gutter.\n if (node.output) return (\n <div className=\"gf-code\" data-id={node.id} data-output style={style}>\n {codeRows(node).map((row, i) => 'n' in row && (\n <div key={i} className=\"gf-line\" data-id={`${node.id}.L${row.n}`} data-kind={row.text.startsWith('! ') ? 'err' : 'out'}>\n {row.text.startsWith('! ') ? row.text.slice(2) : row.text || ' '}\n </div>\n ))}\n </div>\n )\n return (\n <div className=\"gf-code\" data-id={node.id} data-terminal={node.terminal || undefined} style={style}>\n <div className=\"gf-code-bar\">\n {node.terminal ? <span className=\"gf-code-name\">{node.filename ?? 'terminal'}</span> : (\n <>\n <span className=\"gf-dots\" aria-hidden><i /><i /><i /></span>\n {node.filename && <span className=\"gf-code-name\">{node.filename}</span>}\n </>\n )}\n </div>\n <div className=\"gf-code-body\">\n {codeRows(node).map((row, i) => {\n if ('fold' in row) return node.terminal\n ? <div key={i} className=\"gf-line gf-fold\">{foldLabel(row.fold)}</div>\n : <div key={i} className=\"gf-line gf-fold\"><span className=\"gf-ln\" /><span>{foldLabel(row.fold)}</span></div>\n // Terminal: `$ cmd` is a command, `! text` an error, anything else output.\n if (node.terminal) {\n const kind = row.text.startsWith('$ ') ? 'cmd' : row.text.startsWith('! ') ? 'err' : 'out'\n return (\n <div key={i} className=\"gf-line\" data-id={`${node.id}.L${row.n}`} data-kind={kind}>\n {kind === 'cmd' ? <><span className=\"gf-prompt\">$ </span><Toks text={row.text.slice(2)} lang={lang} /></> : kind === 'err' ? row.text.slice(2) : row.text || ' '}\n </div>\n )\n }\n return (\n <div key={i} className=\"gf-line\" data-id={`${node.id}.L${row.n}`} data-lit={lit.has(row.n) || undefined}>\n <span className=\"gf-ln\">{row.n}</span>\n <span><Toks text={row.text} lang={lang} /></span>\n </div>\n )\n })}\n </div>\n </div>\n )\n}\n\nconst Toks = ({ text, lang }: { text: string; lang: Parameters<typeof tokenize>[1] }) =>\n <>{text ? tokenize(text, lang).map((t, i) => <span key={i} className={`tok-${t.cls}`}>{t.text}</span>) : ' '}</>\n","import { useId } from 'react'\nimport type { Theme } from './theme'\nimport type { Plot, PlotAxis, PlotSeries, Tone } from './types'\n\n// A plot's x/y are DATA in the axes' own units; the engine owns every pixel. The drawing area is ONE\n// fixed size for every plot, so plots in a deck line up and frames with one keep the same zoom.\n// Inside the SVG the browser does not lay out text, so all plot text is IBM Plex Mono (fixed advance)\n// and the gutters are counted in characters; `check` measures every <text> against the SVG box.\n\nexport const PLOT_W = 720\nexport const PLOT_H = 400\n/** The second fixed size: a plot for a side pane, readable at full text size in ~560px. */\nexport const COMPACT_W = 420\nexport const COMPACT_H = 280\nconst CHAR_W = 9.1 // IBM Plex Mono at 15px (600/1000 em = 9.0), rounded up so a count can only over-reserve\nconst TICK_GAP = 8\nconst AXIS_LABEL = 24\n\n/** Series colours in a fixed order that keeps green and orange apart; `consume` red is reserved for warnings. */\nconst RAMP: Tone[] = ['ingest', 'infra', 'serve', 'store']\n\nfunction niceStep(span: number): number {\n const raw = Math.abs(span) / 6\n if (!(raw > 0) || !Number.isFinite(raw)) return 1\n const mag = 10 ** Math.floor(Math.log10(raw))\n const n = raw / mag\n return (n >= 5 ? 5 : n >= 2 ? 2 : 1) * mag\n}\n\nconst decimals = (step: number) => (String(step).split('.')[1] ?? '').length\n\ninterface Axis { min: number; max: number; ticks: number[]; text: (v: number) => string; categories: boolean; label?: string }\n\nfunction axis(a: PlotAxis): Axis {\n if (a.labels) {\n const n = a.labels.length\n return { min: -0.5, max: n - 0.5, ticks: a.labels.map((_, i) => i), text: (v) => a.labels![v] ?? '', categories: true, label: a.label }\n }\n const min = a.min ?? 0, max = a.max ?? 1\n const step = a.step && (max - min) / a.step <= 200 ? a.step : niceStep(max - min)\n const ticks: number[] = []\n for (let v = Math.ceil(min / step) * step; v <= max + step * 1e-9; v += step) ticks.push(Number(v.toFixed(decimals(step) + 1)))\n return { min, max, ticks, text: (v) => (Math.abs(v) < step * 1e-9 ? 0 : v).toFixed(decimals(step)), categories: false, label: a.label }\n}\n\nconst seriesPoints = (s: PlotSeries): [number, number][] => s.points ?? (s.from && s.to ? [s.from, s.to] : [])\n\n/** A plain segment (no arrow, no tone) is a construction line: muted, and it takes no ramp colour. */\nconst construction = (s: PlotSeries) => s.kind === 'segment' && !s.arrow && !s.tone\n\n/** Where a series puts its label: a segment at its tip (arrow) or midpoint; bars in the legend; anything else at its last point. */\nfunction labelAt(s: PlotSeries): [number, number] | undefined {\n const pts = seriesPoints(s)\n if (!s.label || !pts.length || s.kind === 'bar') return undefined\n if (s.kind === 'segment' && !s.arrow) return [(pts[0][0] + pts[1][0]) / 2, (pts[0][1] + pts[1][1]) / 2]\n return pts[pts.length - 1]\n}\n\nexport function PlotView({ node, theme, style }: { node: Plot; theme: Theme; style?: React.CSSProperties }) {\n const clip = `gf-clip-${useId().replace(/[^\\w-]/g, '')}`\n const X = axis(node.x), Y = axis(node.y)\n const PW = node.compact ? COMPACT_W : PLOT_W, PH = node.compact ? COMPACT_H : PLOT_H\n const origin = node.axes === 'origin' || (node.axes !== 'corner' && !X.categories && !Y.categories && X.min < 0 && X.max > 0 && Y.min < 0 && Y.max > 0)\n const chars = (s: string) => s.length * CHAR_W\n\n // Gutters, counted: y tick labels + y axis label on the left, x ticks + x label below, the longest\n // label that runs past the right edge on the right.\n const left = Math.ceil(Math.max(...Y.ticks.map((t) => chars(Y.text(t))))) + TICK_GAP + 6 + (Y.label ? AXIS_LABEL : 0)\n const bottom = 30 + (X.label ? AXIS_LABEL : 0)\n const top = 14\n const sx = (v: number) => left + ((v - X.min) / (X.max - X.min)) * PW\n const sy = (v: number) => top + PH - ((v - Y.min) / (Y.max - Y.min)) * PH\n const overhang = Math.max(0, ...node.series.map((s) => {\n const at = labelAt(s)\n return at ? sx(at[0]) + 8 + chars(s.label!) - (left + PW) : 0\n }))\n const right = 16 + Math.ceil(overhang)\n const W = left + PW + right, H = top + PH + bottom\n\n const ax = origin ? sx(0) : left, ay = origin ? sy(0) : top + PH\n // The ramp advances only for series that use it, so a toned or construction series skips no colour.\n const rampAt = node.series.map((_, i) => node.series.slice(0, i).filter((q) => !q.tone && !construction(q)).length)\n const colour = (s: PlotSeries, i: number) =>\n construction(s) ? theme.muted : theme.tones[s.tone ?? RAMP[rampAt[i] % RAMP.length]].accent\n const legend = node.series.flatMap((s, i) => (s.kind === 'bar' && s.label ? [{ label: s.label, c: colour(s, i) }] : []))\n const base = sy(Math.max(Y.min, Math.min(0, Y.max)))\n const step = X.categories ? 1 : (X.ticks[1] ?? X.max) - (X.ticks[0] ?? X.min)\n\n return (\n <div className=\"gf-plot\" data-id={node.id} style={style}>\n {node.title && <div className=\"gf-table-title\">{node.title}</div>}\n <svg width={W} height={H} viewBox={`0 0 ${W} ${H}`} role=\"img\" aria-label={node.title ?? 'plot'}>\n <defs><clipPath id={clip}><rect x={left} y={top} width={PW} height={PH} /></clipPath></defs>\n {node.grid !== false && (\n <g className=\"gf-plot-grid\">\n {!X.categories && X.ticks.map((t) => <line key={`x${t}`} x1={sx(t)} x2={sx(t)} y1={top} y2={top + PH} />)}\n {Y.ticks.map((t) => <line key={`y${t}`} x1={left} x2={left + PW} y1={sy(t)} y2={sy(t)} />)}\n </g>\n )}\n <g className=\"gf-plot-axis\">\n <line x1={left} x2={left + PW} y1={ay} y2={ay} />\n <line x1={ax} x2={ax} y1={top} y2={top + PH} />\n </g>\n <g className=\"gf-plot-ticks\">\n {X.ticks.filter((t) => !(origin && t === 0)).map((t) => <text key={`x${t}`} x={sx(t)} y={ay + 20} textAnchor=\"middle\">{X.text(t)}</text>)}\n {Y.ticks.filter((t) => !(origin && t === 0)).map((t) => <text key={`y${t}`} x={ax - TICK_GAP} y={sy(t)} textAnchor=\"end\" dominantBaseline=\"middle\">{Y.text(t)}</text>)}\n {X.label && <text x={left + PW / 2} y={top + PH + bottom - 6} textAnchor=\"middle\" className=\"gf-plot-label\">{X.label}</text>}\n {Y.label && <text transform={`translate(14 ${top + PH / 2}) rotate(-90)`} textAnchor=\"middle\" dominantBaseline=\"middle\" className=\"gf-plot-label\">{Y.label}</text>}\n </g>\n <g clipPath={`url(#${clip})`}>\n {node.series.map((s, i) => {\n const c = colour(s, i), pts = seriesPoints(s)\n const d = pts.map(([x, y], j) => `${j ? 'L' : 'M'}${sx(x)},${sy(y)}`).join(' ')\n if (s.kind === 'area')\n return <g key={i}><path d={`${d} L${sx(pts[pts.length - 1][0])},${base} L${sx(pts[0][0])},${base} Z`} fill={c} fillOpacity={0.18} stroke=\"none\" /><path d={d} fill=\"none\" stroke={c} strokeWidth={2.5} /></g>\n if (s.kind === 'line') return <path key={i} d={d} fill=\"none\" stroke={c} strokeWidth={2.5} strokeDasharray={s.dashed ? '7 6' : undefined} strokeLinejoin=\"round\" />\n if (s.kind === 'scatter') return <g key={i}>{pts.map(([x, y], j) => <circle key={j} cx={sx(x)} cy={sy(y)} r={5} fill={c} />)}</g>\n if (s.kind === 'bar') {\n const n = node.series.filter((q) => q.kind === 'bar').length, k = node.series.slice(0, i).filter((q) => q.kind === 'bar').length\n const slot = ((sx(step) - sx(0)) * 0.7) / n\n return <g key={i}>{pts.map(([x, y], j) => <rect key={j} x={sx(x) - (slot * n) / 2 + k * slot} y={Math.min(sy(y), base)} width={slot - 2} height={Math.abs(base - sy(y))} fill={c} rx={2} />)}</g>\n }\n // segment: a construction or threshold line, dashed unless told otherwise; `arrow` makes it a vector.\n const [[x1, y1], [x2, y2]] = pts\n const a = Math.atan2(sy(y2) - sy(y1), sx(x2) - sx(x1)), L = 12\n const tip = [sx(x2), sy(y2)], back = [tip[0] - L * Math.cos(a), tip[1] - L * Math.sin(a)]\n return (\n <g key={i}>\n <line x1={sx(x1)} y1={sy(y1)} x2={s.arrow ? back[0] : tip[0]} y2={s.arrow ? back[1] : tip[1]} stroke={c} strokeWidth={construction(s) ? 1.75 : 2.5} strokeDasharray={s.dashed === false || s.arrow ? undefined : '7 6'} />\n {s.arrow && (x1 !== x2 || y1 !== y2) && (\n <polygon fill={c} points={[tip, [back[0] + 6 * Math.sin(a), back[1] - 6 * Math.cos(a)], [back[0] - 6 * Math.sin(a), back[1] + 6 * Math.cos(a)]].map((p) => p.join(',')).join(' ')} />\n )}\n </g>\n )\n })}\n </g>\n {legend.length > 0 && (\n <g className=\"gf-plot-labels\">\n {legend.map((l, i) => {\n const y = top + 18 + i * 22, x = left + PW - 12 - Math.max(...legend.map((q) => chars(q.label)))\n return <g key={i}><rect x={x - 20} y={y - 10} width={12} height={12} rx={2} fill={l.c} /><text x={x} y={y} dominantBaseline=\"middle\" fill={l.c}>{l.label}</text></g>\n })}\n </g>\n )}\n <g className=\"gf-plot-labels\">\n {node.series.map((s, i) => {\n const at = labelAt(s)\n // Above the point, but never above the area: a curve that ends at y.max would push it out.\n return at && <text key={i} x={sx(at[0]) + 8} y={Math.min(top + PH - 4, Math.max(top + 14, sy(at[1]) - 8))} fill={colour(s, i)}>{s.label}</text>\n })}\n </g>\n </svg>\n </div>\n )\n}\n","import { ChevronDown, ChevronRight, FileText, Folder } from 'lucide-react'\nimport type { CSSProperties } from 'react'\nimport { ICONS } from './icons'\nimport type { Theme } from './theme'\nimport type { Tree, TreeEntry } from './types'\n\n/** A file's default icon by extension. Anything unlisted draws a plain file. */\nconst BY_EXTENSION: Record<string, string> = { py: 'python', ipynb: 'jupyter', java: 'java', sql: 'database', tf: 'terraform', dockerfile: 'docker' }\nconst iconOf = (e: TreeEntry) => e.icon ?? BY_EXTENSION[e.name.toLowerCase().split('.').pop() ?? '']\n\ninterface Row { entry: TreeEntry; depth: number; path: string }\n\n/**\n * The entries a `tree` draws, depth-first, each with its PATH (`src/jobs/orders.py`). Shared with the\n * edge planner via `treeEntryIds`, like `tableRows` and `codeRows`: an entry is addressable as\n * `<tree id>.<path>`.\n */\nfunction treeRows(entries: TreeEntry[], depth = 0, prefix = ''): Row[] {\n return entries.flatMap((entry) => {\n const path = prefix ? `${prefix}/${entry.name}` : entry.name\n return [{ entry, depth, path }, ...(entry.children ? treeRows(entry.children, depth + 1, path) : [])]\n })\n}\n\nexport const treeEntryIds = (node: Tree): string[] => treeRows(node.entries).map((r) => `${node.id}.${r.path}`)\n\nexport function TreeView({ node, theme, style }: { node: Tree; theme: Theme; style?: CSSProperties }) {\n return (\n <div className=\"gf-tree\" data-id={node.id} style={style}>\n <div className=\"gf-tree-title\">{node.title ?? 'Explorer'}</div>\n <div className=\"gf-tree-body\">\n {treeRows(node.entries).map(({ entry, depth, path }) => {\n const folder = entry.folder ?? !!entry.children\n return (\n <div key={path} className=\"gf-tree-row\" data-id={`${node.id}.${path}`} data-state={entry.state} style={{ paddingLeft: 10 + depth * 16 }}>\n {/* A folder with listed children is open; one marked `folder` with none is collapsed. */}\n {!folder ? <span className=\"gf-tree-chev\" /> : entry.children?.length\n ? <ChevronDown size=\"0.9em\" className=\"gf-tree-chev\" aria-hidden /> : <ChevronRight size=\"0.9em\" className=\"gf-tree-chev\" aria-hidden />}\n {(() => {\n const draw = iconOf(entry) ? ICONS[iconOf(entry)!] : undefined\n return draw ? <span className=\"gf-tree-icon\">{draw('1.1em', theme.surface, theme.ink)}</span>\n : folder ? <Folder size=\"1.1em\" aria-hidden /> : <FileText size=\"1.1em\" aria-hidden />\n })()}\n <span className=\"gf-tree-name\">{entry.name}</span>\n {entry.note && <span className=\"gf-tree-note\">{entry.note}</span>}\n </div>\n )\n })}\n </div>\n </div>\n )\n}\n","import type { CSSProperties } from 'react'\nimport type { Tty } from './types'\n\n/** Rows addressable by edges and `focus` as `<tty>.R<n>`, 1-based like a code line. */\nexport const ttyRowIds = (node: Tty): string[] => node.screen.map((_, i) => `${node.id}.R${i + 1}`)\n\ntype Run = { text: string; inverse: boolean; bold: boolean }\n\n/** One row cut into runs of the same attributes. Padded to the full width, so the grid never moves. */\nfunction runs(text: string, row: number, node: Tty, cols: number): Run[] {\n const line = text.padEnd(cols).slice(0, cols)\n const has = (spans: [number, number, number][] | undefined, col: number) =>\n !!spans?.some(([r, a, b]) => r === row && col >= a && col < b)\n const out: Run[] = []\n for (let c = 0; c < cols; c++) {\n const inverse = has(node.inverse, c), bold = has(node.bold, c)\n const last = out[out.length - 1]\n if (last && last.inverse === inverse && last.bold === bold) last.text += line[c]\n else out.push({ text: line[c], inverse, bold })\n }\n return out\n}\n\n/**\n * A full-screen program's screen: a terminal frame with a fixed grid of `cols` × the screen's rows.\n * The size comes from the capture, never from the content, so two screenshots of `top` are the same box.\n */\nexport function TtyView({ node, style }: { node: Tty; style?: CSSProperties }) {\n const cols = node.cols ?? 80\n return (\n <div className=\"gf-code gf-tty\" data-id={node.id} style={style}>\n <div className=\"gf-code-bar\">\n <span className=\"gf-dots\" aria-hidden><i /><i /><i /></span>\n {node.title && <span className=\"gf-code-name\">{node.title}</span>}\n </div>\n <div className=\"gf-code-body\">\n {node.screen.map((text, i) => (\n <div key={i} className=\"gf-line\" data-id={`${node.id}.R${i + 1}`}>\n {runs(text, i, node, cols).map((r, k) =>\n <span key={k} data-inverse={r.inverse || undefined} data-bold={r.bold || undefined}>{r.text}</span>)}\n </div>\n ))}\n </div>\n </div>\n )\n}\n","import type { Edge } from './types'\n\n// Pure edge routing: measured node boxes in, orthogonal polylines out. No DOM here.\n\nexport interface Rect { x: number; y: number; w: number; h: number }\nexport interface Pt { x: number; y: number }\n/**\n * `index` is the edge's position in `scene.edges`; `axis` is the route's direction ('h' leaves a\n * left/right face). A label sits `on` its line, or `before`/`after` it (above/below a horizontal\n * segment, left/right of a vertical one) when its port shares a face with others.\n */\nexport interface Routed {\n edge: Edge; index: number; axis: 'h' | 'v'; points: Pt[]; label: Pt & { side: 'on' | 'before' | 'after'; seg: 'h' | 'v' }\n /** How many edges hold a slot in this edge's channel (0: none). The layout widens the gap for them. */\n slots: number\n}\ntype Face = 'left' | 'right' | 'top' | 'bottom'\n\n/** An edge ends this far OUTSIDE its node, so the arrowhead never touches the border. */\nexport const ANCHOR_OUTSET = 4\n/** Ports keep this far from a face's corners. */\nexport const PORT_INSET = 12\n/** Two ports closer than this on one face make the whole face spread evenly. */\nexport const PORT_MIN_GAP = 14\n/** The arrowhead's length (its marker is 10 user units): a slot keeps at least this run to each anchor. */\nexport const HEAD_LEN = 10\n/** Between two slots in one channel. */\nexport const SLOT_GAP = 8\n/**\n * The gap a channel needs for `n` slots: a full head's run at each end, outside each anchor, and\n * SLOT_GAP between neighbours. One slot needs 28 — inside EDGE_GAP — so only a SHARED channel grows.\n * Without it, three arrows fanning into one node through a 32px gap left a 4px last run, which the\n * 6px head trim reversed: the arrowhead pointed back into the gap (0.2, edge-fan-in).\n */\nexport const slotRoom = (n: number) => 2 * (ANCHOR_OUTSET + HEAD_LEN) + Math.max(0, n - 1) * SLOT_GAP\n\nconst centre = (r: Rect): Pt => ({ x: r.x + r.w / 2, y: r.y + r.h / 2 })\nconst horizontal = (f: Face) => f === 'left' || f === 'right'\n\n/**\n * Leave across the LARGER gap between the boxes; null when they overlap on both axes (nested).\n * `lateral` forces left/right: a table row is a slice of its table, so only its two ends are outside.\n */\nfunction facesOf(a: Rect, b: Rect, lateral: boolean): [Face, Face] | null {\n if (lateral) return centre(b).x >= centre(a).x ? ['right', 'left'] : ['left', 'right']\n const right = b.x - (a.x + a.w), left = a.x - (b.x + b.w)\n const down = b.y - (a.y + a.h), up = a.y - (b.y + b.h)\n const gx = Math.max(right, left), gy = Math.max(down, up)\n if (gx < 0 && gy < 0) return null\n if (gx >= gy) return right >= left ? ['right', 'left'] : ['left', 'right']\n return down >= up ? ['bottom', 'top'] : ['top', 'bottom']\n}\n\ninterface End { edge: number; side: 0 | 1; rect: Rect; face: Face; far: number; at: number; rank: number; count: number }\n\n/**\n * A face with ONE edge anchors at its centre. A face with several gives each a PORT that slides\n * toward the far end's centre (clamped PORT_INSET from the corners); if any two land within\n * PORT_MIN_GAP, the face spreads evenly in far-end order instead.\n */\nfunction placePorts(ends: End[]) {\n const byFace = new Map<string, End[]>()\n for (const e of ends) {\n const key = `${e.rect.x},${e.rect.y},${e.rect.w},${e.rect.h},${e.face}`\n byFace.set(key, [...(byFace.get(key) ?? []), e])\n }\n for (const group of byFace.values()) {\n const { rect, face } = group[0]\n const [start, len] = horizontal(face) ? [rect.y, rect.h] : [rect.x, rect.w]\n const lo = start + Math.min(PORT_INSET, len / 2), hi = start + len - Math.min(PORT_INSET, len / 2)\n if (group.length === 1) { group[0].at = start + len / 2; continue }\n group.sort((p, q) => p.far - q.far || p.edge - q.edge)\n group.forEach((e, i) => { e.rank = i; e.count = group.length })\n group.forEach((e) => (e.at = Math.min(hi, Math.max(lo, e.far))))\n if (group.some((e, i) => i > 0 && e.at - group[i - 1].at < PORT_MIN_GAP))\n group.forEach((e, i) => (e.at = lo + ((i + 1) * (hi - lo)) / (group.length + 1)))\n }\n}\n\nfunction anchor({ rect, face, at }: End): Pt {\n if (face === 'left') return { x: rect.x - ANCHOR_OUTSET, y: at }\n if (face === 'right') return { x: rect.x + rect.w + ANCHOR_OUTSET, y: at }\n if (face === 'top') return { x: at, y: rect.y - ANCHOR_OUTSET }\n return { x: at, y: rect.y + rect.h + ANCHOR_OUTSET }\n}\n\n/**\n * `sides[i]` names the two SIBLINGS edge i runs between — the children of its lowest common\n * ancestor that contain each end. The faces are chosen from THEIR boxes, not the nodes': two nested\n * nodes in adjacent columns can sit diagonally with a larger vertical gap, and choosing from them\n * would send the edge down through whatever lies between. The elbow sits in the CHANNEL — the gap\n * between those siblings, which the layout widened for it — not midway between the nodes, which for\n * nested nodes can fall inside a sibling; several users of one channel get a slot each. `lateral` ids (table rows) connect only through left/right.\n * Edges whose ids are unknown, or whose boxes overlap (a node and its own ancestor), are skipped.\n */\nexport function routeEdges(\n edges: Edge[], rects: Map<string, Rect>, sides: ([string, string] | undefined)[] = [], lateral: Set<string> = new Set(),\n): Routed[] {\n const ends: End[] = []\n // A channel is the gap between an edge's two sides: [lo, hi] along the route's axis.\n const channel: ({ key: string; lo: number; hi: number } | undefined)[] = []\n edges.forEach((edge, i) => {\n const a = rects.get(edge.from), b = rects.get(edge.to)\n const [sa, sb] = (sides[i] ?? [edge.from, edge.to]).map((id) => rects.get(id))\n const faces = a && b && sa && sb && facesOf(sa, sb, lateral.has(edge.from) || lateral.has(edge.to))\n if (!faces) return\n const [lo, hi] = faces[0] === 'right' ? [sa.x + sa.w, sb.x] : faces[0] === 'left' ? [sb.x + sb.w, sa.x]\n : faces[0] === 'bottom' ? [sa.y + sa.h, sb.y] : [sb.y + sb.h, sa.y]\n // Keyed by axis + bounds, NOT direction: driver → workers and workers → driver share one gap.\n channel[i] = hi > lo ? { key: `${horizontal(faces[0]) ? 'h' : 'v'}:${Math.round(lo)}:${Math.round(hi)}`, lo, hi } : undefined\n const axis = horizontal(faces[0]) ? 'y' : 'x'\n ends.push({ edge: i, side: 0, rect: a, face: faces[0], far: centre(b)[axis], at: 0, rank: 0, count: 1 })\n ends.push({ edge: i, side: 1, rect: b, face: faces[1], far: centre(a)[axis], at: 0, rank: 0, count: 1 })\n })\n placePorts(ends)\n\n // Pass 1: anchors, and whether each edge is straight or needs an elbow.\n const pairs = []\n for (let i = 0; i < ends.length; i += 2) {\n const [from, to] = ends[i].side === 0 ? [ends[i], ends[i + 1]] : [ends[i + 1], ends[i]]\n // Alone on both faces and the faces overlap: run straight across the middle of the overlap\n // rather than jog between two centres (a row of items of different heights).\n if (from.count === 1 && to.count === 1) {\n const span = (e: End) => (horizontal(e.face) ? [e.rect.y, e.rect.y + e.rect.h] : [e.rect.x, e.rect.x + e.rect.w])\n const [a0, a1] = span(from), [b0, b1] = span(to)\n const lo = Math.max(a0, b0), hi = Math.min(a1, b1)\n if (hi - lo >= 2 * PORT_INSET) from.at = to.at = (lo + hi) / 2\n }\n const s = anchor(from), t = anchor(to)\n const straight = horizontal(from.face) ? Math.abs(s.y - t.y) < 0.5 : Math.abs(s.x - t.x) < 0.5\n pairs.push({ from, to, s, t, straight })\n }\n\n // Pass 2: SLOTS. Everything that lands mid-channel — an elbow's cross segment, a straight edge's\n // label — would land on the same line, and a dashed back edge ran under the 'tasks' label that way.\n // Each user of a channel gets its own slot, evenly spaced, in edge order (deterministic).\n const slot = new Map<number, number>()\n const users = new Map<string, number[]>()\n for (const { from, straight } of pairs) {\n const c = channel[from.edge]\n if (c && (!straight || edges[from.edge].label)) users.set(c.key, [...(users.get(c.key) ?? []), from.edge])\n }\n const shared = new Map<number, number>()\n for (const list of users.values()) {\n list.sort((a, b) => a - b)\n const { lo, hi } = channel[list[0]]!\n // Evenly spaced across the channel — unless that puts an end slot within a head's length of an\n // anchor, when they spread over the part that keeps every run at least HEAD_LEN. The layout widens\n // a shared channel to slotRoom(n), so that part always holds them SLOT_GAP apart.\n const inLo = lo + ANCHOR_OUTSET + HEAD_LEN, inHi = hi - ANCHOR_OUTSET - HEAD_LEN, n = list.length\n const even = (k: number) => lo + ((k + 1) * (hi - lo)) / (n + 1)\n const fits = even(0) >= inLo && even(n - 1) <= inHi\n list.forEach((e, k) => {\n slot.set(e, fits || n === 1 ? even(k) : inLo + (k * Math.max(0, inHi - inLo)) / (n - 1))\n shared.set(e, n)\n })\n }\n\n const routed: Routed[] = []\n for (const { from, s, t } of pairs) {\n let points: Pt[]\n if (horizontal(from.face)) {\n const mx = slot.get(from.edge) ?? (s.x + t.x) / 2\n points = Math.abs(s.y - t.y) < 0.5 ? [s, { x: t.x, y: s.y }] : [s, { x: mx, y: s.y }, { x: mx, y: t.y }, t]\n } else {\n const my = slot.get(from.edge) ?? (s.y + t.y) / 2\n points = Math.abs(s.x - t.x) < 0.5 ? [s, { x: s.x, y: t.y }] : [s, { x: s.x, y: my }, { x: t.x, y: my }, t]\n }\n const [p, q] = points.length === 4 ? [points[1], points[2]] : points\n const mid = (from.count - 1) / 2\n const side = from.count === 1 || from.rank === mid ? 'on' : from.rank < mid ? 'before' : 'after'\n const seg = p.y === q.y ? 'h' : 'v'\n // A straight edge's label sits at its slot (if it has one), so it never shares a line with an elbow.\n const at = slot.get(from.edge)\n const label = points.length === 2 && at !== undefined\n ? (horizontal(from.face) ? { x: at, y: p.y } : { x: p.x, y: at }) : { x: (p.x + q.x) / 2, y: (p.y + q.y) / 2 }\n routed.push({ edge: edges[from.edge], index: from.edge, axis: horizontal(from.face) ? 'h' : 'v', points, label: { ...label, side, seg }, slots: shared.get(from.edge) ?? 0 })\n }\n return routed\n}\n","export interface Size { w: number; h: number }\nexport interface Fit { scale: number; x: number; y: number }\n\n/** Margin on each side, as a fraction of the pane's own axis. */\nexport const FIT_PADDING = 0.04\nexport const MIN_SCALE = 0.05\n/** A small scene stops growing here, so it still reads as a diagram, not a poster. */\nexport const MAX_SCALE = 4\n\n/**\n * The fit is a PURE function of the pane and the content's natural size — no async, no history.\n * That is what makes recordings reproducible: two frames whose scenes have the same natural box get\n * the same scale and put every panel at the same pixels.\n */\nexport function fitTransform(pane: Size, content: Size): Fit {\n if (!content.w || !content.h) return { scale: 1, x: 0, y: 0 }\n const raw = Math.min((pane.w * (1 - 2 * FIT_PADDING)) / content.w, (pane.h * (1 - 2 * FIT_PADDING)) / content.h)\n const scale = Math.min(MAX_SCALE, Math.max(MIN_SCALE, raw))\n return { scale, x: (pane.w - content.w * scale) / 2, y: (pane.h - content.h * scale) / 2 }\n}\n","import type { ThemeKey, Tone } from './types'\n\n// A theme owns the SHADE; a tone owns the HUE FAMILY, identical in every theme.\n// Values stay 6-digit hex so they can be concatenated with alpha later.\n\nexport interface ToneColors { accent: string; tint: string }\n\n/** The code surface and its seven token colours — one set per theme, shared by every language. */\nexport interface CodeColors { bg: string; bar: string; gutter: string; var: string; method: string; keyword: string; string: string; number: string; punct: string; comment: string }\n\nexport interface Theme {\n bg: string\n surface: string\n line: string\n ink: string\n muted: string\n edge: string\n pulse: string\n tones: Record<Tone, ToneColors>\n code: CodeColors\n}\n\n// `bg` is the PLATFORM canvas — @graphlearning/shell's `--bg` (#1a1d23 / #f7f8fa) — so a scene sits\n// seamlessly in the shell's frame. Change one and the other shows an edge round every scene.\nexport const THEMES: Record<ThemeKey, Theme> = {\n dark: {\n bg: '#1a1d23', surface: '#22262e', line: '#2f343d', ink: '#eef2f8', muted: '#9aa4b2', edge: '#7d8796', pulse: '#7dd3fc',\n tones: {\n neutral: { accent: '#9aa4b2', tint: '#181b20' },\n source: { accent: '#a3adbb', tint: '#1b1e24' },\n ingest: { accent: '#4f8ff7', tint: '#111d2e' },\n store: { accent: '#37b877', tint: '#122419' },\n serve: { accent: '#c98bff', tint: '#1e1428' },\n consume: { accent: '#f0656f', tint: '#2a1416' },\n infra: { accent: '#f0902f', tint: '#241c12' },\n },\n code: {\n bg: '#0e1420', bar: '#131b29', gutter: '#4f5a6c', var: '#eceef2', method: '#5b8cff', keyword: '#b98bff',\n string: '#37d39a', number: '#ff7a59', punct: '#8b909c', comment: '#6b748b',\n },\n },\n light: {\n bg: '#f7f8fa', surface: '#ffffff', line: '#d9dee5', ink: '#1b1f24', muted: '#5a6675', edge: '#6b7686', pulse: '#0284c7',\n tones: {\n neutral: { accent: '#5a6675', tint: '#f3f5f8' },\n source: { accent: '#4b5563', tint: '#f1f2f4' },\n ingest: { accent: '#1f5fc4', tint: '#e8effc' },\n store: { accent: '#177a4a', tint: '#e7f7ee' },\n serve: { accent: '#7b3fbf', tint: '#f3eafd' },\n consume: { accent: '#c0303c', tint: '#fdeaec' },\n infra: { accent: '#b4610f', tint: '#fdf1e4' },\n },\n code: {\n bg: '#f6f8fb', bar: '#eceff4', gutter: '#9aa4b2', var: '#1b1f24', method: '#1f5fc4', keyword: '#7b3fbf',\n string: '#177a4a', number: '#b4500f', punct: '#5a6675', comment: '#7a8494',\n },\n },\n}\n","import { useEffect, useLayoutEffect, useMemo, useRef, useState, type CSSProperties } from 'react'\nimport { ICONS } from './icons'\nimport { Edges } from './Edges'\nimport { TableView, tableRows } from './Table'\nimport { CodeView, codeLineIds } from './Code'\nimport { PlotView } from './Plot'\nimport { TreeView, treeEntryIds } from './Tree'\nimport { TtyView, ttyRowIds } from './Tty'\nimport { routeEdges, slotRoom, type Rect } from './routing'\nimport { fitTransform, type Size } from './fit'\nimport { THEMES, type Theme } from './theme'\nimport type { Group, Item, Scene as SceneModel, SceneNode, ThemeKey } from './types'\n\n// Layout is CSS grid all the way down: a row is N auto columns (one per non-spanning child),\n// a col is one, a grid is `cols`. `span: 'all'` runs 1 / -1. Grid — not flex — because a\n// spanning child must not change the natural width the fit will later scale.\n\ntype Dir = 'row' | 'col' | 'grid'\n\n/**\n * The gap an arrow is drawn in. A body whose children an edge runs BETWEEN gets at least EDGE_GAP;\n * on the axis a LABELLED edge crosses it, the label's measured size plus LABEL_ROOM a side; and where\n * several edges share the channel, slotRoom(n) — a slot each and a full arrowhead's run at both ends.\n */\nconst GAP = 10\nconst EDGE_GAP = 32\nconst LABEL_ROOM = 24\n\ntype Gaps = Record<string, { col: number; row: number }>\n\nfunction bodyStyle(dir: Dir, children: SceneNode[], cols: number | undefined, gap?: { col: number; row: number }): CSSProperties {\n const n = dir === 'grid' ? cols ?? 2 : dir === 'row' ? Math.max(1, children.filter((c) => c.span !== 'all').length) : 1\n return { gridTemplateColumns: `repeat(${n}, auto)`, columnGap: gap?.col ?? GAP, rowGap: gap?.row ?? GAP }\n}\n\n/**\n * Each edge's lowest common ancestor ('' for the scene root) — the body it runs across — and the two\n * children of it that hold its ends, which the router picks faces from. Derived from the scene, never\n * authored, so spacing stays declarative. undefined = not drawable.\n */\ntype Crossing = { body: string; sides: [string, string] } | undefined\n\nfunction edgeBodies(scene: SceneModel): Crossing[] {\n const parent = new Map<string, string>()\n // A table's rows are its children for edge planning: `main.list` sits under `main`.\n const walk = (nodes: SceneNode[], p: string) => nodes.forEach((n) => {\n parent.set(n.id, p)\n if (n.type === 'group') walk(n.children, n.id)\n for (const id of lateralIdsOf(n)) parent.set(id, n.id)\n })\n walk(scene.nodes, '')\n const chain = (id: string) => { const out = [id]; while (parent.has(out.at(-1)!)) out.push(parent.get(out.at(-1)!)!); return out }\n return (scene.edges ?? []).map((e) => {\n if (!parent.has(e.from) || !parent.has(e.to)) return undefined\n const from = chain(e.from), to = chain(e.to)\n const lca = from.find((id) => to.includes(id))\n if (lca === undefined || lca === e.from || lca === e.to) return undefined\n const below = (c: string[]) => c[c.indexOf(lca) - 1]\n return { body: lca, sides: [below(from), below(to)] }\n })\n}\n\n/** A leaf's addressable slices — table rows, code lines. Each is a child of its leaf for planning. */\nconst lateralIdsOf = (n: SceneNode): string[] =>\n n.type === 'table' ? tableRows(n).flatMap((r) => (r.address ? [r.address] : []))\n : n.type === 'code' ? codeLineIds(n) : n.type === 'tree' ? treeEntryIds(n) : n.type === 'tty' ? ttyRowIds(n) : []\n\n/** Every slice id — the ends the router may connect only through left/right (their top and bottom are inside). */\nfunction lateralIds(nodes: SceneNode[], out = new Set<string>()): Set<string> {\n for (const n of nodes) {\n if (n.type === 'group') lateralIds(n.children, out)\n for (const id of lateralIdsOf(n)) out.add(id)\n }\n return out\n}\n\nfunction baseGaps(bodies: Crossing[]): Gaps {\n const out: Gaps = {}\n for (const b of bodies) if (b) out[b.body] = { col: EDGE_GAP, row: EDGE_GAP }\n return out\n}\n\nconst toneVars = (theme: Theme, node: SceneNode): CSSProperties | undefined =>\n node.tone && ({ '--gf-accent': theme.tones[node.tone].accent, '--gf-tint': theme.tones[node.tone].tint } as CSSProperties)\n\n/** Placement shared by every node: span, the min-size floors, and `fill` (stretch instead of hug). */\nconst spanStyle = (node: SceneNode): CSSProperties => {\n const minW = node.w ?? node.minW, maxW = node.w ?? node.maxW, minH = node.h ?? node.minH, maxH = node.h ?? node.maxH\n return {\n ...(node.span === 'all' && { gridColumn: '1 / -1' }),\n ...(minW !== undefined && { minWidth: minW }),\n ...(maxW !== undefined && { maxWidth: maxW }),\n ...(minH !== undefined && { minHeight: minH }),\n ...(maxH !== undefined && { maxHeight: maxH }),\n ...(node.fill && { justifySelf: 'stretch', alignSelf: 'stretch' }),\n }\n}\n\nfunction ItemView({ node, theme }: { node: Item; theme: Theme }) {\n const draw = node.icon ? ICONS[node.icon] : undefined\n return (\n <div className=\"gf-item\" data-id={node.id} data-stack={node.stack || undefined} data-chip={node.chip || undefined} data-muted={node.muted || undefined} style={{ ...toneVars(theme, node), ...spanStyle(node) }}>\n {/* Icon sizes are multiples of the item's text (16px): row 2em, card 3em, chip 1.15em. */}\n {draw?.(node.stack ? '3em' : node.chip ? '1.15em' : '2em', theme.surface, theme.ink)}\n <div>\n <div className=\"gf-item-title\">{node.title}</div>\n {node.sub && <div className=\"gf-item-sub\">{node.sub}</div>}\n {node.bullets && <ul className=\"gf-bullets\">{node.bullets.map((b) => <li key={b}>{b}</li>)}</ul>}\n </div>\n </div>\n )\n}\n\nfunction GroupView({ node, theme, gaps }: { node: Group; theme: Theme; gaps: Gaps }) {\n // A notebook cell: the `[n]` gutter beside a body that stacks the input and its outputs.\n if (node.cell != null) return (\n <div className=\"gf-group\" data-id={node.id} data-cell style={{ ...toneVars(theme, node), ...spanStyle(node) }}>\n <div className=\"gf-cell-n\">[{node.cell === true ? ' ' : node.cell}]</div>\n <div className=\"gf-body\" style={bodyStyle('col', node.children, undefined, gaps[node.id])}>\n {node.children.map((c) => <NodeView key={c.id} node={c} theme={theme} gaps={gaps} />)}\n </div>\n </div>\n )\n return (\n <div className=\"gf-group\" data-id={node.id} data-bare={node.bare || undefined} data-dashed={node.dashed || undefined} data-muted={node.muted || undefined} data-toned={node.tone || undefined} data-spread={node.spread || undefined} style={{ ...toneVars(theme, node), ...spanStyle(node) }}>\n {(node.title || node.badge != null) && (\n <div className=\"gf-group-head\">\n <div className=\"gf-group-title\">\n {node.badge != null && <span className=\"gf-badge\">{node.badge}</span>}\n {node.icon && ICONS[node.icon]?.('1.25em', theme.surface, theme.ink)}\n {node.title}\n </div>\n {node.sub && <div className=\"gf-group-sub\">{node.sub}</div>}\n </div>\n )}\n <div className=\"gf-body\" style={bodyStyle(node.dir ?? 'col', node.children, node.cols, gaps[node.id])}>\n {node.children.map((c) => <NodeView key={c.id} node={c} theme={theme} gaps={gaps} />)}\n </div>\n </div>\n )\n}\n\nfunction NodeView({ node, theme, gaps }: { node: SceneNode; theme: Theme; gaps: Gaps }) {\n if (node.type === 'group') return <GroupView node={node} theme={theme} gaps={gaps} />\n if (node.type === 'table') return <TableView node={node} theme={theme} style={{ ...toneVars(theme, node), ...spanStyle(node) }} />\n if (node.type === 'code') return <CodeView node={node} style={{ ...toneVars(theme, node), ...spanStyle(node) }} />\n if (node.type === 'plot') return <PlotView node={node} theme={theme} style={{ ...toneVars(theme, node), ...spanStyle(node) }} />\n if (node.type === 'tree') return <TreeView node={node} theme={theme} style={{ ...toneVars(theme, node), ...spanStyle(node) }} />\n if (node.type === 'tty') return <TtyView node={node} style={{ ...toneVars(theme, node), ...spanStyle(node) }} />\n if (node.type === 'note') return <div className=\"gf-note\" data-id={node.id} style={{ ...toneVars(theme, node), ...spanStyle(node) }}>{node.text}</div>\n return <ItemView node={node} theme={theme} />\n}\n\n/**\n * `focus` names one node (any id, a table row or a code line included) to single out: it gets a\n * ring and a glow, drawn with box-shadow so the layout — and therefore the fit — never moves. That is\n * what lets every section of a course focus a different node on the same scene without a jump.\n *\n * Fills its parent (give the parent a size) and scales the scene's natural box to fit, centred.\n * The viewport is locked: no wheel or drag handlers, so page scroll passes through and text stays\n * selectable. `data-fit=\"ready\"` marks the first fit after fonts load with edges routed — what a recorder waits on.\n */\nexport function Scene({ scene, theme: key = 'dark', focus }: { scene: SceneModel; theme?: ThemeKey; focus?: string }) {\n const t = THEMES[key]\n const bodies = useMemo(() => edgeBodies(scene), [scene])\n const rowIds = useMemo(() => lateralIds(scene.nodes), [scene])\n\n // An edge naming an id the scene does not have is an authoring error, never a silent skip.\n useEffect(() => {\n const known = new Set<string>(rowIds)\n const walk = (nodes: SceneNode[]): void => nodes.forEach((n) => { known.add(n.id); if (n.type === 'group') walk(n.children) })\n walk(scene.nodes)\n for (const e of scene.edges ?? [])\n for (const id of [e.from, e.to]) if (!known.has(id)) console.error(`graphl-flow: edge ${e.from} → ${e.to} names unknown id \"${id}\"`)\n }, [scene, rowIds])\n const [gaps, setGaps] = useState<Gaps>(() => baseGaps(bodies))\n const [gapsSettled, setGapsSettled] = useState(false)\n const pane = useRef<HTMLDivElement>(null)\n const content = useRef<HTMLDivElement>(null)\n const [sizes, setSizes] = useState<{ pane: Size; content: Size } | null>(null)\n const [fontsReady, setFontsReady] = useState(false)\n const [rects, setRects] = useState<Map<string, Rect> | null>(null)\n\n // offsetWidth/Height are layout sizes, untouched by the transform we apply.\n const measure = () => {\n const p = pane.current, c = content.current\n if (!p || !c) return\n const next = { pane: { w: p.offsetWidth, h: p.offsetHeight }, content: { w: c.offsetWidth, h: c.offsetHeight } }\n setSizes((prev) =>\n prev && prev.pane.w === next.pane.w && prev.pane.h === next.pane.h && prev.content.w === next.content.w && prev.content.h === next.content.h\n ? prev : next)\n }\n useLayoutEffect(measure, [scene, key, gaps])\n\n // Focus is an attribute on whatever element carries the id — a node, a row, a line — so it reaches\n // every addressable thing without each renderer knowing about it. No layout effect.\n useLayoutEffect(() => {\n const c = content.current\n if (!c) return\n c.querySelectorAll('[data-focus]').forEach((e) => e.removeAttribute('data-focus'))\n if (focus) c.querySelector(`[data-id=\"${CSS.escape(focus)}\"]`)?.setAttribute('data-focus', '')\n }, [focus, scene])\n\n // Node boxes in the content's natural coordinates: undo the fit by dividing out its scale.\n // Re-measured whenever the content's size, the fonts or the scene change.\n useLayoutEffect(() => {\n const c = content.current\n if (!c || !sizes) return\n const box = c.getBoundingClientRect()\n const s = box.width / c.offsetWidth || 1\n const next = new Map<string, Rect>()\n for (const el of c.querySelectorAll<HTMLElement>('[data-id]')) {\n const r = el.getBoundingClientRect()\n next.set(el.dataset.id!, { x: (r.left - box.left) / s, y: (r.top - box.top) / s, w: r.width / s, h: r.height / s })\n }\n setRects((prev) => (prev && JSON.stringify([...prev]) === JSON.stringify([...next]) ? prev : next))\n }, [sizes?.content.w, sizes?.content.h, fontsReady, scene, gaps])\n\n // Second pass: widen each labelled edge's body to its label's measured size (offsetWidth/Height\n // are untransformed). Label sizes do not depend on the gaps, so this settles in one more layout.\n useLayoutEffect(() => {\n const c = content.current\n if (!c || !rects) return\n const need = baseGaps(bodies)\n // A channel several edges share needs room for a slot each AND a full head's run at both ends\n // (slotRoom): three arrows into one node through a 32px gap once flipped an arrowhead.\n for (const r of routed) {\n const body = bodies[r.index]?.body\n if (body === undefined || r.slots < 2) continue\n if (r.axis === 'h') need[body].col = Math.max(need[body].col, slotRoom(r.slots))\n else need[body].row = Math.max(need[body].row, slotRoom(r.slots))\n }\n for (const el of c.querySelectorAll<HTMLElement>('.gf-edge-label')) {\n const i = Number(el.dataset.edge), body = bodies[i]?.body, r = routed.find((x) => x.index === i)\n if (body === undefined || !r) continue\n if (r.axis === 'h') need[body].col = Math.max(need[body].col, el.offsetWidth + 2 * LABEL_ROOM)\n else need[body].row = Math.max(need[body].row, el.offsetHeight + 2 * LABEL_ROOM)\n }\n const same = JSON.stringify(need) === JSON.stringify(gaps)\n if (!same) setGaps(need)\n setGapsSettled(same)\n }, [rects, gaps, bodies])\n\n useEffect(() => {\n const ro = new ResizeObserver(measure)\n ro.observe(pane.current!)\n ro.observe(content.current!)\n let live = true\n document.fonts.ready.then(() => { if (live) { measure(); setFontsReady(true) } })\n return () => { live = false; ro.disconnect() }\n }, [])\n\n const fit = sizes && fitTransform(sizes.pane, sizes.content)\n const routed = rects && scene.edges?.length ? routeEdges(scene.edges, rects, bodies.map((b) => b?.sides), rowIds) : []\n const vars = {\n '--gf-bg': t.bg, '--gf-surface': t.surface, '--gf-line': t.line, '--gf-ink': t.ink, '--gf-muted': t.muted, '--gf-edge': t.edge, '--gf-pulse': t.pulse, '--gf-ok': t.tones.store.accent, '--gf-err': t.tones.consume.accent,\n ...Object.fromEntries(Object.entries(t.code).map(([k, v]) => [`--gf-code-${k}`, v])),\n '--gf-accent': t.tones.neutral.accent, '--gf-tint': t.tones.neutral.tint,\n } as CSSProperties\n return (\n <div ref={pane} className=\"gf-scene\" data-theme={key} data-fit={fit && fontsReady && rects && gapsSettled ? 'ready' : 'pending'} style={vars}>\n <div\n ref={content}\n className=\"gf-content\"\n style={fit ? { transform: `translate(${fit.x}px, ${fit.y}px) scale(${fit.scale})` } : { visibility: 'hidden' }}\n >\n {scene.title && <div className=\"gf-scene-title\">{scene.title}</div>}\n {scene.sub && <div className=\"gf-scene-sub\">{scene.sub}</div>}\n <div className=\"gf-body\" style={bodyStyle(scene.dir ?? 'col', scene.nodes, undefined, gaps[''])}>\n {scene.nodes.map((n) => <NodeView key={n.id} node={n} theme={t} gaps={gaps} />)}\n </div>\n {sizes && <Edges routed={routed} size={sizes.content} pulse={scene.pulse !== false} />}\n </div>\n </div>\n )\n}\n"],"names":["EventHubs","size","props","_jsxs","_jsx","StreamAnalyticsJobs","AzureSynapseAnalytics","PowerBIEmbedded","DataFactories","AnalysisServices","AzureDatabricks","VirtualMachine","KubernetesServices","FunctionApps","AzureSQL","AzurePurviewAccounts","AzureCosmosDB","AzureDevOps","AzureServiceBus","LogAnalyticsWorkspaces","Monitor","MicrosoftDefenderForCloud","KeyVaults","StorageAccounts","DataLakeStorageGen1","_extends","a","b","c","d","React","require$$0","ArchitectureServiceAmazonSimpleStorageService","ArchitectureServiceAWSGlue","ArchitectureServiceAmazonRedshift","ArchitectureServiceAmazonAthena","ArchitectureServiceAmazonKinesis","ArchitectureServiceAmazonDataFirehose","ArchitectureServiceAmazonEMR","ArchitectureServiceAWSLambda","ArchitectureServiceAmazonDynamoDB","ArchitectureServiceAmazonRDS","ArchitectureServiceAmazonAurora","ArchitectureServiceAmazonCloudWatch","ArchitectureServiceAWSIdentityandAccessManagement","ArchitectureServiceAmazonManagedStreamingforApacheKafka","ArchitectureServiceAWSLakeFormation","ArchitectureServiceAmazonEC2","ArchitectureServiceAmazonSimpleQueueService","ArchitectureServiceAmazonSimpleNotificationService","ArchitectureServiceAWSStepFunctions","ArchitectureServiceAmazonEventBridge","ArchitectureServiceAWSKeyManagementService","ArchitectureServiceAWSSecretsManager","ArchitectureServiceAmazonElasticKubernetesService","ArchitectureServiceAmazonSageMaker","ArchitectureServiceAmazonAPIGateway","ArchitectureServiceAmazonVirtualPrivateCloud","ArchitectureServiceAWSCloudFormation","ArchitectureServiceAmazonManagedWorkflowsforApacheAirflow","ArchitectureServiceAWSDatabaseMigrationService","ArchitectureServiceAmazonElastiCache","ArchitectureServiceAmazonElasticContainerService","ArchitectureServiceAWSFargate","ArchitectureServiceAmazonElasticContainerRegistry","ArchitectureServiceElasticLoadBalancing","ArchitectureServiceAmazonRoute53","ArchitectureServiceAmazonCloudFront","ArchitectureServiceAWSWAF","ArchitectureServiceAWSCloudTrail","ArchitectureServiceAWSCertificateManager","ArchitectureServiceAWSBackup","ArchitectureServiceAWSOrganizations","ArchitectureServiceAWSSystemsManager","ArchitectureServiceAWSBudgets","ArchitectureServiceAWSCostExplorer","ArchitectureServiceAWSIAMIdentityCenter","ArchitectureServiceAWSXRay","ArchitectureGroupRegion","ArchitectureGroupAWSAccount","ArchitectureGroupPublicsubnet","ArchitectureGroupPrivatesubnet","ArchitectureGroupAutoScalinggroup","ResourceElasticLoadBalancingApplicationLoadBalancer","ResourceAmazonVPCNATGateway","ResourceAmazonVPCInternetGateway","ResourceAmazonVPCEndpoints","ResourceAmazonVPCRouter","ResourceAWSIdentityAccessManagementAWSSTS","ResourceAWSIdentityAccessManagementRole","ResourceAWSIdentityAccessManagementPermissions","ResourceAmazonElasticContainerServiceTask","ResourceAmazonElasticContainerServiceService","ResourceAmazonElasticContainerServiceContainer1","ResourceAmazonSimpleStorageServiceBucket","ResourceAmazonSimpleQueueServiceQueue","ResourceAmazonSimpleQueueServiceMessage","ResourceAmazonSimpleNotificationServiceTopic","ResourceAmazonRoute53HostedZone","t","siAlmalinux","siApacheairflow","siApacheflink","siApachekafka","siApachemaven","siApachespark","siApple","siArchlinux","siDebian","siDocker","siDuckdb","siFedora","siGit","siGithub","siGithubactions","siGnubash","siGrafana","siJunit5","siJupyter","siKubernetes","siLetsencrypt","siLinux","siMacos","siMongodb","siNginx","siOpenjdk","siPandas","siPostgresql","siPrometheus","siPython","siRedhat","siRockylinux","siSnowflake","siTerraform","siUbuntu","siZsh","LUCIDE","Activity","Bell","Box","Building2","ChartColumn","ChartPie","ClipboardCheck","Clock","Cloud","Code2","Cpu","CreditCard","Database","Factory","FileText","Filter","Fingerprint","Folder","GitBranch","Globe","HardDrive","KeyRound","Layers","Lock","Network","Package","RadioTower","Search","Server","Settings","ShieldCheck","Table2","Terminal","User","UserCog","Users","Workflow","Zap","Waves","Brain","Boxes","MemoryStick","Archive","BadgeCheck","BrickWall","Gauge","Laptop","Power","ScrollText","Timer","AZURE","DataFactoriesAnalytics","EventHubsAnalytics","AzureSynapseAnalyticsAnalytics","MonitorMonitor","LogAnalyticsWorkspacesManagementGovernance","AzureCosmosDBDatabases","FunctionAppsCompute","KubernetesServicesCompute","StreamAnalyticsJobsAnalytics","AWS","S3","Glue","Redshift","Athena","Kinesis","Firehose","EMR","Lambda","DynamoDB","RDS","Aurora","CloudWatch","IAM","MSK","LakeFormation","EC2","SQS","SNS","StepFunctions","EventBridge","KMS","SecretsManager","EKS","SageMaker","APIGateway","VPC","CloudFormation","MWAA","DMS","ElastiCache","ECS","Fargate","ECR","ELB","Route53","CloudFront","WAF","CloudTrail","ACM","Backup","Organizations","SystemsManager","Budgets","CostExplorer","IdentityCenter","XRay","Region","Account","PublicSubnet","PrivateSubnet","AutoScalingGroup","AWS_RESOURCE","ALB","NATGateway","InternetGateway","VPCEndpoint","Router","STS","IAMRole","IAMPermissions","ECSTask","ECSService","Container","Bucket","Queue","Message","Topic","HostedZone","BRAND","merge","sets","out","set","k","v","map","draw","luminance","hex","i","BRAND_MIN_CONTRAST","brandFill","surface","ink","ICONS","Icon","jsx","PULSE_S","HEAD_TRIM","trim","points","start","end","p","pull","pathOf","LABEL_SHIFT","Edges","routed","pulse","uid","useId","arrow","glow","dot","reverse","jsxs","Fragment","r","PLAIN","tableRows","table","rows","firsts","own","tint","theme","tone","TableView","node","style","tagged","width","_a","_","j","KEYWORDS","HCL_KEYWORDS","NGINX_KEYWORDS","NFT_KEYWORDS","COMMENT","SHELL_KEYWORDS","OWN","tokenizeIni","src","lead","rest","kv","NO_MEMBER","escape","s","tokenize","lang","isKeyword","word","token","afterDot","plain","afterSlash","statement","text","ws","comment","str","num","anno","joined","_b","cls","dedent","lines","indent","l","codeRows","keep","codeLineIds","foldLabel","n","PROMPTS","parsePrompt","row","re","m","consoleRows","cols","prompt","head","widths","toks","cut","left","PromptView","ConsoleView","lit","CodeView","kind","Toks","PLOT_W","PLOT_H","COMPACT_W","COMPACT_H","CHAR_W","TICK_GAP","AXIS_LABEL","RAMP","niceStep","span","raw","mag","decimals","step","axis","min","max","ticks","seriesPoints","construction","labelAt","pts","PlotView","clip","X","Y","PW","PH","origin","chars","bottom","top","sx","sy","overhang","at","right","W","H","ax","ay","rampAt","q","colour","legend","base","x","y","slot","x1","y1","x2","y2","L","tip","back","BY_EXTENSION","iconOf","e","treeRows","entries","depth","prefix","entry","path","treeEntryIds","TreeView","folder","ChevronDown","ChevronRight","ttyRowIds","runs","line","has","spans","col","inverse","bold","last","TtyView","ANCHOR_OUTSET","PORT_INSET","PORT_MIN_GAP","HEAD_LEN","SLOT_GAP","slotRoom","centre","horizontal","f","facesOf","lateral","down","up","gx","gy","placePorts","ends","byFace","key","group","rect","face","len","lo","hi","anchor","routeEdges","edges","rects","sides","channel","edge","sa","sb","id","faces","pairs","from","to","a0","a1","b0","b1","straight","users","shared","list","inLo","inHi","even","fits","mx","my","mid","side","seg","label","FIT_PADDING","MIN_SCALE","MAX_SCALE","fitTransform","pane","content","scale","THEMES","GAP","EDGE_GAP","LABEL_ROOM","bodyStyle","dir","children","gap","edgeBodies","scene","parent","walk","nodes","lateralIdsOf","chain","lca","below","lateralIds","baseGaps","bodies","toneVars","spanStyle","minW","maxW","minH","maxH","ItemView","GroupView","gaps","NodeView","Scene","focus","useMemo","rowIds","useEffect","known","setGaps","useState","gapsSettled","setGapsSettled","useRef","sizes","setSizes","fontsReady","setFontsReady","setRects","measure","next","prev","useLayoutEffect","box","el","need","body","same","ro","live","fit","vars"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88]}
1
+ {"version":3,"file":"index.js","sources":["../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/00039-icon-service-Event-Hubs.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/00042-icon-service-Stream-Analytics-Jobs.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/00606-icon-service-Azure-Synapse-Analytics.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/03332-icon-service-Power-BI-Embedded.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/10126-icon-service-Data-Factories.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/10148-icon-service-Analysis-Services.js","../node_modules/@threeveloper/azure-react-icons/dist/components/analytics/10787-icon-service-Azure-Databricks.js","../node_modules/@threeveloper/azure-react-icons/dist/components/compute/10021-icon-service-Virtual-Machine.js","../node_modules/@threeveloper/azure-react-icons/dist/components/compute/10023-icon-service-Kubernetes-Services.js","../node_modules/@threeveloper/azure-react-icons/dist/components/compute/10029-icon-service-Function-Apps.js","../node_modules/@threeveloper/azure-react-icons/dist/components/databases/02390-icon-service-Azure-SQL.js","../node_modules/@threeveloper/azure-react-icons/dist/components/databases/02517-icon-service-Azure-Purview-Accounts.js","../node_modules/@threeveloper/azure-react-icons/dist/components/databases/10121-icon-service-Azure-Cosmos-DB.js","../node_modules/@threeveloper/azure-react-icons/dist/components/devops/10261-icon-service-Azure-DevOps.js","../node_modules/@threeveloper/azure-react-icons/dist/components/integration/10836-icon-service-Azure-Service-Bus.js","../node_modules/@threeveloper/azure-react-icons/dist/components/management + governance/00009-icon-service-Log-Analytics-Workspaces.js","../node_modules/@threeveloper/azure-react-icons/dist/components/monitor/00001-icon-service-Monitor.js","../node_modules/@threeveloper/azure-react-icons/dist/components/security/10241-icon-service-Microsoft-Defender-for-Cloud.js","../node_modules/@threeveloper/azure-react-icons/dist/components/security/10245-icon-service-Key-Vaults.js","../node_modules/@threeveloper/azure-react-icons/dist/components/storage/10086-icon-service-Storage-Accounts.js","../node_modules/@threeveloper/azure-react-icons/dist/components/storage/10090-icon-service-Data-Lake-Storage-Gen1.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonSimpleStorageService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSGlue.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonRedshift.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonAthena.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonKinesis.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonDataFirehose.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonEMR.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSLambda.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonDynamoDB.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonRDS.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonAurora.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonCloudWatch.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSIdentityandAccessManagement.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonManagedStreamingforApacheKafka.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSLakeFormation.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonEC2.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonSimpleQueueService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonSimpleNotificationService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSStepFunctions.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonEventBridge.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSKeyManagementService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSSecretsManager.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonElasticKubernetesService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonSageMaker.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonAPIGateway.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonVirtualPrivateCloud.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSCloudFormation.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonManagedWorkflowsforApacheAirflow.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSDatabaseMigrationService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonElastiCache.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonElasticContainerService.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSFargate.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonElasticContainerRegistry.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceElasticLoadBalancing.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonRoute53.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAmazonCloudFront.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSWAF.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSCloudTrail.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSCertificateManager.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSBackup.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSOrganizations.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSSystemsManager.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSBudgets.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSCostExplorer.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSIAMIdentityCenter.js","../node_modules/aws-react-icons/lib/icons/ArchitectureServiceAWSXRay.js","../node_modules/aws-react-icons/lib/icons/ArchitectureGroupRegion.js","../node_modules/aws-react-icons/lib/icons/ArchitectureGroupAWSAccount.js","../node_modules/aws-react-icons/lib/icons/ArchitectureGroupPublicsubnet.js","../node_modules/aws-react-icons/lib/icons/ArchitectureGroupPrivatesubnet.js","../node_modules/aws-react-icons/lib/icons/ArchitectureGroupAutoScalinggroup.js","../node_modules/aws-react-icons/lib/icons/ResourceElasticLoadBalancingApplicationLoadBalancer.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonVPCNATGateway.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonVPCInternetGateway.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonVPCEndpoints.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonVPCRouter.js","../node_modules/aws-react-icons/lib/icons/ResourceAWSIdentityAccessManagementAWSSTS.js","../node_modules/aws-react-icons/lib/icons/ResourceAWSIdentityAccessManagementRole.js","../node_modules/aws-react-icons/lib/icons/ResourceAWSIdentityAccessManagementPermissions.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonElasticContainerServiceTask.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonElasticContainerServiceService.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonElasticContainerServiceContainer1.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonSimpleStorageServiceBucket.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonSimpleQueueServiceQueue.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonSimpleQueueServiceMessage.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonSimpleNotificationServiceTopic.js","../node_modules/aws-react-icons/lib/icons/ResourceAmazonRoute53HostedZone.js","../node_modules/simple-icons/index.mjs","../src/icons.tsx","../src/Edges.tsx","../src/Table.tsx","../src/highlight.ts","../src/Code.tsx","../src/Plot.tsx","../src/Tree.tsx","../src/Tty.tsx","../src/routing.ts","../src/fit.ts","../src/theme.ts","../src/Scene.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"import type { ComponentType, ReactElement } from 'react'\nimport {\n Activity, Bell, Box, Building2, ChartColumn, ChartPie, ClipboardCheck, Clock, Cloud, Code2, Cpu,\n CreditCard, Database, Factory, FileText, Filter, Fingerprint, Folder, GitBranch, Globe, HardDrive,\n KeyRound, Layers, Lock, Monitor, Network, Package, RadioTower, Search, Server, Settings, ShieldCheck,\n Table2, Terminal, User, UserCog, Users, Workflow, Zap, Waves, Brain, Boxes, MemoryStick,\n Archive, BadgeCheck, BrickWall, Gauge, Laptop, Power, ScrollText, Timer, type LucideIcon,\n} from 'lucide-react'\nimport {\n AnalysisServices, AzureCosmosDBDatabases, AzureDatabricks, AzureDevOps, AzurePurviewAccounts, AzureServiceBus,\n AzureSQL, AzureSynapseAnalyticsAnalytics, DataFactoriesAnalytics, DataLakeStorageGen1, EventHubsAnalytics,\n FunctionAppsCompute, KeyVaults, KubernetesServicesCompute, LogAnalyticsWorkspacesManagementGovernance,\n MicrosoftDefenderForCloud, MonitorMonitor, PowerBIEmbedded, StorageAccounts, StreamAnalyticsJobsAnalytics,\n VirtualMachine,\n} from '@threeveloper/azure-react-icons'\nimport S3 from 'aws-react-icons/icons/ArchitectureServiceAmazonSimpleStorageService'\nimport Glue from 'aws-react-icons/icons/ArchitectureServiceAWSGlue'\nimport Redshift from 'aws-react-icons/icons/ArchitectureServiceAmazonRedshift'\nimport Athena from 'aws-react-icons/icons/ArchitectureServiceAmazonAthena'\nimport Kinesis from 'aws-react-icons/icons/ArchitectureServiceAmazonKinesis'\nimport Firehose from 'aws-react-icons/icons/ArchitectureServiceAmazonDataFirehose'\nimport EMR from 'aws-react-icons/icons/ArchitectureServiceAmazonEMR'\nimport Lambda from 'aws-react-icons/icons/ArchitectureServiceAWSLambda'\nimport DynamoDB from 'aws-react-icons/icons/ArchitectureServiceAmazonDynamoDB'\nimport RDS from 'aws-react-icons/icons/ArchitectureServiceAmazonRDS'\nimport Aurora from 'aws-react-icons/icons/ArchitectureServiceAmazonAurora'\nimport CloudWatch from 'aws-react-icons/icons/ArchitectureServiceAmazonCloudWatch'\nimport IAM from 'aws-react-icons/icons/ArchitectureServiceAWSIdentityandAccessManagement'\nimport MSK from 'aws-react-icons/icons/ArchitectureServiceAmazonManagedStreamingforApacheKafka'\nimport LakeFormation from 'aws-react-icons/icons/ArchitectureServiceAWSLakeFormation'\nimport EC2 from 'aws-react-icons/icons/ArchitectureServiceAmazonEC2'\nimport SQS from 'aws-react-icons/icons/ArchitectureServiceAmazonSimpleQueueService'\nimport SNS from 'aws-react-icons/icons/ArchitectureServiceAmazonSimpleNotificationService'\nimport StepFunctions from 'aws-react-icons/icons/ArchitectureServiceAWSStepFunctions'\nimport EventBridge from 'aws-react-icons/icons/ArchitectureServiceAmazonEventBridge'\nimport KMS from 'aws-react-icons/icons/ArchitectureServiceAWSKeyManagementService'\nimport SecretsManager from 'aws-react-icons/icons/ArchitectureServiceAWSSecretsManager'\nimport EKS from 'aws-react-icons/icons/ArchitectureServiceAmazonElasticKubernetesService'\nimport SageMaker from 'aws-react-icons/icons/ArchitectureServiceAmazonSageMaker'\nimport APIGateway from 'aws-react-icons/icons/ArchitectureServiceAmazonAPIGateway'\nimport VPC from 'aws-react-icons/icons/ArchitectureServiceAmazonVirtualPrivateCloud'\nimport CloudFormation from 'aws-react-icons/icons/ArchitectureServiceAWSCloudFormation'\nimport MWAA from 'aws-react-icons/icons/ArchitectureServiceAmazonManagedWorkflowsforApacheAirflow'\nimport DMS from 'aws-react-icons/icons/ArchitectureServiceAWSDatabaseMigrationService'\nimport ElastiCache from 'aws-react-icons/icons/ArchitectureServiceAmazonElastiCache'\nimport ECS from 'aws-react-icons/icons/ArchitectureServiceAmazonElasticContainerService'\nimport Fargate from 'aws-react-icons/icons/ArchitectureServiceAWSFargate'\nimport ECR from 'aws-react-icons/icons/ArchitectureServiceAmazonElasticContainerRegistry'\nimport ELB from 'aws-react-icons/icons/ArchitectureServiceElasticLoadBalancing'\nimport Route53 from 'aws-react-icons/icons/ArchitectureServiceAmazonRoute53'\nimport CloudFront from 'aws-react-icons/icons/ArchitectureServiceAmazonCloudFront'\nimport WAF from 'aws-react-icons/icons/ArchitectureServiceAWSWAF'\nimport CloudTrail from 'aws-react-icons/icons/ArchitectureServiceAWSCloudTrail'\nimport ACM from 'aws-react-icons/icons/ArchitectureServiceAWSCertificateManager'\nimport Backup from 'aws-react-icons/icons/ArchitectureServiceAWSBackup'\nimport Organizations from 'aws-react-icons/icons/ArchitectureServiceAWSOrganizations'\nimport SystemsManager from 'aws-react-icons/icons/ArchitectureServiceAWSSystemsManager'\nimport Budgets from 'aws-react-icons/icons/ArchitectureServiceAWSBudgets'\nimport CostExplorer from 'aws-react-icons/icons/ArchitectureServiceAWSCostExplorer'\nimport IdentityCenter from 'aws-react-icons/icons/ArchitectureServiceAWSIAMIdentityCenter'\nimport XRay from 'aws-react-icons/icons/ArchitectureServiceAWSXRay'\nimport Region from 'aws-react-icons/icons/ArchitectureGroupRegion'\nimport Account from 'aws-react-icons/icons/ArchitectureGroupAWSAccount'\nimport PublicSubnet from 'aws-react-icons/icons/ArchitectureGroupPublicsubnet'\nimport PrivateSubnet from 'aws-react-icons/icons/ArchitectureGroupPrivatesubnet'\nimport AutoScalingGroup from 'aws-react-icons/icons/ArchitectureGroupAutoScalinggroup'\nimport ALB from 'aws-react-icons/icons/ResourceElasticLoadBalancingApplicationLoadBalancer'\nimport NATGateway from 'aws-react-icons/icons/ResourceAmazonVPCNATGateway'\nimport InternetGateway from 'aws-react-icons/icons/ResourceAmazonVPCInternetGateway'\nimport VPCEndpoint from 'aws-react-icons/icons/ResourceAmazonVPCEndpoints'\nimport Router from 'aws-react-icons/icons/ResourceAmazonVPCRouter'\nimport STS from 'aws-react-icons/icons/ResourceAWSIdentityAccessManagementAWSSTS'\nimport IAMRole from 'aws-react-icons/icons/ResourceAWSIdentityAccessManagementRole'\nimport IAMPermissions from 'aws-react-icons/icons/ResourceAWSIdentityAccessManagementPermissions'\nimport ECSTask from 'aws-react-icons/icons/ResourceAmazonElasticContainerServiceTask'\nimport ECSService from 'aws-react-icons/icons/ResourceAmazonElasticContainerServiceService'\nimport Container from 'aws-react-icons/icons/ResourceAmazonElasticContainerServiceContainer1'\nimport Bucket from 'aws-react-icons/icons/ResourceAmazonSimpleStorageServiceBucket'\nimport Queue from 'aws-react-icons/icons/ResourceAmazonSimpleQueueServiceQueue'\nimport Message from 'aws-react-icons/icons/ResourceAmazonSimpleQueueServiceMessage'\nimport Topic from 'aws-react-icons/icons/ResourceAmazonSimpleNotificationServiceTopic'\nimport HostedZone from 'aws-react-icons/icons/ResourceAmazonRoute53HostedZone'\nimport {\n siApacheairflow, siApacheflink, siApachekafka, siApachemaven, siApachespark, siDocker, siDuckdb, siGit, siGithub,\n siGithubactions, siGrafana, siJunit5, siJupyter, siKubernetes, siMongodb, siOpenjdk, siPandas, siPostgresql,\n siPrometheus, siPython, siSnowflake, siTerraform,\n siAlmalinux, siApple, siArchlinux, siDebian, siFedora, siGnubash, siLetsencrypt, siLinux, siMacos, siNginx,\n siRedhat, siRockylinux, siUbuntu, siZsh,\n} from 'simple-icons'\n\n// Four sets, ONE key space. Every icon is a NAMED (or per-file) import, so the bundle carries only\n// these; add a key when a scene needs it. Keys match @graphlearning/flow's where both exist, so a\n// scene ports without renaming. A key may appear in ONE set only — `ICONS` throws on a duplicate.\n\n/** Generic glyphs, drawn in the node's tone accent. */\nexport const LUCIDE: Record<string, LucideIcon> = {\n activity: Activity, bell: Bell, box: Box, building: Building2, chart: ChartColumn, pie: ChartPie,\n check: ClipboardCheck, clock: Clock, cloud: Cloud, code: Code2, cpu: Cpu, card: CreditCard,\n database: Database, factory: Factory, file: FileText, filter: Filter, fingerprint: Fingerprint,\n folder: Folder, branch: GitBranch, globe: Globe, disk: HardDrive, key: KeyRound, layers: Layers,\n lock: Lock, screen: Monitor, network: Network, package: Package, stream: RadioTower, search: Search,\n server: Server, settings: Settings, shield: ShieldCheck, table: Table2, terminal: Terminal,\n user: User, admin: UserCog, users: Users, workflow: Workflow, zap: Zap, waves: Waves, brain: Brain,\n boxes: Boxes, memory: MemoryStick,\n // A server's life (0.7): no vendor draws these, so they stay generic.\n archive: Archive, cert: BadgeCheck, firewall: BrickWall, gauge: Gauge, laptop: Laptop, power: Power,\n log: ScrollText, timer: Timer,\n}\n\n/** Azure service tiles, in their own colours. The package ships no viewBox; 0 0 18 18 fits all. */\nexport const AZURE: Record<string, ComponentType<{ size?: string; viewBox?: string }>> = {\n datafactory: DataFactoriesAnalytics, eventhubs: EventHubsAnalytics, adls: DataLakeStorageGen1, storage: StorageAccounts,\n databricks: AzureDatabricks, synapse: AzureSynapseAnalyticsAnalytics, analysisservices: AnalysisServices,\n purview: AzurePurviewAccounts, keyvault: KeyVaults, defender: MicrosoftDefenderForCloud, monitor: MonitorMonitor,\n loganalytics: LogAnalyticsWorkspacesManagementGovernance, devops: AzureDevOps, powerbi: PowerBIEmbedded,\n azuresql: AzureSQL, cosmos: AzureCosmosDBDatabases, functions: FunctionAppsCompute, aks: KubernetesServicesCompute,\n streamanalytics: StreamAnalyticsJobsAnalytics, servicebus: AzureServiceBus, vm: VirtualMachine,\n}\n\n/** AWS architecture icons, in their own colours on their own rounded tile. */\nexport const AWS: Record<string, ComponentType<{ size?: number | string }>> = {\n s3: S3, glue: Glue, redshift: Redshift, athena: Athena, kinesis: Kinesis, firehose: Firehose, emr: EMR,\n lambda: Lambda, dynamodb: DynamoDB, rds: RDS, aurora: Aurora, cloudwatch: CloudWatch, iam: IAM, msk: MSK,\n lakeformation: LakeFormation, ec2: EC2, sqs: SQS, sns: SNS, stepfunctions: StepFunctions, eventbridge: EventBridge,\n kms: KMS, secretsmanager: SecretsManager, eks: EKS, sagemaker: SageMaker, apigateway: APIGateway, vpc: VPC,\n cloudformation: CloudFormation, mwaa: MWAA, dms: DMS, elasticache: ElastiCache,\n ecs: ECS, fargate: Fargate, ecr: ECR, elb: ELB, route53: Route53, cloudfront: CloudFront, waf: WAF,\n cloudtrail: CloudTrail, acm: ACM, backup: Backup, organizations: Organizations, ssm: SystemsManager,\n budgets: Budgets, costexplorer: CostExplorer, identitycenter: IdentityCenter, xray: XRay,\n // AWS's GROUP marks: the tile an architecture diagram puts on a Region, account, subnet or group's corner.\n region: Region, account: Account, publicsubnet: PublicSubnet, privatesubnet: PrivateSubnet,\n autoscaling: AutoScalingGroup,\n}\n\n/** AWS RESOURCE icons: a single-colour glyph, no tile — the parts inside a service (a NAT gateway, a\n * task, a queue), drawn smaller-looking than a service on purpose, as AWS's own diagrams do. */\nexport const AWS_RESOURCE: Record<string, ComponentType<{ size?: number | string }>> = {\n alb: ALB, natgateway: NATGateway, igw: InternetGateway, vpcendpoint: VPCEndpoint, router: Router, sts: STS,\n iamrole: IAMRole, permissions: IAMPermissions, ecstask: ECSTask, ecsservice: ECSService, container: Container,\n bucket: Bucket, queue: Queue, message: Message, topic: Topic, hostedzone: HostedZone,\n}\n\n/** Open-source / product marks (simple-icons), in the brand's colour unless it would vanish. */\nexport const BRAND: Record<string, { title: string; hex: string; path: string }> = {\n kafka: siApachekafka, spark: siApachespark, airflow: siApacheairflow, flink: siApacheflink, snowflakedb: siSnowflake,\n python: siPython, pandas: siPandas, jupyter: siJupyter, duckdb: siDuckdb, postgresql: siPostgresql, mongodb: siMongodb,\n docker: siDocker, kubernetes: siKubernetes, terraform: siTerraform, git: siGit, github: siGithub,\n githubactions: siGithubactions, grafana: siGrafana, prometheus: siPrometheus,\n // simple-icons ships no Java mark (the trademark is Oracle's); OpenJDK's is the one it has, and\n // it is what a Java scene means. Both it and Maven are near-black/deep-red — see brandFill.\n java: siOpenjdk, maven: siApachemaven, junit: siJunit5,\n // Linux (0.7): the kernel's Tux, the two families and their members, macOS, the shells, the web\n // server and the CA. simple-icons has no OpenSSH or systemd mark: those scenes use `key`/`settings`.\n linux: siLinux, debian: siDebian, ubuntu: siUbuntu, redhat: siRedhat, fedora: siFedora, rocky: siRockylinux,\n almalinux: siAlmalinux, arch: siArchlinux, apple: siApple, macos: siMacos, bash: siGnubash, zsh: siZsh,\n nginx: siNginx, letsencrypt: siLetsencrypt,\n}\n\n/** `size` is a CSS length — in em, so an icon scales WITH its text and the ratio stays designed. */\ntype Draw = (size: string, surface: string, ink: string) => ReactElement\n\nfunction merge(...sets: Record<string, Draw>[]): Record<string, Draw> {\n const out: Record<string, Draw> = {}\n for (const set of sets)\n for (const [k, v] of Object.entries(set)) {\n if (k in out) throw new Error(`graphl-flow: icon key \"${k}\" is defined in two icon sets`)\n out[k] = v\n }\n return out\n}\n\nconst map = <T,>(set: Record<string, T>, draw: (v: T) => Draw) => Object.fromEntries(Object.entries(set).map(([k, v]) => [k, draw(v)]))\n\nconst luminance = (hex: string) => {\n const c = [1, 3, 5].map((i) => parseInt(hex.slice(i, i + 2), 16) / 255).map((v) => (v <= 0.04045 ? v / 12.92 : ((v + 0.055) / 1.055) ** 2.4))\n return 0.2126 * c[0] + 0.7152 * c[1] + 0.0722 * c[2]\n}\n\n/** A brand mark under this contrast against the surface draws in ink (Kafka's black on dark). */\nexport const BRAND_MIN_CONTRAST = 2.2\n\nfunction brandFill(hex: string, surface: string, ink: string) {\n const a = luminance(`#${hex}`), b = luminance(surface)\n return (Math.max(a, b) + 0.05) / (Math.min(a, b) + 0.05) < BRAND_MIN_CONTRAST ? ink : `#${hex}`\n}\n\nexport const ICONS: Record<string, Draw> = merge(\n map(LUCIDE, (Icon) => (size) => <Icon className=\"gf-icon\" size={size} strokeWidth={1.75} aria-hidden />),\n map(AZURE, (Icon) => (size) => <span className=\"gf-icon gf-vendor\"><Icon size={size} viewBox=\"0 0 18 18\" /></span>),\n map(AWS, (Icon) => (size) => <span className=\"gf-icon gf-vendor gf-aws\"><Icon size={size} /></span>),\n map(AWS_RESOURCE, (Icon) => (size) => <span className=\"gf-icon gf-vendor\"><Icon size={size} /></span>),\n map(BRAND, (b) => (size, surface, ink) => (\n <svg className=\"gf-icon\" width={size} height={size} viewBox=\"0 0 24 24\" role=\"img\" aria-label={b.title}>\n <path d={b.path} fill={brandFill(b.hex, surface, ink)} />\n </svg>\n )),\n)\n","import { useId } from 'react'\nimport type { Routed } from './routing'\nimport type { Size } from './fit'\n\n/**\n * The pulse period, in seconds. A RECORDER CONTRACT: ui-shell's record-course.mjs / record-reels.mjs\n * loop every video on PULSE_S = 2.4. Change it here alone and every loop join in every recorded video\n * shows a jump. Same value, same linear motion as @graphlearning/flow's FlowEdge.\n */\nexport const PULSE_S = 2.4\n\n/**\n * The shaft stops HEAD_TRIM short of a headed end, inside the head, and the marker's ref point moves\n * back by the same amount so the TIP still lands on the endpoint. Without it the 2px stroke poked out\n * past the tip — near its point the triangle is narrower than the line (visible at 4K on every arrow).\n */\nconst HEAD_TRIM = 6\n\ntype P = { x: number; y: number }\nfunction trim(points: P[], start: boolean, end: boolean): P[] {\n const out = points.map((p) => ({ ...p }))\n // Never past the run's other end: a trim longer than the run reverses the shaft, and the marker\n // (orient auto) follows it — the head flips. The router keeps runs ≥ HEAD_LEN; this is the guard.\n const pull = (a: P, b: P) => {\n const d = Math.hypot(b.x - a.x, b.y - a.y)\n if (d < 1) return\n const k = Math.min(HEAD_TRIM, d - 0.5) / d\n a.x += (b.x - a.x) * k; a.y += (b.y - a.y) * k\n }\n if (end) pull(out[out.length - 1], out[out.length - 2])\n if (start) pull(out[0], out[1])\n return out\n}\nconst pathOf = (points: P[]) => `M ${points.map((p) => `${p.x},${p.y}`).join(' L ')}`\n\nconst LABEL_SHIFT = {\n on: { h: 'translate(-50%, -50%)', v: 'translate(-50%, -50%)' },\n before: { h: 'translate(-50%, calc(-100% - 3px))', v: 'translate(calc(-100% - 3px), -50%)' },\n after: { h: 'translate(-50%, 3px)', v: 'translate(3px, -50%)' },\n}\n\n/** Draws routed edges over the content, in the content's own (unscaled) coordinates. */\nexport function Edges({ routed, size, pulse }: { routed: Routed[]; size: Size; pulse: boolean }) {\n const uid = useId().replace(/[^\\w-]/g, '')\n const arrow = `gf-arrow-${uid}`, glow = `gf-glow-${uid}`\n // A dot travelling the path once per PULSE_S; `reverse` runs it from `to` back to `from`.\n const dot = (d: string, reverse: boolean) => (\n <circle r={4.5} className=\"gf-pulse\" filter={`url(#${glow})`}>\n <animateMotion dur={`${PULSE_S}s`} repeatCount=\"indefinite\" path={d} calcMode=\"linear\" {...(reverse && { keyPoints: '1;0', keyTimes: '0;1' })} />\n </circle>\n )\n return (\n <>\n <svg className=\"gf-edges\" width={size.w} height={size.h} aria-hidden>\n <defs>\n {/* auto-start-reverse: the same head serves the far end of a bidirectional edge. */}\n <marker id={arrow} viewBox=\"0 0 10 10\" refX={10 - HEAD_TRIM} refY=\"5\" markerWidth=\"10\" markerHeight=\"10\" markerUnits=\"userSpaceOnUse\" orient=\"auto-start-reverse\">\n <path d=\"M0,0 L10,5 L0,10 z\" className=\"gf-arrowhead\" />\n </marker>\n <filter id={glow} x=\"-100%\" y=\"-100%\" width=\"300%\" height=\"300%\">\n <feGaussianBlur stdDeviation=\"2.5\" result=\"b\" />\n <feMerge><feMergeNode in=\"b\" /><feMergeNode in=\"SourceGraphic\" /></feMerge>\n </filter>\n </defs>\n {routed.map((r, i) => {\n // `d` is the full route (pulses travel it); the stroke is trimmed at its headed ends.\n const d = pathOf(r.points)\n return (\n <g key={i}>\n <path\n className=\"gf-edge\"\n data-from={r.edge.from}\n data-to={r.edge.to}\n data-edge={r.index}\n data-route={d}\n d={pathOf(trim(r.points, !!r.edge.bidirectional, true))}\n strokeDasharray={r.edge.dashed ? '6 5' : undefined}\n markerEnd={`url(#${arrow})`}\n markerStart={r.edge.bidirectional ? `url(#${arrow})` : undefined}\n />\n {pulse && dot(d, false)}\n {pulse && r.edge.bidirectional && dot(d, true)}\n </g>\n )\n })}\n </svg>\n {routed.map((r, i) =>\n r.edge.label ? (\n <div\n key={i}\n className=\"gf-edge-label\"\n data-edge={r.index}\n style={{ left: r.label.x, top: r.label.y, transform: LABEL_SHIFT[r.label.side][r.label.seg] }}\n >\n {r.edge.label}\n </div>\n ) : null,\n )}\n </>\n )\n}\n","import type { CSSProperties } from 'react'\nimport type { Theme } from './theme'\nimport type { Table, TableRow, Tone } from './types'\n\nconst PLAIN = /^[\\w$-]+$/\n\n/**\n * Normalised rows with their ADDRESS: explicit `id`, else the first cell when it is a plain word\n * and unique in the table. Shared by the renderer (data-id) and the edge planner (parent links),\n * so the two cannot disagree about which rows exist.\n */\nexport function tableRows(table: Table): (TableRow & { address?: string })[] {\n const rows = table.rows.map((r) => (Array.isArray(r) ? { cells: r } : r))\n const firsts = rows.map((r) => String(r.cells[0] ?? ''))\n return rows.map((r, i) => {\n const own = r.id ?? (PLAIN.test(firsts[i]) && firsts.indexOf(firsts[i]) === firsts.lastIndexOf(firsts[i]) ? firsts[i] : undefined)\n return { ...r, address: own && `${table.id}.${own}` }\n })\n}\n\nconst tint = (theme: Theme, tone?: Tone): CSSProperties | undefined =>\n tone && ({ '--gf-accent': theme.tones[tone].accent, '--gf-tint': theme.tones[tone].tint } as CSSProperties)\n\nexport function TableView({ node, theme, style }: { node: Table; theme: Theme; style?: CSSProperties }) {\n const rows = tableRows(node)\n const tagged = rows.some((r) => r.tag)\n const width = Math.max(node.columns?.length ?? 0, ...rows.map((r) => r.cells.length))\n return (\n <div className=\"gf-table\" data-id={node.id} style={style}>\n {node.title && <div className=\"gf-table-title\">{node.title}</div>}\n <table>\n {node.columns && (\n <thead>\n <tr>\n {tagged && <th aria-hidden />}\n {node.columns.map((c, i) => <th key={i}>{c}</th>)}\n </tr>\n </thead>\n )}\n <tbody>\n {rows.map((r, i) => (\n <tr key={i} data-id={r.address} data-tone={r.tone} style={tint(theme, r.tone)}>\n {tagged && <td className=\"gf-tag-cell\">{r.tag && <span className=\"gf-tag\">{r.tag}</span>}</td>}\n {Array.from({ length: width }, (_, j) => <td key={j}>{r.cells[j] ?? ''}</td>)}\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n )\n}\n","// A tokenizer, not a parser: one regex and a keyword set, ported from @graphlearning/flow's\n// codeHighlight. Small on purpose — slides show short excerpts, and every language shares the\n// same seven colours. The comment marker is the only per-language rule.\n\nexport type TokClass = 'var' | 'method' | 'keyword' | 'string' | 'number' | 'punct' | 'ws' | 'comment'\nexport interface Tok { cls: TokClass; text: string }\nexport type Lang = 'python' | 'sql' | 'scala' | 'java' | 'js' | 'ts' | 'shell' | 'hcl' | 'ini' | 'nginx' | 'nft' | 'text'\n\nconst KEYWORDS = new Set([\n 'import', 'from', 'def', 'return', 'lambda', 'class', 'val', 'var', 'new', 'if', 'else', 'for',\n 'in', 'as', 'and', 'or', 'not', 'null', 'true', 'false', 'is',\n 'select', 'where', 'group', 'by', 'join', 'inner', 'left', 'right', 'full', 'outer', 'cross',\n 'on', 'using', 'having', 'order', 'asc', 'desc', 'limit', 'offset', 'distinct', 'with', 'recursive',\n 'union', 'intersect', 'except', 'all', 'insert', 'into', 'values', 'update', 'set', 'delete',\n 'over', 'partition', 'between', 'like', 'exists', 'case', 'when', 'then', 'end', 'count', 'sum', 'avg', 'min', 'max',\n 'while', 'elif', 'try', 'raise', 'finally', 'pass', 'break', 'continue', 'yield', 'async', 'await', 'assert', 'del',\n 'global', 'nonlocal', 'none', 'match',\n 'const', 'let', 'function', 'export', 'default', 'interface', 'type', 'extends', 'implements', 'public',\n 'private', 'static', 'void', 'object', 'trait', 'def', 'catch', 'throw', 'this', 'super', 'undefined',\n // Java's own, the primitive types included — `int x` read as two plain names without them.\n 'abstract', 'boolean', 'byte', 'char', 'do', 'double', 'enum', 'final', 'float', 'goto', 'instanceof',\n 'int', 'long', 'native', 'package', 'permits', 'protected', 'record', 'sealed', 'short', 'strictfp',\n 'switch', 'synchronized', 'throws', 'transient', 'volatile',\n])\n\n// Terraform's block types and meta-arguments, as keywords in HCL ONLY: `data`, `output` and `module`\n// are everyday names in Python, and the shared set above would recolour every Python scene.\nconst HCL_KEYWORDS = new Set([\n 'terraform', 'provider', 'resource', 'data', 'variable', 'output', 'locals', 'module', 'backend',\n 'required_providers', 'moved', 'import', 'removed', 'check', 'lifecycle', 'dynamic', 'for_each', 'count',\n 'depends_on', 'each', 'var', 'local',\n])\n\n// nginx's directives and blocks (0.7), keywords in `lang: 'nginx'` ONLY — `root`, `index`, `user` and\n// `include` are names everywhere else. A value word (`on`, `off`, a path) stays plain.\nconst NGINX_KEYWORDS = new Set([\n 'http', 'server', 'location', 'events', 'upstream', 'listen', 'server_name', 'root', 'index', 'try_files',\n 'return', 'rewrite', 'include', 'user', 'worker_processes', 'worker_connections', 'pid', 'error_log',\n 'access_log', 'sendfile', 'keepalive_timeout', 'gzip', 'ssl_certificate', 'ssl_certificate_key',\n 'ssl_protocols', 'ssl_ciphers', 'proxy_pass', 'proxy_set_header', 'add_header', 'default_type', 'types',\n 'client_max_body_size', 'autoindex', 'alias', 'expires', 'default_server', 'ssl', 'http2', 'deny', 'allow',\n])\n\n// nftables' grammar words (0.7), in `lang: 'nft'` ONLY.\nconst NFT_KEYWORDS = new Set([\n 'table', 'chain', 'type', 'hook', 'priority', 'policy', 'accept', 'drop', 'reject', 'counter', 'ct',\n 'state', 'established', 'related', 'invalid', 'new', 'iif', 'oif', 'iifname', 'oifname', 'tcp', 'udp',\n 'dport', 'sport', 'ip', 'ip6', 'saddr', 'daddr', 'inet', 'filter', 'input', 'output', 'forward', 'nat',\n 'masquerade', 'flush', 'ruleset', 'add', 'rule', 'set', 'elements', 'icmp', 'icmpv6', 'meta', 'l4proto',\n 'log', 'prefix', 'limit', 'rate', 'jump', 'goto', 'return', 'define',\n])\n\nconst COMMENT: Record<Lang, string> = {\n python: '#', shell: '#', hcl: '#', ini: '#', nginx: '#', nft: '#', sql: '--', scala: '//', java: '//', js: '//', ts: '//', text: '\\u0000',\n}\n\n// Bash's reserved words (0.7). Before it, shell took the SHARED set, so `/var/www` drew `var` as a\n// JavaScript keyword and `in`/`set`/`select` lit up inside paths and arguments.\nconst SHELL_KEYWORDS = new Set([\n 'if', 'then', 'else', 'elif', 'fi', 'for', 'while', 'until', 'do', 'done', 'case', 'esac', 'in',\n 'function', 'select', 'time', 'return', 'local', 'export', 'readonly',\n])\n\n// SQL's DDL, transaction and PostgreSQL words (0.8), on top of the shared set in `lang: 'sql'` ONLY —\n// `table`, `key`, `text`, `begin` and `index` are everyday names elsewhere. Matched case-blind.\nconst SQL_KEYWORDS = new Set([\n 'create', 'table', 'primary', 'key', 'foreign', 'references', 'unique', 'check', 'constraint', 'default',\n 'drop', 'alter', 'add', 'column', 'rename', 'index', 'view', 'materialized', 'schema', 'truncate',\n 'cascade', 'restrict', 'returning', 'begin', 'commit', 'rollback', 'savepoint', 'release', 'transaction',\n 'isolation', 'level', 'serializable', 'repeatable', 'read', 'committed', 'grant', 'revoke', 'role', 'to',\n 'merge', 'matched', 'conflict', 'do', 'nothing', 'lateral', 'window', 'rows', 'range', 'preceding',\n 'following', 'current', 'row', 'unbounded', 'filter', 'explain', 'analyze', 'vacuum', 'copy',\n 'generated', 'always', 'identity', 'numeric', 'text', 'bigint', 'smallint', 'integer', 'date',\n 'timestamptz', 'timestamp', 'varchar', 'serial', 'policy', 'trigger', 'lock', 'nulls', 'first', 'last',\n 'interval', 'cast', 'only', 'if', 'of', 'execute', 'prepare', 'for', 'share', 'nowait', 'skip', 'locked',\n])\n\nconst OWN: Partial<Record<Lang, Set<string>>> = { hcl: HCL_KEYWORDS, shell: SHELL_KEYWORDS, nginx: NGINX_KEYWORDS, nft: NFT_KEYWORDS, sql: SQL_KEYWORDS }\n// Languages whose own words ADD to the shared set rather than replace it.\nconst ADDS = new Set<Lang>(['hcl', 'sql'])\n\n/**\n * An ini file — a systemd unit, a `.conf` — is LINE-shaped, so it has its own rule instead of the\n * token regex: `[Section]` is a keyword, `Key=` a method (the setting), the value plain, and a line\n * starting with `#` or `;` a comment. The shared keyword set never applies (`After=` is not SQL).\n */\nfunction tokenizeIni(src: string): Tok[] {\n const lead = src.match(/^\\s*/)![0]\n const rest = src.slice(lead.length)\n const out: Tok[] = lead ? [{ cls: 'ws', text: lead }] : []\n if (rest.startsWith('#') || rest.startsWith(';')) return [...out, { cls: 'comment', text: rest }]\n if (rest.startsWith('[')) return [...out, { cls: 'keyword', text: rest }]\n const kv = rest.match(/^([\\w.@-]+)(\\s*=\\s*)([\\s\\S]*)$/)\n if (!kv) return [...out, { cls: 'var', text: rest }]\n out.push({ cls: 'method', text: kv[1] }, { cls: 'punct', text: kv[2] })\n if (kv[3]) out.push({ cls: 'var', text: kv[3] })\n return out\n}\n\n// Where a dot is a file extension or an address (`job.py`, `ana.example`), not a member access; and\n// where `@` is part of an address (`ana@web-01`), not an annotation; and where a word after `/` is a\n// path segment (`/var/www`), never a keyword.\nconst NO_MEMBER = new Set<Lang>(['shell', 'nginx', 'nft'])\n\nconst escape = (s: string) => s.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&')\n\nexport function tokenize(src: string, lang: Lang): Tok[] {\n if (lang === 'text') return [{ cls: 'var', text: src }]\n if (lang === 'ini') return tokenizeIni(src)\n const own = OWN[lang]\n // A config file's own words replace the shared set: `index` and `set` are not SQL there.\n const isKeyword = (word: string) => own && !ADDS.has(lang) ? own.has(word)\n : KEYWORDS.has(word.toLowerCase()) || !!own?.has(lang === 'sql' ? word.toLowerCase() : word)\n // A number carries its suffix and separators (`10L`, `1_000_000`, `3.14f`); an `@Name` is one\n // token — a Java annotation or a Python decorator, both drawn as keywords (not in NO_MEMBER languages).\n const token = new RegExp(`(\\\\s+)|(${escape(COMMENT[lang])}[^\\\\n]*)|('[^']*'?|\"[^\"]*\"?)|(\\\\d[\\\\w.]*)|(@[A-Za-z_]\\\\w*)|([A-Za-z_]\\\\w*)|(\\\\.\\\\.\\\\.|[\\\\s\\\\S])`, 'g')\n const out: Tok[] = []\n let afterDot = false\n const plain = NO_MEMBER.has(lang)\n let afterSlash = false\n // nginx: only a statement's FIRST word is a directive (`index index.html` — the second is a value).\n let statement = true\n for (const [text, ws, comment, str, num, anno, word] of src.matchAll(token)) {\n // `web-01`: in shell, digits joined to a name by `-` are part of the name, not a number.\n const joined = plain && num && out.at(-1)?.text === '-' && out.at(-2)?.cls === 'var'\n const cls: TokClass = ws ? 'ws' : comment ? 'comment' : str ? 'string' : num ? (joined ? 'var' : 'number')\n : anno ? (plain ? 'var' : 'keyword')\n : word ? (afterDot ? 'method' : !(plain && afterSlash) && (lang !== 'nginx' || statement) && isKeyword(word) ? 'keyword' : 'var') : 'punct'\n afterSlash = cls === 'punct' && text === '/'\n if (cls !== 'ws' && cls !== 'comment') statement = cls === 'punct' && (text === ';' || text === '{' || text === '}')\n out.push({ cls, text })\n if (cls !== 'ws') afterDot = !NO_MEMBER.has(lang) && cls === 'punct' && text === '.'\n }\n return out\n}\n\n/**\n * Drop the template literal's first line break, trailing blank lines and the common indent, so scenes\n * can use indented template literals. Only ONE leading blank line goes (0.8): a timeline pane's\n * transcript can START with blank rows — padding that aligns it with the other session — and\n * stripping them all shifted the whole pane up.\n */\nexport function dedent(src: string): string[] {\n const lines = src.replace(/^[^\\S\\n]*\\n/, '').replace(/\\n\\s*$/, '').split('\\n')\n const indent = Math.min(...lines.filter((l) => l.trim()).map((l) => l.match(/^ */)![0].length))\n return lines.map((l) => l.slice(Number.isFinite(indent) ? indent : 0))\n}\n","import type { CSSProperties } from 'react'\nimport { dedent, tokenize, type Tok } from './highlight'\nimport type { Code } from './types'\n\ntype Row = { n: number; text: string } | { fold: number }\n\n/**\n * The lines a `code` node draws: every line, or only the `show` ranges with each skipped run\n * folded into one `··· N lines` row — a terminal too (0.6: a long Terraform plan keeps its command,\n * its resource line and its summary). Line numbers are the FILE's. Shared with the edge planner via\n * `codeLineIds`, so a line edges can address is a line that is drawn.\n */\nexport function codeRows(node: Code): Row[] {\n const lines = dedent(node.code)\n if (!node.show?.length || node.output) return lines.map((text, i) => ({ n: i + 1, text }))\n const keep = new Set(node.show.flatMap(([a, b]) => Array.from({ length: b - a + 1 }, (_, i) => a + i)))\n const rows: Row[] = []\n lines.forEach((text, i) => {\n if (keep.has(i + 1)) rows.push({ n: i + 1, text })\n else if (rows.length && 'fold' in rows[rows.length - 1]) (rows[rows.length - 1] as { fold: number }).fold++\n else rows.push({ fold: 1 })\n })\n return rows\n}\n\nexport const codeLineIds = (node: Code): string[] => codeRows(node).flatMap((r) => ('n' in r ? [`${node.id}.L${r.n}`] : []))\n\n// U+00B7, not ⋯: a fallback-font glyph would change the advance next to Plex Mono.\nconst foldLabel = (n: number) => `··· ${n} line${n === 1 ? '' : 's'}`\n\n/**\n * A prompt: a shell's, as the three shells the course meets draw it (`sigil` is `$`/`%`, or `#` for\n * root), or psql's (0.8) default `%/%R%x%# ` — the database, the input state (`=` a new statement,\n * `-` a continued one, `(` `'` `\"` inside brackets or quotes), the transaction state (`*` open, `!`\n * failed, `?` unknown) and `>`, or `#` for a superuser.\n */\nexport type Prompt =\n | { style: 'debian' | 'redhat' | 'zsh'; user: string; host: string; cwd: string; sigil: string; cmd: string }\n | { style: 'psql'; db: string; mode: string; tx: string; sigil: string; cmd: string }\n\nconst SHELL_PROMPTS: ['debian' | 'redhat' | 'zsh', RegExp][] = [\n ['debian', /^([\\w.-]+)@([\\w.-]+):(\\S*?)([$#])(?: (.*))?$/],\n ['redhat', /^\\[([\\w.-]+)@([\\w.-]+) ([^\\]]*)\\]([$#])(?: (.*))?$/],\n ['zsh', /^([\\w.-]+)@([\\w.-]+) (\\S+) ([%#])(?: (.*))?$/],\n]\nconst PSQL_PROMPT = /^([A-Za-z_][\\w$]*)([=\\-('\"])([*!?]?)([>#])(?: (.*))?$/\n\nexport function parsePrompt(row: string): Prompt | null {\n for (const [style, re] of SHELL_PROMPTS) {\n const m = row.match(re)\n if (m) return { style, user: m[1], host: m[2], cwd: m[3], sigil: m[4], cmd: m[5] ?? '' }\n }\n const m = row.match(PSQL_PROMPT)\n return m ? { style: 'psql', db: m[1], mode: m[2], tx: m[3], sigil: m[4], cmd: m[5] ?? '' } : null\n}\n\ntype ConsoleRow =\n | { n: number; kind: 'cmd'; prompt: Prompt; toks: Tok[] }\n | { n: number; kind: 'cont'; toks: Tok[] }\n | { n: number; kind: 'out'; text: string }\n\n/**\n * Classify a transcript's rows. A prompt row is a command; a command row exactly `cols` wide wrapped,\n * so the rows after it continue the command until one is shorter. psql (0.8) draws a prompt on every\n * line of a statement, so a psql command also takes the continuation-prompt rows after it (`-`, `(`,\n * `'`, `\"`) as further LINES. The command is tokenized WHOLE — lines joined by `\\n` — and its tokens\n * cut back into rows, so a string crossing a wrap or a line keeps its colour. A shell command is\n * `shell`, a psql one `sql`.\n */\nexport function consoleRows(lines: string[], cols: number): Map<number, ConsoleRow> {\n const out = new Map<number, ConsoleRow>()\n // A row exactly `cols` wide wrapped into the next — unless the next is a prompt of its own.\n const wraps = (r: number) => lines[r].length === cols && r + 1 < lines.length && !parsePrompt(lines[r + 1])\n for (let i = 0; i < lines.length; i++) {\n const prompt = parsePrompt(lines[i])\n if (!prompt) { out.set(i + 1, { n: i + 1, kind: 'out', text: lines[i] }); continue }\n // Each line: its prompt and its physical rows (the prompt row, then the rows it wrapped into).\n const parts: { prompt: Prompt; rows: number[] }[] = []\n let r = i, p: Prompt | null = prompt\n while (p) {\n const rows = [r]\n while (wraps(rows[rows.length - 1])) rows.push(rows[rows.length - 1] + 1)\n parts.push({ prompt: p, rows })\n r = rows[rows.length - 1] + 1\n const next = prompt.style === 'psql' && r < lines.length ? parsePrompt(lines[r]) : null\n p = next?.style === 'psql' && next.mode !== '=' ? next : null\n }\n const phys = parts.flatMap(({ prompt: q, rows }) => rows.map((row, k) => ({ row, prompt: k === 0 ? q : null })))\n const widths = phys.map(({ row, prompt: q }) => (q ? q.cmd.length : lines[row].length))\n const text = parts.map(({ prompt: q, rows }) => rows.map((row, k) => (k === 0 ? q.cmd : lines[row])).join('')).join('\\n')\n // A psql meta-command (`\\d`, `\\i file.sql`) is psql's own, not SQL: the command drawn as a method,\n // its arguments plain — a path is not SQL.\n const meta = prompt.style === 'psql' ? text.match(/^(\\\\\\S+)([\\s\\S]*)$/) : null\n const toks: Tok[] = meta ? [{ cls: 'method', text: meta[1] }, ...(meta[2] ? [{ cls: 'var' as const, text: meta[2] }] : [])]\n : tokenize(text, prompt.style === 'psql' ? 'sql' : 'shell')\n const cut: Tok[][] = phys.map(() => [])\n let row = 0, left = widths[0]\n for (const t of toks) {\n t.text.split('\\n').forEach((piece, j) => {\n if (j > 0) { row++; left = widths[row] }\n let rest = piece\n while (rest.length > left && row < widths.length - 1) {\n if (left) cut[row].push({ cls: t.cls, text: rest.slice(0, left) })\n rest = rest.slice(left); row++; left = widths[row]\n }\n if (rest) { cut[row].push({ cls: t.cls, text: rest }); left -= rest.length }\n })\n }\n phys.forEach(({ row: pr, prompt: q }, k) => out.set(pr + 1, q ? { n: pr + 1, kind: 'cmd', prompt: q, toks: cut[k] } : { n: pr + 1, kind: 'cont', toks: cut[k] }))\n i = phys[phys.length - 1].row\n }\n return out\n}\n\nconst PromptView = ({ p }: { p: Prompt }) => p.style === 'psql' ? (\n <span className=\"gf-ps\" data-root={p.sigil === '#' || undefined}>\n <span className=\"gf-ps-who\">{p.db}</span>\n {p.mode}\n {p.tx && <span className=\"gf-ps-tx\" data-tx={p.tx}>{p.tx}</span>}\n {p.sigil}{' '}\n </span>\n) : (\n <span className=\"gf-ps\" data-root={p.sigil === '#' || undefined}>\n {p.style === 'redhat' && '['}\n <span className=\"gf-ps-who\">{p.user}@{p.host}</span>\n {p.style === 'debian' ? ':' : ' '}\n <span className=\"gf-ps-cwd\">{p.cwd}</span>\n {p.style === 'redhat' && ']'}\n {p.style === 'zsh' && ' '}\n {p.sigil}{' '}\n </span>\n)\n\nfunction ConsoleView({ node, style }: { node: Code; style?: CSSProperties }) {\n const lit = new Set(node.highlight ?? [])\n const rows = consoleRows(dedent(node.code), node.cols ?? 80)\n return (\n <div className=\"gf-code\" data-id={node.id} data-console style={style}>\n <div className=\"gf-code-bar\">\n <span className=\"gf-dots\" aria-hidden><i /><i /><i /></span>\n {node.filename && <span className=\"gf-code-name\">{node.filename}</span>}\n </div>\n <div className=\"gf-code-body\">\n {codeRows(node).map((r, i) => {\n if ('fold' in r) return <div key={i} className=\"gf-line gf-fold\">{foldLabel(r.fold)}</div>\n const row = rows.get(r.n)!\n return (\n <div key={i} className=\"gf-line\" data-id={`${node.id}.L${r.n}`} data-kind={row.kind} data-lit={lit.has(r.n) || undefined}\n data-root={row.kind === 'cmd' && row.prompt.sigil === '#' || undefined}>\n {row.kind === 'out' ? <span>{row.text}</span> : <>\n {row.kind === 'cmd' && <PromptView p={row.prompt} />}\n {row.toks.map((t, k) => <span key={k} className={`tok-${t.cls}`}>{t.text}</span>)}\n {row.kind === 'cont' && !row.toks.length && ' '}\n </>}\n </div>\n )\n })}\n </div>\n </div>\n )\n}\n\nexport function CodeView({ node, style }: { node: Code; style?: CSSProperties }) {\n if (node.console) return <ConsoleView node={node} style={style} />\n const lit = new Set(node.highlight ?? [])\n const lang = node.lang ?? (node.terminal ? 'shell' : 'text')\n // A cell's output: what the kernel printed, under its input — no bar, no frame, no gutter.\n if (node.output) return (\n <div className=\"gf-code\" data-id={node.id} data-output style={style}>\n {codeRows(node).map((row, i) => 'n' in row && (\n <div key={i} className=\"gf-line\" data-id={`${node.id}.L${row.n}`} data-kind={row.text.startsWith('! ') ? 'err' : 'out'}>\n {row.text.startsWith('! ') ? row.text.slice(2) : row.text || ' '}\n </div>\n ))}\n </div>\n )\n return (\n <div className=\"gf-code\" data-id={node.id} data-terminal={node.terminal || undefined} style={style}>\n <div className=\"gf-code-bar\">\n {node.terminal ? <span className=\"gf-code-name\">{node.filename ?? 'terminal'}</span> : (\n <>\n <span className=\"gf-dots\" aria-hidden><i /><i /><i /></span>\n {node.filename && <span className=\"gf-code-name\">{node.filename}</span>}\n </>\n )}\n </div>\n <div className=\"gf-code-body\">\n {codeRows(node).map((row, i) => {\n if ('fold' in row) return node.terminal\n ? <div key={i} className=\"gf-line gf-fold\">{foldLabel(row.fold)}</div>\n : <div key={i} className=\"gf-line gf-fold\"><span className=\"gf-ln\" /><span>{foldLabel(row.fold)}</span></div>\n // Terminal: `$ cmd` is a command, `! text` an error, anything else output.\n if (node.terminal) {\n const kind = row.text.startsWith('$ ') ? 'cmd' : row.text.startsWith('! ') ? 'err' : 'out'\n return (\n <div key={i} className=\"gf-line\" data-id={`${node.id}.L${row.n}`} data-kind={kind}>\n {kind === 'cmd' ? <><span className=\"gf-prompt\">$ </span><Toks text={row.text.slice(2)} lang={lang} /></> : kind === 'err' ? row.text.slice(2) : row.text || ' '}\n </div>\n )\n }\n return (\n <div key={i} className=\"gf-line\" data-id={`${node.id}.L${row.n}`} data-lit={lit.has(row.n) || undefined}>\n <span className=\"gf-ln\">{row.n}</span>\n <span><Toks text={row.text} lang={lang} /></span>\n </div>\n )\n })}\n </div>\n </div>\n )\n}\n\nconst Toks = ({ text, lang }: { text: string; lang: Parameters<typeof tokenize>[1] }) =>\n <>{text ? tokenize(text, lang).map((t, i) => <span key={i} className={`tok-${t.cls}`}>{t.text}</span>) : ' '}</>\n","import { useId } from 'react'\nimport type { Theme } from './theme'\nimport type { Plot, PlotAxis, PlotSeries, Tone } from './types'\n\n// A plot's x/y are DATA in the axes' own units; the engine owns every pixel. The drawing area is ONE\n// fixed size for every plot, so plots in a deck line up and frames with one keep the same zoom.\n// Inside the SVG the browser does not lay out text, so all plot text is IBM Plex Mono (fixed advance)\n// and the gutters are counted in characters; `check` measures every <text> against the SVG box.\n\nexport const PLOT_W = 720\nexport const PLOT_H = 400\n/** The second fixed size: a plot for a side pane, readable at full text size in ~560px. */\nexport const COMPACT_W = 420\nexport const COMPACT_H = 280\nconst CHAR_W = 9.1 // IBM Plex Mono at 15px (600/1000 em = 9.0), rounded up so a count can only over-reserve\nconst TICK_GAP = 8\nconst AXIS_LABEL = 24\n\n/** Series colours in a fixed order that keeps green and orange apart; `consume` red is reserved for warnings. */\nconst RAMP: Tone[] = ['ingest', 'infra', 'serve', 'store']\n\nfunction niceStep(span: number): number {\n const raw = Math.abs(span) / 6\n if (!(raw > 0) || !Number.isFinite(raw)) return 1\n const mag = 10 ** Math.floor(Math.log10(raw))\n const n = raw / mag\n return (n >= 5 ? 5 : n >= 2 ? 2 : 1) * mag\n}\n\nconst decimals = (step: number) => (String(step).split('.')[1] ?? '').length\n\ninterface Axis { min: number; max: number; ticks: number[]; text: (v: number) => string; categories: boolean; label?: string }\n\nfunction axis(a: PlotAxis): Axis {\n if (a.labels) {\n const n = a.labels.length\n return { min: -0.5, max: n - 0.5, ticks: a.labels.map((_, i) => i), text: (v) => a.labels![v] ?? '', categories: true, label: a.label }\n }\n const min = a.min ?? 0, max = a.max ?? 1\n const step = a.step && (max - min) / a.step <= 200 ? a.step : niceStep(max - min)\n const ticks: number[] = []\n for (let v = Math.ceil(min / step) * step; v <= max + step * 1e-9; v += step) ticks.push(Number(v.toFixed(decimals(step) + 1)))\n return { min, max, ticks, text: (v) => (Math.abs(v) < step * 1e-9 ? 0 : v).toFixed(decimals(step)), categories: false, label: a.label }\n}\n\nconst seriesPoints = (s: PlotSeries): [number, number][] => s.points ?? (s.from && s.to ? [s.from, s.to] : [])\n\n/** A plain segment (no arrow, no tone) is a construction line: muted, and it takes no ramp colour. */\nconst construction = (s: PlotSeries) => s.kind === 'segment' && !s.arrow && !s.tone\n\n/** Where a series puts its label: a segment at its tip (arrow) or midpoint; bars in the legend; anything else at its last point. */\nfunction labelAt(s: PlotSeries): [number, number] | undefined {\n const pts = seriesPoints(s)\n if (!s.label || !pts.length || s.kind === 'bar') return undefined\n if (s.kind === 'segment' && !s.arrow) return [(pts[0][0] + pts[1][0]) / 2, (pts[0][1] + pts[1][1]) / 2]\n return pts[pts.length - 1]\n}\n\nexport function PlotView({ node, theme, style }: { node: Plot; theme: Theme; style?: React.CSSProperties }) {\n const clip = `gf-clip-${useId().replace(/[^\\w-]/g, '')}`\n const X = axis(node.x), Y = axis(node.y)\n const PW = node.compact ? COMPACT_W : PLOT_W, PH = node.compact ? COMPACT_H : PLOT_H\n const origin = node.axes === 'origin' || (node.axes !== 'corner' && !X.categories && !Y.categories && X.min < 0 && X.max > 0 && Y.min < 0 && Y.max > 0)\n const chars = (s: string) => s.length * CHAR_W\n\n // Gutters, counted: y tick labels + y axis label on the left, x ticks + x label below, the longest\n // label that runs past the right edge on the right.\n const left = Math.ceil(Math.max(...Y.ticks.map((t) => chars(Y.text(t))))) + TICK_GAP + 6 + (Y.label ? AXIS_LABEL : 0)\n const bottom = 30 + (X.label ? AXIS_LABEL : 0)\n const top = 14\n const sx = (v: number) => left + ((v - X.min) / (X.max - X.min)) * PW\n const sy = (v: number) => top + PH - ((v - Y.min) / (Y.max - Y.min)) * PH\n const overhang = Math.max(0, ...node.series.map((s) => {\n const at = labelAt(s)\n return at ? sx(at[0]) + 8 + chars(s.label!) - (left + PW) : 0\n }))\n const right = 16 + Math.ceil(overhang)\n const W = left + PW + right, H = top + PH + bottom\n\n const ax = origin ? sx(0) : left, ay = origin ? sy(0) : top + PH\n // The ramp advances only for series that use it, so a toned or construction series skips no colour.\n const rampAt = node.series.map((_, i) => node.series.slice(0, i).filter((q) => !q.tone && !construction(q)).length)\n const colour = (s: PlotSeries, i: number) =>\n construction(s) ? theme.muted : theme.tones[s.tone ?? RAMP[rampAt[i] % RAMP.length]].accent\n const legend = node.series.flatMap((s, i) => (s.kind === 'bar' && s.label ? [{ label: s.label, c: colour(s, i) }] : []))\n const base = sy(Math.max(Y.min, Math.min(0, Y.max)))\n const step = X.categories ? 1 : (X.ticks[1] ?? X.max) - (X.ticks[0] ?? X.min)\n\n return (\n <div className=\"gf-plot\" data-id={node.id} style={style}>\n {node.title && <div className=\"gf-table-title\">{node.title}</div>}\n <svg width={W} height={H} viewBox={`0 0 ${W} ${H}`} role=\"img\" aria-label={node.title ?? 'plot'}>\n <defs><clipPath id={clip}><rect x={left} y={top} width={PW} height={PH} /></clipPath></defs>\n {node.grid !== false && (\n <g className=\"gf-plot-grid\">\n {!X.categories && X.ticks.map((t) => <line key={`x${t}`} x1={sx(t)} x2={sx(t)} y1={top} y2={top + PH} />)}\n {Y.ticks.map((t) => <line key={`y${t}`} x1={left} x2={left + PW} y1={sy(t)} y2={sy(t)} />)}\n </g>\n )}\n <g className=\"gf-plot-axis\">\n <line x1={left} x2={left + PW} y1={ay} y2={ay} />\n <line x1={ax} x2={ax} y1={top} y2={top + PH} />\n </g>\n <g className=\"gf-plot-ticks\">\n {X.ticks.filter((t) => !(origin && t === 0)).map((t) => <text key={`x${t}`} x={sx(t)} y={ay + 20} textAnchor=\"middle\">{X.text(t)}</text>)}\n {Y.ticks.filter((t) => !(origin && t === 0)).map((t) => <text key={`y${t}`} x={ax - TICK_GAP} y={sy(t)} textAnchor=\"end\" dominantBaseline=\"middle\">{Y.text(t)}</text>)}\n {X.label && <text x={left + PW / 2} y={top + PH + bottom - 6} textAnchor=\"middle\" className=\"gf-plot-label\">{X.label}</text>}\n {Y.label && <text transform={`translate(14 ${top + PH / 2}) rotate(-90)`} textAnchor=\"middle\" dominantBaseline=\"middle\" className=\"gf-plot-label\">{Y.label}</text>}\n </g>\n <g clipPath={`url(#${clip})`}>\n {node.series.map((s, i) => {\n const c = colour(s, i), pts = seriesPoints(s)\n const d = pts.map(([x, y], j) => `${j ? 'L' : 'M'}${sx(x)},${sy(y)}`).join(' ')\n if (s.kind === 'area')\n return <g key={i}><path d={`${d} L${sx(pts[pts.length - 1][0])},${base} L${sx(pts[0][0])},${base} Z`} fill={c} fillOpacity={0.18} stroke=\"none\" /><path d={d} fill=\"none\" stroke={c} strokeWidth={2.5} /></g>\n if (s.kind === 'line') return <path key={i} d={d} fill=\"none\" stroke={c} strokeWidth={2.5} strokeDasharray={s.dashed ? '7 6' : undefined} strokeLinejoin=\"round\" />\n if (s.kind === 'scatter') return <g key={i}>{pts.map(([x, y], j) => <circle key={j} cx={sx(x)} cy={sy(y)} r={5} fill={c} />)}</g>\n if (s.kind === 'bar') {\n const n = node.series.filter((q) => q.kind === 'bar').length, k = node.series.slice(0, i).filter((q) => q.kind === 'bar').length\n const slot = ((sx(step) - sx(0)) * 0.7) / n\n return <g key={i}>{pts.map(([x, y], j) => <rect key={j} x={sx(x) - (slot * n) / 2 + k * slot} y={Math.min(sy(y), base)} width={slot - 2} height={Math.abs(base - sy(y))} fill={c} rx={2} />)}</g>\n }\n // segment: a construction or threshold line, dashed unless told otherwise; `arrow` makes it a vector.\n const [[x1, y1], [x2, y2]] = pts\n const a = Math.atan2(sy(y2) - sy(y1), sx(x2) - sx(x1)), L = 12\n const tip = [sx(x2), sy(y2)], back = [tip[0] - L * Math.cos(a), tip[1] - L * Math.sin(a)]\n return (\n <g key={i}>\n <line x1={sx(x1)} y1={sy(y1)} x2={s.arrow ? back[0] : tip[0]} y2={s.arrow ? back[1] : tip[1]} stroke={c} strokeWidth={construction(s) ? 1.75 : 2.5} strokeDasharray={s.dashed === false || s.arrow ? undefined : '7 6'} />\n {s.arrow && (x1 !== x2 || y1 !== y2) && (\n <polygon fill={c} points={[tip, [back[0] + 6 * Math.sin(a), back[1] - 6 * Math.cos(a)], [back[0] - 6 * Math.sin(a), back[1] + 6 * Math.cos(a)]].map((p) => p.join(',')).join(' ')} />\n )}\n </g>\n )\n })}\n </g>\n {legend.length > 0 && (\n <g className=\"gf-plot-labels\">\n {legend.map((l, i) => {\n const y = top + 18 + i * 22, x = left + PW - 12 - Math.max(...legend.map((q) => chars(q.label)))\n return <g key={i}><rect x={x - 20} y={y - 10} width={12} height={12} rx={2} fill={l.c} /><text x={x} y={y} dominantBaseline=\"middle\" fill={l.c}>{l.label}</text></g>\n })}\n </g>\n )}\n <g className=\"gf-plot-labels\">\n {node.series.map((s, i) => {\n const at = labelAt(s)\n // Above the point, but never above the area: a curve that ends at y.max would push it out.\n return at && <text key={i} x={sx(at[0]) + 8} y={Math.min(top + PH - 4, Math.max(top + 14, sy(at[1]) - 8))} fill={colour(s, i)}>{s.label}</text>\n })}\n </g>\n </svg>\n </div>\n )\n}\n","import { ChevronDown, ChevronRight, FileText, Folder } from 'lucide-react'\nimport type { CSSProperties } from 'react'\nimport { ICONS } from './icons'\nimport type { Theme } from './theme'\nimport type { Tree, TreeEntry } from './types'\n\n/** A file's default icon by extension. Anything unlisted draws a plain file. */\nconst BY_EXTENSION: Record<string, string> = { py: 'python', ipynb: 'jupyter', java: 'java', sql: 'database', tf: 'terraform', dockerfile: 'docker' }\nconst iconOf = (e: TreeEntry) => e.icon ?? BY_EXTENSION[e.name.toLowerCase().split('.').pop() ?? '']\n\ninterface Row { entry: TreeEntry; depth: number; path: string }\n\n/**\n * The entries a `tree` draws, depth-first, each with its PATH (`src/jobs/orders.py`). Shared with the\n * edge planner via `treeEntryIds`, like `tableRows` and `codeRows`: an entry is addressable as\n * `<tree id>.<path>`.\n */\nfunction treeRows(entries: TreeEntry[], depth = 0, prefix = ''): Row[] {\n return entries.flatMap((entry) => {\n const path = prefix ? `${prefix}/${entry.name}` : entry.name\n return [{ entry, depth, path }, ...(entry.children ? treeRows(entry.children, depth + 1, path) : [])]\n })\n}\n\nexport const treeEntryIds = (node: Tree): string[] => treeRows(node.entries).map((r) => `${node.id}.${r.path}`)\n\nexport function TreeView({ node, theme, style }: { node: Tree; theme: Theme; style?: CSSProperties }) {\n return (\n <div className=\"gf-tree\" data-id={node.id} style={style}>\n <div className=\"gf-tree-title\">{node.title ?? 'Explorer'}</div>\n <div className=\"gf-tree-body\">\n {treeRows(node.entries).map(({ entry, depth, path }) => {\n const folder = entry.folder ?? !!entry.children\n return (\n <div key={path} className=\"gf-tree-row\" data-id={`${node.id}.${path}`} data-state={entry.state} style={{ paddingLeft: 10 + depth * 16 }}>\n {/* A folder with listed children is open; one marked `folder` with none is collapsed. */}\n {!folder ? <span className=\"gf-tree-chev\" /> : entry.children?.length\n ? <ChevronDown size=\"0.9em\" className=\"gf-tree-chev\" aria-hidden /> : <ChevronRight size=\"0.9em\" className=\"gf-tree-chev\" aria-hidden />}\n {(() => {\n const draw = iconOf(entry) ? ICONS[iconOf(entry)!] : undefined\n return draw ? <span className=\"gf-tree-icon\">{draw('1.1em', theme.surface, theme.ink)}</span>\n : folder ? <Folder size=\"1.1em\" aria-hidden /> : <FileText size=\"1.1em\" aria-hidden />\n })()}\n <span className=\"gf-tree-name\">{entry.name}</span>\n {entry.note && <span className=\"gf-tree-note\">{entry.note}</span>}\n </div>\n )\n })}\n </div>\n </div>\n )\n}\n","import type { CSSProperties } from 'react'\nimport type { Tty } from './types'\n\n/** Rows addressable by edges and `focus` as `<tty>.R<n>`, 1-based like a code line. */\nexport const ttyRowIds = (node: Tty): string[] => node.screen.map((_, i) => `${node.id}.R${i + 1}`)\n\ntype Run = { text: string; inverse: boolean; bold: boolean }\n\n/** One row cut into runs of the same attributes. Padded to the full width, so the grid never moves. */\nfunction runs(text: string, row: number, node: Tty, cols: number): Run[] {\n const line = text.padEnd(cols).slice(0, cols)\n const has = (spans: [number, number, number][] | undefined, col: number) =>\n !!spans?.some(([r, a, b]) => r === row && col >= a && col < b)\n const out: Run[] = []\n for (let c = 0; c < cols; c++) {\n const inverse = has(node.inverse, c), bold = has(node.bold, c)\n const last = out[out.length - 1]\n if (last && last.inverse === inverse && last.bold === bold) last.text += line[c]\n else out.push({ text: line[c], inverse, bold })\n }\n return out\n}\n\n/**\n * A full-screen program's screen: a terminal frame with a fixed grid of `cols` × the screen's rows.\n * The size comes from the capture, never from the content, so two screenshots of `top` are the same box.\n */\nexport function TtyView({ node, style }: { node: Tty; style?: CSSProperties }) {\n const cols = node.cols ?? 80\n return (\n <div className=\"gf-code gf-tty\" data-id={node.id} style={style}>\n <div className=\"gf-code-bar\">\n <span className=\"gf-dots\" aria-hidden><i /><i /><i /></span>\n {node.title && <span className=\"gf-code-name\">{node.title}</span>}\n </div>\n <div className=\"gf-code-body\">\n {node.screen.map((text, i) => (\n <div key={i} className=\"gf-line\" data-id={`${node.id}.R${i + 1}`}>\n {runs(text, i, node, cols).map((r, k) =>\n <span key={k} data-inverse={r.inverse || undefined} data-bold={r.bold || undefined}>{r.text}</span>)}\n </div>\n ))}\n </div>\n </div>\n )\n}\n","import type { Edge } from './types'\n\n// Pure edge routing: measured node boxes in, orthogonal polylines out. No DOM here.\n\nexport interface Rect { x: number; y: number; w: number; h: number }\nexport interface Pt { x: number; y: number }\n/**\n * `index` is the edge's position in `scene.edges`; `axis` is the route's direction ('h' leaves a\n * left/right face). A label sits `on` its line, or `before`/`after` it (above/below a horizontal\n * segment, left/right of a vertical one) when its port shares a face with others.\n */\nexport interface Routed {\n edge: Edge; index: number; axis: 'h' | 'v'; points: Pt[]; label: Pt & { side: 'on' | 'before' | 'after'; seg: 'h' | 'v' }\n /** How many edges hold a slot in this edge's channel (0: none). The layout widens the gap for them. */\n slots: number\n}\ntype Face = 'left' | 'right' | 'top' | 'bottom'\n\n/** An edge ends this far OUTSIDE its node, so the arrowhead never touches the border. */\nexport const ANCHOR_OUTSET = 4\n/** Ports keep this far from a face's corners. */\nexport const PORT_INSET = 12\n/** Two ports closer than this on one face make the whole face spread evenly. */\nexport const PORT_MIN_GAP = 14\n/** The arrowhead's length (its marker is 10 user units): a slot keeps at least this run to each anchor. */\nexport const HEAD_LEN = 10\n/** Between two slots in one channel. */\nexport const SLOT_GAP = 8\n/**\n * The gap a channel needs for `n` slots: a full head's run at each end, outside each anchor, and\n * SLOT_GAP between neighbours. One slot needs 28 — inside EDGE_GAP — so only a SHARED channel grows.\n * Without it, three arrows fanning into one node through a 32px gap left a 4px last run, which the\n * 6px head trim reversed: the arrowhead pointed back into the gap (0.2, edge-fan-in).\n */\nexport const slotRoom = (n: number) => 2 * (ANCHOR_OUTSET + HEAD_LEN) + Math.max(0, n - 1) * SLOT_GAP\n\nconst centre = (r: Rect): Pt => ({ x: r.x + r.w / 2, y: r.y + r.h / 2 })\nconst horizontal = (f: Face) => f === 'left' || f === 'right'\n\n/**\n * Leave across the LARGER gap between the boxes; null when they overlap on both axes (nested).\n * `lateral` forces left/right: a table row is a slice of its table, so only its two ends are outside.\n */\nfunction facesOf(a: Rect, b: Rect, lateral: boolean): [Face, Face] | null {\n if (lateral) return centre(b).x >= centre(a).x ? ['right', 'left'] : ['left', 'right']\n const right = b.x - (a.x + a.w), left = a.x - (b.x + b.w)\n const down = b.y - (a.y + a.h), up = a.y - (b.y + b.h)\n const gx = Math.max(right, left), gy = Math.max(down, up)\n if (gx < 0 && gy < 0) return null\n if (gx >= gy) return right >= left ? ['right', 'left'] : ['left', 'right']\n return down >= up ? ['bottom', 'top'] : ['top', 'bottom']\n}\n\ninterface End { edge: number; side: 0 | 1; rect: Rect; face: Face; far: number; at: number; rank: number; count: number }\n\n/**\n * A face with ONE edge anchors at its centre. A face with several gives each a PORT that slides\n * toward the far end's centre (clamped PORT_INSET from the corners); if any two land within\n * PORT_MIN_GAP, the face spreads evenly in far-end order instead.\n */\nfunction placePorts(ends: End[]) {\n const byFace = new Map<string, End[]>()\n for (const e of ends) {\n const key = `${e.rect.x},${e.rect.y},${e.rect.w},${e.rect.h},${e.face}`\n byFace.set(key, [...(byFace.get(key) ?? []), e])\n }\n for (const group of byFace.values()) {\n const { rect, face } = group[0]\n const [start, len] = horizontal(face) ? [rect.y, rect.h] : [rect.x, rect.w]\n const lo = start + Math.min(PORT_INSET, len / 2), hi = start + len - Math.min(PORT_INSET, len / 2)\n if (group.length === 1) { group[0].at = start + len / 2; continue }\n group.sort((p, q) => p.far - q.far || p.edge - q.edge)\n group.forEach((e, i) => { e.rank = i; e.count = group.length })\n group.forEach((e) => (e.at = Math.min(hi, Math.max(lo, e.far))))\n if (group.some((e, i) => i > 0 && e.at - group[i - 1].at < PORT_MIN_GAP))\n group.forEach((e, i) => (e.at = lo + ((i + 1) * (hi - lo)) / (group.length + 1)))\n }\n}\n\nfunction anchor({ rect, face, at }: End): Pt {\n if (face === 'left') return { x: rect.x - ANCHOR_OUTSET, y: at }\n if (face === 'right') return { x: rect.x + rect.w + ANCHOR_OUTSET, y: at }\n if (face === 'top') return { x: at, y: rect.y - ANCHOR_OUTSET }\n return { x: at, y: rect.y + rect.h + ANCHOR_OUTSET }\n}\n\n/**\n * `sides[i]` names the two SIBLINGS edge i runs between — the children of its lowest common\n * ancestor that contain each end. The faces are chosen from THEIR boxes, not the nodes': two nested\n * nodes in adjacent columns can sit diagonally with a larger vertical gap, and choosing from them\n * would send the edge down through whatever lies between. The elbow sits in the CHANNEL — the gap\n * between those siblings, which the layout widened for it — not midway between the nodes, which for\n * nested nodes can fall inside a sibling; several users of one channel get a slot each. `lateral` ids (table rows) connect only through left/right.\n * Edges whose ids are unknown, or whose boxes overlap (a node and its own ancestor), are skipped.\n */\nexport function routeEdges(\n edges: Edge[], rects: Map<string, Rect>, sides: ([string, string] | undefined)[] = [], lateral: Set<string> = new Set(),\n): Routed[] {\n const ends: End[] = []\n // A channel is the gap between an edge's two sides: [lo, hi] along the route's axis.\n const channel: ({ key: string; lo: number; hi: number } | undefined)[] = []\n edges.forEach((edge, i) => {\n const a = rects.get(edge.from), b = rects.get(edge.to)\n const [sa, sb] = (sides[i] ?? [edge.from, edge.to]).map((id) => rects.get(id))\n const faces = a && b && sa && sb && facesOf(sa, sb, lateral.has(edge.from) || lateral.has(edge.to))\n if (!faces) return\n const [lo, hi] = faces[0] === 'right' ? [sa.x + sa.w, sb.x] : faces[0] === 'left' ? [sb.x + sb.w, sa.x]\n : faces[0] === 'bottom' ? [sa.y + sa.h, sb.y] : [sb.y + sb.h, sa.y]\n // Keyed by axis + bounds, NOT direction: driver → workers and workers → driver share one gap.\n channel[i] = hi > lo ? { key: `${horizontal(faces[0]) ? 'h' : 'v'}:${Math.round(lo)}:${Math.round(hi)}`, lo, hi } : undefined\n const axis = horizontal(faces[0]) ? 'y' : 'x'\n ends.push({ edge: i, side: 0, rect: a, face: faces[0], far: centre(b)[axis], at: 0, rank: 0, count: 1 })\n ends.push({ edge: i, side: 1, rect: b, face: faces[1], far: centre(a)[axis], at: 0, rank: 0, count: 1 })\n })\n placePorts(ends)\n\n // Pass 1: anchors, and whether each edge is straight or needs an elbow.\n const pairs = []\n for (let i = 0; i < ends.length; i += 2) {\n const [from, to] = ends[i].side === 0 ? [ends[i], ends[i + 1]] : [ends[i + 1], ends[i]]\n // Alone on both faces and the faces overlap: run straight across the middle of the overlap\n // rather than jog between two centres (a row of items of different heights).\n if (from.count === 1 && to.count === 1) {\n const span = (e: End) => (horizontal(e.face) ? [e.rect.y, e.rect.y + e.rect.h] : [e.rect.x, e.rect.x + e.rect.w])\n const [a0, a1] = span(from), [b0, b1] = span(to)\n const lo = Math.max(a0, b0), hi = Math.min(a1, b1)\n if (hi - lo >= 2 * PORT_INSET) from.at = to.at = (lo + hi) / 2\n }\n const s = anchor(from), t = anchor(to)\n const straight = horizontal(from.face) ? Math.abs(s.y - t.y) < 0.5 : Math.abs(s.x - t.x) < 0.5\n pairs.push({ from, to, s, t, straight })\n }\n\n // Pass 2: SLOTS. Everything that lands mid-channel — an elbow's cross segment, a straight edge's\n // label — would land on the same line, and a dashed back edge ran under the 'tasks' label that way.\n // Each user of a channel gets its own slot, evenly spaced, in edge order (deterministic).\n const slot = new Map<number, number>()\n const users = new Map<string, number[]>()\n for (const { from, straight } of pairs) {\n const c = channel[from.edge]\n if (c && (!straight || edges[from.edge].label)) users.set(c.key, [...(users.get(c.key) ?? []), from.edge])\n }\n const shared = new Map<number, number>()\n for (const list of users.values()) {\n list.sort((a, b) => a - b)\n const { lo, hi } = channel[list[0]]!\n // Evenly spaced across the channel — unless that puts an end slot within a head's length of an\n // anchor, when they spread over the part that keeps every run at least HEAD_LEN. The layout widens\n // a shared channel to slotRoom(n), so that part always holds them SLOT_GAP apart.\n const inLo = lo + ANCHOR_OUTSET + HEAD_LEN, inHi = hi - ANCHOR_OUTSET - HEAD_LEN, n = list.length\n const even = (k: number) => lo + ((k + 1) * (hi - lo)) / (n + 1)\n const fits = even(0) >= inLo && even(n - 1) <= inHi\n list.forEach((e, k) => {\n slot.set(e, fits || n === 1 ? even(k) : inLo + (k * Math.max(0, inHi - inLo)) / (n - 1))\n shared.set(e, n)\n })\n }\n\n const routed: Routed[] = []\n for (const { from, s, t } of pairs) {\n let points: Pt[]\n if (horizontal(from.face)) {\n const mx = slot.get(from.edge) ?? (s.x + t.x) / 2\n points = Math.abs(s.y - t.y) < 0.5 ? [s, { x: t.x, y: s.y }] : [s, { x: mx, y: s.y }, { x: mx, y: t.y }, t]\n } else {\n const my = slot.get(from.edge) ?? (s.y + t.y) / 2\n points = Math.abs(s.x - t.x) < 0.5 ? [s, { x: s.x, y: t.y }] : [s, { x: s.x, y: my }, { x: t.x, y: my }, t]\n }\n const [p, q] = points.length === 4 ? [points[1], points[2]] : points\n const mid = (from.count - 1) / 2\n const side = from.count === 1 || from.rank === mid ? 'on' : from.rank < mid ? 'before' : 'after'\n const seg = p.y === q.y ? 'h' : 'v'\n // A straight edge's label sits at its slot (if it has one), so it never shares a line with an elbow.\n const at = slot.get(from.edge)\n const label = points.length === 2 && at !== undefined\n ? (horizontal(from.face) ? { x: at, y: p.y } : { x: p.x, y: at }) : { x: (p.x + q.x) / 2, y: (p.y + q.y) / 2 }\n routed.push({ edge: edges[from.edge], index: from.edge, axis: horizontal(from.face) ? 'h' : 'v', points, label: { ...label, side, seg }, slots: shared.get(from.edge) ?? 0 })\n }\n return routed\n}\n","export interface Size { w: number; h: number }\nexport interface Fit { scale: number; x: number; y: number }\n\n/** Margin on each side, as a fraction of the pane's own axis. */\nexport const FIT_PADDING = 0.04\nexport const MIN_SCALE = 0.05\n/** A small scene stops growing here, so it still reads as a diagram, not a poster. */\nexport const MAX_SCALE = 4\n\n/**\n * The fit is a PURE function of the pane and the content's natural size — no async, no history.\n * That is what makes recordings reproducible: two frames whose scenes have the same natural box get\n * the same scale and put every panel at the same pixels.\n */\nexport function fitTransform(pane: Size, content: Size): Fit {\n if (!content.w || !content.h) return { scale: 1, x: 0, y: 0 }\n const raw = Math.min((pane.w * (1 - 2 * FIT_PADDING)) / content.w, (pane.h * (1 - 2 * FIT_PADDING)) / content.h)\n const scale = Math.min(MAX_SCALE, Math.max(MIN_SCALE, raw))\n return { scale, x: (pane.w - content.w * scale) / 2, y: (pane.h - content.h * scale) / 2 }\n}\n","import type { ThemeKey, Tone } from './types'\n\n// A theme owns the SHADE; a tone owns the HUE FAMILY, identical in every theme.\n// Values stay 6-digit hex so they can be concatenated with alpha later.\n\nexport interface ToneColors { accent: string; tint: string }\n\n/** The code surface and its seven token colours — one set per theme, shared by every language. */\nexport interface CodeColors { bg: string; bar: string; gutter: string; var: string; method: string; keyword: string; string: string; number: string; punct: string; comment: string }\n\nexport interface Theme {\n bg: string\n surface: string\n line: string\n ink: string\n muted: string\n edge: string\n pulse: string\n tones: Record<Tone, ToneColors>\n code: CodeColors\n}\n\n// `bg` is the PLATFORM canvas — @graphlearning/shell's `--bg` (#1a1d23 / #f7f8fa) — so a scene sits\n// seamlessly in the shell's frame. Change one and the other shows an edge round every scene.\nexport const THEMES: Record<ThemeKey, Theme> = {\n dark: {\n bg: '#1a1d23', surface: '#22262e', line: '#2f343d', ink: '#eef2f8', muted: '#9aa4b2', edge: '#7d8796', pulse: '#7dd3fc',\n tones: {\n neutral: { accent: '#9aa4b2', tint: '#181b20' },\n source: { accent: '#a3adbb', tint: '#1b1e24' },\n ingest: { accent: '#4f8ff7', tint: '#111d2e' },\n store: { accent: '#37b877', tint: '#122419' },\n serve: { accent: '#c98bff', tint: '#1e1428' },\n consume: { accent: '#f0656f', tint: '#2a1416' },\n infra: { accent: '#f0902f', tint: '#241c12' },\n },\n code: {\n bg: '#0e1420', bar: '#131b29', gutter: '#4f5a6c', var: '#eceef2', method: '#5b8cff', keyword: '#b98bff',\n string: '#37d39a', number: '#ff7a59', punct: '#8b909c', comment: '#6b748b',\n },\n },\n light: {\n bg: '#f7f8fa', surface: '#ffffff', line: '#d9dee5', ink: '#1b1f24', muted: '#5a6675', edge: '#6b7686', pulse: '#0284c7',\n tones: {\n neutral: { accent: '#5a6675', tint: '#f3f5f8' },\n source: { accent: '#4b5563', tint: '#f1f2f4' },\n ingest: { accent: '#1f5fc4', tint: '#e8effc' },\n store: { accent: '#177a4a', tint: '#e7f7ee' },\n serve: { accent: '#7b3fbf', tint: '#f3eafd' },\n consume: { accent: '#c0303c', tint: '#fdeaec' },\n infra: { accent: '#b4610f', tint: '#fdf1e4' },\n },\n code: {\n bg: '#f6f8fb', bar: '#eceff4', gutter: '#9aa4b2', var: '#1b1f24', method: '#1f5fc4', keyword: '#7b3fbf',\n string: '#177a4a', number: '#b4500f', punct: '#5a6675', comment: '#7a8494',\n },\n },\n}\n","import { useEffect, useLayoutEffect, useMemo, useRef, useState, type CSSProperties } from 'react'\nimport { ICONS } from './icons'\nimport { Edges } from './Edges'\nimport { TableView, tableRows } from './Table'\nimport { CodeView, codeLineIds } from './Code'\nimport { PlotView } from './Plot'\nimport { TreeView, treeEntryIds } from './Tree'\nimport { TtyView, ttyRowIds } from './Tty'\nimport { routeEdges, slotRoom, type Rect } from './routing'\nimport { fitTransform, type Size } from './fit'\nimport { THEMES, type Theme } from './theme'\nimport type { Group, Item, Scene as SceneModel, SceneNode, ThemeKey } from './types'\n\n// Layout is CSS grid all the way down: a row is N auto columns (one per non-spanning child),\n// a col is one, a grid is `cols`. `span: 'all'` runs 1 / -1. Grid — not flex — because a\n// spanning child must not change the natural width the fit will later scale.\n\ntype Dir = 'row' | 'col' | 'grid'\n\n/**\n * The gap an arrow is drawn in. A body whose children an edge runs BETWEEN gets at least EDGE_GAP;\n * on the axis a LABELLED edge crosses it, the label's measured size plus LABEL_ROOM a side; and where\n * several edges share the channel, slotRoom(n) — a slot each and a full arrowhead's run at both ends.\n */\nconst GAP = 10\nconst EDGE_GAP = 32\nconst LABEL_ROOM = 24\n\ntype Gaps = Record<string, { col: number; row: number }>\n\nfunction bodyStyle(dir: Dir, children: SceneNode[], cols: number | undefined, gap?: { col: number; row: number }): CSSProperties {\n const n = dir === 'grid' ? cols ?? 2 : dir === 'row' ? Math.max(1, children.filter((c) => c.span !== 'all').length) : 1\n return { gridTemplateColumns: `repeat(${n}, auto)`, columnGap: gap?.col ?? GAP, rowGap: gap?.row ?? GAP }\n}\n\n/**\n * Each edge's lowest common ancestor ('' for the scene root) — the body it runs across — and the two\n * children of it that hold its ends, which the router picks faces from. Derived from the scene, never\n * authored, so spacing stays declarative. undefined = not drawable.\n */\ntype Crossing = { body: string; sides: [string, string] } | undefined\n\nfunction edgeBodies(scene: SceneModel): Crossing[] {\n const parent = new Map<string, string>()\n // A table's rows are its children for edge planning: `main.list` sits under `main`.\n const walk = (nodes: SceneNode[], p: string) => nodes.forEach((n) => {\n parent.set(n.id, p)\n if (n.type === 'group') walk(n.children, n.id)\n for (const id of lateralIdsOf(n)) parent.set(id, n.id)\n })\n walk(scene.nodes, '')\n const chain = (id: string) => { const out = [id]; while (parent.has(out.at(-1)!)) out.push(parent.get(out.at(-1)!)!); return out }\n return (scene.edges ?? []).map((e) => {\n if (!parent.has(e.from) || !parent.has(e.to)) return undefined\n const from = chain(e.from), to = chain(e.to)\n const lca = from.find((id) => to.includes(id))\n if (lca === undefined || lca === e.from || lca === e.to) return undefined\n const below = (c: string[]) => c[c.indexOf(lca) - 1]\n return { body: lca, sides: [below(from), below(to)] }\n })\n}\n\n/** A leaf's addressable slices — table rows, code lines. Each is a child of its leaf for planning. */\nconst lateralIdsOf = (n: SceneNode): string[] =>\n n.type === 'table' ? tableRows(n).flatMap((r) => (r.address ? [r.address] : []))\n : n.type === 'code' ? codeLineIds(n) : n.type === 'tree' ? treeEntryIds(n) : n.type === 'tty' ? ttyRowIds(n) : []\n\n/** Every slice id — the ends the router may connect only through left/right (their top and bottom are inside). */\nfunction lateralIds(nodes: SceneNode[], out = new Set<string>()): Set<string> {\n for (const n of nodes) {\n if (n.type === 'group') lateralIds(n.children, out)\n for (const id of lateralIdsOf(n)) out.add(id)\n }\n return out\n}\n\nfunction baseGaps(bodies: Crossing[]): Gaps {\n const out: Gaps = {}\n for (const b of bodies) if (b) out[b.body] = { col: EDGE_GAP, row: EDGE_GAP }\n return out\n}\n\nconst toneVars = (theme: Theme, node: SceneNode): CSSProperties | undefined =>\n node.tone && ({ '--gf-accent': theme.tones[node.tone].accent, '--gf-tint': theme.tones[node.tone].tint } as CSSProperties)\n\n/** Placement shared by every node: span, the min-size floors, and `fill` (stretch instead of hug). */\nconst spanStyle = (node: SceneNode): CSSProperties => {\n const minW = node.w ?? node.minW, maxW = node.w ?? node.maxW, minH = node.h ?? node.minH, maxH = node.h ?? node.maxH\n return {\n ...(node.span === 'all' && { gridColumn: '1 / -1' }),\n ...(minW !== undefined && { minWidth: minW }),\n ...(maxW !== undefined && { maxWidth: maxW }),\n ...(minH !== undefined && { minHeight: minH }),\n ...(maxH !== undefined && { maxHeight: maxH }),\n ...(node.fill && { justifySelf: 'stretch', alignSelf: 'stretch' }),\n }\n}\n\nfunction ItemView({ node, theme }: { node: Item; theme: Theme }) {\n const draw = node.icon ? ICONS[node.icon] : undefined\n return (\n <div className=\"gf-item\" data-id={node.id} data-stack={node.stack || undefined} data-chip={node.chip || undefined} data-muted={node.muted || undefined} style={{ ...toneVars(theme, node), ...spanStyle(node) }}>\n {/* Icon sizes are multiples of the item's text (16px): row 2em, card 3em, chip 1.15em. */}\n {draw?.(node.stack ? '3em' : node.chip ? '1.15em' : '2em', theme.surface, theme.ink)}\n <div>\n <div className=\"gf-item-title\">{node.title}</div>\n {node.sub && <div className=\"gf-item-sub\">{node.sub}</div>}\n {node.bullets && <ul className=\"gf-bullets\">{node.bullets.map((b) => <li key={b}>{b}</li>)}</ul>}\n </div>\n </div>\n )\n}\n\nfunction GroupView({ node, theme, gaps }: { node: Group; theme: Theme; gaps: Gaps }) {\n // A notebook cell: the `[n]` gutter beside a body that stacks the input and its outputs.\n if (node.cell != null) return (\n <div className=\"gf-group\" data-id={node.id} data-cell style={{ ...toneVars(theme, node), ...spanStyle(node) }}>\n <div className=\"gf-cell-n\">[{node.cell === true ? ' ' : node.cell}]</div>\n <div className=\"gf-body\" style={bodyStyle('col', node.children, undefined, gaps[node.id])}>\n {node.children.map((c) => <NodeView key={c.id} node={c} theme={theme} gaps={gaps} />)}\n </div>\n </div>\n )\n return (\n <div className=\"gf-group\" data-id={node.id} data-bare={node.bare || undefined} data-dashed={node.dashed || undefined} data-muted={node.muted || undefined} data-toned={node.tone || undefined} data-spread={node.spread || undefined} style={{ ...toneVars(theme, node), ...spanStyle(node) }}>\n {(node.title || node.badge != null) && (\n <div className=\"gf-group-head\">\n <div className=\"gf-group-title\">\n {node.badge != null && <span className=\"gf-badge\">{node.badge}</span>}\n {node.icon && ICONS[node.icon]?.('1.25em', theme.surface, theme.ink)}\n {node.title}\n </div>\n {node.sub && <div className=\"gf-group-sub\">{node.sub}</div>}\n </div>\n )}\n <div className=\"gf-body\" style={bodyStyle(node.dir ?? 'col', node.children, node.cols, gaps[node.id])}>\n {node.children.map((c) => <NodeView key={c.id} node={c} theme={theme} gaps={gaps} />)}\n </div>\n </div>\n )\n}\n\nfunction NodeView({ node, theme, gaps }: { node: SceneNode; theme: Theme; gaps: Gaps }) {\n if (node.type === 'group') return <GroupView node={node} theme={theme} gaps={gaps} />\n if (node.type === 'table') return <TableView node={node} theme={theme} style={{ ...toneVars(theme, node), ...spanStyle(node) }} />\n if (node.type === 'code') return <CodeView node={node} style={{ ...toneVars(theme, node), ...spanStyle(node) }} />\n if (node.type === 'plot') return <PlotView node={node} theme={theme} style={{ ...toneVars(theme, node), ...spanStyle(node) }} />\n if (node.type === 'tree') return <TreeView node={node} theme={theme} style={{ ...toneVars(theme, node), ...spanStyle(node) }} />\n if (node.type === 'tty') return <TtyView node={node} style={{ ...toneVars(theme, node), ...spanStyle(node) }} />\n if (node.type === 'note') return <div className=\"gf-note\" data-id={node.id} style={{ ...toneVars(theme, node), ...spanStyle(node) }}>{node.text}</div>\n return <ItemView node={node} theme={theme} />\n}\n\n/**\n * `focus` names one node (any id, a table row or a code line included) to single out: it gets a\n * ring and a glow, drawn with box-shadow so the layout — and therefore the fit — never moves. That is\n * what lets every section of a course focus a different node on the same scene without a jump.\n *\n * Fills its parent (give the parent a size) and scales the scene's natural box to fit, centred.\n * The viewport is locked: no wheel or drag handlers, so page scroll passes through and text stays\n * selectable. `data-fit=\"ready\"` marks the first fit after fonts load with edges routed — what a recorder waits on.\n */\nexport function Scene({ scene, theme: key = 'dark', focus }: { scene: SceneModel; theme?: ThemeKey; focus?: string }) {\n const t = THEMES[key]\n const bodies = useMemo(() => edgeBodies(scene), [scene])\n const rowIds = useMemo(() => lateralIds(scene.nodes), [scene])\n\n // An edge naming an id the scene does not have is an authoring error, never a silent skip.\n useEffect(() => {\n const known = new Set<string>(rowIds)\n const walk = (nodes: SceneNode[]): void => nodes.forEach((n) => { known.add(n.id); if (n.type === 'group') walk(n.children) })\n walk(scene.nodes)\n for (const e of scene.edges ?? [])\n for (const id of [e.from, e.to]) if (!known.has(id)) console.error(`graphl-flow: edge ${e.from} → ${e.to} names unknown id \"${id}\"`)\n }, [scene, rowIds])\n const [gaps, setGaps] = useState<Gaps>(() => baseGaps(bodies))\n const [gapsSettled, setGapsSettled] = useState(false)\n const pane = useRef<HTMLDivElement>(null)\n const content = useRef<HTMLDivElement>(null)\n const [sizes, setSizes] = useState<{ pane: Size; content: Size } | null>(null)\n const [fontsReady, setFontsReady] = useState(false)\n const [rects, setRects] = useState<Map<string, Rect> | null>(null)\n\n // offsetWidth/Height are layout sizes, untouched by the transform we apply.\n const measure = () => {\n const p = pane.current, c = content.current\n if (!p || !c) return\n const next = { pane: { w: p.offsetWidth, h: p.offsetHeight }, content: { w: c.offsetWidth, h: c.offsetHeight } }\n setSizes((prev) =>\n prev && prev.pane.w === next.pane.w && prev.pane.h === next.pane.h && prev.content.w === next.content.w && prev.content.h === next.content.h\n ? prev : next)\n }\n useLayoutEffect(measure, [scene, key, gaps])\n\n // Focus is an attribute on whatever element carries the id — a node, a row, a line — so it reaches\n // every addressable thing without each renderer knowing about it. No layout effect.\n useLayoutEffect(() => {\n const c = content.current\n if (!c) return\n c.querySelectorAll('[data-focus]').forEach((e) => e.removeAttribute('data-focus'))\n if (focus) c.querySelector(`[data-id=\"${CSS.escape(focus)}\"]`)?.setAttribute('data-focus', '')\n }, [focus, scene])\n\n // Node boxes in the content's natural coordinates: undo the fit by dividing out its scale.\n // Re-measured whenever the content's size, the fonts or the scene change.\n useLayoutEffect(() => {\n const c = content.current\n if (!c || !sizes) return\n const box = c.getBoundingClientRect()\n const s = box.width / c.offsetWidth || 1\n const next = new Map<string, Rect>()\n for (const el of c.querySelectorAll<HTMLElement>('[data-id]')) {\n const r = el.getBoundingClientRect()\n next.set(el.dataset.id!, { x: (r.left - box.left) / s, y: (r.top - box.top) / s, w: r.width / s, h: r.height / s })\n }\n setRects((prev) => (prev && JSON.stringify([...prev]) === JSON.stringify([...next]) ? prev : next))\n }, [sizes?.content.w, sizes?.content.h, fontsReady, scene, gaps])\n\n // Second pass: widen each labelled edge's body to its label's measured size (offsetWidth/Height\n // are untransformed). Label sizes do not depend on the gaps, so this settles in one more layout.\n useLayoutEffect(() => {\n const c = content.current\n if (!c || !rects) return\n const need = baseGaps(bodies)\n // A channel several edges share needs room for a slot each AND a full head's run at both ends\n // (slotRoom): three arrows into one node through a 32px gap once flipped an arrowhead.\n for (const r of routed) {\n const body = bodies[r.index]?.body\n if (body === undefined || r.slots < 2) continue\n if (r.axis === 'h') need[body].col = Math.max(need[body].col, slotRoom(r.slots))\n else need[body].row = Math.max(need[body].row, slotRoom(r.slots))\n }\n for (const el of c.querySelectorAll<HTMLElement>('.gf-edge-label')) {\n const i = Number(el.dataset.edge), body = bodies[i]?.body, r = routed.find((x) => x.index === i)\n if (body === undefined || !r) continue\n if (r.axis === 'h') need[body].col = Math.max(need[body].col, el.offsetWidth + 2 * LABEL_ROOM)\n else need[body].row = Math.max(need[body].row, el.offsetHeight + 2 * LABEL_ROOM)\n }\n const same = JSON.stringify(need) === JSON.stringify(gaps)\n if (!same) setGaps(need)\n setGapsSettled(same)\n }, [rects, gaps, bodies])\n\n useEffect(() => {\n const ro = new ResizeObserver(measure)\n ro.observe(pane.current!)\n ro.observe(content.current!)\n let live = true\n document.fonts.ready.then(() => { if (live) { measure(); setFontsReady(true) } })\n return () => { live = false; ro.disconnect() }\n }, [])\n\n const fit = sizes && fitTransform(sizes.pane, sizes.content)\n const routed = rects && scene.edges?.length ? routeEdges(scene.edges, rects, bodies.map((b) => b?.sides), rowIds) : []\n const vars = {\n '--gf-bg': t.bg, '--gf-surface': t.surface, '--gf-line': t.line, '--gf-ink': t.ink, '--gf-muted': t.muted, '--gf-edge': t.edge, '--gf-pulse': t.pulse, '--gf-ok': t.tones.store.accent, '--gf-err': t.tones.consume.accent,\n ...Object.fromEntries(Object.entries(t.code).map(([k, v]) => [`--gf-code-${k}`, v])),\n '--gf-accent': t.tones.neutral.accent, '--gf-tint': t.tones.neutral.tint,\n } as CSSProperties\n return (\n <div ref={pane} className=\"gf-scene\" data-theme={key} data-fit={fit && fontsReady && rects && gapsSettled ? 'ready' : 'pending'} style={vars}>\n <div\n ref={content}\n className=\"gf-content\"\n style={fit ? { transform: `translate(${fit.x}px, ${fit.y}px) scale(${fit.scale})` } : { visibility: 'hidden' }}\n >\n {scene.title && <div className=\"gf-scene-title\">{scene.title}</div>}\n {scene.sub && <div className=\"gf-scene-sub\">{scene.sub}</div>}\n <div className=\"gf-body\" style={bodyStyle(scene.dir ?? 'col', scene.nodes, undefined, gaps[''])}>\n {scene.nodes.map((n) => <NodeView key={n.id} node={n} theme={t} gaps={gaps} />)}\n </div>\n {sizes && <Edges routed={routed} size={sizes.content} pulse={scene.pulse !== false} />}\n </div>\n </div>\n )\n}\n"],"names":["EventHubs","size","props","_jsxs","_jsx","StreamAnalyticsJobs","AzureSynapseAnalytics","PowerBIEmbedded","DataFactories","AnalysisServices","AzureDatabricks","VirtualMachine","KubernetesServices","FunctionApps","AzureSQL","AzurePurviewAccounts","AzureCosmosDB","AzureDevOps","AzureServiceBus","LogAnalyticsWorkspaces","Monitor","MicrosoftDefenderForCloud","KeyVaults","StorageAccounts","DataLakeStorageGen1","_extends","a","b","c","d","React","require$$0","ArchitectureServiceAmazonSimpleStorageService","ArchitectureServiceAWSGlue","ArchitectureServiceAmazonRedshift","ArchitectureServiceAmazonAthena","ArchitectureServiceAmazonKinesis","ArchitectureServiceAmazonDataFirehose","ArchitectureServiceAmazonEMR","ArchitectureServiceAWSLambda","ArchitectureServiceAmazonDynamoDB","ArchitectureServiceAmazonRDS","ArchitectureServiceAmazonAurora","ArchitectureServiceAmazonCloudWatch","ArchitectureServiceAWSIdentityandAccessManagement","ArchitectureServiceAmazonManagedStreamingforApacheKafka","ArchitectureServiceAWSLakeFormation","ArchitectureServiceAmazonEC2","ArchitectureServiceAmazonSimpleQueueService","ArchitectureServiceAmazonSimpleNotificationService","ArchitectureServiceAWSStepFunctions","ArchitectureServiceAmazonEventBridge","ArchitectureServiceAWSKeyManagementService","ArchitectureServiceAWSSecretsManager","ArchitectureServiceAmazonElasticKubernetesService","ArchitectureServiceAmazonSageMaker","ArchitectureServiceAmazonAPIGateway","ArchitectureServiceAmazonVirtualPrivateCloud","ArchitectureServiceAWSCloudFormation","ArchitectureServiceAmazonManagedWorkflowsforApacheAirflow","ArchitectureServiceAWSDatabaseMigrationService","ArchitectureServiceAmazonElastiCache","ArchitectureServiceAmazonElasticContainerService","ArchitectureServiceAWSFargate","ArchitectureServiceAmazonElasticContainerRegistry","ArchitectureServiceElasticLoadBalancing","ArchitectureServiceAmazonRoute53","ArchitectureServiceAmazonCloudFront","ArchitectureServiceAWSWAF","ArchitectureServiceAWSCloudTrail","ArchitectureServiceAWSCertificateManager","ArchitectureServiceAWSBackup","ArchitectureServiceAWSOrganizations","ArchitectureServiceAWSSystemsManager","ArchitectureServiceAWSBudgets","ArchitectureServiceAWSCostExplorer","ArchitectureServiceAWSIAMIdentityCenter","ArchitectureServiceAWSXRay","ArchitectureGroupRegion","ArchitectureGroupAWSAccount","ArchitectureGroupPublicsubnet","ArchitectureGroupPrivatesubnet","ArchitectureGroupAutoScalinggroup","ResourceElasticLoadBalancingApplicationLoadBalancer","ResourceAmazonVPCNATGateway","ResourceAmazonVPCInternetGateway","ResourceAmazonVPCEndpoints","ResourceAmazonVPCRouter","ResourceAWSIdentityAccessManagementAWSSTS","ResourceAWSIdentityAccessManagementRole","ResourceAWSIdentityAccessManagementPermissions","ResourceAmazonElasticContainerServiceTask","ResourceAmazonElasticContainerServiceService","ResourceAmazonElasticContainerServiceContainer1","ResourceAmazonSimpleStorageServiceBucket","ResourceAmazonSimpleQueueServiceQueue","ResourceAmazonSimpleQueueServiceMessage","ResourceAmazonSimpleNotificationServiceTopic","ResourceAmazonRoute53HostedZone","t","siAlmalinux","siApacheairflow","siApacheflink","siApachekafka","siApachemaven","siApachespark","siApple","siArchlinux","siDebian","siDocker","siDuckdb","siFedora","siGit","siGithub","siGithubactions","siGnubash","siGrafana","siJunit5","siJupyter","siKubernetes","siLetsencrypt","siLinux","siMacos","siMongodb","siNginx","siOpenjdk","siPandas","siPostgresql","siPrometheus","siPython","siRedhat","siRockylinux","siSnowflake","siTerraform","siUbuntu","siZsh","LUCIDE","Activity","Bell","Box","Building2","ChartColumn","ChartPie","ClipboardCheck","Clock","Cloud","Code2","Cpu","CreditCard","Database","Factory","FileText","Filter","Fingerprint","Folder","GitBranch","Globe","HardDrive","KeyRound","Layers","Lock","Network","Package","RadioTower","Search","Server","Settings","ShieldCheck","Table2","Terminal","User","UserCog","Users","Workflow","Zap","Waves","Brain","Boxes","MemoryStick","Archive","BadgeCheck","BrickWall","Gauge","Laptop","Power","ScrollText","Timer","AZURE","DataFactoriesAnalytics","EventHubsAnalytics","AzureSynapseAnalyticsAnalytics","MonitorMonitor","LogAnalyticsWorkspacesManagementGovernance","AzureCosmosDBDatabases","FunctionAppsCompute","KubernetesServicesCompute","StreamAnalyticsJobsAnalytics","AWS","S3","Glue","Redshift","Athena","Kinesis","Firehose","EMR","Lambda","DynamoDB","RDS","Aurora","CloudWatch","IAM","MSK","LakeFormation","EC2","SQS","SNS","StepFunctions","EventBridge","KMS","SecretsManager","EKS","SageMaker","APIGateway","VPC","CloudFormation","MWAA","DMS","ElastiCache","ECS","Fargate","ECR","ELB","Route53","CloudFront","WAF","CloudTrail","ACM","Backup","Organizations","SystemsManager","Budgets","CostExplorer","IdentityCenter","XRay","Region","Account","PublicSubnet","PrivateSubnet","AutoScalingGroup","AWS_RESOURCE","ALB","NATGateway","InternetGateway","VPCEndpoint","Router","STS","IAMRole","IAMPermissions","ECSTask","ECSService","Container","Bucket","Queue","Message","Topic","HostedZone","BRAND","merge","sets","out","set","k","v","map","draw","luminance","hex","i","BRAND_MIN_CONTRAST","brandFill","surface","ink","ICONS","Icon","jsx","PULSE_S","HEAD_TRIM","trim","points","start","end","p","pull","pathOf","LABEL_SHIFT","Edges","routed","pulse","uid","useId","arrow","glow","dot","reverse","jsxs","Fragment","r","PLAIN","tableRows","table","rows","firsts","own","tint","theme","tone","TableView","node","style","tagged","width","_a","_","j","KEYWORDS","HCL_KEYWORDS","NGINX_KEYWORDS","NFT_KEYWORDS","COMMENT","SHELL_KEYWORDS","SQL_KEYWORDS","OWN","ADDS","tokenizeIni","src","lead","rest","kv","NO_MEMBER","escape","s","tokenize","lang","isKeyword","word","token","afterDot","plain","afterSlash","statement","text","ws","comment","str","num","anno","joined","_b","cls","dedent","lines","indent","l","codeRows","keep","codeLineIds","foldLabel","n","SHELL_PROMPTS","PSQL_PROMPT","parsePrompt","row","re","m","consoleRows","cols","wraps","prompt","parts","next","phys","q","widths","meta","toks","cut","left","piece","pr","PromptView","ConsoleView","lit","CodeView","kind","Toks","PLOT_W","PLOT_H","COMPACT_W","COMPACT_H","CHAR_W","TICK_GAP","AXIS_LABEL","RAMP","niceStep","span","raw","mag","decimals","step","axis","min","max","ticks","seriesPoints","construction","labelAt","pts","PlotView","clip","X","Y","PW","PH","origin","chars","bottom","top","sx","sy","overhang","at","right","W","H","ax","ay","rampAt","colour","legend","base","x","y","slot","x1","y1","x2","y2","L","tip","back","BY_EXTENSION","iconOf","e","treeRows","entries","depth","prefix","entry","path","treeEntryIds","TreeView","folder","ChevronDown","ChevronRight","ttyRowIds","runs","line","has","spans","col","inverse","bold","last","TtyView","ANCHOR_OUTSET","PORT_INSET","PORT_MIN_GAP","HEAD_LEN","SLOT_GAP","slotRoom","centre","horizontal","f","facesOf","lateral","down","up","gx","gy","placePorts","ends","byFace","key","group","rect","face","len","lo","hi","anchor","routeEdges","edges","rects","sides","channel","edge","sa","sb","id","faces","pairs","from","to","a0","a1","b0","b1","straight","users","shared","list","inLo","inHi","even","fits","mx","my","mid","side","seg","label","FIT_PADDING","MIN_SCALE","MAX_SCALE","fitTransform","pane","content","scale","THEMES","GAP","EDGE_GAP","LABEL_ROOM","bodyStyle","dir","children","gap","edgeBodies","scene","parent","walk","nodes","lateralIdsOf","chain","lca","below","lateralIds","baseGaps","bodies","toneVars","spanStyle","minW","maxW","minH","maxH","ItemView","GroupView","gaps","NodeView","Scene","focus","useMemo","rowIds","useEffect","known","setGaps","useState","gapsSettled","setGapsSettled","useRef","sizes","setSizes","fontsReady","setFontsReady","setRects","measure","prev","useLayoutEffect","box","el","need","body","same","ro","live","fit","vars"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88]}