likec4 1.10.1 → 1.12.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/__app__/react/likec4.tsx +44 -17
- package/dist/__app__/src/chunks/{-index-overview-CR08x_EG.js → -index-overview-Csz814YU.js} +6 -6
- package/dist/__app__/src/chunks/{likec4-BFZn233G.js → likec4-DlkyDuSp.js} +22 -11
- package/dist/__app__/src/chunks/{main-D12NE066.js → main-Bc_PC5BH.js} +5390 -1016
- package/dist/__app__/src/chunks/{mantine-BnwtT_Nz.js → mantine-IOl1S4mZ.js} +166 -62
- package/dist/__app__/src/chunks/{tanstack-router-DKnF_3kP.js → tanstack-router-CU5V4Ll-.js} +1 -1
- package/dist/__app__/src/const.js +2 -0
- package/dist/__app__/src/main.js +1 -1
- package/dist/__app__/src/style.css +1 -1
- package/dist/__app__/webcomponent/webcomponent.js +6775 -2073
- package/dist/chunks/prompt.mjs +45 -0
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.mjs +213 -161
- package/dist/index.d.mts +734 -1387
- package/dist/index.d.ts +16963 -0
- package/dist/index.mjs +1 -1
- package/dist/shared/likec4.Ceq7jJZD.mjs +1816 -0
- package/icons/all.d.ts +589 -0
- package/icons/all.js +1179 -1
- package/icons/aws/activate.js +10 -10
- package/icons/aws/alexa-for-business.js +10 -10
- package/icons/aws/amplify.js +10 -10
- package/icons/aws/apache-mxnet-on-aws.js +10 -10
- package/icons/aws/api-gateway.js +10 -10
- package/icons/aws/app-config.js +10 -10
- package/icons/aws/app-flow.js +10 -10
- package/icons/aws/app-mesh.js +10 -10
- package/icons/aws/app-runner.js +10 -10
- package/icons/aws/app-stream.js +10 -10
- package/icons/aws/app-sync.js +10 -10
- package/icons/aws/application-auto-scaling.js +10 -10
- package/icons/aws/application-composer.js +10 -10
- package/icons/aws/application-cost-profiler.js +10 -10
- package/icons/aws/application-discovery-service.js +10 -10
- package/icons/aws/application-migration-service.js +10 -10
- package/icons/aws/artifact.js +10 -10
- package/icons/aws/athena.js +10 -10
- package/icons/aws/audit-manager.js +10 -10
- package/icons/aws/augmented-ai-a2i.js +10 -10
- package/icons/aws/aurora.js +10 -10
- package/icons/aws/auto-scaling.js +10 -10
- package/icons/aws/backint-agent.js +10 -10
- package/icons/aws/backup.js +10 -10
- package/icons/aws/batch.js +10 -10
- package/icons/aws/billing-conductor.js +10 -10
- package/icons/aws/bottlerocket.js +10 -10
- package/icons/aws/braket.js +10 -10
- package/icons/aws/budgets.js +10 -10
- package/icons/aws/certificate-manager.js +10 -10
- package/icons/aws/chatbot.js +10 -10
- package/icons/aws/chime-sdk.js +10 -10
- package/icons/aws/chime-voice-connector.js +10 -10
- package/icons/aws/chime.js +10 -10
- package/icons/aws/clean-rooms.js +10 -10
- package/icons/aws/client-vpn.js +10 -10
- package/icons/aws/cloud-control-api.js +10 -10
- package/icons/aws/cloud-development-kit.js +10 -10
- package/icons/aws/cloud-directory.js +10 -10
- package/icons/aws/cloud-formation.js +10 -10
- package/icons/aws/cloud-front.js +10 -10
- package/icons/aws/cloud-hsm.js +10 -10
- package/icons/aws/cloud-map.js +10 -10
- package/icons/aws/cloud-search.js +10 -10
- package/icons/aws/cloud-shell.js +10 -10
- package/icons/aws/cloud-trail.js +10 -10
- package/icons/aws/cloud-wan.js +10 -10
- package/icons/aws/cloud-watch.js +10 -10
- package/icons/aws/cloud9.js +10 -10
- package/icons/aws/code-artifact.js +10 -10
- package/icons/aws/code-build.js +10 -10
- package/icons/aws/code-catalyst.js +10 -10
- package/icons/aws/code-commit.js +10 -10
- package/icons/aws/code-deploy.js +10 -10
- package/icons/aws/code-guru.js +10 -10
- package/icons/aws/code-pipeline.js +10 -10
- package/icons/aws/code-star.js +10 -10
- package/icons/aws/code-whisperer.js +10 -10
- package/icons/aws/cognito.js +10 -10
- package/icons/aws/command-line-interface.js +10 -10
- package/icons/aws/comprehend-medical.js +10 -10
- package/icons/aws/comprehend.js +10 -10
- package/icons/aws/compute-optimizer.js +10 -10
- package/icons/aws/config.js +10 -10
- package/icons/aws/connect.js +10 -10
- package/icons/aws/console-mobile-application.js +10 -10
- package/icons/aws/control-tower.js +10 -10
- package/icons/aws/corretto.js +10 -10
- package/icons/aws/cost-and-usage-report.js +10 -10
- package/icons/aws/cost-explorer.js +10 -10
- package/icons/aws/data-exchange.js +10 -10
- package/icons/aws/data-pipeline.js +10 -10
- package/icons/aws/data-sync.js +10 -10
- package/icons/aws/data-zone.js +10 -10
- package/icons/aws/database-migration-service.js +10 -10
- package/icons/aws/deep-composer.js +10 -10
- package/icons/aws/deep-learning-amis.js +10 -10
- package/icons/aws/deep-learning-containers.js +10 -10
- package/icons/aws/deep-lens.js +10 -10
- package/icons/aws/deep-racer.js +10 -10
- package/icons/aws/detective.js +10 -10
- package/icons/aws/dev-ops-guru.js +10 -10
- package/icons/aws/device-farm.js +10 -10
- package/icons/aws/direct-connect.js +10 -10
- package/icons/aws/directory-service.js +10 -10
- package/icons/aws/distro-for-open-telemetry.js +10 -10
- package/icons/aws/document-db.js +10 -10
- package/icons/aws/dynamo-db.js +10 -10
- package/icons/aws/ec2-auto-scaling.js +10 -10
- package/icons/aws/ec2-image-builder.js +10 -10
- package/icons/aws/ec2.js +10 -10
- package/icons/aws/ecs-anywhere.js +10 -10
- package/icons/aws/efs.js +10 -10
- package/icons/aws/eks-anywhere.js +10 -10
- package/icons/aws/eks-cloud.js +10 -10
- package/icons/aws/eks-distro.js +10 -10
- package/icons/aws/elasti-cache.js +10 -10
- package/icons/aws/elastic-beanstalk.js +10 -10
- package/icons/aws/elastic-block-store.js +10 -10
- package/icons/aws/elastic-container-registry.js +10 -10
- package/icons/aws/elastic-container-service.js +10 -10
- package/icons/aws/elastic-disaster-recovery.js +10 -10
- package/icons/aws/elastic-fabric-adapter.js +10 -10
- package/icons/aws/elastic-inference.js +10 -10
- package/icons/aws/elastic-kubernetes-service.js +10 -10
- package/icons/aws/elastic-load-balancing.js +10 -10
- package/icons/aws/elastic-transcoder.js +10 -10
- package/icons/aws/elemental-appliances-software.js +10 -10
- package/icons/aws/elemental-conductor.js +10 -10
- package/icons/aws/elemental-delta.js +10 -10
- package/icons/aws/elemental-link.js +10 -10
- package/icons/aws/elemental-live.js +10 -10
- package/icons/aws/elemental-media-connect.js +10 -10
- package/icons/aws/elemental-media-convert.js +10 -10
- package/icons/aws/elemental-media-live.js +10 -10
- package/icons/aws/elemental-media-package.js +10 -10
- package/icons/aws/elemental-media-store.js +10 -10
- package/icons/aws/elemental-media-tailor.js +10 -10
- package/icons/aws/elemental-server.js +10 -10
- package/icons/aws/emr.js +10 -10
- package/icons/aws/event-bridge.js +10 -10
- package/icons/aws/express-workflows.js +10 -10
- package/icons/aws/fargate.js +10 -10
- package/icons/aws/fault-injection-simulator.js +10 -10
- package/icons/aws/file-cache.js +10 -10
- package/icons/aws/fin-space.js +10 -10
- package/icons/aws/firewall-manager.js +10 -10
- package/icons/aws/forecast.js +10 -10
- package/icons/aws/fraud-detector.js +10 -10
- package/icons/aws/free-rtos.js +10 -10
- package/icons/aws/fsx-for-lustre.js +10 -10
- package/icons/aws/fsx-for-net-app-ontap.js +10 -10
- package/icons/aws/fsx-for-open-zfs.js +10 -10
- package/icons/aws/fsx-for-wfs.js +10 -10
- package/icons/aws/fsx.js +10 -10
- package/icons/aws/game-kit.js +10 -10
- package/icons/aws/game-lift.js +10 -10
- package/icons/aws/game-sparks.js +10 -10
- package/icons/aws/genomics-cli.js +10 -10
- package/icons/aws/global-accelerator.js +10 -10
- package/icons/aws/glue-data-brew.js +10 -10
- package/icons/aws/glue-elastic-views.js +10 -10
- package/icons/aws/glue.js +10 -10
- package/icons/aws/ground-station.js +10 -10
- package/icons/aws/guard-duty.js +10 -10
- package/icons/aws/health-lake.js +10 -10
- package/icons/aws/honeycode.js +10 -10
- package/icons/aws/iam-identity-center.js +10 -10
- package/icons/aws/identity-and-access-management.js +10 -10
- package/icons/aws/inspector.js +10 -10
- package/icons/aws/interactive-video-service.js +10 -10
- package/icons/aws/io-t-1-click.js +10 -10
- package/icons/aws/io-t-analytics.js +10 -10
- package/icons/aws/io-t-button.js +10 -10
- package/icons/aws/io-t-core.js +10 -10
- package/icons/aws/io-t-device-defender.js +10 -10
- package/icons/aws/io-t-device-management.js +10 -10
- package/icons/aws/io-t-edu-kit.js +10 -10
- package/icons/aws/io-t-events.js +10 -10
- package/icons/aws/io-t-express-link.js +10 -10
- package/icons/aws/io-t-fleet-wise.js +10 -10
- package/icons/aws/io-t-greengrass.js +10 -10
- package/icons/aws/io-t-robo-runner.js +10 -10
- package/icons/aws/io-t-site-wise.js +10 -10
- package/icons/aws/io-t-things-graph.js +10 -10
- package/icons/aws/io-t-twin-maker.js +9 -9
- package/icons/aws/iq.js +10 -10
- package/icons/aws/kendra.js +10 -10
- package/icons/aws/key-management-service.js +10 -10
- package/icons/aws/keyspaces.js +10 -10
- package/icons/aws/kinesis-data-analytics.js +10 -10
- package/icons/aws/kinesis-data-streams.js +10 -10
- package/icons/aws/kinesis-firehose.js +10 -10
- package/icons/aws/kinesis-video-streams.js +10 -10
- package/icons/aws/kinesis.js +10 -10
- package/icons/aws/lake-formation.js +10 -10
- package/icons/aws/lambda.js +10 -10
- package/icons/aws/launch-wizard.js +10 -10
- package/icons/aws/lex.js +10 -10
- package/icons/aws/license-manager.js +10 -10
- package/icons/aws/lightsail.js +10 -10
- package/icons/aws/local-zones.js +10 -10
- package/icons/aws/location-service.js +10 -10
- package/icons/aws/lookout-for-equipment.js +10 -10
- package/icons/aws/lookout-for-metrics.js +10 -10
- package/icons/aws/lookout-for-vision.js +10 -10
- package/icons/aws/lumberyard.js +10 -10
- package/icons/aws/macie.js +10 -10
- package/icons/aws/mainframe-modernization.js +10 -10
- package/icons/aws/managed-blockchain.js +10 -10
- package/icons/aws/managed-grafana.js +10 -10
- package/icons/aws/managed-service-for-prometheus.js +10 -10
- package/icons/aws/managed-services.js +10 -10
- package/icons/aws/managed-streaming-for-apache-kafka.js +10 -10
- package/icons/aws/managed-workflows-for-apache-airflow.js +10 -10
- package/icons/aws/management-console.js +10 -10
- package/icons/aws/marketplace-dark.js +6 -6
- package/icons/aws/marketplace-light.js +6 -6
- package/icons/aws/memory-db-for-redis.js +10 -10
- package/icons/aws/migration-evaluator.js +10 -10
- package/icons/aws/migration-hub.js +10 -10
- package/icons/aws/monitron.js +10 -10
- package/icons/aws/mq.js +10 -10
- package/icons/aws/neptune.js +10 -10
- package/icons/aws/network-firewall.js +10 -10
- package/icons/aws/neuron.js +10 -10
- package/icons/aws/nice-dcv.js +10 -10
- package/icons/aws/nice-engin-frame.js +10 -10
- package/icons/aws/nimble-studio.js +10 -10
- package/icons/aws/nitro-enclaves.js +10 -10
- package/icons/aws/omics.js +10 -10
- package/icons/aws/open-3d-engine.js +10 -10
- package/icons/aws/open-search-service.js +10 -10
- package/icons/aws/ops-works.js +10 -10
- package/icons/aws/organizations.js +10 -10
- package/icons/aws/outposts-family.js +10 -10
- package/icons/aws/outposts-rack.js +10 -10
- package/icons/aws/outposts-servers.js +10 -10
- package/icons/aws/panorama.js +10 -10
- package/icons/aws/parallel-cluster.js +10 -10
- package/icons/aws/personal-health-dashboard.js +10 -10
- package/icons/aws/personalize.js +10 -10
- package/icons/aws/pinpoint-apis.js +10 -10
- package/icons/aws/pinpoint.js +10 -10
- package/icons/aws/polly.js +10 -10
- package/icons/aws/private-5g.js +10 -10
- package/icons/aws/private-certificate-authority.js +12 -12
- package/icons/aws/private-link.js +10 -10
- package/icons/aws/professional-services.js +10 -10
- package/icons/aws/proton.js +10 -10
- package/icons/aws/quantum-ledger-database.js +10 -10
- package/icons/aws/quick-sight.js +10 -10
- package/icons/aws/rds-on-vmware.js +10 -10
- package/icons/aws/rds.js +10 -10
- package/icons/aws/re-post.js +10 -10
- package/icons/aws/red-hat-open-shift-service-on-aws.js +10 -10
- package/icons/aws/redshift.js +10 -10
- package/icons/aws/rekognition.js +10 -10
- package/icons/aws/reserved-instance-reporting.js +10 -10
- package/icons/aws/resilience-hub.js +10 -10
- package/icons/aws/resource-access-manager.js +10 -10
- package/icons/aws/resource-explorer.js +10 -10
- package/icons/aws/robo-maker.js +10 -10
- package/icons/aws/route-53.js +10 -10
- package/icons/aws/s3-on-outposts.js +10 -10
- package/icons/aws/sage-maker-ground-truth.js +10 -10
- package/icons/aws/sage-maker-studio-lab.js +10 -10
- package/icons/aws/sage-maker.js +10 -10
- package/icons/aws/savings-plans.js +10 -10
- package/icons/aws/secrets-manager.js +10 -10
- package/icons/aws/security-hub.js +10 -10
- package/icons/aws/security-lake.js +10 -10
- package/icons/aws/server-migration-service.js +10 -10
- package/icons/aws/serverless-application-repository.js +10 -10
- package/icons/aws/service-catalog.js +10 -10
- package/icons/aws/service-management-connector.js +12 -12
- package/icons/aws/shield.js +10 -10
- package/icons/aws/signer.js +10 -10
- package/icons/aws/sim-space-weaver.js +10 -10
- package/icons/aws/simple-email-service.js +10 -10
- package/icons/aws/simple-notification-service.js +10 -10
- package/icons/aws/simple-queue-service.js +10 -10
- package/icons/aws/simple-storage-service-glacier.js +10 -10
- package/icons/aws/simple-storage-service.js +10 -10
- package/icons/aws/site-to-site-vpn.js +10 -10
- package/icons/aws/snowball-edge.js +10 -10
- package/icons/aws/snowball.js +10 -10
- package/icons/aws/snowcone.js +10 -10
- package/icons/aws/snowmobile.js +10 -10
- package/icons/aws/step-functions.js +10 -10
- package/icons/aws/storage-gateway.js +10 -10
- package/icons/aws/sumerian.js +10 -10
- package/icons/aws/supply-chain.js +10 -10
- package/icons/aws/support.js +10 -10
- package/icons/aws/systems-manager.js +10 -10
- package/icons/aws/tensor-flow-on-aws.js +10 -10
- package/icons/aws/textract.js +10 -10
- package/icons/aws/thinkbox-deadline.js +10 -10
- package/icons/aws/thinkbox-frost.js +10 -10
- package/icons/aws/thinkbox-krakatoa.js +10 -10
- package/icons/aws/thinkbox-sequoia.js +10 -10
- package/icons/aws/thinkbox-stoke.js +10 -10
- package/icons/aws/thinkbox-xmesh.js +10 -10
- package/icons/aws/timestream.js +10 -10
- package/icons/aws/tools-and-sdks.js +10 -10
- package/icons/aws/torch-serve.js +10 -10
- package/icons/aws/training-certification.js +10 -10
- package/icons/aws/transcribe.js +10 -10
- package/icons/aws/transfer-family.js +10 -10
- package/icons/aws/transit-gateway.js +10 -10
- package/icons/aws/translate.js +10 -10
- package/icons/aws/trusted-advisor.js +10 -10
- package/icons/aws/verified-access.js +10 -10
- package/icons/aws/verified-permissions.js +10 -10
- package/icons/aws/virtual-private-cloud.js +10 -10
- package/icons/aws/vmware-cloud-on-aws.js +10 -10
- package/icons/aws/vpc-lattice.js +10 -10
- package/icons/aws/waf.js +10 -10
- package/icons/aws/wavelength.js +10 -10
- package/icons/aws/well-architected-tool.js +10 -10
- package/icons/aws/wickr.js +10 -10
- package/icons/aws/work-docs-sdk.js +10 -10
- package/icons/aws/work-docs.js +10 -10
- package/icons/aws/work-link.js +10 -10
- package/icons/aws/work-mail.js +10 -10
- package/icons/aws/work-spaces-family.js +10 -10
- package/icons/aws/x-ray.js +10 -10
- package/icons/azure/abs-member.js +21 -0
- package/icons/azure/active-directory-connect-health.js +115 -0
- package/icons/azure/activity-log.js +33 -0
- package/icons/azure/administrative-units.js +80 -0
- package/icons/azure/advisor.js +44 -0
- package/icons/azure/ai-studio.js +105 -0
- package/icons/azure/aks-automatic.js +105 -0
- package/icons/azure/aks-istio.js +63 -0
- package/icons/azure/alerts.js +29 -0
- package/icons/azure/all-resources.js +21 -0
- package/icons/azure/analysis-services.js +34 -0
- package/icons/azure/anomaly-detector.js +33 -0
- package/icons/azure/api-center.js +31 -0
- package/icons/azure/api-connections.js +44 -0
- package/icons/azure/api-management-services.js +29 -0
- package/icons/azure/api-proxy.js +32 -0
- package/icons/azure/app-compliance-automation.js +71 -0
- package/icons/azure/app-configuration.js +45 -0
- package/icons/azure/app-registrations.js +39 -0
- package/icons/azure/app-service-certificates.js +31 -0
- package/icons/azure/app-service-domains.js +23 -0
- package/icons/azure/app-service-environments.js +25 -0
- package/icons/azure/app-service-plans.js +44 -0
- package/icons/azure/app-services.js +82 -0
- package/icons/azure/app-space-component.js +39 -0
- package/icons/azure/app-space.js +37 -0
- package/icons/azure/applens.js +45 -0
- package/icons/azure/application-gateway-containers.js +113 -0
- package/icons/azure/application-gateways.js +60 -0
- package/icons/azure/application-group.js +21 -0
- package/icons/azure/application-insights.js +46 -0
- package/icons/azure/application-security-groups.js +43 -0
- package/icons/azure/aquila.js +95 -0
- package/icons/azure/arc-data-services.js +49 -0
- package/icons/azure/arc-kubernetes.js +73 -0
- package/icons/azure/arc-machines.js +40 -0
- package/icons/azure/arc-postgre-sql.js +62 -0
- package/icons/azure/arc-sql-managed-instance.js +54 -0
- package/icons/azure/arc-sql-server.js +40 -0
- package/icons/azure/atm-multistack.js +59 -0
- package/icons/azure/auto-scale.js +32 -0
- package/icons/azure/automanaged-vm.js +65 -0
- package/icons/azure/automation-accounts.js +62 -0
- package/icons/azure/availability-sets.js +48 -0
- package/icons/azure/avs-vm.js +32 -0
- package/icons/azure/azure-a.js +46 -0
- package/icons/azure/azure-ad-b2c.js +129 -0
- package/icons/azure/azure-api-for-fhir.js +22 -0
- package/icons/azure/azure-applied-ai-services.js +60 -0
- package/icons/azure/azure-arc.js +75 -0
- package/icons/azure/azure-attestation.js +35 -0
- package/icons/azure/azure-backup-center.js +63 -0
- package/icons/azure/azure-blockchain-service.js +51 -0
- package/icons/azure/azure-center-for-sap.js +37 -0
- package/icons/azure/azure-chaos-studio.js +41 -0
- package/icons/azure/azure-cloud-shell.js +28 -0
- package/icons/azure/azure-communication-services.js +41 -0
- package/icons/azure/azure-communications-gateway.js +32 -0
- package/icons/azure/azure-compute-galleries.js +24 -0
- package/icons/azure/azure-cosmos-db.js +41 -0
- package/icons/azure/azure-data-catalog.js +69 -0
- package/icons/azure/azure-data-explorer-clusters.js +82 -0
- package/icons/azure/azure-database-maria-db-server.js +45 -0
- package/icons/azure/azure-database-migration-services.js +62 -0
- package/icons/azure/azure-database-my-sql-server.js +45 -0
- package/icons/azure/azure-database-postgre-sql-server-group.js +65 -0
- package/icons/azure/azure-database-postgre-sql-server.js +57 -0
- package/icons/azure/azure-databox-gateway.js +28 -0
- package/icons/azure/azure-databricks.js +12 -0
- package/icons/azure/azure-deployment-environments.js +48 -0
- package/icons/azure/azure-dev-ops.js +21 -0
- package/icons/azure/azure-dev-tunnels.js +20 -0
- package/icons/azure/azure-edge-hardware-center.js +58 -0
- package/icons/azure/azure-experimentation-studio.js +77 -0
- package/icons/azure/azure-fileshares.js +46 -0
- package/icons/azure/azure-firewall-manager.js +49 -0
- package/icons/azure/azure-firewall-policy.js +37 -0
- package/icons/azure/azure-hcp-cache.js +23 -0
- package/icons/azure/azure-hpc-workbenches.js +68 -0
- package/icons/azure/azure-hybrid-center.js +22 -0
- package/icons/azure/azure-information-protection.js +51 -0
- package/icons/azure/azure-io-t-operations.js +46 -0
- package/icons/azure/azure-lighthouse.js +35 -0
- package/icons/azure/azure-load-testing.js +56 -0
- package/icons/azure/azure-managed-grafana.js +19 -0
- package/icons/azure/azure-maps-accounts.js +16 -0
- package/icons/azure/azure-media-service.js +90 -0
- package/icons/azure/azure-migrate.js +46 -0
- package/icons/azure/azure-monitor-dashboard.js +47 -0
- package/icons/azure/azure-monitor-pipeline.js +57 -0
- package/icons/azure/azure-monitors-for-sap-solutions.js +49 -0
- package/icons/azure/azure-net-app-files.js +36 -0
- package/icons/azure/azure-network-function-manager-functions.js +41 -0
- package/icons/azure/azure-network-function-manager.js +65 -0
- package/icons/azure/azure-object-understanding.js +39 -0
- package/icons/azure/azure-open-ai.js +29 -0
- package/icons/azure/azure-operator-5g-core.js +64 -0
- package/icons/azure/azure-operator-insights.js +31 -0
- package/icons/azure/azure-operator-nexus.js +54 -0
- package/icons/azure/azure-operator-service-manager.js +30 -0
- package/icons/azure/azure-orbital.js +115 -0
- package/icons/azure/azure-programmable-connectivity.js +145 -0
- package/icons/azure/azure-purview-accounts.js +56 -0
- package/icons/azure/azure-quotas.js +43 -0
- package/icons/azure/azure-red-hat-open-shift.js +44 -0
- package/icons/azure/azure-sentinel.js +37 -0
- package/icons/azure/azure-service-bus.js +66 -0
- package/icons/azure/azure-sphere.js +57 -0
- package/icons/azure/azure-spring-apps.js +67 -0
- package/icons/azure/azure-sql-edge.js +146 -0
- package/icons/azure/azure-sql-server-stretch-databases.js +54 -0
- package/icons/azure/azure-sql-vm.js +37 -0
- package/icons/azure/azure-sql.js +27 -0
- package/icons/azure/azure-stack-edge.js +33 -0
- package/icons/azure/azure-stack-hci-sizer.js +57 -0
- package/icons/azure/azure-stack.js +54 -0
- package/icons/azure/azure-storage-mover.js +58 -0
- package/icons/azure/azure-support-center-blue.js +31 -0
- package/icons/azure/azure-sustainability.js +42 -0
- package/icons/azure/azure-synapse-analytics.js +49 -0
- package/icons/azure/azure-token-service.js +46 -0
- package/icons/azure/azure-video-indexer.js +60 -0
- package/icons/azure/azure-virtual-desktop.js +19 -0
- package/icons/azure/azure-vmware-solution.js +35 -0
- package/icons/azure/azure-workbooks.js +72 -0
- package/icons/azure/azurite.js +34 -0
- package/icons/azure/backlog.js +48 -0
- package/icons/azure/backup-vault.js +49 -0
- package/icons/azure/bare-metal-infrastructure.js +41 -0
- package/icons/azure/bastions.js +71 -0
- package/icons/azure/batch-accounts.js +52 -0
- package/icons/azure/batch-ai.js +56 -0
- package/icons/azure/biz-talk.js +39 -0
- package/icons/azure/blob-block.js +17 -0
- package/icons/azure/blob-page.js +43 -0
- package/icons/azure/blockchain-applications.js +32 -0
- package/icons/azure/blueprints.js +56 -0
- package/icons/azure/bonsai.js +63 -0
- package/icons/azure/bot-services.js +43 -0
- package/icons/azure/branch.js +32 -0
- package/icons/azure/browser.js +16 -0
- package/icons/azure/bug.js +26 -0
- package/icons/azure/builds.js +48 -0
- package/icons/azure/business-process-tracking.js +28 -0
- package/icons/azure/cache-redis.js +72 -0
- package/icons/azure/cache.js +113 -0
- package/icons/azure/capacity-reservation-groups.js +47 -0
- package/icons/azure/capacity.js +74 -0
- package/icons/azure/cdn-profiles.js +21 -0
- package/icons/azure/central-service-instance-for-sap.js +44 -0
- package/icons/azure/ceres.js +58 -0
- package/icons/azure/change-analysis.js +93 -0
- package/icons/azure/client-apps.js +21 -0
- package/icons/azure/cloud-services-classic.js +37 -0
- package/icons/azure/cloud-services-extended-support.js +50 -0
- package/icons/azure/cloud-test.js +58 -0
- package/icons/azure/code-optimization.js +146 -0
- package/icons/azure/code.js +94 -0
- package/icons/azure/cognitive-search.js +26 -0
- package/icons/azure/cognitive-services-decisions.js +94 -0
- package/icons/azure/cognitive-services.js +42 -0
- package/icons/azure/collaborative-service.js +46 -0
- package/icons/azure/commit.js +30 -0
- package/icons/azure/community-images.js +35 -0
- package/icons/azure/compliance-center.js +48 -0
- package/icons/azure/compliance.js +35 -0
- package/icons/azure/compute-fleet.js +91 -0
- package/icons/azure/computer-vision.js +24 -0
- package/icons/azure/conditional-access.js +45 -0
- package/icons/azure/confidential-ledgers.js +63 -0
- package/icons/azure/connected-cache.js +77 -0
- package/icons/azure/connected-vehicle-platform.js +66 -0
- package/icons/azure/connections.js +54 -0
- package/icons/azure/consortium.js +63 -0
- package/icons/azure/container-apps-environments.js +44 -0
- package/icons/azure/container-instances.js +37 -0
- package/icons/azure/container-registries.js +57 -0
- package/icons/azure/container-services-deprecated.js +65 -0
- package/icons/azure/content-moderators.js +41 -0
- package/icons/azure/content-safety.js +77 -0
- package/icons/azure/controls-horizontal.js +135 -0
- package/icons/azure/controls.js +33 -0
- package/icons/azure/cost-alerts.js +28 -0
- package/icons/azure/cost-analysis.js +35 -0
- package/icons/azure/cost-budgets.js +30 -0
- package/icons/azure/cost-export.js +25 -0
- package/icons/azure/cost-management-and-billing.js +31 -0
- package/icons/azure/cost-management.js +35 -0
- package/icons/azure/counter.js +33 -0
- package/icons/azure/cubes.js +16 -0
- package/icons/azure/custom-ip-prefix.js +34 -0
- package/icons/azure/custom-vision.js +48 -0
- package/icons/azure/customer-lockbox-for-microsoft-azure.js +42 -0
- package/icons/azure/dashboard-hub.js +61 -0
- package/icons/azure/dashboard.js +42 -0
- package/icons/azure/data-box.js +33 -0
- package/icons/azure/data-collection-rules.js +42 -0
- package/icons/azure/data-factories.js +36 -0
- package/icons/azure/data-lake-analytics.js +32 -0
- package/icons/azure/data-lake-storage-gen1.js +38 -0
- package/icons/azure/data-lake-store-gen1.js +38 -0
- package/icons/azure/data-share-invitations.js +23 -0
- package/icons/azure/data-shares.js +67 -0
- package/icons/azure/database-instance-for-sap.js +69 -0
- package/icons/azure/ddo-s-protection-plans.js +36 -0
- package/icons/azure/dedicated-hsm.js +38 -0
- package/icons/azure/defender-cm-local-manager.js +131 -0
- package/icons/azure/defender-dcs-controller.js +66 -0
- package/icons/azure/defender-distributer-control-system.js +45 -0
- package/icons/azure/defender-engineering-station.js +71 -0
- package/icons/azure/defender-external-management.js +88 -0
- package/icons/azure/defender-freezer-monitor.js +151 -0
- package/icons/azure/defender-historian.js +53 -0
- package/icons/azure/defender-hmi.js +43 -0
- package/icons/azure/defender-industrial-packaging-system.js +75 -0
- package/icons/azure/defender-industrial-printer.js +34 -0
- package/icons/azure/defender-industrial-robot.js +99 -0
- package/icons/azure/defender-industrial-scale-system.js +58 -0
- package/icons/azure/defender-marquee.js +38 -0
- package/icons/azure/defender-meter.js +101 -0
- package/icons/azure/defender-plc.js +55 -0
- package/icons/azure/defender-pneumatic-device.js +50 -0
- package/icons/azure/defender-programable-board.js +82 -0
- package/icons/azure/defender-relay.js +49 -0
- package/icons/azure/defender-robot-controller.js +79 -0
- package/icons/azure/defender-rtu.js +23 -0
- package/icons/azure/defender-sensor.js +44 -0
- package/icons/azure/defender-slot.js +31 -0
- package/icons/azure/defender-web-guiding-system.js +167 -0
- package/icons/azure/detonation.js +30 -0
- package/icons/azure/dev-console.js +30 -0
- package/icons/azure/dev-ops-starter.js +102 -0
- package/icons/azure/dev-test-labs.js +46 -0
- package/icons/azure/device-compliance.js +40 -0
- package/icons/azure/device-configuration.js +33 -0
- package/icons/azure/device-enrollment.js +37 -0
- package/icons/azure/device-provisioning-services.js +43 -0
- package/icons/azure/device-security-apple.js +43 -0
- package/icons/azure/device-security-google.js +43 -0
- package/icons/azure/device-security-windows.js +43 -0
- package/icons/azure/device-update-io-t-hub.js +35 -0
- package/icons/azure/devices.js +29 -0
- package/icons/azure/diagnostics-settings.js +40 -0
- package/icons/azure/digital-twins.js +40 -0
- package/icons/azure/disk-encryption-sets.js +63 -0
- package/icons/azure/disk-pool.js +92 -0
- package/icons/azure/disks-classic.js +63 -0
- package/icons/azure/disks-snapshots.js +49 -0
- package/icons/azure/disks.js +63 -0
- package/icons/azure/dns-multistack.js +49 -0
- package/icons/azure/dns-private-resolver.js +39 -0
- package/icons/azure/dns-security-policy.js +90 -0
- package/icons/azure/dns-zones.js +37 -0
- package/icons/azure/download.js +60 -0
- package/icons/azure/e-books.js +42 -0
- package/icons/azure/edge-management.js +53 -0
- package/icons/azure/education.js +42 -0
- package/icons/azure/elastic-job-agents.js +50 -0
- package/icons/azure/elastic-san.js +65 -0
- package/icons/azure/endpoint-analytics.js +72 -0
- package/icons/azure/enterprise-applications.js +55 -0
- package/icons/azure/entra-connect-health.js +115 -0
- package/icons/azure/entra-connect-sync.js +86 -0
- package/icons/azure/entra-connect.js +123 -0
- package/icons/azure/entra-domain-services.js +99 -0
- package/icons/azure/entra-global-secure-access.js +37 -0
- package/icons/azure/entra-id-protection.js +63 -0
- package/icons/azure/entra-identity-custom-roles.js +62 -0
- package/icons/azure/entra-identity-licenses.js +52 -0
- package/icons/azure/entra-identity-risky-signins.js +28 -0
- package/icons/azure/entra-identity-risky-users.js +28 -0
- package/icons/azure/entra-identity-roles-and-administrators.js +31 -0
- package/icons/azure/entra-internet-access.js +72 -0
- package/icons/azure/entra-managed-identities.js +114 -0
- package/icons/azure/entra-private-access.js +60 -0
- package/icons/azure/entra-privleged-identity-management.js +114 -0
- package/icons/azure/entra-verified-id.js +53 -0
- package/icons/azure/error.js +30 -0
- package/icons/azure/event-grid-domains.js +65 -0
- package/icons/azure/event-grid-subscriptions.js +65 -0
- package/icons/azure/event-grid-topics.js +68 -0
- package/icons/azure/event-hub-clusters.js +77 -0
- package/icons/azure/event-hubs.js +64 -0
- package/icons/azure/exchange-access.js +45 -0
- package/icons/azure/exchange-on-premises-access.js +28 -0
- package/icons/azure/express-route-circuits.js +38 -0
- package/icons/azure/express-route-direct.js +50 -0
- package/icons/azure/express-route-traffic-collector.js +86 -0
- package/icons/azure/extended-security-updates.js +33 -0
- package/icons/azure/extensions.js +28 -0
- package/icons/azure/external-identities.js +42 -0
- package/icons/azure/face-apis.js +19 -0
- package/icons/azure/feature-previews.js +21 -0
- package/icons/azure/fhir-service.js +60 -0
- package/icons/azure/fiji.js +42 -0
- package/icons/azure/file.js +29 -0
- package/icons/azure/files.js +45 -0
- package/icons/azure/firewalls.js +32 -0
- package/icons/azure/folder-blank.js +28 -0
- package/icons/azure/folder-website.js +84 -0
- package/icons/azure/form-recognizers.js +48 -0
- package/icons/azure/free-services.js +43 -0
- package/icons/azure/front-door-and-cdn-profiles.js +26 -0
- package/icons/azure/ftp.js +17 -0
- package/icons/azure/function-apps.js +61 -0
- package/icons/azure/gear.js +37 -0
- package/icons/azure/genomics-accounts.js +57 -0
- package/icons/azure/genomics.js +57 -0
- package/icons/azure/globe-error.js +42 -0
- package/icons/azure/globe-success.js +52 -0
- package/icons/azure/globe-warning.js +53 -0
- package/icons/azure/groups.js +42 -0
- package/icons/azure/guide.js +17 -0
- package/icons/azure/hd-insight-clusters.js +38 -0
- package/icons/azure/hdi-aks-cluster.js +60 -0
- package/icons/azure/heart.js +31 -0
- package/icons/azure/help-and-support.js +33 -0
- package/icons/azure/host-groups.js +48 -0
- package/icons/azure/host-pools.js +19 -0
- package/icons/azure/hosts.js +46 -0
- package/icons/azure/ic-m-troubleshooting.js +60 -0
- package/icons/azure/identity-governance.js +41 -0
- package/icons/azure/identity-multi-factor-authentication.js +71 -0
- package/icons/azure/identity-secure-score.js +55 -0
- package/icons/azure/image-definitions.js +27 -0
- package/icons/azure/image-templates.js +32 -0
- package/icons/azure/image-versions.js +27 -0
- package/icons/azure/image.js +31 -0
- package/icons/azure/images.js +37 -0
- package/icons/azure/immersive-readers.js +60 -0
- package/icons/azure/import-export-jobs.js +25 -0
- package/icons/azure/industrial-io-t.js +53 -0
- package/icons/azure/information.js +21 -0
- package/icons/azure/infrastructure-backup.js +67 -0
- package/icons/azure/input-output.js +97 -0
- package/icons/azure/instance-pools.js +76 -0
- package/icons/azure/integration-accounts.js +30 -0
- package/icons/azure/integration-environments.js +94 -0
- package/icons/azure/integration-service-environments.js +58 -0
- package/icons/azure/internet-analyzer-profiles.js +48 -0
- package/icons/azure/intune-app-protection.js +46 -0
- package/icons/azure/intune-for-education.js +46 -0
- package/icons/azure/intune-trends.js +29 -0
- package/icons/azure/intune.js +46 -0
- package/icons/azure/io-t-central-applications.js +20 -0
- package/icons/azure/io-t-edge.js +25 -0
- package/icons/azure/io-t-hub.js +36 -0
- package/icons/azure/ip-address-manager.js +52 -0
- package/icons/azure/ip-groups.js +39 -0
- package/icons/azure/journey-hub.js +30 -0
- package/icons/azure/key-vaults.js +61 -0
- package/icons/azure/keys.js +97 -0
- package/icons/azure/kubernetes-fleet-manager.js +73 -0
- package/icons/azure/kubernetes-services.js +65 -0
- package/icons/azure/lab-accounts.js +47 -0
- package/icons/azure/lab-services.js +46 -0
- package/icons/azure/language-understanding.js +14 -0
- package/icons/azure/language.js +71 -0
- package/icons/azure/launch-portal.js +25 -0
- package/icons/azure/learn.js +61 -0
- package/icons/azure/load-balancer-hub.js +90 -0
- package/icons/azure/load-balancers.js +28 -0
- package/icons/azure/load-test.js +50 -0
- package/icons/azure/load-testing.js +71 -0
- package/icons/azure/local-network-gateways.js +33 -0
- package/icons/azure/location.js +34 -0
- package/icons/azure/log-analytics-query-pack.js +57 -0
- package/icons/azure/log-analytics-workspaces.js +36 -0
- package/icons/azure/log-streaming.js +46 -0
- package/icons/azure/logic-apps-custom-connector.js +43 -0
- package/icons/azure/logic-apps.js +54 -0
- package/icons/azure/machine-learning-studio-classic-web-services.js +38 -0
- package/icons/azure/machine-learning-studio-web-service-plans.js +62 -0
- package/icons/azure/machine-learning-studio-workspaces.js +44 -0
- package/icons/azure/machine-learning.js +29 -0
- package/icons/azure/machines-azure-arc.js +27 -0
- package/icons/azure/maintenance-configuration.js +62 -0
- package/icons/azure/managed-applications-center.js +44 -0
- package/icons/azure/managed-database.js +57 -0
- package/icons/azure/managed-desktop.js +40 -0
- package/icons/azure/managed-dev-ops-pools.js +59 -0
- package/icons/azure/managed-file-shares.js +59 -0
- package/icons/azure/managed-identities.js +44 -0
- package/icons/azure/managed-instance-apache-cassandra.js +49 -0
- package/icons/azure/managed-service-fabric.js +98 -0
- package/icons/azure/management-groups.js +66 -0
- package/icons/azure/management-portal.js +17 -0
- package/icons/azure/marketplace-management.js +36 -0
- package/icons/azure/marketplace.js +38 -0
- package/icons/azure/med-tech-service.js +65 -0
- package/icons/azure/media-file.js +36 -0
- package/icons/azure/media.js +108 -0
- package/icons/azure/mesh-applications.js +47 -0
- package/icons/azure/metrics-advisor.js +47 -0
- package/icons/azure/metrics.js +34 -0
- package/icons/azure/microsoft-defender-easm.js +69 -0
- package/icons/azure/microsoft-defender-for-cloud.js +50 -0
- package/icons/azure/microsoft-defender-for-io-t.js +43 -0
- package/icons/azure/microsoft-dev-box.js +143 -0
- package/icons/azure/mindaro.js +47 -0
- package/icons/azure/mission-landing-zone.js +48 -0
- package/icons/azure/mobile-engagement.js +35 -0
- package/icons/azure/mobile-networks.js +75 -0
- package/icons/azure/mobile.js +28 -0
- package/icons/azure/modular-data-center.js +61 -0
- package/icons/azure/module.js +25 -0
- package/icons/azure/monitor-health-models.js +77 -0
- package/icons/azure/monitor.js +61 -0
- package/icons/azure/multi-tenancy.js +47 -0
- package/icons/azure/multifactor-authentication.js +84 -0
- package/icons/azure/my-customers.js +42 -0
- package/icons/azure/nat.js +45 -0
- package/icons/azure/network-interfaces.js +41 -0
- package/icons/azure/network-managers.js +44 -0
- package/icons/azure/network-security-groups.js +42 -0
- package/icons/azure/network-security-perimeters.js +91 -0
- package/icons/azure/network-watcher.js +55 -0
- package/icons/azure/notification-hub-namespaces.js +22 -0
- package/icons/azure/notification-hubs.js +22 -0
- package/icons/azure/offers.js +35 -0
- package/icons/azure/on-premises-data-gateways.js +33 -0
- package/icons/azure/open-supply-chain-platform.js +54 -0
- package/icons/azure/operation-log-classic.js +33 -0
- package/icons/azure/oracle-database.js +33 -0
- package/icons/azure/os-images-classic.js +38 -0
- package/icons/azure/osconfig.js +71 -0
- package/icons/azure/outbound-connection.js +24 -0
- package/icons/azure/partner-namespace.js +97 -0
- package/icons/azure/partner-registration.js +95 -0
- package/icons/azure/partner-topic.js +82 -0
- package/icons/azure/peering-service.js +27 -0
- package/icons/azure/peerings.js +33 -0
- package/icons/azure/personalizers.js +55 -0
- package/icons/azure/plans.js +40 -0
- package/icons/azure/policy.js +34 -0
- package/icons/azure/power-bi-embedded.js +69 -0
- package/icons/azure/power-platform.js +163 -0
- package/icons/azure/power-up.js +42 -0
- package/icons/azure/power.js +31 -0
- package/icons/azure/powershell.js +30 -0
- package/icons/azure/preview-features.js +50 -0
- package/icons/azure/private-endpoints.js +69 -0
- package/icons/azure/private-link-service.js +83 -0
- package/icons/azure/private-link-services.js +72 -0
- package/icons/azure/private-link.js +94 -0
- package/icons/azure/process-explorer.js +23 -0
- package/icons/azure/production-ready-database.js +70 -0
- package/icons/azure/proximity-placement-groups.js +71 -0
- package/icons/azure/public-ip-addresses-classic.js +19 -0
- package/icons/azure/public-ip-addresses.js +19 -0
- package/icons/azure/public-ip-prefixes.js +53 -0
- package/icons/azure/qn-a-makers.js +50 -0
- package/icons/azure/quickstart-center.js +54 -0
- package/icons/azure/recent.js +57 -0
- package/icons/azure/recovery-services-vaults.js +45 -0
- package/icons/azure/region-management.js +42 -0
- package/icons/azure/relays.js +45 -0
- package/icons/azure/remote-rendering.js +71 -0
- package/icons/azure/reservations.js +37 -0
- package/icons/azure/reserved-capacity.js +45 -0
- package/icons/azure/reserved-ip-addresses-classic.js +21 -0
- package/icons/azure/resource-explorer.js +33 -0
- package/icons/azure/resource-graph-explorer.js +25 -0
- package/icons/azure/resource-group-list.js +48 -0
- package/icons/azure/resource-groups.js +40 -0
- package/icons/azure/resource-guard.js +46 -0
- package/icons/azure/resource-linked.js +40 -0
- package/icons/azure/resource-management-private-link.js +44 -0
- package/icons/azure/resource-mover.js +20 -0
- package/icons/azure/resources-provider.js +27 -0
- package/icons/azure/restore-points-collections.js +40 -0
- package/icons/azure/restore-points.js +39 -0
- package/icons/azure/route-filters.js +39 -0
- package/icons/azure/route-tables.js +40 -0
- package/icons/azure/rtos.js +64 -0
- package/icons/azure/savings-plans.js +53 -0
- package/icons/azure/scheduler-job-collections.js +73 -0
- package/icons/azure/scheduler.js +75 -0
- package/icons/azure/scvmm-management-servers.js +68 -0
- package/icons/azure/search-grid.js +48 -0
- package/icons/azure/search.js +28 -0
- package/icons/azure/security-baselines.js +44 -0
- package/icons/azure/security.js +22 -0
- package/icons/azure/send-grid-accounts.js +25 -0
- package/icons/azure/server-farm.js +54 -0
- package/icons/azure/serverless-search.js +54 -0
- package/icons/azure/service-catalog-mad.js +48 -0
- package/icons/azure/service-endpoint-policies.js +64 -0
- package/icons/azure/service-fabric-clusters.js +53 -0
- package/icons/azure/service-health.js +34 -0
- package/icons/azure/service-providers.js +38 -0
- package/icons/azure/shared-image-galleries.js +21 -0
- package/icons/azure/signal-r.js +22 -0
- package/icons/azure/software-as-a-service.js +43 -0
- package/icons/azure/software-updates.js +22 -0
- package/icons/azure/solutions.js +58 -0
- package/icons/azure/sonic-dash.js +73 -0
- package/icons/azure/spatial-anchor-accounts.js +44 -0
- package/icons/azure/speech-services.js +32 -0
- package/icons/azure/spot-vm.js +40 -0
- package/icons/azure/spot-vmss.js +66 -0
- package/icons/azure/sql-data-warehouses.js +54 -0
- package/icons/azure/sql-database.js +52 -0
- package/icons/azure/sql-elastic-pools.js +78 -0
- package/icons/azure/sql-managed-instance.js +51 -0
- package/icons/azure/sql-server-registries.js +64 -0
- package/icons/azure/sql-server.js +46 -0
- package/icons/azure/ssd.js +30 -0
- package/icons/azure/ssh-keys.js +42 -0
- package/icons/azure/ssis-lift-and-shift-ir.js +72 -0
- package/icons/azure/stack-hci-premium.js +78 -0
- package/icons/azure/static-apps.js +29 -0
- package/icons/azure/stor-simple-data-managers.js +57 -0
- package/icons/azure/stor-simple-device-managers.js +27 -0
- package/icons/azure/storage-accounts-classic.js +36 -0
- package/icons/azure/storage-accounts.js +35 -0
- package/icons/azure/storage-actions.js +66 -0
- package/icons/azure/storage-azure-files.js +30 -0
- package/icons/azure/storage-container.js +29 -0
- package/icons/azure/storage-explorer.js +27 -0
- package/icons/azure/storage-functions.js +40 -0
- package/icons/azure/storage-queue.js +18 -0
- package/icons/azure/storage-sync-services.js +52 -0
- package/icons/azure/stream-analytics-jobs.js +53 -0
- package/icons/azure/subnet.js +43 -0
- package/icons/azure/subscriptions.js +41 -0
- package/icons/azure/system-topic.js +103 -0
- package/icons/azure/table.js +23 -0
- package/icons/azure/tag.js +28 -0
- package/icons/azure/tags.js +46 -0
- package/icons/azure/targets-management.js +43 -0
- package/icons/azure/template-specs.js +67 -0
- package/icons/azure/templates.js +33 -0
- package/icons/azure/tenant-properties.js +51 -0
- package/icons/azure/tenant-status.js +40 -0
- package/icons/azure/test-base.js +56 -0
- package/icons/azure/tfs-vc-repository.js +42 -0
- package/icons/azure/time-series-data-sets.js +52 -0
- package/icons/azure/time-series-insights-access-policies.js +42 -0
- package/icons/azure/time-series-insights-environments.js +39 -0
- package/icons/azure/time-series-insights-event-sources.js +36 -0
- package/icons/azure/toolbox.js +26 -0
- package/icons/azure/traffic-manager-profiles.js +36 -0
- package/icons/azure/translator-text.js +75 -0
- package/icons/azure/troubleshoot.js +38 -0
- package/icons/azure/universal-print.js +35 -0
- package/icons/azure/update-management-center.js +69 -0
- package/icons/azure/updates.js +47 -0
- package/icons/azure/user-privacy.js +44 -0
- package/icons/azure/user-settings.js +46 -0
- package/icons/azure/user-subscriptions.js +82 -0
- package/icons/azure/users.js +26 -0
- package/icons/azure/verifiable-credentials.js +99 -0
- package/icons/azure/verification-as-a-service.js +84 -0
- package/icons/azure/versions.js +24 -0
- package/icons/azure/video-analyzers.js +42 -0
- package/icons/azure/virtual-clusters.js +77 -0
- package/icons/azure/virtual-enclaves.js +40 -0
- package/icons/azure/virtual-instance-for-sap.js +70 -0
- package/icons/azure/virtual-machine.js +30 -0
- package/icons/azure/virtual-machines-classic.js +31 -0
- package/icons/azure/virtual-network-gateways.js +45 -0
- package/icons/azure/virtual-networks-classic.js +64 -0
- package/icons/azure/virtual-networks.js +64 -0
- package/icons/azure/virtual-router.js +29 -0
- package/icons/azure/virtual-visits-builder.js +75 -0
- package/icons/azure/virtual-wan-hub.js +55 -0
- package/icons/azure/virtual-wans.js +60 -0
- package/icons/azure/vm-app-definitions.js +66 -0
- package/icons/azure/vm-app-versions.js +58 -0
- package/icons/azure/vm-image-version.js +59 -0
- package/icons/azure/vm-images-classic.js +38 -0
- package/icons/azure/vm-scale-sets.js +38 -0
- package/icons/azure/wac-installer.js +104 -0
- package/icons/azure/wac.js +56 -0
- package/icons/azure/web-app-database.js +160 -0
- package/icons/azure/web-application-firewall-policies-waf.js +91 -0
- package/icons/azure/web-jobs.js +119 -0
- package/icons/azure/web-slots.js +30 -0
- package/icons/azure/web-test.js +105 -0
- package/icons/azure/website-power.js +62 -0
- package/icons/azure/website-staging.js +24 -0
- package/icons/azure/windows-notification-services.js +67 -0
- package/icons/azure/windows10-core-services.js +50 -0
- package/icons/azure/workbooks.js +38 -0
- package/icons/azure/worker-container-app.js +69 -0
- package/icons/azure/workflow.js +36 -0
- package/icons/azure/workspace-gateway.js +64 -0
- package/icons/azure/workspaces.js +23 -0
- package/icons/gcp/access-context-manager.js +7 -7
- package/icons/gcp/administration.js +14 -14
- package/icons/gcp/advanced-agent-modeling.js +9 -9
- package/icons/gcp/advanced-solutions-lab.js +32 -32
- package/icons/gcp/agent-assist.js +4 -4
- package/icons/gcp/ai-hub.js +13 -13
- package/icons/gcp/ai-platform-unified.js +11 -11
- package/icons/gcp/ai-platform.js +6 -6
- package/icons/gcp/analytics-hub.js +7 -7
- package/icons/gcp/anthos-config-management.js +7 -7
- package/icons/gcp/anthos-service-mesh.js +4 -4
- package/icons/gcp/anthos.js +8 -8
- package/icons/gcp/api-analytics.js +10 -10
- package/icons/gcp/api-monetization.js +13 -13
- package/icons/gcp/api.js +9 -9
- package/icons/gcp/apigee-api-platform.js +9 -9
- package/icons/gcp/apigee-sense.js +7 -7
- package/icons/gcp/app-engine.js +10 -10
- package/icons/gcp/artifact-registry.js +19 -19
- package/icons/gcp/asset-inventory.js +9 -9
- package/icons/gcp/assured-workloads.js +11 -11
- package/icons/gcp/auto-ml-natural-language.js +6 -6
- package/icons/gcp/auto-ml-tables.js +9 -9
- package/icons/gcp/auto-ml-translation.js +9 -9
- package/icons/gcp/auto-ml-video-intelligence.js +9 -9
- package/icons/gcp/auto-ml-vision.js +8 -8
- package/icons/gcp/auto-ml.js +10 -10
- package/icons/gcp/bare-metal-solutions.js +7 -7
- package/icons/gcp/batch.js +4 -4
- package/icons/gcp/beyondcorp.js +4 -4
- package/icons/gcp/big-query.js +11 -11
- package/icons/gcp/bigtable.js +22 -22
- package/icons/gcp/billing.js +14 -14
- package/icons/gcp/binary-authorization.js +7 -7
- package/icons/gcp/catalog.js +10 -10
- package/icons/gcp/certificate-authority-service.js +8 -8
- package/icons/gcp/certificate-manager.js +7 -7
- package/icons/gcp/cloud-api-gateway.js +4 -4
- package/icons/gcp/cloud-apis.js +14 -14
- package/icons/gcp/cloud-armor.js +11 -11
- package/icons/gcp/cloud-asset-inventory.js +7 -7
- package/icons/gcp/cloud-audit-logs.js +14 -14
- package/icons/gcp/cloud-build.js +9 -9
- package/icons/gcp/cloud-cdn.js +18 -18
- package/icons/gcp/cloud-code.js +12 -12
- package/icons/gcp/cloud-composer.js +9 -9
- package/icons/gcp/cloud-data-fusion.js +11 -11
- package/icons/gcp/cloud-deploy.js +7 -7
- package/icons/gcp/cloud-deployment-manager.js +14 -14
- package/icons/gcp/cloud-dns.js +16 -16
- package/icons/gcp/cloud-domains.js +9 -9
- package/icons/gcp/cloud-ekm.js +4 -4
- package/icons/gcp/cloud-endpoints.js +13 -13
- package/icons/gcp/cloud-external-ip-addresses.js +6 -6
- package/icons/gcp/cloud-firewall-rules.js +6 -6
- package/icons/gcp/cloud-for-marketing.js +4 -4
- package/icons/gcp/cloud-functions.js +19 -19
- package/icons/gcp/cloud-generic.js +4 -4
- package/icons/gcp/cloud-gpu.js +8 -8
- package/icons/gcp/cloud-healthcare-api.js +15 -15
- package/icons/gcp/cloud-healthcare-marketplace.js +7 -7
- package/icons/gcp/cloud-hsm.js +10 -10
- package/icons/gcp/cloud-ids.js +9 -9
- package/icons/gcp/cloud-inference-api.js +12 -12
- package/icons/gcp/cloud-interconnect.js +11 -11
- package/icons/gcp/cloud-jobs-api.js +12 -12
- package/icons/gcp/cloud-load-balancing.js +16 -16
- package/icons/gcp/cloud-logging.js +14 -14
- package/icons/gcp/cloud-media-edge.js +20 -20
- package/icons/gcp/cloud-monitoring.js +10 -10
- package/icons/gcp/cloud-nat.js +9 -9
- package/icons/gcp/cloud-natural-language-api.js +13 -13
- package/icons/gcp/cloud-network.js +13 -13
- package/icons/gcp/cloud-ops.js +12 -12
- package/icons/gcp/cloud-optimization-ai-fleet-routing-api.js +7 -7
- package/icons/gcp/cloud-optimization-ai.js +7 -7
- package/icons/gcp/cloud-router.js +4 -4
- package/icons/gcp/cloud-routes.js +8 -8
- package/icons/gcp/cloud-run-for-anthos.js +6 -6
- package/icons/gcp/cloud-run.js +9 -9
- package/icons/gcp/cloud-scheduler.js +13 -13
- package/icons/gcp/cloud-security-scanner.js +12 -12
- package/icons/gcp/cloud-shell.js +7 -7
- package/icons/gcp/cloud-spanner.js +11 -11
- package/icons/gcp/cloud-sql.js +12 -12
- package/icons/gcp/cloud-storage.js +18 -18
- package/icons/gcp/cloud-tasks.js +21 -21
- package/icons/gcp/cloud-test-lab.js +11 -11
- package/icons/gcp/cloud-tpu.js +22 -22
- package/icons/gcp/cloud-translation-api.js +6 -6
- package/icons/gcp/cloud-vision-api.js +12 -12
- package/icons/gcp/cloud-vpn.js +13 -13
- package/icons/gcp/compute-engine.js +13 -13
- package/icons/gcp/configuration-management.js +7 -7
- package/icons/gcp/connectivity-test.js +4 -4
- package/icons/gcp/connectors.js +10 -10
- package/icons/gcp/contact-center-ai.js +4 -4
- package/icons/gcp/container-optimized-os.js +4 -4
- package/icons/gcp/container-registry.js +23 -23
- package/icons/gcp/data-catalog.js +9 -9
- package/icons/gcp/data-labeling.js +15 -15
- package/icons/gcp/data-layers.js +8 -8
- package/icons/gcp/data-loss-prevention-api.js +14 -14
- package/icons/gcp/data-qn-a.js +9 -9
- package/icons/gcp/data-studio.js +12 -12
- package/icons/gcp/data-transfer.js +8 -8
- package/icons/gcp/database-migration-service.js +7 -7
- package/icons/gcp/dataflow.js +16 -16
- package/icons/gcp/datalab.js +4 -4
- package/icons/gcp/dataplex.js +6 -6
- package/icons/gcp/datapol.js +17 -17
- package/icons/gcp/dataprep.js +9 -9
- package/icons/gcp/dataproc-metastore.js +4 -4
- package/icons/gcp/dataproc.js +15 -15
- package/icons/gcp/datashare.js +9 -9
- package/icons/gcp/datastore.js +35 -35
- package/icons/gcp/datastream.js +13 -13
- package/icons/gcp/debugger.js +11 -11
- package/icons/gcp/developer-portal.js +8 -8
- package/icons/gcp/dialogflow-cx.js +7 -7
- package/icons/gcp/dialogflow-insights.js +11 -11
- package/icons/gcp/dialogflow.js +6 -6
- package/icons/gcp/document-ai.js +11 -11
- package/icons/gcp/early-access-center.js +4 -4
- package/icons/gcp/error-reporting.js +10 -10
- package/icons/gcp/eventarc.js +8 -8
- package/icons/gcp/filestore.js +10 -10
- package/icons/gcp/financial-services-marketplace.js +12 -12
- package/icons/gcp/firestore.js +10 -10
- package/icons/gcp/fleet-engine.js +7 -7
- package/icons/gcp/free-trial.js +12 -12
- package/icons/gcp/game-servers.js +17 -17
- package/icons/gcp/gce-systems-management.js +4 -4
- package/icons/gcp/genomics.js +19 -19
- package/icons/gcp/gke-on-prem.js +9 -9
- package/icons/gcp/google-cloud-marketplace.js +11 -11
- package/icons/gcp/google-kubernetes-engine.js +13 -13
- package/icons/gcp/google-maps-platform.js +9 -9
- package/icons/gcp/healthcare-nlp-api.js +4 -4
- package/icons/gcp/home.js +11 -11
- package/icons/gcp/identity-and-access-management.js +6 -6
- package/icons/gcp/identity-aware-proxy.js +10 -10
- package/icons/gcp/identity-platform.js +10 -10
- package/icons/gcp/iot-core.js +6 -6
- package/icons/gcp/iot-edge.js +38 -38
- package/icons/gcp/key-access-justifications.js +14 -14
- package/icons/gcp/key-management-service.js +6 -6
- package/icons/gcp/kuberun.js +8 -8
- package/icons/gcp/launcher.js +15 -15
- package/icons/gcp/local-ssd.js +4 -4
- package/icons/gcp/looker.js +9 -9
- package/icons/gcp/managed-service-for-microsoft-active-directory.js +12 -12
- package/icons/gcp/media-translation-api.js +7 -7
- package/icons/gcp/memorystore.js +10 -10
- package/icons/gcp/migrate-for-anthos.js +4 -4
- package/icons/gcp/migrate-for-compute-engine.js +4 -4
- package/icons/gcp/my-cloud.js +9 -9
- package/icons/gcp/network-connectivity-center.js +26 -26
- package/icons/gcp/network-intelligence-center.js +4 -4
- package/icons/gcp/network-security.js +10 -10
- package/icons/gcp/network-tiers.js +13 -13
- package/icons/gcp/network-topology.js +4 -4
- package/icons/gcp/onboarding.js +12 -12
- package/icons/gcp/os-configuration-management.js +4 -4
- package/icons/gcp/os-inventory-management.js +6 -6
- package/icons/gcp/os-patch-management.js +4 -4
- package/icons/gcp/partner-interconnect.js +11 -11
- package/icons/gcp/partner-portal.js +8 -8
- package/icons/gcp/performance-dashboard.js +4 -4
- package/icons/gcp/permissions.js +9 -9
- package/icons/gcp/persistent-disk.js +7 -7
- package/icons/gcp/phishing-protection.js +13 -13
- package/icons/gcp/policy-analyzer.js +4 -4
- package/icons/gcp/premium-network-tier.js +9 -9
- package/icons/gcp/private-connectivity.js +9 -9
- package/icons/gcp/private-service-connect.js +12 -12
- package/icons/gcp/producer-portal.js +9 -9
- package/icons/gcp/profiler.js +11 -11
- package/icons/gcp/project.js +15 -15
- package/icons/gcp/pub-sub.js +22 -22
- package/icons/gcp/quantum-engine.js +10 -10
- package/icons/gcp/quotas.js +15 -15
- package/icons/gcp/real-world-insights.js +9 -9
- package/icons/gcp/recommendations-ai.js +19 -19
- package/icons/gcp/release-notes.js +4 -4
- package/icons/gcp/retail-api.js +7 -7
- package/icons/gcp/risk-manager.js +4 -4
- package/icons/gcp/runtime-config.js +15 -15
- package/icons/gcp/secret-manager.js +4 -4
- package/icons/gcp/security-command-center.js +8 -8
- package/icons/gcp/security-health-advisor.js +14 -14
- package/icons/gcp/security-key-enforcement.js +6 -6
- package/icons/gcp/security.js +8 -8
- package/icons/gcp/service-discovery.js +16 -16
- package/icons/gcp/speech-to-text.js +17 -17
- package/icons/gcp/stackdriver.js +7 -7
- package/icons/gcp/standard-network-tier.js +4 -4
- package/icons/gcp/stream-suite.js +7 -7
- package/icons/gcp/support.js +9 -9
- package/icons/gcp/tensorflow-enterprise.js +4 -4
- package/icons/gcp/text-to-speech.js +8 -8
- package/icons/gcp/tools-for-powershell.js +13 -13
- package/icons/gcp/trace.js +12 -12
- package/icons/gcp/traffic-director.js +14 -14
- package/icons/gcp/transfer-appliance.js +10 -10
- package/icons/gcp/transfer.js +4 -4
- package/icons/gcp/user-preferences.js +9 -9
- package/icons/gcp/vertex-ai.js +27 -27
- package/icons/gcp/video-intelligence-api.js +6 -6
- package/icons/gcp/virtual-private-cloud.js +15 -15
- package/icons/gcp/visual-inspection.js +7 -7
- package/icons/gcp/vmware-engine.js +4 -4
- package/icons/gcp/web-risk.js +14 -14
- package/icons/gcp/web-security-scanner.js +11 -11
- package/icons/gcp/workflows.js +15 -15
- package/icons/gcp/workload-identity-pool.js +8 -8
- package/icons/tech/aarch64.js +10 -10
- package/icons/tech/adobe-illustrator.js +4 -4
- package/icons/tech/adobe-photoshop.js +4 -4
- package/icons/tech/adobe-premiere-pro.js +7 -7
- package/icons/tech/adobe-xd.js +4 -4
- package/icons/tech/adonis-js.js +4 -4
- package/icons/tech/after-effects.js +7 -7
- package/icons/tech/airflow.js +13 -13
- package/icons/tech/akka.js +6 -6
- package/icons/tech/algolia.js +4 -4
- package/icons/tech/alpine-js.js +6 -6
- package/icons/tech/amazon-web-services.js +6 -6
- package/icons/tech/anaconda.js +4 -4
- package/icons/tech/android-studio.js +11 -11
- package/icons/tech/android.js +8 -8
- package/icons/tech/angular-js.js +9 -9
- package/icons/tech/angular.js +7 -7
- package/icons/tech/ansible.js +6 -6
- package/icons/tech/ant-design.js +24 -24
- package/icons/tech/apache.js +74 -74
- package/icons/tech/apl.js +6 -6
- package/icons/tech/appcelerator.js +4 -4
- package/icons/tech/apple-safari.js +13 -13
- package/icons/tech/apple.js +4 -4
- package/icons/tech/appwrite.js +6 -6
- package/icons/tech/arch-linux.js +6 -6
- package/icons/tech/arduino.js +6 -6
- package/icons/tech/argo-cd.js +34 -34
- package/icons/tech/astro.js +14 -14
- package/icons/tech/atom.js +4 -4
- package/icons/tech/autodesk-maya.js +44 -44
- package/icons/tech/autodesk-shot-grid.js +6 -6
- package/icons/tech/awk.js +18 -18
- package/icons/tech/azios.js +4 -4
- package/icons/tech/azure-devops.js +11 -11
- package/icons/tech/azure-sql-database.js +22 -22
- package/icons/tech/azure.js +21 -21
- package/icons/tech/babel.js +6 -6
- package/icons/tech/backbone-js.js +7 -7
- package/icons/tech/ballerina.js +4 -4
- package/icons/tech/bamboo.js +14 -14
- package/icons/tech/bash.js +7 -7
- package/icons/tech/behance.js +9 -9
- package/icons/tech/bitbucket.js +9 -9
- package/icons/tech/blender.js +6 -6
- package/icons/tech/bootstrap.js +21 -21
- package/icons/tech/bower.js +18 -18
- package/icons/tech/browserstack.js +14 -14
- package/icons/tech/bulma.js +4 -4
- package/icons/tech/bun.js +17 -17
- package/icons/tech/c.js +7 -7
- package/icons/tech/cairo-graphics.js +6 -6
- package/icons/tech/cake-php.js +4 -4
- package/icons/tech/canva.js +6 -6
- package/icons/tech/capacitor.js +10 -10
- package/icons/tech/cassandra.js +17 -17
- package/icons/tech/cent-os.js +13 -13
- package/icons/tech/chrome.js +38 -38
- package/icons/tech/circle-ci.js +4 -4
- package/icons/tech/clarity.js +8 -8
- package/icons/tech/clion.js +30 -30
- package/icons/tech/clojure-script.js +8 -8
- package/icons/tech/clojure.js +9 -9
- package/icons/tech/cloudflare-workers.js +37 -37
- package/icons/tech/cloudflare.js +7 -7
- package/icons/tech/cmake.js +8 -8
- package/icons/tech/code-igniter.js +4 -4
- package/icons/tech/code-pen.js +4 -4
- package/icons/tech/codeac.js +4 -4
- package/icons/tech/codecov.js +4 -4
- package/icons/tech/coffee-script.js +4 -4
- package/icons/tech/composer.js +35 -35
- package/icons/tech/confluence.js +15 -15
- package/icons/tech/consul.js +4 -4
- package/icons/tech/contao.js +4 -4
- package/icons/tech/corejs.js +4 -4
- package/icons/tech/cosmosdb.js +9 -9
- package/icons/tech/couchdb.js +4 -4
- package/icons/tech/cplusplus.js +8 -8
- package/icons/tech/crystal.js +4 -4
- package/icons/tech/csharp.js +7 -7
- package/icons/tech/css3.js +10 -10
- package/icons/tech/cucumber.js +4 -4
- package/icons/tech/cypress.js +6 -6
- package/icons/tech/d3js.js +28 -28
- package/icons/tech/dart.js +9 -9
- package/icons/tech/data-grip.js +34 -34
- package/icons/tech/data-spell.js +27 -27
- package/icons/tech/dbeaver.js +11 -11
- package/icons/tech/debian.js +4 -4
- package/icons/tech/deno.js +4 -4
- package/icons/tech/devicon.js +10 -10
- package/icons/tech/digital-ocean.js +6 -6
- package/icons/tech/discord-js.js +11 -11
- package/icons/tech/django-rest.js +8 -8
- package/icons/tech/django.js +6 -6
- package/icons/tech/docker.js +20 -20
- package/icons/tech/doctrine.js +6 -6
- package/icons/tech/dropwizard.js +22 -22
- package/icons/tech/drupal.js +11 -11
- package/icons/tech/eclipse-ceylon.js +10 -10
- package/icons/tech/eclipse-ide.js +20 -20
- package/icons/tech/eclipse-vert-x.js +6 -6
- package/icons/tech/elasticbeats.js +7 -7
- package/icons/tech/elasticsearch.js +7 -7
- package/icons/tech/electron.js +8 -8
- package/icons/tech/eleventy-11ty.js +6 -6
- package/icons/tech/elixir.js +35 -35
- package/icons/tech/elm.js +10 -10
- package/icons/tech/embedded-c.js +30 -30
- package/icons/tech/ember-js.js +6 -6
- package/icons/tech/envoy.js +7 -7
- package/icons/tech/erlang.js +4 -4
- package/icons/tech/eslint.js +6 -6
- package/icons/tech/express.js +4 -4
- package/icons/tech/facebook.js +6 -6
- package/icons/tech/fast-api.js +4 -4
- package/icons/tech/fastify.js +6 -6
- package/icons/tech/fauna.js +4 -4
- package/icons/tech/feathers.js +4 -4
- package/icons/tech/fedora.js +10 -10
- package/icons/tech/figma.js +9 -9
- package/icons/tech/file-zilla.js +8 -8
- package/icons/tech/firebase.js +4 -4
- package/icons/tech/firefox.js +335 -335
- package/icons/tech/flask.js +4 -4
- package/icons/tech/flutter.js +12 -12
- package/icons/tech/fortran.js +4 -4
- package/icons/tech/foundation.js +37 -37
- package/icons/tech/fsharp.js +7 -7
- package/icons/tech/gatling.js +4 -4
- package/icons/tech/gatsby.js +4 -4
- package/icons/tech/gazebo.js +8 -8
- package/icons/tech/gcc.js +11 -11
- package/icons/tech/gentoo.js +4 -4
- package/icons/tech/ghost.js +6 -6
- package/icons/tech/gimp.js +68 -68
- package/icons/tech/git.js +4 -4
- package/icons/tech/gitbook.js +4 -4
- package/icons/tech/github-actions.js +6 -6
- package/icons/tech/github-codespaces.js +18 -18
- package/icons/tech/github.js +6 -6
- package/icons/tech/gitlab.js +8 -8
- package/icons/tech/gitpod.js +8 -8
- package/icons/tech/gitter.js +4 -4
- package/icons/tech/gnu-emacs.js +4 -4
- package/icons/tech/go-land.js +33 -33
- package/icons/tech/go.js +39 -39
- package/icons/tech/godot-engine.js +11 -11
- package/icons/tech/google-cloud.js +8 -8
- package/icons/tech/google.js +9 -9
- package/icons/tech/gradle.js +4 -4
- package/icons/tech/grafana.js +8 -8
- package/icons/tech/grails.js +6 -6
- package/icons/tech/graphql.js +12 -12
- package/icons/tech/groovy.js +102 -102
- package/icons/tech/grunt-js.js +33 -33
- package/icons/tech/gulp-js.js +4 -4
- package/icons/tech/hadoop.js +9 -9
- package/icons/tech/handlebars.js +6 -6
- package/icons/tech/hardhat.js +26 -26
- package/icons/tech/harvester.js +7 -7
- package/icons/tech/hashicorp-vault.js +4 -4
- package/icons/tech/haskell.js +7 -7
- package/icons/tech/haxe.js +14 -14
- package/icons/tech/helm.js +4 -4
- package/icons/tech/heroku.js +4 -4
- package/icons/tech/hibernate.js +6 -6
- package/icons/tech/homebrew.js +9 -9
- package/icons/tech/html5.js +8 -8
- package/icons/tech/hugo.js +7 -7
- package/icons/tech/ibm-spss-statistics.js +6 -6
- package/icons/tech/ie10.js +4 -4
- package/icons/tech/ifttt.js +4 -4
- package/icons/tech/influxdb.js +4 -4
- package/icons/tech/inkscape.js +115 -115
- package/icons/tech/insomnia.js +10 -10
- package/icons/tech/intellij-idea.js +37 -37
- package/icons/tech/ionic.js +6 -6
- package/icons/tech/jaeger.js +21 -21
- package/icons/tech/jamstack.js +4 -4
- package/icons/tech/jasmine.js +7 -7
- package/icons/tech/java.js +9 -9
- package/icons/tech/javascript.js +6 -6
- package/icons/tech/jeet.js +32 -32
- package/icons/tech/jekyll.js +43 -43
- package/icons/tech/jenkins.js +21 -21
- package/icons/tech/jest.js +4 -4
- package/icons/tech/jetbrains.js +26 -26
- package/icons/tech/jira-align.js +15 -15
- package/icons/tech/jira.js +14 -14
- package/icons/tech/jquery.js +4 -4
- package/icons/tech/json.js +12 -12
- package/icons/tech/jule.js +4 -4
- package/icons/tech/julia.js +10 -10
- package/icons/tech/junit.js +6 -6
- package/icons/tech/jupyter.js +8 -8
- package/icons/tech/k3os.js +4 -4
- package/icons/tech/k3s.js +4 -4
- package/icons/tech/kafka.js +4 -4
- package/icons/tech/kaggle.js +4 -4
- package/icons/tech/karate.js +6 -6
- package/icons/tech/karma.js +6 -6
- package/icons/tech/keras.js +6 -6
- package/icons/tech/kibana.js +7 -7
- package/icons/tech/knex-js.js +4 -4
- package/icons/tech/knockout.js +4 -4
- package/icons/tech/kotlin.js +9 -9
- package/icons/tech/krakenjs.js +4 -4
- package/icons/tech/ktor.js +18 -18
- package/icons/tech/kubernetes.js +7 -7
- package/icons/tech/labview.js +7 -7
- package/icons/tech/laravel.js +4 -4
- package/icons/tech/latex.js +9 -9
- package/icons/tech/less-js.js +4 -4
- package/icons/tech/linkedin.js +6 -6
- package/icons/tech/linux.js +803 -803
- package/icons/tech/liquibase.js +4 -4
- package/icons/tech/livewire.js +12 -12
- package/icons/tech/llvm.js +9 -9
- package/icons/tech/logstash.js +7 -7
- package/icons/tech/lua.js +7 -7
- package/icons/tech/lumen.js +4 -4
- package/icons/tech/magento.js +4 -4
- package/icons/tech/markdown.js +6 -6
- package/icons/tech/material-ui.js +8 -8
- package/icons/tech/materialize.js +6 -6
- package/icons/tech/matlab.js +25 -25
- package/icons/tech/matplotlib.js +26 -26
- package/icons/tech/maven.js +141 -141
- package/icons/tech/meteor-js.js +4 -4
- package/icons/tech/microsoft-sql-server.js +4 -4
- package/icons/tech/minitab.js +11 -11
- package/icons/tech/mob-x.js +9 -9
- package/icons/tech/mocha.js +6 -6
- package/icons/tech/modx.js +8 -8
- package/icons/tech/moleculer.js +4 -4
- package/icons/tech/mongodb.js +20 -20
- package/icons/tech/mongoose-js.js +6 -6
- package/icons/tech/moodle.js +41 -41
- package/icons/tech/ms-dos.js +15 -15
- package/icons/tech/mysql.js +4 -4
- package/icons/tech/nano.js +4 -4
- package/icons/tech/nerog.js +27 -27
- package/icons/tech/nestjs.js +4 -4
- package/icons/tech/net-core.js +6 -6
- package/icons/tech/net.js +120 -120
- package/icons/tech/network-x.js +13 -13
- package/icons/tech/new4j.js +6 -6
- package/icons/tech/nextjs.js +4 -4
- package/icons/tech/nginx.js +4 -4
- package/icons/tech/nhibernate.js +6 -6
- package/icons/tech/nim.js +6 -6
- package/icons/tech/nimble.js +11 -11
- package/icons/tech/nix.js +6 -6
- package/icons/tech/nodejs.js +4 -4
- package/icons/tech/nodemon.js +6 -6
- package/icons/tech/nodewebkit.js +9 -9
- package/icons/tech/npm.js +4 -4
- package/icons/tech/nuget.js +4 -4
- package/icons/tech/num-py.js +6 -6
- package/icons/tech/nuxt-js.js +7 -7
- package/icons/tech/objective-c.js +6 -6
- package/icons/tech/ocaml.js +22 -22
- package/icons/tech/oh-my-zsh.js +8 -8
- package/icons/tech/okta.js +6 -6
- package/icons/tech/open-al.js +6 -6
- package/icons/tech/open-api.js +16 -16
- package/icons/tech/open-cl.js +9 -9
- package/icons/tech/open-cv.js +7 -7
- package/icons/tech/open-gl.js +8 -8
- package/icons/tech/open-stack.js +4 -4
- package/icons/tech/open-suse.js +6 -6
- package/icons/tech/open-telemetry.js +6 -6
- package/icons/tech/opera.js +14 -14
- package/icons/tech/oracle.js +4 -4
- package/icons/tech/p5js.js +4 -4
- package/icons/tech/packer.js +6 -6
- package/icons/tech/pandas.js +9 -9
- package/icons/tech/perl.js +6 -6
- package/icons/tech/pf-sense.js +4 -4
- package/icons/tech/phalcon.js +29 -29
- package/icons/tech/phoenix-framework.js +4 -4
- package/icons/tech/photon-engine.js +12 -12
- package/icons/tech/php-storm.js +31 -31
- package/icons/tech/php.js +17 -17
- package/icons/tech/playwrite.js +11 -11
- package/icons/tech/ploty.js +7 -7
- package/icons/tech/podman.js +27 -27
- package/icons/tech/polygon.js +6 -6
- package/icons/tech/portainer.js +9 -9
- package/icons/tech/postcss.js +7 -7
- package/icons/tech/postgresql.js +8 -8
- package/icons/tech/postman.js +7 -7
- package/icons/tech/powershell.js +17 -17
- package/icons/tech/processing.js +98 -98
- package/icons/tech/prometheus.js +4 -4
- package/icons/tech/protractor.js +4 -4
- package/icons/tech/purescript.js +4 -4
- package/icons/tech/putty.js +47 -47
- package/icons/tech/pycharm.js +55 -55
- package/icons/tech/pyscript.js +6 -6
- package/icons/tech/pytest.js +12 -12
- package/icons/tech/python-poetry.js +37 -37
- package/icons/tech/python.js +16 -16
- package/icons/tech/pytorch.js +6 -6
- package/icons/tech/qodana.js +22 -22
- package/icons/tech/qt.js +4 -4
- package/icons/tech/quarkus.js +14 -14
- package/icons/tech/quasar.js +6 -6
- package/icons/tech/qwik.js +7 -7
- package/icons/tech/r.js +13 -13
- package/icons/tech/rabbitmq.js +4 -4
- package/icons/tech/rancher.js +4 -4
- package/icons/tech/raspberrypi.js +7 -7
- package/icons/tech/reach.js +6 -6
- package/icons/tech/react-bootstrap.js +4 -4
- package/icons/tech/react.js +6 -6
- package/icons/tech/realm.js +12 -12
- package/icons/tech/red-cube-s-epic-compiler-thingy-programming-re-ct.js +8 -8
- package/icons/tech/redhat.js +7 -7
- package/icons/tech/redis.js +14 -14
- package/icons/tech/redux.js +4 -4
- package/icons/tech/ren-py.js +164 -164
- package/icons/tech/rider.js +20 -20
- package/icons/tech/robot-operating-system-ros.js +4 -4
- package/icons/tech/rocksdb.js +6 -6
- package/icons/tech/rollup-js.js +37 -37
- package/icons/tech/rspec.js +8 -8
- package/icons/tech/rstudio.js +7 -7
- package/icons/tech/ruby-mine.js +28 -28
- package/icons/tech/ruby-on-rails.js +4 -4
- package/icons/tech/ruby.js +120 -120
- package/icons/tech/rust.js +4 -4
- package/icons/tech/salesforce.js +7 -7
- package/icons/tech/sanity.js +7 -7
- package/icons/tech/sass.js +4 -4
- package/icons/tech/scala.js +6 -6
- package/icons/tech/scalingo.js +6 -6
- package/icons/tech/sdl.js +11 -11
- package/icons/tech/selenium.js +6 -6
- package/icons/tech/sema-software.js +4 -4
- package/icons/tech/sequelize.js +31 -31
- package/icons/tech/shopware.js +6 -6
- package/icons/tech/sketch.js +11 -11
- package/icons/tech/slack.js +8 -8
- package/icons/tech/socket-io.js +6 -6
- package/icons/tech/solid-js.js +27 -27
- package/icons/tech/solidity.js +10 -10
- package/icons/tech/sonarqube.js +4 -4
- package/icons/tech/sourcetree.js +4 -4
- package/icons/tech/spark.js +4 -4
- package/icons/tech/splunk.js +4 -4
- package/icons/tech/spring.js +4 -4
- package/icons/tech/sql-developer.js +10 -10
- package/icons/tech/sqlalchemy.js +6 -6
- package/icons/tech/sqlite.js +11 -11
- package/icons/tech/ssh.js +4 -4
- package/icons/tech/stackoverflow.js +6 -6
- package/icons/tech/stata.js +4 -4
- package/icons/tech/storybook.js +4 -4
- package/icons/tech/streamlit.js +7 -7
- package/icons/tech/stylus.js +6 -6
- package/icons/tech/subversion.js +4 -4
- package/icons/tech/svelte.js +6 -6
- package/icons/tech/swagger.js +6 -6
- package/icons/tech/swift.js +6 -6
- package/icons/tech/symfony.js +4 -4
- package/icons/tech/tailwind-css.js +4 -4
- package/icons/tech/tauri.js +8 -8
- package/icons/tech/tensorflow.js +4 -4
- package/icons/tech/terraform.js +7 -7
- package/icons/tech/tex.js +4 -4
- package/icons/tech/the-algorithms.js +4 -4
- package/icons/tech/three-js.js +8 -8
- package/icons/tech/titanium-sdk.js +4 -4
- package/icons/tech/tomcat.js +11 -11
- package/icons/tech/tortoise-git.js +9 -9
- package/icons/tech/tower.js +139 -139
- package/icons/tech/traefik-mesh.js +4 -4
- package/icons/tech/traefik-proxy.js +4 -4
- package/icons/tech/travis-ci.js +4 -4
- package/icons/tech/trello.js +4 -4
- package/icons/tech/twitter.js +4 -4
- package/icons/tech/typescript.js +6 -6
- package/icons/tech/typo3.js +4 -4
- package/icons/tech/ubuntu.js +4 -4
- package/icons/tech/uml.js +8 -8
- package/icons/tech/unity.js +7 -7
- package/icons/tech/unix.js +4 -4
- package/icons/tech/unreal-engine.js +6 -6
- package/icons/tech/uwsgi.js +11 -11
- package/icons/tech/v8.js +33 -33
- package/icons/tech/vagrant.js +6 -6
- package/icons/tech/vala.js +18 -18
- package/icons/tech/vercel.js +4 -4
- package/icons/tech/veutify.js +8 -8
- package/icons/tech/vim.js +37 -37
- package/icons/tech/visualstudio.js +4 -4
- package/icons/tech/vite.js +4 -4
- package/icons/tech/vitejs.js +14 -14
- package/icons/tech/vscode.js +31 -31
- package/icons/tech/vsphere.js +9 -9
- package/icons/tech/vue-storefront.js +7 -7
- package/icons/tech/vue.js +7 -7
- package/icons/tech/vyper.js +8 -8
- package/icons/tech/webassembly.js +4 -4
- package/icons/tech/webflow.js +4 -4
- package/icons/tech/weblate.js +17 -17
- package/icons/tech/webpack.js +6 -6
- package/icons/tech/webstorm.js +19 -19
- package/icons/tech/windows11.js +4 -4
- package/icons/tech/windows8.js +4 -4
- package/icons/tech/woo-commerce.js +7 -7
- package/icons/tech/wordpress.js +11 -11
- package/icons/tech/xamarin.js +4 -4
- package/icons/tech/xcode.js +251 -251
- package/icons/tech/xml.js +8 -8
- package/icons/tech/yaml.js +7 -7
- package/icons/tech/yarn.js +6 -6
- package/icons/tech/yii-framework.js +8 -8
- package/icons/tech/yuno-host.js +6 -6
- package/icons/tech/zend-framework.js +4 -4
- package/icons/tech/zig.js +13 -13
- package/package.json +49 -49
- package/react/index.d.ts +1413 -754
- package/react/index.mjs +6310 -1453
- package/react/style.css +1 -1
- package/dist/shared/likec4.DKLo7EEm.mjs +0 -1221
package/dist/index.d.mts
CHANGED
|
@@ -1,168 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Matches any [primitive value](https://developer.mozilla.org/en-US/docs/Glossary/Primitive).
|
|
3
|
-
|
|
4
|
-
@category Type
|
|
5
|
-
*/
|
|
6
|
-
type Primitive$1 =
|
|
7
|
-
| null
|
|
8
|
-
| undefined
|
|
9
|
-
| string
|
|
10
|
-
| number
|
|
11
|
-
| boolean
|
|
12
|
-
| symbol
|
|
13
|
-
| bigint;
|
|
14
|
-
|
|
15
|
-
declare global {
|
|
16
|
-
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions -- It has to be an `interface` so that it can be merged.
|
|
17
|
-
interface SymbolConstructor {
|
|
18
|
-
readonly observable: symbol;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
Allows creating a union type by combining primitive types and literal types without sacrificing auto-completion in IDEs for the literal type part of the union.
|
|
24
|
-
|
|
25
|
-
Currently, when a union type of a primitive type is combined with literal types, TypeScript loses all information about the combined literals. Thus, when such type is used in an IDE with autocompletion, no suggestions are made for the declared literals.
|
|
26
|
-
|
|
27
|
-
This type is a workaround for [Microsoft/TypeScript#29729](https://github.com/Microsoft/TypeScript/issues/29729). It will be removed as soon as it's not needed anymore.
|
|
28
|
-
|
|
29
|
-
@example
|
|
30
|
-
```
|
|
31
|
-
import type {LiteralUnion} from 'type-fest';
|
|
32
|
-
|
|
33
|
-
// Before
|
|
34
|
-
|
|
35
|
-
type Pet = 'dog' | 'cat' | string;
|
|
36
|
-
|
|
37
|
-
const pet: Pet = '';
|
|
38
|
-
// Start typing in your TypeScript-enabled IDE.
|
|
39
|
-
// You **will not** get auto-completion for `dog` and `cat` literals.
|
|
40
|
-
|
|
41
|
-
// After
|
|
42
|
-
|
|
43
|
-
type Pet2 = LiteralUnion<'dog' | 'cat', string>;
|
|
44
|
-
|
|
45
|
-
const pet: Pet2 = '';
|
|
46
|
-
// You **will** get auto-completion for `dog` and `cat` literals.
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
@category Type
|
|
50
|
-
*/
|
|
51
|
-
type LiteralUnion<
|
|
52
|
-
LiteralType,
|
|
53
|
-
BaseType extends Primitive$1,
|
|
54
|
-
> = LiteralType | (BaseType & Record<never, never>);
|
|
55
|
-
|
|
56
|
-
declare const tag$1: unique symbol;
|
|
57
|
-
|
|
58
|
-
type TagContainer$1<Token> = {
|
|
59
|
-
readonly [tag$1]: Token;
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
type Tag$1$1<Token extends PropertyKey, TagMetadata> = TagContainer$1<{[K in Token]: TagMetadata}>;
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
Attach a "tag" to an arbitrary type. This allows you to create distinct types, that aren't assignable to one another, for distinct concepts in your program that should not be interchangeable, even if their runtime values have the same type. (See examples.)
|
|
66
|
-
|
|
67
|
-
A type returned by `Tagged` can be passed to `Tagged` again, to create a type with multiple tags.
|
|
68
|
-
|
|
69
|
-
[Read more about tagged types.](https://medium.com/@KevinBGreene/surviving-the-typescript-ecosystem-branding-and-type-tagging-6cf6e516523d)
|
|
70
|
-
|
|
71
|
-
A tag's name is usually a string (and must be a string, number, or symbol), but each application of a tag can also contain an arbitrary type as its "metadata". See {@link GetTagMetadata} for examples and explanation.
|
|
72
|
-
|
|
73
|
-
A type `A` returned by `Tagged` is assignable to another type `B` returned by `Tagged` if and only if:
|
|
74
|
-
- the underlying (untagged) type of `A` is assignable to the underlying type of `B`;
|
|
75
|
-
- `A` contains at least all the tags `B` has;
|
|
76
|
-
- and the metadata type for each of `A`'s tags is assignable to the metadata type of `B`'s corresponding tag.
|
|
77
|
-
|
|
78
|
-
There have been several discussions about adding similar features to TypeScript. Unfortunately, nothing has (yet) moved forward:
|
|
79
|
-
- [Microsoft/TypeScript#202](https://github.com/microsoft/TypeScript/issues/202)
|
|
80
|
-
- [Microsoft/TypeScript#4895](https://github.com/microsoft/TypeScript/issues/4895)
|
|
81
|
-
- [Microsoft/TypeScript#33290](https://github.com/microsoft/TypeScript/pull/33290)
|
|
82
|
-
|
|
83
|
-
@example
|
|
84
|
-
```
|
|
85
|
-
import type {Tagged} from 'type-fest';
|
|
86
|
-
|
|
87
|
-
type AccountNumber = Tagged<number, 'AccountNumber'>;
|
|
88
|
-
type AccountBalance = Tagged<number, 'AccountBalance'>;
|
|
89
|
-
|
|
90
|
-
function createAccountNumber(): AccountNumber {
|
|
91
|
-
// As you can see, casting from a `number` (the underlying type being tagged) is allowed.
|
|
92
|
-
return 2 as AccountNumber;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
function getMoneyForAccount(accountNumber: AccountNumber): AccountBalance {
|
|
96
|
-
return 4 as AccountBalance;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
// This will compile successfully.
|
|
100
|
-
getMoneyForAccount(createAccountNumber());
|
|
101
|
-
|
|
102
|
-
// But this won't, because it has to be explicitly passed as an `AccountNumber` type!
|
|
103
|
-
// Critically, you could not accidentally use an `AccountBalance` as an `AccountNumber`.
|
|
104
|
-
getMoneyForAccount(2);
|
|
105
|
-
|
|
106
|
-
// You can also use tagged values like their underlying, untagged type.
|
|
107
|
-
// I.e., this will compile successfully because an `AccountNumber` can be used as a regular `number`.
|
|
108
|
-
// In this sense, the underlying base type is not hidden, which differentiates tagged types from opaque types in other languages.
|
|
109
|
-
const accountNumber = createAccountNumber() + 2;
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
@example
|
|
113
|
-
```
|
|
114
|
-
import type {Tagged} from 'type-fest';
|
|
115
|
-
|
|
116
|
-
// You can apply multiple tags to a type by using `Tagged` repeatedly.
|
|
117
|
-
type Url = Tagged<string, 'URL'>;
|
|
118
|
-
type SpecialCacheKey = Tagged<Url, 'SpecialCacheKey'>;
|
|
119
|
-
|
|
120
|
-
// You can also pass a union of tag names, so this is equivalent to the above, although it doesn't give you the ability to assign distinct metadata to each tag.
|
|
121
|
-
type SpecialCacheKey2 = Tagged<string, 'URL' | 'SpecialCacheKey'>;
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
@category Type
|
|
125
|
-
*/
|
|
126
|
-
type Tagged$1<Type, TagName extends PropertyKey, TagMetadata = never> = Type & Tag$1$1<TagName, TagMetadata>;
|
|
127
|
-
|
|
128
|
-
/**
|
|
129
|
-
Revert a tagged type back to its original type by removing all tags.
|
|
130
|
-
|
|
131
|
-
Why is this necessary?
|
|
132
|
-
|
|
133
|
-
1. Use a `Tagged` type as object keys
|
|
134
|
-
2. Prevent TS4058 error: "Return type of exported function has or is using name X from external module Y but cannot be named"
|
|
135
|
-
|
|
136
|
-
@example
|
|
137
|
-
```
|
|
138
|
-
import type {Tagged, UnwrapTagged} from 'type-fest';
|
|
139
|
-
|
|
140
|
-
type AccountType = Tagged<'SAVINGS' | 'CHECKING', 'AccountType'>;
|
|
141
|
-
|
|
142
|
-
const moneyByAccountType: Record<UnwrapTagged<AccountType>, number> = {
|
|
143
|
-
SAVINGS: 99,
|
|
144
|
-
CHECKING: 0.1
|
|
145
|
-
};
|
|
146
|
-
|
|
147
|
-
// Without UnwrapTagged, the following expression would throw a type error.
|
|
148
|
-
const money = moneyByAccountType.SAVINGS; // TS error: Property 'SAVINGS' does not exist
|
|
149
|
-
|
|
150
|
-
// Attempting to pass an non-Tagged type to UnwrapTagged will raise a type error.
|
|
151
|
-
type WontWork = UnwrapTagged<string>;
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
@category Type
|
|
155
|
-
*/
|
|
156
|
-
type UnwrapTagged<TaggedType extends Tag$1$1<PropertyKey, any>> =
|
|
157
|
-
RemoveAllTags<TaggedType>;
|
|
158
|
-
|
|
159
|
-
type RemoveAllTags<T> = T extends Tag$1$1<PropertyKey, any>
|
|
160
|
-
? {
|
|
161
|
-
[ThisTag in keyof T[typeof tag$1]]: T extends Tagged$1<infer Type, ThisTag, T[typeof tag$1][ThisTag]>
|
|
162
|
-
? RemoveAllTags<Type>
|
|
163
|
-
: never
|
|
164
|
-
}[keyof T[typeof tag$1]]
|
|
165
|
-
: T;
|
|
1
|
+
import { LiteralUnion, Tagged, UnwrapTagged, IsNumericLiteral, SetRequired, ValueOf, ConditionalPick } from 'type-fest';
|
|
166
2
|
|
|
167
3
|
declare const ThemeColors: readonly ["amber", "blue", "gray", "slate", "green", "indigo", "muted", "primary", "red", "secondary", "sky"];
|
|
168
4
|
type ThemeColor$1 = typeof ThemeColors[number];
|
|
@@ -186,7 +22,7 @@ interface ThemeColorValues {
|
|
|
186
22
|
}
|
|
187
23
|
|
|
188
24
|
type NonEmptyArray<T> = [T, ...T[]];
|
|
189
|
-
type IconUrl = Tagged
|
|
25
|
+
type IconUrl = Tagged<string, 'IconUrl'>;
|
|
190
26
|
type CustomColor$1 = string;
|
|
191
27
|
type Point = readonly [x: number, y: number];
|
|
192
28
|
interface XYPoint {
|
|
@@ -194,17 +30,17 @@ interface XYPoint {
|
|
|
194
30
|
y: number;
|
|
195
31
|
}
|
|
196
32
|
|
|
197
|
-
type Fqn$1 = Tagged
|
|
33
|
+
type Fqn$1 = Tagged<string, 'Fqn'>;
|
|
198
34
|
declare const BorderStyles: readonly ["solid", "dashed", "dotted", "none"];
|
|
199
35
|
type BorderStyle = typeof BorderStyles[number];
|
|
200
|
-
type ElementKind$1 = Tagged
|
|
36
|
+
type ElementKind$1 = Tagged<string, 'ElementKind'>;
|
|
201
37
|
declare const ElementShapes: readonly ["rectangle", "person", "browser", "mobile", "cylinder", "storage", "queue"];
|
|
202
38
|
type ElementShape$1 = typeof ElementShapes[number];
|
|
203
39
|
interface ElementStyle {
|
|
204
40
|
border?: BorderStyle;
|
|
205
41
|
opacity?: number;
|
|
206
42
|
}
|
|
207
|
-
type Tag$
|
|
43
|
+
type Tag$1 = Tagged<string, 'Tag'>;
|
|
208
44
|
interface Link {
|
|
209
45
|
readonly title?: string;
|
|
210
46
|
readonly url: string;
|
|
@@ -216,7 +52,7 @@ interface Element$1 {
|
|
|
216
52
|
readonly title: string;
|
|
217
53
|
readonly description: string | null;
|
|
218
54
|
readonly technology: string | null;
|
|
219
|
-
readonly tags: NonEmptyArray<Tag$
|
|
55
|
+
readonly tags: NonEmptyArray<Tag$1> | null;
|
|
220
56
|
readonly links: NonEmptyArray<Link> | null;
|
|
221
57
|
readonly icon?: IconUrl;
|
|
222
58
|
readonly shape?: ElementShape$1;
|
|
@@ -271,6 +107,135 @@ type OrOperator<Tag, Kind> = Omit<AllNever, 'or'> & {
|
|
|
271
107
|
};
|
|
272
108
|
type WhereOperator<Tag, Kind> = TagEqual<Tag> | KindEqual<Kind> | NotOperator<Tag, Kind> | AndOperator<Tag, Kind> | OrOperator<Tag, Kind>;
|
|
273
109
|
|
|
110
|
+
type RelationID$1 = Tagged<string, 'RelationID'>;
|
|
111
|
+
type RelationshipKind$1 = Tagged<string, 'RelationshipKind'>;
|
|
112
|
+
type RelationshipLineType = 'dashed' | 'solid' | 'dotted';
|
|
113
|
+
type RelationshipArrowType = 'none' | 'normal' | 'onormal' | 'dot' | 'odot' | 'diamond' | 'odiamond' | 'crow' | 'open' | 'vee';
|
|
114
|
+
interface Relation$1 {
|
|
115
|
+
readonly id: RelationID$1;
|
|
116
|
+
readonly source: Fqn$1;
|
|
117
|
+
readonly target: Fqn$1;
|
|
118
|
+
readonly title: string;
|
|
119
|
+
readonly description?: string;
|
|
120
|
+
readonly technology?: string;
|
|
121
|
+
readonly tags?: NonEmptyArray<Tag$1>;
|
|
122
|
+
readonly kind?: RelationshipKind$1;
|
|
123
|
+
readonly color?: Color$1;
|
|
124
|
+
readonly line?: RelationshipLineType;
|
|
125
|
+
readonly head?: RelationshipArrowType;
|
|
126
|
+
readonly tail?: RelationshipArrowType;
|
|
127
|
+
readonly links?: NonEmptyArray<Link>;
|
|
128
|
+
readonly navigateTo?: ViewID$1;
|
|
129
|
+
readonly metadata?: {
|
|
130
|
+
[key: string]: string;
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
interface RelationshipKindSpecification {
|
|
134
|
+
readonly technology?: string;
|
|
135
|
+
readonly notation?: string;
|
|
136
|
+
readonly color?: Color$1;
|
|
137
|
+
readonly line?: RelationshipLineType;
|
|
138
|
+
readonly head?: RelationshipArrowType;
|
|
139
|
+
readonly tail?: RelationshipArrowType;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
interface BaseExpr {
|
|
143
|
+
where?: never;
|
|
144
|
+
element?: never;
|
|
145
|
+
custom?: never;
|
|
146
|
+
expanded?: never;
|
|
147
|
+
elementKind?: never;
|
|
148
|
+
elementTag?: never;
|
|
149
|
+
isEqual?: never;
|
|
150
|
+
isDescedants?: never;
|
|
151
|
+
wildcard?: never;
|
|
152
|
+
source?: never;
|
|
153
|
+
target?: never;
|
|
154
|
+
inout?: never;
|
|
155
|
+
incoming?: never;
|
|
156
|
+
outgoing?: never;
|
|
157
|
+
customRelation?: never;
|
|
158
|
+
}
|
|
159
|
+
interface ElementRefExpr extends Omit<BaseExpr, 'element' | 'isDescedants'> {
|
|
160
|
+
element: Fqn$1;
|
|
161
|
+
isDescedants?: boolean;
|
|
162
|
+
}
|
|
163
|
+
interface ExpandedElementExpr extends Omit<BaseExpr, 'expanded'> {
|
|
164
|
+
expanded: Fqn$1;
|
|
165
|
+
}
|
|
166
|
+
interface CustomElementExpr extends Omit<BaseExpr, 'custom'> {
|
|
167
|
+
custom: {
|
|
168
|
+
expr: ElementExpression$1 | ElementWhereExpr;
|
|
169
|
+
title?: string;
|
|
170
|
+
description?: string;
|
|
171
|
+
technology?: string;
|
|
172
|
+
notation?: string;
|
|
173
|
+
shape?: ElementShape$1;
|
|
174
|
+
color?: Color$1;
|
|
175
|
+
icon?: IconUrl;
|
|
176
|
+
border?: BorderStyle;
|
|
177
|
+
opacity?: number;
|
|
178
|
+
navigateTo?: ViewID$1;
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
interface WildcardExpr extends Omit<BaseExpr, 'wildcard'> {
|
|
182
|
+
wildcard: true;
|
|
183
|
+
}
|
|
184
|
+
interface ElementKindExpr extends Omit<BaseExpr, 'elementKind' | 'isEqual'> {
|
|
185
|
+
elementKind: ElementKind$1;
|
|
186
|
+
isEqual: boolean;
|
|
187
|
+
}
|
|
188
|
+
interface ElementTagExpr extends Omit<BaseExpr, 'elementTag' | 'isEqual'> {
|
|
189
|
+
elementTag: Tag$1;
|
|
190
|
+
isEqual: boolean;
|
|
191
|
+
}
|
|
192
|
+
type ElementExpression$1 = ElementRefExpr | WildcardExpr | ElementKindExpr | ElementTagExpr | ExpandedElementExpr;
|
|
193
|
+
interface ElementWhereExpr extends Omit<BaseExpr, 'where'> {
|
|
194
|
+
where: {
|
|
195
|
+
expr: ElementExpression$1;
|
|
196
|
+
condition: WhereOperator<string, string>;
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
type ElementPredicateExpression = ElementExpression$1 | ElementWhereExpr | CustomElementExpr;
|
|
200
|
+
interface RelationExpr extends Omit<BaseExpr, 'source' | 'target'> {
|
|
201
|
+
source: ElementExpression$1;
|
|
202
|
+
target: ElementExpression$1;
|
|
203
|
+
isBidirectional?: boolean;
|
|
204
|
+
}
|
|
205
|
+
interface InOutExpr extends Omit<BaseExpr, 'inout'> {
|
|
206
|
+
inout: ElementExpression$1;
|
|
207
|
+
}
|
|
208
|
+
interface IncomingExpr extends Omit<BaseExpr, 'incoming'> {
|
|
209
|
+
incoming: ElementExpression$1;
|
|
210
|
+
}
|
|
211
|
+
interface OutgoingExpr extends Omit<BaseExpr, 'outgoing'> {
|
|
212
|
+
outgoing: ElementExpression$1;
|
|
213
|
+
}
|
|
214
|
+
type RelationExpression$1 = RelationExpr | InOutExpr | IncomingExpr | OutgoingExpr;
|
|
215
|
+
interface RelationWhereExpr extends Omit<BaseExpr, 'where'> {
|
|
216
|
+
where: {
|
|
217
|
+
expr: RelationExpression$1;
|
|
218
|
+
condition: WhereOperator<string, string>;
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
interface CustomRelationExpr extends Omit<BaseExpr, 'customRelation'> {
|
|
222
|
+
customRelation: {
|
|
223
|
+
relation: RelationExpression$1 | RelationWhereExpr;
|
|
224
|
+
title?: string;
|
|
225
|
+
description?: string;
|
|
226
|
+
technology?: string;
|
|
227
|
+
notation?: string;
|
|
228
|
+
navigateTo?: ViewID$1;
|
|
229
|
+
notes?: string;
|
|
230
|
+
color?: Color$1;
|
|
231
|
+
line?: RelationshipLineType;
|
|
232
|
+
head?: RelationshipArrowType;
|
|
233
|
+
tail?: RelationshipArrowType;
|
|
234
|
+
};
|
|
235
|
+
}
|
|
236
|
+
type RelationPredicateExpression = RelationExpression$1 | RelationWhereExpr | CustomRelationExpr;
|
|
237
|
+
type Expression$1 = ElementPredicateExpression | RelationPredicateExpression;
|
|
238
|
+
|
|
274
239
|
type ElementNotation = {
|
|
275
240
|
kinds: ElementKind$1[];
|
|
276
241
|
shape: ElementShape$1;
|
|
@@ -278,7 +243,7 @@ type ElementNotation = {
|
|
|
278
243
|
title: string;
|
|
279
244
|
};
|
|
280
245
|
|
|
281
|
-
type ViewID$1 = Tagged
|
|
246
|
+
type ViewID$1 = Tagged<string, 'ViewID'>;
|
|
282
247
|
type ViewRulePredicate$1 = {
|
|
283
248
|
include: Expression$1[];
|
|
284
249
|
exclude?: never;
|
|
@@ -297,7 +262,9 @@ interface ViewRuleStyle$1 {
|
|
|
297
262
|
}
|
|
298
263
|
type AutoLayoutDirection = 'TB' | 'BT' | 'LR' | 'RL';
|
|
299
264
|
interface ViewRuleAutoLayout$1 {
|
|
300
|
-
|
|
265
|
+
direction: AutoLayoutDirection;
|
|
266
|
+
nodeSep?: number;
|
|
267
|
+
rankSep?: number;
|
|
301
268
|
}
|
|
302
269
|
type ViewRule$1 = ViewRulePredicate$1 | ViewRuleStyle$1 | ViewRuleAutoLayout$1;
|
|
303
270
|
interface BasicView<ViewType extends 'element' | 'dynamic'> {
|
|
@@ -305,7 +272,7 @@ interface BasicView<ViewType extends 'element' | 'dynamic'> {
|
|
|
305
272
|
readonly id: ViewID$1;
|
|
306
273
|
readonly title: string | null;
|
|
307
274
|
readonly description: string | null;
|
|
308
|
-
readonly tags: NonEmptyArray<Tag$
|
|
275
|
+
readonly tags: NonEmptyArray<Tag$1> | null;
|
|
309
276
|
readonly links: NonEmptyArray<Link> | null;
|
|
310
277
|
/**
|
|
311
278
|
* URI to the source file of this view.
|
|
@@ -371,10 +338,10 @@ type CustomColorDefinitions = {
|
|
|
371
338
|
[key: string]: ThemeColorValues;
|
|
372
339
|
};
|
|
373
340
|
type LikeC4View$1 = ElementView$1 | DynamicView$1;
|
|
374
|
-
type NodeId = Tagged
|
|
375
|
-
type EdgeId$1 = Tagged
|
|
341
|
+
type NodeId = Tagged<string, 'Fqn'>;
|
|
342
|
+
type EdgeId$1 = Tagged<string, 'EdgeId'>;
|
|
376
343
|
type StepEdgeIdLiteral = `step-${number}` | `step-${number}.${number}`;
|
|
377
|
-
type StepEdgeId = Tagged
|
|
344
|
+
type StepEdgeId = Tagged<StepEdgeIdLiteral, 'EdgeId'>;
|
|
378
345
|
declare function StepEdgeId(step: number, parallelStep?: number): StepEdgeId;
|
|
379
346
|
declare function isStepEdgeId(id: string): id is StepEdgeId;
|
|
380
347
|
declare function extractStep(id: EdgeId$1): number;
|
|
@@ -386,7 +353,7 @@ interface ComputedNode {
|
|
|
386
353
|
description: string | null;
|
|
387
354
|
technology: string | null;
|
|
388
355
|
notation?: string;
|
|
389
|
-
tags: NonEmptyArray<Tag$
|
|
356
|
+
tags: NonEmptyArray<Tag$1> | null;
|
|
390
357
|
links: NonEmptyArray<Link> | null;
|
|
391
358
|
children: NodeId[];
|
|
392
359
|
inEdges: EdgeId$1[];
|
|
@@ -425,7 +392,7 @@ interface ComputedEdge {
|
|
|
425
392
|
line?: RelationshipLineType;
|
|
426
393
|
head?: RelationshipArrowType;
|
|
427
394
|
tail?: RelationshipArrowType;
|
|
428
|
-
tags?: NonEmptyArray<Tag$
|
|
395
|
+
tags?: NonEmptyArray<Tag$1>;
|
|
429
396
|
navigateTo?: ViewID$1;
|
|
430
397
|
/**
|
|
431
398
|
* If this edge is derived from custom relationship predicate
|
|
@@ -449,16 +416,21 @@ interface ViewWithNotation {
|
|
|
449
416
|
elements: ElementNotation[];
|
|
450
417
|
};
|
|
451
418
|
}
|
|
419
|
+
interface ViewAutoLayout {
|
|
420
|
+
direction: ViewRuleAutoLayout$1['direction'];
|
|
421
|
+
rankSep?: number;
|
|
422
|
+
nodeSep?: number;
|
|
423
|
+
}
|
|
452
424
|
interface ComputedElementView extends Omit<ElementView$1, 'rules' | 'docUri'>, ViewWithHash, ViewWithNotation {
|
|
453
425
|
readonly extends?: ViewID$1;
|
|
454
|
-
readonly autoLayout:
|
|
426
|
+
readonly autoLayout: ViewAutoLayout;
|
|
455
427
|
readonly nodes: ComputedNode[];
|
|
456
428
|
readonly edges: ComputedEdge[];
|
|
457
429
|
rules?: never;
|
|
458
430
|
docUri?: never;
|
|
459
431
|
}
|
|
460
432
|
interface ComputedDynamicView extends Omit<DynamicView$1, 'rules' | 'steps' | 'docUri'>, ViewWithHash, ViewWithNotation {
|
|
461
|
-
readonly autoLayout:
|
|
433
|
+
readonly autoLayout: ViewAutoLayout;
|
|
462
434
|
readonly nodes: ComputedNode[];
|
|
463
435
|
readonly edges: ComputedEdge[];
|
|
464
436
|
steps?: never;
|
|
@@ -502,7 +474,7 @@ type ViewManualLayout = {
|
|
|
502
474
|
readonly y: number;
|
|
503
475
|
readonly width: number;
|
|
504
476
|
readonly height: number;
|
|
505
|
-
readonly autoLayout:
|
|
477
|
+
readonly autoLayout: ViewAutoLayout;
|
|
506
478
|
readonly nodes: Record<string, {
|
|
507
479
|
isCompound: boolean;
|
|
508
480
|
x: number;
|
|
@@ -518,153 +490,32 @@ type ViewManualLayout = {
|
|
|
518
490
|
}>;
|
|
519
491
|
};
|
|
520
492
|
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
readonly title: string;
|
|
530
|
-
readonly description?: string;
|
|
531
|
-
readonly technology?: string;
|
|
532
|
-
readonly tags?: NonEmptyArray<Tag$2>;
|
|
533
|
-
readonly kind?: RelationshipKind$1;
|
|
534
|
-
readonly color?: Color$1;
|
|
535
|
-
readonly line?: RelationshipLineType;
|
|
536
|
-
readonly head?: RelationshipArrowType;
|
|
537
|
-
readonly tail?: RelationshipArrowType;
|
|
538
|
-
readonly links?: NonEmptyArray<Link>;
|
|
539
|
-
readonly navigateTo?: ViewID$1;
|
|
540
|
-
readonly metadata?: {
|
|
541
|
-
[key: string]: string;
|
|
493
|
+
/**
|
|
494
|
+
* Parsed elements, relations, and views.
|
|
495
|
+
*/
|
|
496
|
+
interface ParsedLikeC4Model {
|
|
497
|
+
specification: {
|
|
498
|
+
tags: Tag$1[];
|
|
499
|
+
elements: Record<UnwrapTagged<ElementKind$1>, ElementKindSpecification>;
|
|
500
|
+
relationships: Record<UnwrapTagged<ElementKind$1>, RelationshipKindSpecification>;
|
|
542
501
|
};
|
|
502
|
+
elements: Record<Fqn$1, Element$1>;
|
|
503
|
+
relations: Record<RelationID$1, Relation$1>;
|
|
504
|
+
views: Record<ViewID$1, LikeC4View$1>;
|
|
543
505
|
}
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
readonly tail?: RelationshipArrowType;
|
|
551
|
-
}
|
|
552
|
-
|
|
553
|
-
interface BaseExpr {
|
|
554
|
-
where?: never;
|
|
555
|
-
element?: never;
|
|
556
|
-
custom?: never;
|
|
557
|
-
expanded?: never;
|
|
558
|
-
elementKind?: never;
|
|
559
|
-
elementTag?: never;
|
|
560
|
-
isEqual?: never;
|
|
561
|
-
isDescedants?: never;
|
|
562
|
-
wildcard?: never;
|
|
563
|
-
source?: never;
|
|
564
|
-
target?: never;
|
|
565
|
-
inout?: never;
|
|
566
|
-
incoming?: never;
|
|
567
|
-
outgoing?: never;
|
|
568
|
-
customRelation?: never;
|
|
569
|
-
}
|
|
570
|
-
interface ElementRefExpr extends Omit<BaseExpr, 'element' | 'isDescedants'> {
|
|
571
|
-
element: Fqn$1;
|
|
572
|
-
isDescedants?: boolean;
|
|
506
|
+
/**
|
|
507
|
+
* Same as `ParsedLikeC4Model` but with computed views.
|
|
508
|
+
*/
|
|
509
|
+
interface ComputedLikeC4Model extends Omit<ParsedLikeC4Model, 'views'> {
|
|
510
|
+
__?: never;
|
|
511
|
+
views: Record<ViewID$1, ComputedView>;
|
|
573
512
|
}
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
interface
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
title?: string;
|
|
581
|
-
description?: string;
|
|
582
|
-
technology?: string;
|
|
583
|
-
notation?: string;
|
|
584
|
-
shape?: ElementShape$1;
|
|
585
|
-
color?: Color$1;
|
|
586
|
-
icon?: IconUrl;
|
|
587
|
-
border?: BorderStyle;
|
|
588
|
-
opacity?: number;
|
|
589
|
-
navigateTo?: ViewID$1;
|
|
590
|
-
};
|
|
591
|
-
}
|
|
592
|
-
interface WildcardExpr extends Omit<BaseExpr, 'wildcard'> {
|
|
593
|
-
wildcard: true;
|
|
594
|
-
}
|
|
595
|
-
interface ElementKindExpr extends Omit<BaseExpr, 'elementKind' | 'isEqual'> {
|
|
596
|
-
elementKind: ElementKind$1;
|
|
597
|
-
isEqual: boolean;
|
|
598
|
-
}
|
|
599
|
-
interface ElementTagExpr extends Omit<BaseExpr, 'elementTag' | 'isEqual'> {
|
|
600
|
-
elementTag: Tag$2;
|
|
601
|
-
isEqual: boolean;
|
|
602
|
-
}
|
|
603
|
-
type ElementExpression$1 = ElementRefExpr | WildcardExpr | ElementKindExpr | ElementTagExpr | ExpandedElementExpr;
|
|
604
|
-
interface ElementWhereExpr extends Omit<BaseExpr, 'where'> {
|
|
605
|
-
where: {
|
|
606
|
-
expr: ElementExpression$1;
|
|
607
|
-
condition: WhereOperator<string, string>;
|
|
608
|
-
};
|
|
609
|
-
}
|
|
610
|
-
type ElementPredicateExpression = ElementExpression$1 | ElementWhereExpr | CustomElementExpr;
|
|
611
|
-
interface RelationExpr extends Omit<BaseExpr, 'source' | 'target'> {
|
|
612
|
-
source: ElementExpression$1;
|
|
613
|
-
target: ElementExpression$1;
|
|
614
|
-
isBidirectional?: boolean;
|
|
615
|
-
}
|
|
616
|
-
interface InOutExpr extends Omit<BaseExpr, 'inout'> {
|
|
617
|
-
inout: ElementExpression$1;
|
|
618
|
-
}
|
|
619
|
-
interface IncomingExpr extends Omit<BaseExpr, 'incoming'> {
|
|
620
|
-
incoming: ElementExpression$1;
|
|
621
|
-
}
|
|
622
|
-
interface OutgoingExpr extends Omit<BaseExpr, 'outgoing'> {
|
|
623
|
-
outgoing: ElementExpression$1;
|
|
624
|
-
}
|
|
625
|
-
type RelationExpression$1 = RelationExpr | InOutExpr | IncomingExpr | OutgoingExpr;
|
|
626
|
-
interface RelationWhereExpr extends Omit<BaseExpr, 'where'> {
|
|
627
|
-
where: {
|
|
628
|
-
expr: RelationExpression$1;
|
|
629
|
-
condition: WhereOperator<string, string>;
|
|
630
|
-
};
|
|
631
|
-
}
|
|
632
|
-
interface CustomRelationExpr extends Omit<BaseExpr, 'customRelation'> {
|
|
633
|
-
customRelation: {
|
|
634
|
-
relation: RelationExpression$1 | RelationWhereExpr;
|
|
635
|
-
title?: string;
|
|
636
|
-
description?: string;
|
|
637
|
-
technology?: string;
|
|
638
|
-
notation?: string;
|
|
639
|
-
navigateTo?: ViewID$1;
|
|
640
|
-
notes?: string;
|
|
641
|
-
color?: Color$1;
|
|
642
|
-
line?: RelationshipLineType;
|
|
643
|
-
head?: RelationshipArrowType;
|
|
644
|
-
tail?: RelationshipArrowType;
|
|
645
|
-
};
|
|
646
|
-
}
|
|
647
|
-
type RelationPredicateExpression = RelationExpression$1 | RelationWhereExpr | CustomRelationExpr;
|
|
648
|
-
type Expression$1 = ElementPredicateExpression | RelationPredicateExpression;
|
|
649
|
-
|
|
650
|
-
/**
|
|
651
|
-
* Parsed elements, relations, and views.
|
|
652
|
-
*/
|
|
653
|
-
interface ParsedLikeC4Model {
|
|
654
|
-
specification: {
|
|
655
|
-
tags: Tag$2[];
|
|
656
|
-
elements: Record<UnwrapTagged<ElementKind$1>, ElementKindSpecification>;
|
|
657
|
-
relationships: Record<UnwrapTagged<ElementKind$1>, RelationshipKindSpecification>;
|
|
658
|
-
};
|
|
659
|
-
elements: Record<Fqn$1, Element$1>;
|
|
660
|
-
relations: Record<RelationID$1, Relation$1>;
|
|
661
|
-
views: Record<ViewID$1, LikeC4View$1>;
|
|
662
|
-
}
|
|
663
|
-
/**
|
|
664
|
-
* Same as `ParsedLikeC4Model` but with computed views.
|
|
665
|
-
*/
|
|
666
|
-
interface ComputedLikeC4Model extends Omit<ParsedLikeC4Model, 'views'> {
|
|
667
|
-
views: Record<ViewID$1, ComputedView>;
|
|
513
|
+
/**
|
|
514
|
+
* Same as `ParsedLikeC4Model` but with layouted views (DiagramView)
|
|
515
|
+
*/
|
|
516
|
+
interface LayoutedLikeC4Model extends Omit<ParsedLikeC4Model, 'views'> {
|
|
517
|
+
__: 'layouted';
|
|
518
|
+
views: Record<ViewID$1, DiagramView>;
|
|
668
519
|
}
|
|
669
520
|
|
|
670
521
|
/**
|
|
@@ -993,43 +844,49 @@ type Fqn = LiteralUnion<Fqn$1, string>;
|
|
|
993
844
|
type RelationID = LiteralUnion<RelationID$1, string>;
|
|
994
845
|
type ViewID = LiteralUnion<ViewID$1, string>;
|
|
995
846
|
type EdgeId = LiteralUnion<EdgeId$1, string>;
|
|
847
|
+
type IncomingFilter = 'all' | 'direct' | 'to-descendants';
|
|
848
|
+
type OutgoingFilter = 'all' | 'direct' | 'from-descendants';
|
|
849
|
+
type ElementOrFqn = Fqn | {
|
|
850
|
+
id: Fqn;
|
|
851
|
+
};
|
|
996
852
|
|
|
997
|
-
type ElementOrFqn$1 = Fqn | LikeC4ViewModel.Element;
|
|
998
853
|
/**
|
|
999
854
|
* All methods are view-scoped, i.e. only return elements and connections in the view.
|
|
1000
855
|
*/
|
|
1001
856
|
declare class LikeC4ViewModel {
|
|
1002
|
-
#private;
|
|
1003
857
|
readonly view: ComputedView;
|
|
1004
|
-
readonly model: LikeC4Model
|
|
1005
|
-
|
|
858
|
+
readonly model: LikeC4Model<LikeC4ViewModel>;
|
|
859
|
+
private _rootElements;
|
|
860
|
+
private _elements;
|
|
861
|
+
private _connections;
|
|
862
|
+
constructor(view: ComputedView, model: LikeC4Model<LikeC4ViewModel>);
|
|
1006
863
|
get id(): ViewID$1;
|
|
1007
864
|
get title(): string;
|
|
1008
|
-
get viewOf(): LikeC4Model.
|
|
1009
|
-
get tags(): Tag$
|
|
865
|
+
get viewOf(): LikeC4Model.ElementModel<LikeC4ViewModel>;
|
|
866
|
+
get tags(): Tag$1[];
|
|
1010
867
|
roots(): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
1011
868
|
elements(): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
1012
869
|
element(id: Fqn): LikeC4ViewModel.Element;
|
|
1013
870
|
hasElement(id: Fqn): boolean;
|
|
1014
871
|
connections(): ReadonlyArray<LikeC4ViewModel.Connection>;
|
|
1015
872
|
connection(id: EdgeId): LikeC4ViewModel.Connection;
|
|
1016
|
-
findConnections(source: ElementOrFqn
|
|
1017
|
-
parent(element: ElementOrFqn
|
|
1018
|
-
children(element: ElementOrFqn
|
|
1019
|
-
siblings(element: ElementOrFqn
|
|
873
|
+
findConnections(source: ElementOrFqn, target: ElementOrFqn, direction?: 'both' | 'direct'): ReadonlyArray<LikeC4ViewModel.Connection>;
|
|
874
|
+
parent(element: ElementOrFqn): LikeC4ViewModel.Element | null;
|
|
875
|
+
children(element: ElementOrFqn): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
876
|
+
siblings(element: ElementOrFqn): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
1020
877
|
/**
|
|
1021
878
|
* Get all ancestor elements (i.e. parent, parent’s parent, etc.)
|
|
1022
879
|
* (from closest to root)
|
|
1023
880
|
*/
|
|
1024
|
-
ancestors(element: ElementOrFqn
|
|
1025
|
-
descendants(element: ElementOrFqn
|
|
1026
|
-
incoming(element: ElementOrFqn
|
|
1027
|
-
incomers(element: ElementOrFqn
|
|
881
|
+
ancestors(element: ElementOrFqn): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
882
|
+
descendants(element: ElementOrFqn): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
883
|
+
incoming(element: ElementOrFqn, filter?: IncomingFilter): ReadonlyArray<LikeC4ViewModel.Connection>;
|
|
884
|
+
incomers(element: ElementOrFqn, filter?: IncomingFilter): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
1028
885
|
/**
|
|
1029
886
|
* Outgoing relationships from the element and its descendants
|
|
1030
887
|
*/
|
|
1031
|
-
outgoing(element: ElementOrFqn
|
|
1032
|
-
outgoers(element: ElementOrFqn
|
|
888
|
+
outgoing(element: ElementOrFqn, filter?: OutgoingFilter): ReadonlyArray<LikeC4ViewModel.Connection>;
|
|
889
|
+
outgoers(element: ElementOrFqn, filter?: OutgoingFilter): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
1033
890
|
}
|
|
1034
891
|
declare namespace LikeC4ViewModel {
|
|
1035
892
|
/**
|
|
@@ -1047,8 +904,8 @@ declare namespace LikeC4ViewModel {
|
|
|
1047
904
|
get hasNested(): boolean;
|
|
1048
905
|
get shape(): ElementShape$1;
|
|
1049
906
|
get color(): Color$1;
|
|
1050
|
-
get tags(): Tag$
|
|
1051
|
-
model(): LikeC4Model.
|
|
907
|
+
get tags(): Tag$1[];
|
|
908
|
+
model(): LikeC4Model.ElementModel<LikeC4ViewModel>;
|
|
1052
909
|
parent(): LikeC4ViewModel.Element | null;
|
|
1053
910
|
metadata(key: string): string | undefined;
|
|
1054
911
|
metadata(key: string, defaultValue: string): string;
|
|
@@ -1059,8 +916,8 @@ declare namespace LikeC4ViewModel {
|
|
|
1059
916
|
children(): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
1060
917
|
incoming(filter?: 'all' | 'direct' | 'to-descendants'): ReadonlyArray<LikeC4ViewModel.Connection>;
|
|
1061
918
|
incomers(filter?: 'all' | 'direct' | 'to-descendants'): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
1062
|
-
outgoing(filter?:
|
|
1063
|
-
outgoers(filter?:
|
|
919
|
+
outgoing(filter?: OutgoingFilter): ReadonlyArray<LikeC4ViewModel.Connection>;
|
|
920
|
+
outgoers(filter?: OutgoingFilter): ReadonlyArray<LikeC4ViewModel.Element>;
|
|
1064
921
|
connectionsTo(target: Fqn | LikeC4ViewModel.Element): ReadonlyArray<LikeC4ViewModel.Connection>;
|
|
1065
922
|
}
|
|
1066
923
|
/**
|
|
@@ -1074,102 +931,114 @@ declare namespace LikeC4ViewModel {
|
|
|
1074
931
|
get id(): EdgeId$1;
|
|
1075
932
|
get source(): LikeC4ViewModel.Element;
|
|
1076
933
|
get target(): LikeC4ViewModel.Element;
|
|
1077
|
-
get tags(): Tag$
|
|
934
|
+
get tags(): Tag$1[];
|
|
1078
935
|
/**
|
|
1079
936
|
* Model relationships
|
|
1080
937
|
*/
|
|
1081
|
-
relationships(): ReadonlyArray<LikeC4Model.Relationship
|
|
938
|
+
relationships(): ReadonlyArray<LikeC4Model.Relationship<LikeC4ViewModel>>;
|
|
1082
939
|
}
|
|
1083
940
|
}
|
|
1084
941
|
|
|
1085
|
-
type
|
|
1086
|
-
declare class LikeC4Model {
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
942
|
+
type PickBySource<Source> = Source extends LikeC4Model.Layouted.SourceModel ? LikeC4Model.Layouted : Source extends LikeC4Model.Computed.SourceModel ? LikeC4Model.Computed : never;
|
|
943
|
+
declare class LikeC4Model<M extends LikeC4Model.ViewModel = LikeC4Model.ViewModel> {
|
|
944
|
+
readonly type: LikeC4Model.ModelType<M>;
|
|
945
|
+
readonly sourcemodel: LikeC4Model.SourceModel<M>;
|
|
946
|
+
private _elements;
|
|
947
|
+
private _parents;
|
|
948
|
+
private _children;
|
|
949
|
+
private _rootElements;
|
|
950
|
+
private _relations;
|
|
951
|
+
private _incoming;
|
|
952
|
+
private _outgoing;
|
|
953
|
+
private _internal;
|
|
954
|
+
private _cacheAscendingSiblings;
|
|
955
|
+
private _views;
|
|
956
|
+
static create(source: LikeC4Model.SourceModel): PickBySource<typeof source>;
|
|
957
|
+
static computed(source: ComputedLikeC4Model): LikeC4Model<LikeC4ViewModel>;
|
|
958
|
+
static layouted(source: LayoutedLikeC4Model): LikeC4Model<LikeC4DiagramModel>;
|
|
959
|
+
protected constructor(type: LikeC4Model.ModelType<M>, sourcemodel: LikeC4Model.SourceModel<M>, elements: Element$1[], relations: Relation$1[]);
|
|
1091
960
|
/**
|
|
1092
961
|
* Returns the root elements of the model.
|
|
1093
962
|
*/
|
|
1094
|
-
roots(): ReadonlyArray<LikeC4Model.
|
|
963
|
+
roots(): ReadonlyArray<LikeC4Model.ElementModel<M>>;
|
|
1095
964
|
/**
|
|
1096
965
|
* Returns all elements in the model.
|
|
1097
966
|
*/
|
|
1098
|
-
elements(): ReadonlyArray<LikeC4Model.
|
|
967
|
+
elements(): ReadonlyArray<LikeC4Model.ElementModel<M>>;
|
|
1099
968
|
/**
|
|
1100
969
|
* Returns a specific element by its FQN.
|
|
1101
970
|
*/
|
|
1102
|
-
element(id: Fqn): LikeC4Model.
|
|
971
|
+
element(id: Fqn): LikeC4Model.ElementModel<M>;
|
|
1103
972
|
/**
|
|
1104
973
|
* Returns all relationships in the model.
|
|
1105
974
|
*/
|
|
1106
|
-
relationships(): ReadonlyArray<LikeC4Model.Relationship
|
|
975
|
+
relationships(): ReadonlyArray<LikeC4Model.Relationship<M>>;
|
|
1107
976
|
/**
|
|
1108
977
|
* Returns a specific relationship by its ID.
|
|
1109
978
|
*/
|
|
1110
|
-
relationship(id: RelationID): LikeC4Model.Relationship
|
|
979
|
+
relationship(id: RelationID): LikeC4Model.Relationship<M>;
|
|
1111
980
|
/**
|
|
1112
981
|
* Returns all views in the model.
|
|
1113
982
|
*/
|
|
1114
|
-
views(): ReadonlyArray<
|
|
983
|
+
views(): ReadonlyArray<M>;
|
|
1115
984
|
/**
|
|
1116
985
|
* Returns a specific view by its ID.
|
|
1117
986
|
*/
|
|
1118
|
-
view(viewId: ViewID):
|
|
987
|
+
view(viewId: ViewID): M;
|
|
1119
988
|
/**
|
|
1120
989
|
* Returns the parent element of given element.
|
|
1121
990
|
* @see ancestors
|
|
1122
991
|
*/
|
|
1123
|
-
parent(element: ElementOrFqn): LikeC4Model.
|
|
992
|
+
parent(element: ElementOrFqn): LikeC4Model.ElementModel<M> | null;
|
|
1124
993
|
/**
|
|
1125
994
|
* Get all children of the element (only direct children),
|
|
1126
995
|
* @see descendants
|
|
1127
996
|
*/
|
|
1128
|
-
children(element: ElementOrFqn): ReadonlyArray<LikeC4Model.
|
|
997
|
+
children(element: ElementOrFqn): ReadonlyArray<LikeC4Model.ElementModel<M>>;
|
|
1129
998
|
/**
|
|
1130
999
|
* Get all sibling (i.e. same parent)
|
|
1131
1000
|
*/
|
|
1132
|
-
siblings(element: ElementOrFqn): ReadonlyArray<LikeC4Model.
|
|
1001
|
+
siblings(element: ElementOrFqn): ReadonlyArray<LikeC4Model.ElementModel<M>>;
|
|
1133
1002
|
/**
|
|
1134
1003
|
* Get all ancestor elements (i.e. parent, parent’s parent, etc.)
|
|
1135
1004
|
* (from closest to root)
|
|
1136
1005
|
*/
|
|
1137
|
-
ancestors(element: ElementOrFqn): ReadonlyArray<LikeC4Model.
|
|
1006
|
+
ancestors(element: ElementOrFqn): ReadonlyArray<LikeC4Model.ElementModel<M>>;
|
|
1138
1007
|
/**
|
|
1139
1008
|
* Get all descendant elements (i.e. children, children’s children, etc.)
|
|
1140
1009
|
*/
|
|
1141
|
-
descendants(element: ElementOrFqn): ReadonlyArray<LikeC4Model.
|
|
1010
|
+
descendants(element: ElementOrFqn): ReadonlyArray<LikeC4Model.ElementModel<M>>;
|
|
1142
1011
|
/**
|
|
1143
1012
|
* Incoming relationships to the element and its descendants
|
|
1144
1013
|
* @see incomers
|
|
1145
1014
|
*/
|
|
1146
|
-
incoming(element: ElementOrFqn, filter?:
|
|
1015
|
+
incoming(element: ElementOrFqn, filter?: IncomingFilter): ReadonlyArray<LikeC4Model.Relationship<M>>;
|
|
1147
1016
|
/**
|
|
1148
1017
|
* Source elements of incoming relationships
|
|
1149
1018
|
*/
|
|
1150
|
-
incomers(element: ElementOrFqn, filter?:
|
|
1019
|
+
incomers(element: ElementOrFqn, filter?: IncomingFilter): ReadonlyArray<LikeC4Model.ElementModel<M>>;
|
|
1151
1020
|
/**
|
|
1152
1021
|
* Outgoing relationships from the element and its descendants
|
|
1153
1022
|
* @see outgoers
|
|
1154
1023
|
*/
|
|
1155
|
-
outgoing(element: ElementOrFqn, filter?:
|
|
1024
|
+
outgoing(element: ElementOrFqn, filter?: OutgoingFilter): ReadonlyArray<LikeC4Model.Relationship<M>>;
|
|
1156
1025
|
/**
|
|
1157
1026
|
* Target elements of outgoing relationships
|
|
1158
1027
|
*/
|
|
1159
|
-
outgoers(element: ElementOrFqn, filter?:
|
|
1028
|
+
outgoers(element: ElementOrFqn, filter?: OutgoingFilter): ReadonlyArray<LikeC4Model.ElementModel<M>>;
|
|
1160
1029
|
/**
|
|
1161
1030
|
* Relationships inside the element, among descendants
|
|
1162
1031
|
*/
|
|
1163
|
-
internal(element: ElementOrFqn): ReadonlyArray<LikeC4Model.Relationship
|
|
1032
|
+
internal(element: ElementOrFqn): ReadonlyArray<LikeC4Model.Relationship<M>>;
|
|
1164
1033
|
/**
|
|
1165
1034
|
* Resolve siblings of the element and siblings of ancestors
|
|
1166
1035
|
* (from closest to root)
|
|
1167
1036
|
*/
|
|
1168
|
-
ascendingSiblings(element: ElementOrFqn): ReadonlyArray<LikeC4Model.
|
|
1037
|
+
ascendingSiblings(element: ElementOrFqn): ReadonlyArray<LikeC4Model.ElementModel<M>>;
|
|
1169
1038
|
/**
|
|
1170
1039
|
* Resolve all views that contain the element
|
|
1171
1040
|
*/
|
|
1172
|
-
viewsWithElement(element: ElementOrFqn): ReadonlyArray<
|
|
1041
|
+
viewsWithElement(element: ElementOrFqn): ReadonlyArray<M>;
|
|
1173
1042
|
private addElement;
|
|
1174
1043
|
private addRelation;
|
|
1175
1044
|
private _childrenOf;
|
|
@@ -1178,10 +1047,43 @@ declare class LikeC4Model {
|
|
|
1178
1047
|
private _internalOf;
|
|
1179
1048
|
}
|
|
1180
1049
|
declare namespace LikeC4Model {
|
|
1181
|
-
|
|
1182
|
-
|
|
1050
|
+
function isModel(model: any): model is LikeC4Model;
|
|
1051
|
+
type SourceModel<M extends ViewModel = ViewModel> = M extends LikeC4DiagramModel ? LayoutedLikeC4Model : ComputedLikeC4Model;
|
|
1052
|
+
type ViewModel = LikeC4ViewModel | LikeC4DiagramModel;
|
|
1053
|
+
namespace ViewModel {
|
|
1054
|
+
type Relationship = LikeC4Model.Relationship<ViewModel>;
|
|
1055
|
+
function isLayouted(model: ViewModel): model is LikeC4DiagramModel;
|
|
1056
|
+
}
|
|
1057
|
+
type Computed = LikeC4Model<LikeC4ViewModel>;
|
|
1058
|
+
namespace Computed {
|
|
1059
|
+
type ViewModel = LikeC4ViewModel;
|
|
1060
|
+
type SourceModel = LikeC4Model.SourceModel<ViewModel>;
|
|
1061
|
+
}
|
|
1062
|
+
type Layouted = LikeC4Model<LikeC4DiagramModel>;
|
|
1063
|
+
namespace Layouted {
|
|
1064
|
+
type ViewModel = LikeC4DiagramModel;
|
|
1065
|
+
type SourceModel = LikeC4Model.SourceModel<ViewModel>;
|
|
1066
|
+
}
|
|
1067
|
+
type ModelType<M extends ViewModel = ViewModel> = M extends LikeC4DiagramModel ? 'layouted' : M extends LikeC4ViewModel ? 'computed' : never;
|
|
1068
|
+
function isLayouted(model: LikeC4Model): model is Layouted;
|
|
1069
|
+
class Relationship<M extends ViewModel> {
|
|
1070
|
+
readonly relationship: Relation$1;
|
|
1071
|
+
private model;
|
|
1072
|
+
constructor(relationship: Relation$1, model: LikeC4Model<M>);
|
|
1073
|
+
get id(): RelationID$1;
|
|
1074
|
+
get title(): string;
|
|
1075
|
+
get kind(): RelationshipKind$1;
|
|
1076
|
+
get tags(): Tag$1[];
|
|
1077
|
+
get source(): ElementModel<M>;
|
|
1078
|
+
get target(): ElementModel<M>;
|
|
1079
|
+
metadata(key: string): string | undefined;
|
|
1080
|
+
metadata(key: string, defaultValue: string): string;
|
|
1081
|
+
hasMetadata(key: string): boolean;
|
|
1082
|
+
}
|
|
1083
|
+
class ElementModel<M extends ViewModel> {
|
|
1084
|
+
readonly element: Element$1;
|
|
1183
1085
|
private model;
|
|
1184
|
-
constructor(element: Element, model: LikeC4Model);
|
|
1086
|
+
constructor(element: Element$1, model: LikeC4Model<M>);
|
|
1185
1087
|
get id(): Fqn$1;
|
|
1186
1088
|
get title(): string;
|
|
1187
1089
|
get kind(): ElementKind$1;
|
|
@@ -1189,38 +1091,117 @@ declare namespace LikeC4Model {
|
|
|
1189
1091
|
get hasNested(): boolean;
|
|
1190
1092
|
get shape(): ElementShape$1;
|
|
1191
1093
|
get color(): Color$1;
|
|
1192
|
-
get tags(): Tag$
|
|
1193
|
-
parent():
|
|
1094
|
+
get tags(): Tag$1[];
|
|
1095
|
+
parent(): ElementModel<M> | null;
|
|
1194
1096
|
metadata(key: string): string | undefined;
|
|
1195
1097
|
metadata(key: string, defaultValue: string): string;
|
|
1196
1098
|
hasMetadata(key: string): boolean;
|
|
1197
|
-
ancestors(): readonly
|
|
1198
|
-
siblings(): readonly
|
|
1199
|
-
descendants(): readonly
|
|
1200
|
-
children(): readonly
|
|
1099
|
+
ancestors(): readonly ElementModel<M>[];
|
|
1100
|
+
siblings(): readonly ElementModel<M>[];
|
|
1101
|
+
descendants(): readonly ElementModel<M>[];
|
|
1102
|
+
children(): readonly ElementModel<M>[];
|
|
1201
1103
|
/**
|
|
1202
1104
|
* Views that contain this element
|
|
1203
1105
|
*/
|
|
1204
|
-
views(): readonly
|
|
1205
|
-
incoming(filter?:
|
|
1206
|
-
incomers(filter?:
|
|
1207
|
-
outgoing(filter?:
|
|
1208
|
-
outgoers(filter?:
|
|
1209
|
-
internal(): readonly Relationship[];
|
|
1106
|
+
views(): readonly M[];
|
|
1107
|
+
incoming(filter?: IncomingFilter): readonly Relationship<M>[];
|
|
1108
|
+
incomers(filter?: IncomingFilter): readonly ElementModel<M>[];
|
|
1109
|
+
outgoing(filter?: OutgoingFilter): readonly Relationship<M>[];
|
|
1110
|
+
outgoers(filter?: OutgoingFilter): readonly ElementModel<M>[];
|
|
1111
|
+
internal(): readonly Relationship<M>[];
|
|
1210
1112
|
}
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1113
|
+
}
|
|
1114
|
+
|
|
1115
|
+
/**
|
|
1116
|
+
* All methods are view-scoped, i.e. only return elements and connections in the view.
|
|
1117
|
+
*/
|
|
1118
|
+
declare class LikeC4DiagramModel {
|
|
1119
|
+
readonly view: DiagramView;
|
|
1120
|
+
readonly model: LikeC4Model.Layouted;
|
|
1121
|
+
private _rootElements;
|
|
1122
|
+
private _elements;
|
|
1123
|
+
private _connections;
|
|
1124
|
+
constructor(view: DiagramView, model: LikeC4Model.Layouted);
|
|
1125
|
+
get isDynamic(): boolean;
|
|
1126
|
+
get id(): ViewID$1;
|
|
1127
|
+
get title(): string;
|
|
1128
|
+
get viewOf(): LikeC4Model.ElementModel<LikeC4DiagramModel>;
|
|
1129
|
+
get tags(): Tag$1[];
|
|
1130
|
+
roots(): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1131
|
+
elements(): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1132
|
+
element(id: Fqn): LikeC4DiagramModel.Element;
|
|
1133
|
+
hasElement(id: Fqn): boolean;
|
|
1134
|
+
connections(): ReadonlyArray<LikeC4DiagramModel.Connection>;
|
|
1135
|
+
connection(id: EdgeId): LikeC4DiagramModel.Connection;
|
|
1136
|
+
findConnections(source: ElementOrFqn, target: ElementOrFqn, direction?: 'both' | 'direct'): ReadonlyArray<LikeC4DiagramModel.Connection>;
|
|
1137
|
+
parent(element: ElementOrFqn): LikeC4DiagramModel.Element | null;
|
|
1138
|
+
children(element: ElementOrFqn): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1139
|
+
siblings(element: ElementOrFqn): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1140
|
+
/**
|
|
1141
|
+
* Get all ancestor elements (i.e. parent, parent’s parent, etc.)
|
|
1142
|
+
* (from closest to root)
|
|
1143
|
+
*/
|
|
1144
|
+
ancestors(element: ElementOrFqn): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1145
|
+
descendants(element: ElementOrFqn): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1146
|
+
incoming(element: ElementOrFqn, filter?: IncomingFilter): ReadonlyArray<LikeC4DiagramModel.Connection>;
|
|
1147
|
+
incomers(element: ElementOrFqn, filter?: IncomingFilter): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1148
|
+
/**
|
|
1149
|
+
* Outgoing relationships from the element and its descendants
|
|
1150
|
+
*/
|
|
1151
|
+
outgoing(element: ElementOrFqn, filter?: OutgoingFilter): ReadonlyArray<LikeC4DiagramModel.Connection>;
|
|
1152
|
+
outgoers(element: ElementOrFqn, filter?: OutgoingFilter): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1153
|
+
}
|
|
1154
|
+
declare namespace LikeC4DiagramModel {
|
|
1155
|
+
/**
|
|
1156
|
+
* Represents an element in the view. (Diagram node)
|
|
1157
|
+
* All methods are view-scoped, i.e. `children` returns only children of the element in the view.
|
|
1158
|
+
*/
|
|
1159
|
+
class Element {
|
|
1160
|
+
readonly node: DiagramNode;
|
|
1161
|
+
private view;
|
|
1162
|
+
constructor(node: DiagramNode, view: LikeC4DiagramModel);
|
|
1163
|
+
get id(): NodeId;
|
|
1216
1164
|
get title(): string;
|
|
1217
|
-
get kind():
|
|
1218
|
-
get
|
|
1219
|
-
get
|
|
1220
|
-
get
|
|
1165
|
+
get kind(): ElementKind$1;
|
|
1166
|
+
get isRoot(): boolean;
|
|
1167
|
+
get hasNested(): boolean;
|
|
1168
|
+
get shape(): ElementShape$1;
|
|
1169
|
+
get color(): Color$1;
|
|
1170
|
+
get tags(): Tag$1[];
|
|
1171
|
+
get level(): number;
|
|
1172
|
+
get depth(): number;
|
|
1173
|
+
model(): LikeC4Model.ElementModel<LikeC4DiagramModel>;
|
|
1174
|
+
parent(): LikeC4DiagramModel.Element | null;
|
|
1221
1175
|
metadata(key: string): string | undefined;
|
|
1222
1176
|
metadata(key: string, defaultValue: string): string;
|
|
1223
1177
|
hasMetadata(key: string): boolean;
|
|
1178
|
+
ancestors(): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1179
|
+
siblings(): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1180
|
+
descendants(): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1181
|
+
children(): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1182
|
+
incoming(filter?: IncomingFilter): ReadonlyArray<LikeC4DiagramModel.Connection>;
|
|
1183
|
+
incomers(filter?: IncomingFilter): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1184
|
+
outgoing(filter?: OutgoingFilter): ReadonlyArray<LikeC4DiagramModel.Connection>;
|
|
1185
|
+
outgoers(filter?: OutgoingFilter): ReadonlyArray<LikeC4DiagramModel.Element>;
|
|
1186
|
+
connectionsTo(target: Fqn | LikeC4DiagramModel.Element): ReadonlyArray<LikeC4DiagramModel.Connection>;
|
|
1187
|
+
}
|
|
1188
|
+
/**
|
|
1189
|
+
* Represents a connection between two elements.
|
|
1190
|
+
* May be source from multiple model relationships.
|
|
1191
|
+
*/
|
|
1192
|
+
class Connection {
|
|
1193
|
+
readonly edge: DiagramEdge;
|
|
1194
|
+
private view;
|
|
1195
|
+
constructor(edge: DiagramEdge, view: LikeC4DiagramModel);
|
|
1196
|
+
get id(): EdgeId$1;
|
|
1197
|
+
get source(): LikeC4DiagramModel.Element;
|
|
1198
|
+
get target(): LikeC4DiagramModel.Element;
|
|
1199
|
+
get tags(): Tag$1[];
|
|
1200
|
+
get color(): Color$1;
|
|
1201
|
+
/**
|
|
1202
|
+
* Model relationships
|
|
1203
|
+
*/
|
|
1204
|
+
relationships(): ReadonlyArray<LikeC4Model.Relationship<LikeC4DiagramModel>>;
|
|
1224
1205
|
}
|
|
1225
1206
|
}
|
|
1226
1207
|
declare function nameFromFqn(fqn: Fqn$1): string;
|
|
@@ -1233,7 +1214,6 @@ declare function isSameHierarchy<E extends {
|
|
|
1233
1214
|
declare function isDescendantOf<E extends {
|
|
1234
1215
|
id: Fqn$1;
|
|
1235
1216
|
}>(ancestors: E[]): (e: E) => boolean;
|
|
1236
|
-
declare function notDescendantOf(ancestors: Element$1[]): (e: Element$1) => boolean;
|
|
1237
1217
|
declare function commonAncestor(first: Fqn$1, second: Fqn$1): Fqn$1;
|
|
1238
1218
|
declare function parentFqn(fqn: Fqn$1): Fqn$1 | null;
|
|
1239
1219
|
/**
|
|
@@ -1256,179 +1236,6 @@ declare function compareByFqnHierarchically<T extends {
|
|
|
1256
1236
|
id: string;
|
|
1257
1237
|
}>(a: T, b: T): 0 | 1 | -1;
|
|
1258
1238
|
|
|
1259
|
-
/**
|
|
1260
|
-
Matches any [primitive value](https://developer.mozilla.org/en-US/docs/Glossary/Primitive).
|
|
1261
|
-
|
|
1262
|
-
@category Type
|
|
1263
|
-
*/
|
|
1264
|
-
type Primitive =
|
|
1265
|
-
| null
|
|
1266
|
-
| undefined
|
|
1267
|
-
| string
|
|
1268
|
-
| number
|
|
1269
|
-
| boolean
|
|
1270
|
-
| symbol
|
|
1271
|
-
| bigint;
|
|
1272
|
-
|
|
1273
|
-
declare global {
|
|
1274
|
-
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions -- It has to be an `interface` so that it can be merged.
|
|
1275
|
-
interface SymbolConstructor {
|
|
1276
|
-
readonly observable: symbol;
|
|
1277
|
-
}
|
|
1278
|
-
}
|
|
1279
|
-
|
|
1280
|
-
type Numeric = number | bigint;
|
|
1281
|
-
|
|
1282
|
-
/**
|
|
1283
|
-
Returns a boolean for whether the given type is `never`.
|
|
1284
|
-
|
|
1285
|
-
@link https://github.com/microsoft/TypeScript/issues/31751#issuecomment-498526919
|
|
1286
|
-
@link https://stackoverflow.com/a/53984913/10292952
|
|
1287
|
-
@link https://www.zhenghao.io/posts/ts-never
|
|
1288
|
-
|
|
1289
|
-
Useful in type utilities, such as checking if something does not occur.
|
|
1290
|
-
|
|
1291
|
-
@example
|
|
1292
|
-
```
|
|
1293
|
-
import type {IsNever, And} from 'type-fest';
|
|
1294
|
-
|
|
1295
|
-
// https://github.com/andnp/SimplyTyped/blob/master/src/types/strings.ts
|
|
1296
|
-
type AreStringsEqual<A extends string, B extends string> =
|
|
1297
|
-
And<
|
|
1298
|
-
IsNever<Exclude<A, B>> extends true ? true : false,
|
|
1299
|
-
IsNever<Exclude<B, A>> extends true ? true : false
|
|
1300
|
-
>;
|
|
1301
|
-
|
|
1302
|
-
type EndIfEqual<I extends string, O extends string> =
|
|
1303
|
-
AreStringsEqual<I, O> extends true
|
|
1304
|
-
? never
|
|
1305
|
-
: void;
|
|
1306
|
-
|
|
1307
|
-
function endIfEqual<I extends string, O extends string>(input: I, output: O): EndIfEqual<I, O> {
|
|
1308
|
-
if (input === output) {
|
|
1309
|
-
process.exit(0);
|
|
1310
|
-
}
|
|
1311
|
-
}
|
|
1312
|
-
|
|
1313
|
-
endIfEqual('abc', 'abc');
|
|
1314
|
-
//=> never
|
|
1315
|
-
|
|
1316
|
-
endIfEqual('abc', '123');
|
|
1317
|
-
//=> void
|
|
1318
|
-
```
|
|
1319
|
-
|
|
1320
|
-
@category Type Guard
|
|
1321
|
-
@category Utilities
|
|
1322
|
-
*/
|
|
1323
|
-
type IsNever$1<T> = [T] extends [never] ? true : false;
|
|
1324
|
-
|
|
1325
|
-
/**
|
|
1326
|
-
Returns a boolean for whether the given type `T` is the specified `LiteralType`.
|
|
1327
|
-
|
|
1328
|
-
@link https://stackoverflow.com/a/52806744/10292952
|
|
1329
|
-
|
|
1330
|
-
@example
|
|
1331
|
-
```
|
|
1332
|
-
LiteralCheck<1, number>
|
|
1333
|
-
//=> true
|
|
1334
|
-
|
|
1335
|
-
LiteralCheck<number, number>
|
|
1336
|
-
//=> false
|
|
1337
|
-
|
|
1338
|
-
LiteralCheck<1, string>
|
|
1339
|
-
//=> false
|
|
1340
|
-
```
|
|
1341
|
-
*/
|
|
1342
|
-
type LiteralCheck<T, LiteralType extends Primitive> = (
|
|
1343
|
-
IsNever$1<T> extends false // Must be wider than `never`
|
|
1344
|
-
? [T] extends [LiteralType & infer U] // Remove any branding
|
|
1345
|
-
? [U] extends [LiteralType] // Must be narrower than `LiteralType`
|
|
1346
|
-
? [LiteralType] extends [U] // Cannot be wider than `LiteralType`
|
|
1347
|
-
? false
|
|
1348
|
-
: true
|
|
1349
|
-
: false
|
|
1350
|
-
: false
|
|
1351
|
-
: false
|
|
1352
|
-
);
|
|
1353
|
-
|
|
1354
|
-
/**
|
|
1355
|
-
Returns a boolean for whether the given type `T` is one of the specified literal types in `LiteralUnionType`.
|
|
1356
|
-
|
|
1357
|
-
@example
|
|
1358
|
-
```
|
|
1359
|
-
LiteralChecks<1, Numeric>
|
|
1360
|
-
//=> true
|
|
1361
|
-
|
|
1362
|
-
LiteralChecks<1n, Numeric>
|
|
1363
|
-
//=> true
|
|
1364
|
-
|
|
1365
|
-
LiteralChecks<bigint, Numeric>
|
|
1366
|
-
//=> false
|
|
1367
|
-
```
|
|
1368
|
-
*/
|
|
1369
|
-
type LiteralChecks<T, LiteralUnionType> = (
|
|
1370
|
-
// Conditional type to force union distribution.
|
|
1371
|
-
// If `T` is none of the literal types in the union `LiteralUnionType`, then `LiteralCheck<T, LiteralType>` will evaluate to `false` for the whole union.
|
|
1372
|
-
// If `T` is one of the literal types in the union, it will evaluate to `boolean` (i.e. `true | false`)
|
|
1373
|
-
IsNotFalse<LiteralUnionType extends Primitive
|
|
1374
|
-
? LiteralCheck<T, LiteralUnionType>
|
|
1375
|
-
: never
|
|
1376
|
-
>
|
|
1377
|
-
);
|
|
1378
|
-
|
|
1379
|
-
/**
|
|
1380
|
-
Returns a boolean for whether the given type is a `number` or `bigint` [literal type](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#literal-types).
|
|
1381
|
-
|
|
1382
|
-
Useful for:
|
|
1383
|
-
- providing strongly-typed functions when given literal arguments
|
|
1384
|
-
- type utilities, such as when constructing parsers and ASTs
|
|
1385
|
-
|
|
1386
|
-
@example
|
|
1387
|
-
```
|
|
1388
|
-
import type {IsNumericLiteral} from 'type-fest';
|
|
1389
|
-
|
|
1390
|
-
// https://github.com/inocan-group/inferred-types/blob/master/src/types/boolean-logic/EndsWith.ts
|
|
1391
|
-
type EndsWith<TValue, TEndsWith extends string> =
|
|
1392
|
-
TValue extends string
|
|
1393
|
-
? IsStringLiteral<TEndsWith> extends true
|
|
1394
|
-
? IsStringLiteral<TValue> extends true
|
|
1395
|
-
? TValue extends `${string}${TEndsWith}`
|
|
1396
|
-
? true
|
|
1397
|
-
: false
|
|
1398
|
-
: boolean
|
|
1399
|
-
: boolean
|
|
1400
|
-
: TValue extends number
|
|
1401
|
-
? IsNumericLiteral<TValue> extends true
|
|
1402
|
-
? EndsWith<`${TValue}`, TEndsWith>
|
|
1403
|
-
: false
|
|
1404
|
-
: false;
|
|
1405
|
-
|
|
1406
|
-
function endsWith<Input extends string | number, End extends string>(input: Input, end: End) {
|
|
1407
|
-
return `${input}`.endsWith(end) as EndsWith<Input, End>;
|
|
1408
|
-
}
|
|
1409
|
-
|
|
1410
|
-
endsWith('abc', 'c');
|
|
1411
|
-
//=> true
|
|
1412
|
-
|
|
1413
|
-
endsWith(123456, '456');
|
|
1414
|
-
//=> true
|
|
1415
|
-
|
|
1416
|
-
const end = '123' as string;
|
|
1417
|
-
|
|
1418
|
-
endsWith('abc123', end);
|
|
1419
|
-
//=> boolean
|
|
1420
|
-
```
|
|
1421
|
-
|
|
1422
|
-
@category Type Guard
|
|
1423
|
-
@category Utilities
|
|
1424
|
-
*/
|
|
1425
|
-
type IsNumericLiteral<T> = LiteralChecks<T, Numeric>;
|
|
1426
|
-
|
|
1427
|
-
/**
|
|
1428
|
-
Returns a boolean for whether the given `boolean` is not `false`.
|
|
1429
|
-
*/
|
|
1430
|
-
type IsNotFalse<T extends boolean> = [T] extends [false] ? false : true;
|
|
1431
|
-
|
|
1432
1239
|
/**
|
|
1433
1240
|
* This should only be used for defining generics which extend any kind of JS
|
|
1434
1241
|
* array under the hood, this includes arrays *AND* tuples (of the form [x, y],
|
|
@@ -4161,697 +3968,150 @@ type InlineValueContext = {
|
|
|
4161
3968
|
*/
|
|
4162
3969
|
declare namespace InlineValueContext {
|
|
4163
3970
|
/**
|
|
4164
|
-
* Creates a new InlineValueContext literal.
|
|
4165
|
-
*/
|
|
4166
|
-
function create(frameId: integer, stoppedLocation: Range$1): InlineValueContext;
|
|
4167
|
-
/**
|
|
4168
|
-
* Checks whether the given literal conforms to the {@link InlineValueContext} interface.
|
|
4169
|
-
*/
|
|
4170
|
-
function is(value: any): value is InlineValueContext;
|
|
4171
|
-
}
|
|
4172
|
-
/**
|
|
4173
|
-
* Inlay hint kinds.
|
|
4174
|
-
*
|
|
4175
|
-
* @since 3.17.0
|
|
4176
|
-
*/
|
|
4177
|
-
declare namespace InlayHintKind {
|
|
4178
|
-
/**
|
|
4179
|
-
* An inlay hint that for a type annotation.
|
|
4180
|
-
*/
|
|
4181
|
-
const Type = 1;
|
|
4182
|
-
/**
|
|
4183
|
-
* An inlay hint that is for a parameter.
|
|
4184
|
-
*/
|
|
4185
|
-
const Parameter = 2;
|
|
4186
|
-
function is(value: number): value is InlayHintKind;
|
|
4187
|
-
}
|
|
4188
|
-
type InlayHintKind = 1 | 2;
|
|
4189
|
-
/**
|
|
4190
|
-
* An inlay hint label part allows for interactive and composite labels
|
|
4191
|
-
* of inlay hints.
|
|
4192
|
-
*
|
|
4193
|
-
* @since 3.17.0
|
|
4194
|
-
*/
|
|
4195
|
-
type InlayHintLabelPart = {
|
|
4196
|
-
/**
|
|
4197
|
-
* The value of this label part.
|
|
4198
|
-
*/
|
|
4199
|
-
value: string;
|
|
4200
|
-
/**
|
|
4201
|
-
* The tooltip text when you hover over this label part. Depending on
|
|
4202
|
-
* the client capability `inlayHint.resolveSupport` clients might resolve
|
|
4203
|
-
* this property late using the resolve request.
|
|
4204
|
-
*/
|
|
4205
|
-
tooltip?: string | MarkupContent;
|
|
4206
|
-
/**
|
|
4207
|
-
* An optional source code location that represents this
|
|
4208
|
-
* label part.
|
|
4209
|
-
*
|
|
4210
|
-
* The editor will use this location for the hover and for code navigation
|
|
4211
|
-
* features: This part will become a clickable link that resolves to the
|
|
4212
|
-
* definition of the symbol at the given location (not necessarily the
|
|
4213
|
-
* location itself), it shows the hover that shows at the given location,
|
|
4214
|
-
* and it shows a context menu with further code navigation commands.
|
|
4215
|
-
*
|
|
4216
|
-
* Depending on the client capability `inlayHint.resolveSupport` clients
|
|
4217
|
-
* might resolve this property late using the resolve request.
|
|
4218
|
-
*/
|
|
4219
|
-
location?: Location;
|
|
4220
|
-
/**
|
|
4221
|
-
* An optional command for this label part.
|
|
4222
|
-
*
|
|
4223
|
-
* Depending on the client capability `inlayHint.resolveSupport` clients
|
|
4224
|
-
* might resolve this property late using the resolve request.
|
|
4225
|
-
*/
|
|
4226
|
-
command?: Command;
|
|
4227
|
-
};
|
|
4228
|
-
declare namespace InlayHintLabelPart {
|
|
4229
|
-
function create(value: string): InlayHintLabelPart;
|
|
4230
|
-
function is(value: any): value is InlayHintLabelPart;
|
|
4231
|
-
}
|
|
4232
|
-
/**
|
|
4233
|
-
* Inlay hint information.
|
|
4234
|
-
*
|
|
4235
|
-
* @since 3.17.0
|
|
4236
|
-
*/
|
|
4237
|
-
type InlayHint = {
|
|
4238
|
-
/**
|
|
4239
|
-
* The position of this hint.
|
|
4240
|
-
*/
|
|
4241
|
-
position: Position$2;
|
|
4242
|
-
/**
|
|
4243
|
-
* The label of this hint. A human readable string or an array of
|
|
4244
|
-
* InlayHintLabelPart label parts.
|
|
4245
|
-
*
|
|
4246
|
-
* *Note* that neither the string nor the label part can be empty.
|
|
4247
|
-
*/
|
|
4248
|
-
label: string | InlayHintLabelPart[];
|
|
4249
|
-
/**
|
|
4250
|
-
* The kind of this hint. Can be omitted in which case the client
|
|
4251
|
-
* should fall back to a reasonable default.
|
|
4252
|
-
*/
|
|
4253
|
-
kind?: InlayHintKind;
|
|
4254
|
-
/**
|
|
4255
|
-
* Optional text edits that are performed when accepting this inlay hint.
|
|
4256
|
-
*
|
|
4257
|
-
* *Note* that edits are expected to change the document so that the inlay
|
|
4258
|
-
* hint (or its nearest variant) is now part of the document and the inlay
|
|
4259
|
-
* hint itself is now obsolete.
|
|
4260
|
-
*/
|
|
4261
|
-
textEdits?: TextEdit$1[];
|
|
4262
|
-
/**
|
|
4263
|
-
* The tooltip text when you hover over this item.
|
|
4264
|
-
*/
|
|
4265
|
-
tooltip?: string | MarkupContent;
|
|
4266
|
-
/**
|
|
4267
|
-
* Render padding before the hint.
|
|
4268
|
-
*
|
|
4269
|
-
* Note: Padding should use the editor's background color, not the
|
|
4270
|
-
* background color of the hint itself. That means padding can be used
|
|
4271
|
-
* to visually align/separate an inlay hint.
|
|
4272
|
-
*/
|
|
4273
|
-
paddingLeft?: boolean;
|
|
4274
|
-
/**
|
|
4275
|
-
* Render padding after the hint.
|
|
4276
|
-
*
|
|
4277
|
-
* Note: Padding should use the editor's background color, not the
|
|
4278
|
-
* background color of the hint itself. That means padding can be used
|
|
4279
|
-
* to visually align/separate an inlay hint.
|
|
4280
|
-
*/
|
|
4281
|
-
paddingRight?: boolean;
|
|
4282
|
-
/**
|
|
4283
|
-
* A data entry field that is preserved on an inlay hint between
|
|
4284
|
-
* a `textDocument/inlayHint` and a `inlayHint/resolve` request.
|
|
4285
|
-
*/
|
|
4286
|
-
data?: LSPAny;
|
|
4287
|
-
};
|
|
4288
|
-
declare namespace InlayHint {
|
|
4289
|
-
function create(position: Position$2, label: string | InlayHintLabelPart[], kind?: InlayHintKind): InlayHint;
|
|
4290
|
-
function is(value: any): value is InlayHint;
|
|
4291
|
-
}
|
|
4292
|
-
/**
|
|
4293
|
-
* A workspace folder inside a client.
|
|
4294
|
-
*/
|
|
4295
|
-
interface WorkspaceFolder {
|
|
4296
|
-
/**
|
|
4297
|
-
* The associated URI for this workspace folder.
|
|
4298
|
-
*/
|
|
4299
|
-
uri: URI$1;
|
|
4300
|
-
/**
|
|
4301
|
-
* The name of the workspace folder. Used to refer to this
|
|
4302
|
-
* workspace folder in the user interface.
|
|
4303
|
-
*/
|
|
4304
|
-
name: string;
|
|
4305
|
-
}
|
|
4306
|
-
declare namespace WorkspaceFolder {
|
|
4307
|
-
function is(value: any): value is WorkspaceFolder;
|
|
4308
|
-
}
|
|
4309
|
-
|
|
4310
|
-
/**
|
|
4311
|
-
* @hidden
|
|
4312
|
-
*/
|
|
4313
|
-
type $keywords<T extends string> = {
|
|
4314
|
-
[key in T]: key;
|
|
4315
|
-
};
|
|
4316
|
-
|
|
4317
|
-
declare global {
|
|
4318
|
-
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions -- It has to be an `interface` so that it can be merged.
|
|
4319
|
-
interface SymbolConstructor {
|
|
4320
|
-
readonly observable: symbol;
|
|
4321
|
-
}
|
|
4322
|
-
}
|
|
4323
|
-
|
|
4324
|
-
/**
|
|
4325
|
-
Returns a boolean for whether the two given types are equal.
|
|
4326
|
-
|
|
4327
|
-
@link https://github.com/microsoft/TypeScript/issues/27024#issuecomment-421529650
|
|
4328
|
-
@link https://stackoverflow.com/questions/68961864/how-does-the-equals-work-in-typescript/68963796#68963796
|
|
4329
|
-
|
|
4330
|
-
Use-cases:
|
|
4331
|
-
- If you want to make a conditional branch based on the result of a comparison of two types.
|
|
4332
|
-
|
|
4333
|
-
@example
|
|
4334
|
-
```
|
|
4335
|
-
import type {IsEqual} from 'type-fest';
|
|
4336
|
-
|
|
4337
|
-
// This type returns a boolean for whether the given array includes the given item.
|
|
4338
|
-
// `IsEqual` is used to compare the given array at position 0 and the given item and then return true if they are equal.
|
|
4339
|
-
type Includes<Value extends readonly any[], Item> =
|
|
4340
|
-
Value extends readonly [Value[0], ...infer rest]
|
|
4341
|
-
? IsEqual<Value[0], Item> extends true
|
|
4342
|
-
? true
|
|
4343
|
-
: Includes<rest, Item>
|
|
4344
|
-
: false;
|
|
4345
|
-
```
|
|
4346
|
-
|
|
4347
|
-
@category Type Guard
|
|
4348
|
-
@category Utilities
|
|
4349
|
-
*/
|
|
4350
|
-
type IsEqual<A, B> =
|
|
4351
|
-
(<G>() => G extends A ? 1 : 2) extends
|
|
4352
|
-
(<G>() => G extends B ? 1 : 2)
|
|
4353
|
-
? true
|
|
4354
|
-
: false;
|
|
4355
|
-
|
|
4356
|
-
/**
|
|
4357
|
-
Filter out keys from an object.
|
|
4358
|
-
|
|
4359
|
-
Returns `never` if `Exclude` is strictly equal to `Key`.
|
|
4360
|
-
Returns `never` if `Key` extends `Exclude`.
|
|
4361
|
-
Returns `Key` otherwise.
|
|
4362
|
-
|
|
4363
|
-
@example
|
|
4364
|
-
```
|
|
4365
|
-
type Filtered = Filter<'foo', 'foo'>;
|
|
4366
|
-
//=> never
|
|
4367
|
-
```
|
|
4368
|
-
|
|
4369
|
-
@example
|
|
4370
|
-
```
|
|
4371
|
-
type Filtered = Filter<'bar', string>;
|
|
4372
|
-
//=> never
|
|
4373
|
-
```
|
|
4374
|
-
|
|
4375
|
-
@example
|
|
4376
|
-
```
|
|
4377
|
-
type Filtered = Filter<'bar', 'foo'>;
|
|
4378
|
-
//=> 'bar'
|
|
4379
|
-
```
|
|
4380
|
-
|
|
4381
|
-
@see {Except}
|
|
4382
|
-
*/
|
|
4383
|
-
type Filter<KeyType, ExcludeType> = IsEqual<KeyType, ExcludeType> extends true ? never : (KeyType extends ExcludeType ? never : KeyType);
|
|
4384
|
-
|
|
4385
|
-
type ExceptOptions = {
|
|
4386
|
-
/**
|
|
4387
|
-
Disallow assigning non-specified properties.
|
|
4388
|
-
|
|
4389
|
-
Note that any omitted properties in the resulting type will be present in autocomplete as `undefined`.
|
|
4390
|
-
|
|
4391
|
-
@default false
|
|
4392
|
-
*/
|
|
4393
|
-
requireExactProps?: boolean;
|
|
4394
|
-
};
|
|
4395
|
-
|
|
4396
|
-
/**
|
|
4397
|
-
Create a type from an object type without certain keys.
|
|
4398
|
-
|
|
4399
|
-
We recommend setting the `requireExactProps` option to `true`.
|
|
4400
|
-
|
|
4401
|
-
This type is a stricter version of [`Omit`](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-5.html#the-omit-helper-type). The `Omit` type does not restrict the omitted keys to be keys present on the given type, while `Except` does. The benefits of a stricter type are avoiding typos and allowing the compiler to pick up on rename refactors automatically.
|
|
4402
|
-
|
|
4403
|
-
This type was proposed to the TypeScript team, which declined it, saying they prefer that libraries implement stricter versions of the built-in types ([microsoft/TypeScript#30825](https://github.com/microsoft/TypeScript/issues/30825#issuecomment-523668235)).
|
|
4404
|
-
|
|
4405
|
-
@example
|
|
4406
|
-
```
|
|
4407
|
-
import type {Except} from 'type-fest';
|
|
4408
|
-
|
|
4409
|
-
type Foo = {
|
|
4410
|
-
a: number;
|
|
4411
|
-
b: string;
|
|
4412
|
-
};
|
|
4413
|
-
|
|
4414
|
-
type FooWithoutA = Except<Foo, 'a'>;
|
|
4415
|
-
//=> {b: string}
|
|
4416
|
-
|
|
4417
|
-
const fooWithoutA: FooWithoutA = {a: 1, b: '2'};
|
|
4418
|
-
//=> errors: 'a' does not exist in type '{ b: string; }'
|
|
4419
|
-
|
|
4420
|
-
type FooWithoutB = Except<Foo, 'b', {requireExactProps: true}>;
|
|
4421
|
-
//=> {a: number} & Partial<Record<"b", never>>
|
|
4422
|
-
|
|
4423
|
-
const fooWithoutB: FooWithoutB = {a: 1, b: '2'};
|
|
4424
|
-
//=> errors at 'b': Type 'string' is not assignable to type 'undefined'.
|
|
4425
|
-
```
|
|
4426
|
-
|
|
4427
|
-
@category Object
|
|
4428
|
-
*/
|
|
4429
|
-
type Except<ObjectType, KeysType extends keyof ObjectType, Options extends ExceptOptions = {requireExactProps: false}> = {
|
|
4430
|
-
[KeyType in keyof ObjectType as Filter<KeyType, KeysType>]: ObjectType[KeyType];
|
|
4431
|
-
} & (Options['requireExactProps'] extends true
|
|
4432
|
-
? Partial<Record<KeysType, never>>
|
|
4433
|
-
: {});
|
|
4434
|
-
|
|
4435
|
-
/**
|
|
4436
|
-
Useful to flatten the type output to improve type hints shown in editors. And also to transform an interface into a type to aide with assignability.
|
|
4437
|
-
|
|
4438
|
-
@example
|
|
4439
|
-
```
|
|
4440
|
-
import type {Simplify} from 'type-fest';
|
|
4441
|
-
|
|
4442
|
-
type PositionProps = {
|
|
4443
|
-
top: number;
|
|
4444
|
-
left: number;
|
|
4445
|
-
};
|
|
4446
|
-
|
|
4447
|
-
type SizeProps = {
|
|
4448
|
-
width: number;
|
|
4449
|
-
height: number;
|
|
4450
|
-
};
|
|
4451
|
-
|
|
4452
|
-
// In your editor, hovering over `Props` will show a flattened object with all the properties.
|
|
4453
|
-
type Props = Simplify<PositionProps & SizeProps>;
|
|
4454
|
-
```
|
|
4455
|
-
|
|
4456
|
-
Sometimes it is desired to pass a value as a function argument that has a different type. At first inspection it may seem assignable, and then you discover it is not because the `value`'s type definition was defined as an interface. In the following example, `fn` requires an argument of type `Record<string, unknown>`. If the value is defined as a literal, then it is assignable. And if the `value` is defined as type using the `Simplify` utility the value is assignable. But if the `value` is defined as an interface, it is not assignable because the interface is not sealed and elsewhere a non-string property could be added to the interface.
|
|
4457
|
-
|
|
4458
|
-
If the type definition must be an interface (perhaps it was defined in a third-party npm package), then the `value` can be defined as `const value: Simplify<SomeInterface> = ...`. Then `value` will be assignable to the `fn` argument. Or the `value` can be cast as `Simplify<SomeInterface>` if you can't re-declare the `value`.
|
|
4459
|
-
|
|
4460
|
-
@example
|
|
4461
|
-
```
|
|
4462
|
-
import type {Simplify} from 'type-fest';
|
|
4463
|
-
|
|
4464
|
-
interface SomeInterface {
|
|
4465
|
-
foo: number;
|
|
4466
|
-
bar?: string;
|
|
4467
|
-
baz: number | undefined;
|
|
4468
|
-
}
|
|
4469
|
-
|
|
4470
|
-
type SomeType = {
|
|
4471
|
-
foo: number;
|
|
4472
|
-
bar?: string;
|
|
4473
|
-
baz: number | undefined;
|
|
4474
|
-
};
|
|
4475
|
-
|
|
4476
|
-
const literal = {foo: 123, bar: 'hello', baz: 456};
|
|
4477
|
-
const someType: SomeType = literal;
|
|
4478
|
-
const someInterface: SomeInterface = literal;
|
|
4479
|
-
|
|
4480
|
-
function fn(object: Record<string, unknown>): void {}
|
|
4481
|
-
|
|
4482
|
-
fn(literal); // Good: literal object type is sealed
|
|
4483
|
-
fn(someType); // Good: type is sealed
|
|
4484
|
-
fn(someInterface); // Error: Index signature for type 'string' is missing in type 'someInterface'. Because `interface` can be re-opened
|
|
4485
|
-
fn(someInterface as Simplify<SomeInterface>); // Good: transform an `interface` into a `type`
|
|
4486
|
-
```
|
|
4487
|
-
|
|
4488
|
-
@link https://github.com/microsoft/TypeScript/issues/15300
|
|
4489
|
-
@see SimplifyDeep
|
|
4490
|
-
@category Object
|
|
4491
|
-
*/
|
|
4492
|
-
type Simplify<T> = {[KeyType in keyof T]: T[KeyType]} & {};
|
|
4493
|
-
|
|
4494
|
-
/**
|
|
4495
|
-
Returns a boolean for whether the given type is `never`.
|
|
4496
|
-
|
|
4497
|
-
@link https://github.com/microsoft/TypeScript/issues/31751#issuecomment-498526919
|
|
4498
|
-
@link https://stackoverflow.com/a/53984913/10292952
|
|
4499
|
-
@link https://www.zhenghao.io/posts/ts-never
|
|
4500
|
-
|
|
4501
|
-
Useful in type utilities, such as checking if something does not occur.
|
|
4502
|
-
|
|
4503
|
-
@example
|
|
4504
|
-
```
|
|
4505
|
-
import type {IsNever, And} from 'type-fest';
|
|
4506
|
-
|
|
4507
|
-
// https://github.com/andnp/SimplyTyped/blob/master/src/types/strings.ts
|
|
4508
|
-
type AreStringsEqual<A extends string, B extends string> =
|
|
4509
|
-
And<
|
|
4510
|
-
IsNever<Exclude<A, B>> extends true ? true : false,
|
|
4511
|
-
IsNever<Exclude<B, A>> extends true ? true : false
|
|
4512
|
-
>;
|
|
4513
|
-
|
|
4514
|
-
type EndIfEqual<I extends string, O extends string> =
|
|
4515
|
-
AreStringsEqual<I, O> extends true
|
|
4516
|
-
? never
|
|
4517
|
-
: void;
|
|
4518
|
-
|
|
4519
|
-
function endIfEqual<I extends string, O extends string>(input: I, output: O): EndIfEqual<I, O> {
|
|
4520
|
-
if (input === output) {
|
|
4521
|
-
process.exit(0);
|
|
4522
|
-
}
|
|
4523
|
-
}
|
|
4524
|
-
|
|
4525
|
-
endIfEqual('abc', 'abc');
|
|
4526
|
-
//=> never
|
|
4527
|
-
|
|
4528
|
-
endIfEqual('abc', '123');
|
|
4529
|
-
//=> void
|
|
4530
|
-
```
|
|
4531
|
-
|
|
4532
|
-
@category Type Guard
|
|
4533
|
-
@category Utilities
|
|
4534
|
-
*/
|
|
4535
|
-
type IsNever<T> = [T] extends [never] ? true : false;
|
|
4536
|
-
|
|
4537
|
-
declare const tag: unique symbol;
|
|
4538
|
-
|
|
4539
|
-
type TagContainer<Token> = {
|
|
4540
|
-
readonly [tag]: Token;
|
|
4541
|
-
};
|
|
4542
|
-
|
|
4543
|
-
type Tag$1<Token extends PropertyKey, TagMetadata> = TagContainer<{[K in Token]: TagMetadata}>;
|
|
4544
|
-
|
|
4545
|
-
/**
|
|
4546
|
-
Attach a "tag" to an arbitrary type. This allows you to create distinct types, that aren't assignable to one another, for distinct concepts in your program that should not be interchangeable, even if their runtime values have the same type. (See examples.)
|
|
4547
|
-
|
|
4548
|
-
A type returned by `Tagged` can be passed to `Tagged` again, to create a type with multiple tags.
|
|
4549
|
-
|
|
4550
|
-
[Read more about tagged types.](https://medium.com/@KevinBGreene/surviving-the-typescript-ecosystem-branding-and-type-tagging-6cf6e516523d)
|
|
4551
|
-
|
|
4552
|
-
A tag's name is usually a string (and must be a string, number, or symbol), but each application of a tag can also contain an arbitrary type as its "metadata". See {@link GetTagMetadata} for examples and explanation.
|
|
4553
|
-
|
|
4554
|
-
A type `A` returned by `Tagged` is assignable to another type `B` returned by `Tagged` if and only if:
|
|
4555
|
-
- the underlying (untagged) type of `A` is assignable to the underlying type of `B`;
|
|
4556
|
-
- `A` contains at least all the tags `B` has;
|
|
4557
|
-
- and the metadata type for each of `A`'s tags is assignable to the metadata type of `B`'s corresponding tag.
|
|
4558
|
-
|
|
4559
|
-
There have been several discussions about adding similar features to TypeScript. Unfortunately, nothing has (yet) moved forward:
|
|
4560
|
-
- [Microsoft/TypeScript#202](https://github.com/microsoft/TypeScript/issues/202)
|
|
4561
|
-
- [Microsoft/TypeScript#4895](https://github.com/microsoft/TypeScript/issues/4895)
|
|
4562
|
-
- [Microsoft/TypeScript#33290](https://github.com/microsoft/TypeScript/pull/33290)
|
|
4563
|
-
|
|
4564
|
-
@example
|
|
4565
|
-
```
|
|
4566
|
-
import type {Tagged} from 'type-fest';
|
|
4567
|
-
|
|
4568
|
-
type AccountNumber = Tagged<number, 'AccountNumber'>;
|
|
4569
|
-
type AccountBalance = Tagged<number, 'AccountBalance'>;
|
|
4570
|
-
|
|
4571
|
-
function createAccountNumber(): AccountNumber {
|
|
4572
|
-
// As you can see, casting from a `number` (the underlying type being tagged) is allowed.
|
|
4573
|
-
return 2 as AccountNumber;
|
|
4574
|
-
}
|
|
4575
|
-
|
|
4576
|
-
function getMoneyForAccount(accountNumber: AccountNumber): AccountBalance {
|
|
4577
|
-
return 4 as AccountBalance;
|
|
4578
|
-
}
|
|
4579
|
-
|
|
4580
|
-
// This will compile successfully.
|
|
4581
|
-
getMoneyForAccount(createAccountNumber());
|
|
4582
|
-
|
|
4583
|
-
// But this won't, because it has to be explicitly passed as an `AccountNumber` type!
|
|
4584
|
-
// Critically, you could not accidentally use an `AccountBalance` as an `AccountNumber`.
|
|
4585
|
-
getMoneyForAccount(2);
|
|
4586
|
-
|
|
4587
|
-
// You can also use tagged values like their underlying, untagged type.
|
|
4588
|
-
// I.e., this will compile successfully because an `AccountNumber` can be used as a regular `number`.
|
|
4589
|
-
// In this sense, the underlying base type is not hidden, which differentiates tagged types from opaque types in other languages.
|
|
4590
|
-
const accountNumber = createAccountNumber() + 2;
|
|
4591
|
-
```
|
|
4592
|
-
|
|
4593
|
-
@example
|
|
4594
|
-
```
|
|
4595
|
-
import type {Tagged} from 'type-fest';
|
|
4596
|
-
|
|
4597
|
-
// You can apply multiple tags to a type by using `Tagged` repeatedly.
|
|
4598
|
-
type Url = Tagged<string, 'URL'>;
|
|
4599
|
-
type SpecialCacheKey = Tagged<Url, 'SpecialCacheKey'>;
|
|
4600
|
-
|
|
4601
|
-
// You can also pass a union of tag names, so this is equivalent to the above, although it doesn't give you the ability to assign distinct metadata to each tag.
|
|
4602
|
-
type SpecialCacheKey2 = Tagged<string, 'URL' | 'SpecialCacheKey'>;
|
|
4603
|
-
```
|
|
4604
|
-
|
|
4605
|
-
@category Type
|
|
4606
|
-
*/
|
|
4607
|
-
type Tagged<Type, TagName extends PropertyKey, TagMetadata = never> = Type & Tag$1<TagName, TagMetadata>;
|
|
4608
|
-
|
|
4609
|
-
/**
|
|
4610
|
-
Create a type that makes the given keys required. The remaining keys are kept as is. The sister of the `SetOptional` type.
|
|
4611
|
-
|
|
4612
|
-
Use-case: You want to define a single model where the only thing that changes is whether or not some of the keys are required.
|
|
4613
|
-
|
|
4614
|
-
@example
|
|
4615
|
-
```
|
|
4616
|
-
import type {SetRequired} from 'type-fest';
|
|
4617
|
-
|
|
4618
|
-
type Foo = {
|
|
4619
|
-
a?: number;
|
|
4620
|
-
b: string;
|
|
4621
|
-
c?: boolean;
|
|
4622
|
-
}
|
|
4623
|
-
|
|
4624
|
-
type SomeRequired = SetRequired<Foo, 'b' | 'c'>;
|
|
4625
|
-
// type SomeRequired = {
|
|
4626
|
-
// a?: number;
|
|
4627
|
-
// b: string; // Was already required and still is.
|
|
4628
|
-
// c: boolean; // Is now required.
|
|
4629
|
-
// }
|
|
4630
|
-
```
|
|
4631
|
-
|
|
4632
|
-
@category Object
|
|
4633
|
-
*/
|
|
4634
|
-
type SetRequired<BaseType, Keys extends keyof BaseType> =
|
|
4635
|
-
// `extends unknown` is always going to be the case and is used to convert any
|
|
4636
|
-
// union into a [distributive conditional
|
|
4637
|
-
// type](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-8.html#distributive-conditional-types).
|
|
4638
|
-
BaseType extends unknown
|
|
4639
|
-
? Simplify<
|
|
4640
|
-
// Pick just the keys that are optional from the base type.
|
|
4641
|
-
Except<BaseType, Keys> &
|
|
4642
|
-
// Pick the keys that should be required from the base type and make them required.
|
|
4643
|
-
Required<Pick<BaseType, Keys>>
|
|
4644
|
-
>
|
|
4645
|
-
: never;
|
|
4646
|
-
|
|
4647
|
-
/**
|
|
4648
|
-
Create a union of the given object's values, and optionally specify which keys to get the values from.
|
|
4649
|
-
|
|
4650
|
-
Please upvote [this issue](https://github.com/microsoft/TypeScript/issues/31438) if you want to have this type as a built-in in TypeScript.
|
|
4651
|
-
|
|
4652
|
-
@example
|
|
4653
|
-
```
|
|
4654
|
-
// data.json
|
|
4655
|
-
{
|
|
4656
|
-
'foo': 1,
|
|
4657
|
-
'bar': 2,
|
|
4658
|
-
'biz': 3
|
|
4659
|
-
}
|
|
4660
|
-
|
|
4661
|
-
// main.ts
|
|
4662
|
-
import type {ValueOf} from 'type-fest';
|
|
4663
|
-
import data = require('./data.json');
|
|
4664
|
-
|
|
4665
|
-
export function getData(name: string): ValueOf<typeof data> {
|
|
4666
|
-
return data[name];
|
|
4667
|
-
}
|
|
4668
|
-
|
|
4669
|
-
export function onlyBar(name: string): ValueOf<typeof data, 'bar'> {
|
|
4670
|
-
return data[name];
|
|
4671
|
-
}
|
|
4672
|
-
|
|
4673
|
-
// file.ts
|
|
4674
|
-
import {getData, onlyBar} from './main';
|
|
4675
|
-
|
|
4676
|
-
getData('foo');
|
|
4677
|
-
//=> 1
|
|
4678
|
-
|
|
4679
|
-
onlyBar('foo');
|
|
4680
|
-
//=> TypeError ...
|
|
4681
|
-
|
|
4682
|
-
onlyBar('bar');
|
|
4683
|
-
//=> 2
|
|
4684
|
-
```
|
|
4685
|
-
|
|
4686
|
-
@category Object
|
|
4687
|
-
*/
|
|
4688
|
-
type ValueOf<ObjectType, ValueType extends keyof ObjectType = keyof ObjectType> = ObjectType[ValueType];
|
|
4689
|
-
|
|
4690
|
-
/**
|
|
4691
|
-
An if-else-like type that resolves depending on whether the given type is `never`.
|
|
4692
|
-
|
|
4693
|
-
@see {@link IsNever}
|
|
4694
|
-
|
|
4695
|
-
@example
|
|
4696
|
-
```
|
|
4697
|
-
import type {IfNever} from 'type-fest';
|
|
4698
|
-
|
|
4699
|
-
type ShouldBeTrue = IfNever<never>;
|
|
4700
|
-
//=> true
|
|
4701
|
-
|
|
4702
|
-
type ShouldBeBar = IfNever<'not never', 'foo', 'bar'>;
|
|
4703
|
-
//=> 'bar'
|
|
4704
|
-
```
|
|
4705
|
-
|
|
4706
|
-
@category Type Guard
|
|
4707
|
-
@category Utilities
|
|
4708
|
-
*/
|
|
4709
|
-
type IfNever<T, TypeIfNever = true, TypeIfNotNever = false> = (
|
|
4710
|
-
IsNever<T> extends true ? TypeIfNever : TypeIfNotNever
|
|
4711
|
-
);
|
|
4712
|
-
|
|
4713
|
-
/**
|
|
4714
|
-
Extract the keys from a type where the value type of the key extends the given `Condition`.
|
|
4715
|
-
|
|
4716
|
-
Internally this is used for the `ConditionalPick` and `ConditionalExcept` types.
|
|
4717
|
-
|
|
4718
|
-
@example
|
|
4719
|
-
```
|
|
4720
|
-
import type {ConditionalKeys} from 'type-fest';
|
|
4721
|
-
|
|
4722
|
-
interface Example {
|
|
4723
|
-
a: string;
|
|
4724
|
-
b: string | number;
|
|
4725
|
-
c?: string;
|
|
4726
|
-
d: {};
|
|
3971
|
+
* Creates a new InlineValueContext literal.
|
|
3972
|
+
*/
|
|
3973
|
+
function create(frameId: integer, stoppedLocation: Range$1): InlineValueContext;
|
|
3974
|
+
/**
|
|
3975
|
+
* Checks whether the given literal conforms to the {@link InlineValueContext} interface.
|
|
3976
|
+
*/
|
|
3977
|
+
function is(value: any): value is InlineValueContext;
|
|
4727
3978
|
}
|
|
4728
|
-
|
|
4729
|
-
type StringKeysOnly = ConditionalKeys<Example, string>;
|
|
4730
|
-
//=> 'a'
|
|
4731
|
-
```
|
|
4732
|
-
|
|
4733
|
-
To support partial types, make sure your `Condition` is a union of undefined (for example, `string | undefined`) as demonstrated below.
|
|
4734
|
-
|
|
4735
|
-
@example
|
|
4736
|
-
```
|
|
4737
|
-
import type {ConditionalKeys} from 'type-fest';
|
|
4738
|
-
|
|
4739
|
-
type StringKeysAndUndefined = ConditionalKeys<Example, string | undefined>;
|
|
4740
|
-
//=> 'a' | 'c'
|
|
4741
|
-
```
|
|
4742
|
-
|
|
4743
|
-
@category Object
|
|
4744
|
-
*/
|
|
4745
|
-
type ConditionalKeys<Base, Condition> =
|
|
4746
|
-
{
|
|
4747
|
-
// Map through all the keys of the given base type.
|
|
4748
|
-
[Key in keyof Base]-?:
|
|
4749
|
-
// Pick only keys with types extending the given `Condition` type.
|
|
4750
|
-
Base[Key] extends Condition
|
|
4751
|
-
// Retain this key
|
|
4752
|
-
// If the value for the key extends never, only include it if `Condition` also extends never
|
|
4753
|
-
? IfNever<Base[Key], IfNever<Condition, Key, never>, Key>
|
|
4754
|
-
// Discard this key since the condition fails.
|
|
4755
|
-
: never;
|
|
4756
|
-
// Convert the produced object into a union type of the keys which passed the conditional test.
|
|
4757
|
-
}[keyof Base];
|
|
4758
|
-
|
|
4759
3979
|
/**
|
|
4760
|
-
|
|
4761
|
-
|
|
4762
|
-
|
|
4763
|
-
|
|
4764
|
-
|
|
4765
|
-
|
|
4766
|
-
|
|
4767
|
-
|
|
4768
|
-
|
|
4769
|
-
|
|
4770
|
-
|
|
4771
|
-
|
|
4772
|
-
|
|
4773
|
-
|
|
4774
|
-
}
|
|
4775
|
-
|
|
4776
|
-
type PickPrimitivesFromAwesome = ConditionalPick<Awesome, Primitive>;
|
|
4777
|
-
//=> {name: string; successes: number; failures: bigint}
|
|
4778
|
-
```
|
|
4779
|
-
|
|
4780
|
-
@example
|
|
4781
|
-
```
|
|
4782
|
-
import type {ConditionalPick} from 'type-fest';
|
|
4783
|
-
|
|
4784
|
-
interface Example {
|
|
4785
|
-
a: string;
|
|
4786
|
-
b: string | number;
|
|
4787
|
-
c: () => void;
|
|
4788
|
-
d: {};
|
|
4789
|
-
}
|
|
4790
|
-
|
|
4791
|
-
type StringKeysOnly = ConditionalPick<Example, string>;
|
|
4792
|
-
//=> {a: string}
|
|
4793
|
-
```
|
|
4794
|
-
|
|
4795
|
-
@category Object
|
|
4796
|
-
*/
|
|
4797
|
-
type ConditionalPick<Base, Condition> = Pick<
|
|
4798
|
-
Base,
|
|
4799
|
-
ConditionalKeys<Base, Condition>
|
|
4800
|
-
>;
|
|
4801
|
-
|
|
4802
|
-
declare module 'ts-graphviz' {
|
|
4803
|
-
namespace ClusterSubgraphAttributeKey {
|
|
4804
|
-
interface $values extends $keywords<'likec4_type' | 'likec4_path' | 'likec4_id' | 'likec4_level' | 'likec4_depth'> {
|
|
4805
|
-
}
|
|
4806
|
-
}
|
|
4807
|
-
namespace NodeAttributeKey {
|
|
4808
|
-
interface $values extends $keywords<'likec4_type' | 'likec4_path' | 'likec4_id' | 'likec4_level'> {
|
|
4809
|
-
}
|
|
4810
|
-
}
|
|
4811
|
-
namespace EdgeAttributeKey {
|
|
4812
|
-
interface $values extends $keywords<'likec4_id'> {
|
|
4813
|
-
}
|
|
4814
|
-
}
|
|
4815
|
-
namespace Attribute {
|
|
4816
|
-
interface $keys extends $keywords<'likec4_type' | 'likec4_path' | 'likec4_id' | 'likec4_level' | 'likec4_depth'> {
|
|
4817
|
-
}
|
|
4818
|
-
interface $types {
|
|
4819
|
-
likec4_type: 'folder' | 'file' | 'view';
|
|
4820
|
-
likec4_path: string;
|
|
4821
|
-
likec4_id: string;
|
|
4822
|
-
likec4_level: number;
|
|
4823
|
-
likec4_depth: number;
|
|
4824
|
-
}
|
|
4825
|
-
}
|
|
3980
|
+
* Inlay hint kinds.
|
|
3981
|
+
*
|
|
3982
|
+
* @since 3.17.0
|
|
3983
|
+
*/
|
|
3984
|
+
declare namespace InlayHintKind {
|
|
3985
|
+
/**
|
|
3986
|
+
* An inlay hint that for a type annotation.
|
|
3987
|
+
*/
|
|
3988
|
+
const Type = 1;
|
|
3989
|
+
/**
|
|
3990
|
+
* An inlay hint that is for a parameter.
|
|
3991
|
+
*/
|
|
3992
|
+
const Parameter = 2;
|
|
3993
|
+
function is(value: number): value is InlayHintKind;
|
|
4826
3994
|
}
|
|
4827
|
-
type
|
|
4828
|
-
|
|
4829
|
-
|
|
4830
|
-
|
|
3995
|
+
type InlayHintKind = 1 | 2;
|
|
3996
|
+
/**
|
|
3997
|
+
* An inlay hint label part allows for interactive and composite labels
|
|
3998
|
+
* of inlay hints.
|
|
3999
|
+
*
|
|
4000
|
+
* @since 3.17.0
|
|
4001
|
+
*/
|
|
4002
|
+
type InlayHintLabelPart = {
|
|
4003
|
+
/**
|
|
4004
|
+
* The value of this label part.
|
|
4005
|
+
*/
|
|
4006
|
+
value: string;
|
|
4007
|
+
/**
|
|
4008
|
+
* The tooltip text when you hover over this label part. Depending on
|
|
4009
|
+
* the client capability `inlayHint.resolveSupport` clients might resolve
|
|
4010
|
+
* this property late using the resolve request.
|
|
4011
|
+
*/
|
|
4012
|
+
tooltip?: string | MarkupContent;
|
|
4013
|
+
/**
|
|
4014
|
+
* An optional source code location that represents this
|
|
4015
|
+
* label part.
|
|
4016
|
+
*
|
|
4017
|
+
* The editor will use this location for the hover and for code navigation
|
|
4018
|
+
* features: This part will become a clickable link that resolves to the
|
|
4019
|
+
* definition of the symbol at the given location (not necessarily the
|
|
4020
|
+
* location itself), it shows the hover that shows at the given location,
|
|
4021
|
+
* and it shows a context menu with further code navigation commands.
|
|
4022
|
+
*
|
|
4023
|
+
* Depending on the client capability `inlayHint.resolveSupport` clients
|
|
4024
|
+
* might resolve this property late using the resolve request.
|
|
4025
|
+
*/
|
|
4026
|
+
location?: Location;
|
|
4027
|
+
/**
|
|
4028
|
+
* An optional command for this label part.
|
|
4029
|
+
*
|
|
4030
|
+
* Depending on the client capability `inlayHint.resolveSupport` clients
|
|
4031
|
+
* might resolve this property late using the resolve request.
|
|
4032
|
+
*/
|
|
4033
|
+
command?: Command;
|
|
4831
4034
|
};
|
|
4832
|
-
|
|
4833
|
-
|
|
4834
|
-
|
|
4835
|
-
acyclic(dot: DotSource): Promise<DotSource>;
|
|
4836
|
-
layoutJson(dot: DotSource): Promise<string>;
|
|
4837
|
-
svg(dot: DotSource): Promise<string>;
|
|
4035
|
+
declare namespace InlayHintLabelPart {
|
|
4036
|
+
function create(value: string): InlayHintLabelPart;
|
|
4037
|
+
function is(value: any): value is InlayHintLabelPart;
|
|
4838
4038
|
}
|
|
4839
|
-
|
|
4840
|
-
|
|
4841
|
-
|
|
4039
|
+
/**
|
|
4040
|
+
* Inlay hint information.
|
|
4041
|
+
*
|
|
4042
|
+
* @since 3.17.0
|
|
4043
|
+
*/
|
|
4044
|
+
type InlayHint = {
|
|
4045
|
+
/**
|
|
4046
|
+
* The position of this hint.
|
|
4047
|
+
*/
|
|
4048
|
+
position: Position$2;
|
|
4049
|
+
/**
|
|
4050
|
+
* The label of this hint. A human readable string or an array of
|
|
4051
|
+
* InlayHintLabelPart label parts.
|
|
4052
|
+
*
|
|
4053
|
+
* *Note* that neither the string nor the label part can be empty.
|
|
4054
|
+
*/
|
|
4055
|
+
label: string | InlayHintLabelPart[];
|
|
4056
|
+
/**
|
|
4057
|
+
* The kind of this hint. Can be omitted in which case the client
|
|
4058
|
+
* should fall back to a reasonable default.
|
|
4059
|
+
*/
|
|
4060
|
+
kind?: InlayHintKind;
|
|
4061
|
+
/**
|
|
4062
|
+
* Optional text edits that are performed when accepting this inlay hint.
|
|
4063
|
+
*
|
|
4064
|
+
* *Note* that edits are expected to change the document so that the inlay
|
|
4065
|
+
* hint (or its nearest variant) is now part of the document and the inlay
|
|
4066
|
+
* hint itself is now obsolete.
|
|
4067
|
+
*/
|
|
4068
|
+
textEdits?: TextEdit$1[];
|
|
4069
|
+
/**
|
|
4070
|
+
* The tooltip text when you hover over this item.
|
|
4071
|
+
*/
|
|
4072
|
+
tooltip?: string | MarkupContent;
|
|
4073
|
+
/**
|
|
4074
|
+
* Render padding before the hint.
|
|
4075
|
+
*
|
|
4076
|
+
* Note: Padding should use the editor's background color, not the
|
|
4077
|
+
* background color of the hint itself. That means padding can be used
|
|
4078
|
+
* to visually align/separate an inlay hint.
|
|
4079
|
+
*/
|
|
4080
|
+
paddingLeft?: boolean;
|
|
4081
|
+
/**
|
|
4082
|
+
* Render padding after the hint.
|
|
4083
|
+
*
|
|
4084
|
+
* Note: Padding should use the editor's background color, not the
|
|
4085
|
+
* background color of the hint itself. That means padding can be used
|
|
4086
|
+
* to visually align/separate an inlay hint.
|
|
4087
|
+
*/
|
|
4088
|
+
paddingRight?: boolean;
|
|
4089
|
+
/**
|
|
4090
|
+
* A data entry field that is preserved on an inlay hint between
|
|
4091
|
+
* a `textDocument/inlayHint` and a `inlayHint/resolve` request.
|
|
4092
|
+
*/
|
|
4093
|
+
data?: LSPAny;
|
|
4842
4094
|
};
|
|
4843
|
-
declare
|
|
4844
|
-
|
|
4845
|
-
|
|
4846
|
-
|
|
4847
|
-
|
|
4848
|
-
|
|
4849
|
-
|
|
4850
|
-
|
|
4851
|
-
|
|
4852
|
-
|
|
4853
|
-
|
|
4854
|
-
|
|
4095
|
+
declare namespace InlayHint {
|
|
4096
|
+
function create(position: Position$2, label: string | InlayHintLabelPart[], kind?: InlayHintKind): InlayHint;
|
|
4097
|
+
function is(value: any): value is InlayHint;
|
|
4098
|
+
}
|
|
4099
|
+
/**
|
|
4100
|
+
* A workspace folder inside a client.
|
|
4101
|
+
*/
|
|
4102
|
+
interface WorkspaceFolder {
|
|
4103
|
+
/**
|
|
4104
|
+
* The associated URI for this workspace folder.
|
|
4105
|
+
*/
|
|
4106
|
+
uri: URI$1;
|
|
4107
|
+
/**
|
|
4108
|
+
* The name of the workspace folder. Used to refer to this
|
|
4109
|
+
* workspace folder in the user interface.
|
|
4110
|
+
*/
|
|
4111
|
+
name: string;
|
|
4112
|
+
}
|
|
4113
|
+
declare namespace WorkspaceFolder {
|
|
4114
|
+
function is(value: any): value is WorkspaceFolder;
|
|
4855
4115
|
}
|
|
4856
4116
|
|
|
4857
4117
|
type ParserMethod<ARGS extends unknown[], R> = (...args: ARGS) => R;
|
|
@@ -15739,6 +14999,34 @@ interface ChangeViewRequestParams {
|
|
|
15739
14999
|
change: ViewChange;
|
|
15740
15000
|
}
|
|
15741
15001
|
|
|
15002
|
+
declare class LikeC4CodeLensProvider implements CodeLensProvider {
|
|
15003
|
+
private services;
|
|
15004
|
+
constructor(services: LikeC4Services);
|
|
15005
|
+
provideCodeLens(doc: LangiumDocument, _params: CodeLensParams, cancelToken?: CancellationToken): Promise<CodeLens[] | undefined>;
|
|
15006
|
+
}
|
|
15007
|
+
|
|
15008
|
+
declare class LikeC4CompletionProvider extends DefaultCompletionProvider {
|
|
15009
|
+
readonly completionOptions: {
|
|
15010
|
+
triggerCharacters: string[];
|
|
15011
|
+
};
|
|
15012
|
+
protected completionForKeyword(context: CompletionContext, keyword: Keyword, acceptor: CompletionAcceptor): MaybePromise<void>;
|
|
15013
|
+
}
|
|
15014
|
+
|
|
15015
|
+
declare class LikeC4DocumentHighlightProvider extends DefaultDocumentHighlightProvider {
|
|
15016
|
+
/**
|
|
15017
|
+
* Override this method to determine the highlight kind of the given reference.
|
|
15018
|
+
*/
|
|
15019
|
+
protected createDocumentHighlight(reference: ReferenceDescription): DocumentHighlight;
|
|
15020
|
+
}
|
|
15021
|
+
|
|
15022
|
+
declare class LikeC4DocumentLinkProvider implements DocumentLinkProvider {
|
|
15023
|
+
private services;
|
|
15024
|
+
constructor(services: LikeC4Services);
|
|
15025
|
+
getDocumentLinks(doc: LangiumDocument, _params: DocumentLinkParams): MaybePromise<DocumentLink[]>;
|
|
15026
|
+
resolveLink(doc: LangiumDocument, link: string): string;
|
|
15027
|
+
relativeLink(doc: LangiumDocument, link: string): string | null;
|
|
15028
|
+
}
|
|
15029
|
+
|
|
15742
15030
|
/******************************************************************************
|
|
15743
15031
|
* This file was generated by langium-cli 3.2.0.
|
|
15744
15032
|
* DO NOT EDIT MANUALLY!
|
|
@@ -16316,6 +15604,8 @@ interface ViewRuleAutoLayout extends AstNode {
|
|
|
16316
15604
|
readonly $container: DynamicViewBody | ElementViewBody;
|
|
16317
15605
|
readonly $type: 'ViewRuleAutoLayout';
|
|
16318
15606
|
direction: ViewLayoutDirection;
|
|
15607
|
+
nodeSep?: number;
|
|
15608
|
+
rankSep?: number;
|
|
16319
15609
|
}
|
|
16320
15610
|
declare const ViewRuleAutoLayout = "ViewRuleAutoLayout";
|
|
16321
15611
|
interface ViewRuleStyle extends AstNode {
|
|
@@ -16521,7 +15811,7 @@ type ParsedElementStyle = {
|
|
|
16521
15811
|
opacity?: number;
|
|
16522
15812
|
};
|
|
16523
15813
|
interface ParsedAstSpecification {
|
|
16524
|
-
tags: Set<Tag$
|
|
15814
|
+
tags: Set<Tag$1>;
|
|
16525
15815
|
elements: Record<ElementKind$1, {
|
|
16526
15816
|
technology?: string;
|
|
16527
15817
|
notation?: string;
|
|
@@ -16546,7 +15836,7 @@ interface ParsedAstElement {
|
|
|
16546
15836
|
title: string;
|
|
16547
15837
|
description?: string;
|
|
16548
15838
|
technology?: string;
|
|
16549
|
-
tags?: NonEmptyArray<Tag$
|
|
15839
|
+
tags?: NonEmptyArray<Tag$1>;
|
|
16550
15840
|
links?: NonEmptyArray<ParsedLink>;
|
|
16551
15841
|
style: ParsedElementStyle;
|
|
16552
15842
|
metadata?: {
|
|
@@ -16559,7 +15849,7 @@ interface ParsedAstRelation {
|
|
|
16559
15849
|
source: Fqn$1;
|
|
16560
15850
|
target: Fqn$1;
|
|
16561
15851
|
kind?: RelationshipKind$1;
|
|
16562
|
-
tags?: NonEmptyArray<Tag$
|
|
15852
|
+
tags?: NonEmptyArray<Tag$1>;
|
|
16563
15853
|
title: string;
|
|
16564
15854
|
description?: string;
|
|
16565
15855
|
technology?: string;
|
|
@@ -16581,7 +15871,7 @@ interface ParsedAstElementView {
|
|
|
16581
15871
|
astPath: string;
|
|
16582
15872
|
title: string | null;
|
|
16583
15873
|
description: string | null;
|
|
16584
|
-
tags: NonEmptyArray<Tag$
|
|
15874
|
+
tags: NonEmptyArray<Tag$1> | null;
|
|
16585
15875
|
links: NonEmptyArray<ParsedLink> | null;
|
|
16586
15876
|
rules: ViewRule$1[];
|
|
16587
15877
|
manualLayout?: ViewManualLayout;
|
|
@@ -16592,7 +15882,7 @@ interface ParsedAstDynamicView {
|
|
|
16592
15882
|
astPath: string;
|
|
16593
15883
|
title: string | null;
|
|
16594
15884
|
description: string | null;
|
|
16595
|
-
tags: NonEmptyArray<Tag$
|
|
15885
|
+
tags: NonEmptyArray<Tag$1> | null;
|
|
16596
15886
|
links: NonEmptyArray<ParsedLink> | null;
|
|
16597
15887
|
steps: DynamicViewStepOrParallel[];
|
|
16598
15888
|
rules: Array<DynamicViewRule$1>;
|
|
@@ -16616,38 +15906,11 @@ interface LikeC4DocumentProps {
|
|
|
16616
15906
|
c4Views?: ParsedAstView[];
|
|
16617
15907
|
c4fqnIndex?: MultiMap<Fqn$1, DocFqnIndexAstNodeDescription>;
|
|
16618
15908
|
}
|
|
16619
|
-
interface LikeC4LangiumDocument extends Omit<LangiumDocument<LikeC4Grammar>, 'diagnostics'>, LikeC4DocumentProps {
|
|
16620
|
-
}
|
|
16621
|
-
interface FqnIndexedDocument extends Omit<LangiumDocument<LikeC4Grammar>, 'diagnostics'>, SetRequired<LikeC4DocumentProps, 'c4fqnIndex'> {
|
|
16622
|
-
}
|
|
16623
|
-
interface ParsedLikeC4LangiumDocument extends Omit<LangiumDocument<LikeC4Grammar>, 'diagnostics'>, Required<LikeC4DocumentProps> {
|
|
16624
|
-
}
|
|
16625
|
-
|
|
16626
|
-
declare class LikeC4CodeLensProvider implements CodeLensProvider {
|
|
16627
|
-
private services;
|
|
16628
|
-
constructor(services: LikeC4Services);
|
|
16629
|
-
provideCodeLens(doc: LangiumDocument, _params: CodeLensParams, cancelToken?: CancellationToken): Promise<CodeLens[] | undefined>;
|
|
16630
|
-
}
|
|
16631
|
-
|
|
16632
|
-
declare class LikeC4CompletionProvider extends DefaultCompletionProvider {
|
|
16633
|
-
readonly completionOptions: {
|
|
16634
|
-
triggerCharacters: string[];
|
|
16635
|
-
};
|
|
16636
|
-
}
|
|
16637
|
-
|
|
16638
|
-
declare class LikeC4DocumentHighlightProvider extends DefaultDocumentHighlightProvider {
|
|
16639
|
-
/**
|
|
16640
|
-
* Override this method to determine the highlight kind of the given reference.
|
|
16641
|
-
*/
|
|
16642
|
-
protected createDocumentHighlight(reference: ReferenceDescription): DocumentHighlight;
|
|
15909
|
+
interface LikeC4LangiumDocument extends Omit<LangiumDocument<LikeC4Grammar>, 'diagnostics'>, LikeC4DocumentProps {
|
|
16643
15910
|
}
|
|
16644
|
-
|
|
16645
|
-
|
|
16646
|
-
|
|
16647
|
-
constructor(services: LikeC4Services);
|
|
16648
|
-
getDocumentLinks(doc: LangiumDocument, _params: DocumentLinkParams): MaybePromise<DocumentLink[]>;
|
|
16649
|
-
resolveLink(doc: LangiumDocument, link: string): string;
|
|
16650
|
-
relativeLink(doc: LangiumDocument, link: string): string | null;
|
|
15911
|
+
interface FqnIndexedDocument extends Omit<LangiumDocument<LikeC4Grammar>, 'diagnostics'>, SetRequired<LikeC4DocumentProps, 'c4fqnIndex'> {
|
|
15912
|
+
}
|
|
15913
|
+
interface ParsedLikeC4LangiumDocument extends Omit<LangiumDocument<LikeC4Grammar>, 'diagnostics'>, Required<LikeC4DocumentProps> {
|
|
16651
15914
|
}
|
|
16652
15915
|
|
|
16653
15916
|
declare class LikeC4DocumentSymbolProvider implements DocumentSymbolProvider {
|
|
@@ -16680,6 +15943,98 @@ declare class LikeC4SemanticTokenProvider extends AbstractSemanticTokenProvider
|
|
|
16680
15943
|
private highlightAstElement;
|
|
16681
15944
|
private highlightView;
|
|
16682
15945
|
}
|
|
15946
|
+
declare class FqnIndex {
|
|
15947
|
+
private services;
|
|
15948
|
+
protected langiumDocuments: LangiumDocuments;
|
|
15949
|
+
constructor(services: LikeC4Services);
|
|
15950
|
+
get documents(): Stream<FqnIndexedDocument>;
|
|
15951
|
+
private entries;
|
|
15952
|
+
getFqn(el: Element): Fqn$1 | null;
|
|
15953
|
+
byFqn(fqn: Fqn$1): Stream<AstNodeDescription>;
|
|
15954
|
+
directChildrenOf(parent: Fqn$1): Stream<AstNodeDescription>;
|
|
15955
|
+
/**
|
|
15956
|
+
* Returns descedant elements with unique names in the scope
|
|
15957
|
+
*/
|
|
15958
|
+
uniqueDescedants(parent: Fqn$1): Stream<AstNodeDescription>;
|
|
15959
|
+
}
|
|
15960
|
+
|
|
15961
|
+
type ModelParsedListener$1 = (docs: URI[]) => void;
|
|
15962
|
+
declare class LikeC4ModelBuilder {
|
|
15963
|
+
private services;
|
|
15964
|
+
private langiumDocuments;
|
|
15965
|
+
private listeners;
|
|
15966
|
+
constructor(services: LikeC4Services);
|
|
15967
|
+
/**
|
|
15968
|
+
* WARNING:
|
|
15969
|
+
* This method is internal and should to be called only when all documents are known to be parsed.
|
|
15970
|
+
* Otherwise, the model may be incomplete.
|
|
15971
|
+
*/
|
|
15972
|
+
unsafeSyncBuildModel(): ParsedLikeC4Model | null;
|
|
15973
|
+
buildModel(cancelToken?: CancellationToken): Promise<ParsedLikeC4Model | null>;
|
|
15974
|
+
private previousViews;
|
|
15975
|
+
/**
|
|
15976
|
+
* WARNING:
|
|
15977
|
+
* This method is internal and should to be called only when all documents are known to be parsed.
|
|
15978
|
+
* Otherwise, the model may be incomplete.
|
|
15979
|
+
*/
|
|
15980
|
+
unsafeSyncBuildComputedModel(model: ParsedLikeC4Model): ComputedLikeC4Model;
|
|
15981
|
+
buildComputedModel(cancelToken?: CancellationToken): Promise<ComputedLikeC4Model | null>;
|
|
15982
|
+
computeView(viewId: ViewID$1, cancelToken?: CancellationToken): Promise<ComputedView | null>;
|
|
15983
|
+
onModelParsed(callback: ModelParsedListener$1): Disposable;
|
|
15984
|
+
private documents;
|
|
15985
|
+
private notifyListeners;
|
|
15986
|
+
}
|
|
15987
|
+
|
|
15988
|
+
declare class LikeC4ModelLocator {
|
|
15989
|
+
private services;
|
|
15990
|
+
private fqnIndex;
|
|
15991
|
+
private langiumDocuments;
|
|
15992
|
+
constructor(services: LikeC4Services);
|
|
15993
|
+
private documents;
|
|
15994
|
+
getParsedElement(astNode: Element): ParsedAstElement | null;
|
|
15995
|
+
locateElement(fqn: Fqn$1, _prop?: string): Location | null;
|
|
15996
|
+
locateRelation(relationId: RelationID$1): Location | null;
|
|
15997
|
+
locateViewAst(viewId: ViewID$1): {
|
|
15998
|
+
doc: ParsedLikeC4LangiumDocument;
|
|
15999
|
+
view: ParsedAstView;
|
|
16000
|
+
viewAst: LikeC4View;
|
|
16001
|
+
};
|
|
16002
|
+
locateView(viewId: ViewID$1): Location | null;
|
|
16003
|
+
}
|
|
16004
|
+
declare class LikeC4ModelParser {
|
|
16005
|
+
private services;
|
|
16006
|
+
private fqnIndex;
|
|
16007
|
+
constructor(services: LikeC4Services);
|
|
16008
|
+
parse(doc: LangiumDocument | LangiumDocument[]): ParsedLikeC4LangiumDocument[];
|
|
16009
|
+
protected parseLikeC4Document(_doc: FqnIndexedDocument): ParsedLikeC4LangiumDocument;
|
|
16010
|
+
private parseSpecification;
|
|
16011
|
+
private parseModel;
|
|
16012
|
+
private parseElement;
|
|
16013
|
+
private parseRelation;
|
|
16014
|
+
private parseViews;
|
|
16015
|
+
private parseViewRulePredicate;
|
|
16016
|
+
private parsePredicate;
|
|
16017
|
+
private parseElementExpressionsIterator;
|
|
16018
|
+
private parseElementPredicate;
|
|
16019
|
+
private parseElementExpr;
|
|
16020
|
+
private parseElementPredicateWith;
|
|
16021
|
+
private parseElementPredicateWhere;
|
|
16022
|
+
private parseRelationPredicate;
|
|
16023
|
+
private parseRelationPredicateWhere;
|
|
16024
|
+
private parseRelationPredicateWith;
|
|
16025
|
+
private parseRelationExpr;
|
|
16026
|
+
private parseViewRule;
|
|
16027
|
+
private parseViewManualLaout;
|
|
16028
|
+
private parseDynamicParallelSteps;
|
|
16029
|
+
private parseDynamicStep;
|
|
16030
|
+
private parseElementView;
|
|
16031
|
+
private parseDynamicElementView;
|
|
16032
|
+
protected resolveFqn(node: Element | ExtendElement): Fqn$1;
|
|
16033
|
+
private getAstNodePath;
|
|
16034
|
+
private getMetadata;
|
|
16035
|
+
private convertTags;
|
|
16036
|
+
private convertLinks;
|
|
16037
|
+
}
|
|
16683
16038
|
|
|
16684
16039
|
declare class LikeC4ModelChanges {
|
|
16685
16040
|
private services;
|
|
@@ -16797,97 +16152,63 @@ interface LikeC4AddedServices {
|
|
|
16797
16152
|
shared?: LikeC4SharedServices;
|
|
16798
16153
|
}
|
|
16799
16154
|
type LikeC4Services = LangiumServices & LikeC4AddedServices;
|
|
16800
|
-
declare class FqnIndex {
|
|
16801
|
-
private services;
|
|
16802
|
-
protected langiumDocuments: LangiumDocuments;
|
|
16803
|
-
constructor(services: LikeC4Services);
|
|
16804
|
-
get documents(): Stream<FqnIndexedDocument>;
|
|
16805
|
-
private entries;
|
|
16806
|
-
getFqn(el: Element): Fqn$1 | null;
|
|
16807
|
-
byFqn(fqn: Fqn$1): Stream<AstNodeDescription>;
|
|
16808
|
-
directChildrenOf(parent: Fqn$1): Stream<AstNodeDescription>;
|
|
16809
|
-
/**
|
|
16810
|
-
* Returns descedant elements with unique names in the scope
|
|
16811
|
-
*/
|
|
16812
|
-
uniqueDescedants(parent: Fqn$1): Stream<AstNodeDescription>;
|
|
16813
|
-
}
|
|
16814
16155
|
|
|
16815
|
-
|
|
16816
|
-
|
|
16817
|
-
|
|
16818
|
-
|
|
16819
|
-
|
|
16820
|
-
|
|
16821
|
-
|
|
16822
|
-
|
|
16823
|
-
|
|
16824
|
-
|
|
16825
|
-
|
|
16826
|
-
|
|
16827
|
-
|
|
16828
|
-
|
|
16829
|
-
|
|
16830
|
-
|
|
16831
|
-
|
|
16832
|
-
|
|
16833
|
-
|
|
16834
|
-
|
|
16835
|
-
|
|
16836
|
-
|
|
16837
|
-
|
|
16838
|
-
|
|
16839
|
-
|
|
16156
|
+
/**
|
|
16157
|
+
* @hidden
|
|
16158
|
+
*/
|
|
16159
|
+
type $keywords<T extends string> = {
|
|
16160
|
+
[key in T]: key;
|
|
16161
|
+
};
|
|
16162
|
+
|
|
16163
|
+
declare module 'ts-graphviz' {
|
|
16164
|
+
namespace ClusterSubgraphAttributeKey {
|
|
16165
|
+
interface $values extends $keywords<'likec4_type' | 'likec4_path' | 'likec4_id' | 'likec4_level' | 'likec4_depth'> {
|
|
16166
|
+
}
|
|
16167
|
+
}
|
|
16168
|
+
namespace NodeAttributeKey {
|
|
16169
|
+
interface $values extends $keywords<'likec4_type' | 'likec4_path' | 'likec4_id' | 'likec4_level'> {
|
|
16170
|
+
}
|
|
16171
|
+
}
|
|
16172
|
+
namespace EdgeAttributeKey {
|
|
16173
|
+
interface $values extends $keywords<'likec4_id'> {
|
|
16174
|
+
}
|
|
16175
|
+
}
|
|
16176
|
+
namespace Attribute {
|
|
16177
|
+
interface $keys extends $keywords<'likec4_type' | 'likec4_path' | 'likec4_id' | 'likec4_level' | 'likec4_depth'> {
|
|
16178
|
+
}
|
|
16179
|
+
interface $types {
|
|
16180
|
+
likec4_type: 'folder' | 'file' | 'view';
|
|
16181
|
+
likec4_path: string;
|
|
16182
|
+
likec4_id: string;
|
|
16183
|
+
likec4_level: number;
|
|
16184
|
+
likec4_depth: number;
|
|
16185
|
+
}
|
|
16186
|
+
}
|
|
16840
16187
|
}
|
|
16188
|
+
type DotSource = Tagged<string, 'DotSource'>;
|
|
16841
16189
|
|
|
16842
|
-
|
|
16843
|
-
|
|
16844
|
-
|
|
16845
|
-
|
|
16846
|
-
|
|
16847
|
-
private documents;
|
|
16848
|
-
getParsedElement(astNode: Element): ParsedAstElement | null;
|
|
16849
|
-
locateElement(fqn: Fqn$1, _prop?: string): Location | null;
|
|
16850
|
-
locateRelation(relationId: RelationID$1): Location | null;
|
|
16851
|
-
locateViewAst(viewId: ViewID$1): {
|
|
16852
|
-
doc: ParsedLikeC4LangiumDocument;
|
|
16853
|
-
view: ParsedAstView;
|
|
16854
|
-
viewAst: LikeC4View;
|
|
16855
|
-
};
|
|
16856
|
-
locateView(viewId: ViewID$1): Location | null;
|
|
16190
|
+
interface GraphvizPort {
|
|
16191
|
+
unflatten(dot: DotSource): Promise<DotSource>;
|
|
16192
|
+
acyclic(dot: DotSource): Promise<DotSource>;
|
|
16193
|
+
layoutJson(dot: DotSource): Promise<string>;
|
|
16194
|
+
svg(dot: DotSource): Promise<string>;
|
|
16857
16195
|
}
|
|
16858
|
-
|
|
16859
|
-
|
|
16860
|
-
|
|
16861
|
-
|
|
16862
|
-
|
|
16863
|
-
|
|
16864
|
-
|
|
16865
|
-
|
|
16866
|
-
|
|
16867
|
-
|
|
16868
|
-
|
|
16869
|
-
|
|
16870
|
-
|
|
16871
|
-
|
|
16872
|
-
|
|
16873
|
-
|
|
16874
|
-
private parseElementPredicateWith;
|
|
16875
|
-
private parseElementPredicateWhere;
|
|
16876
|
-
private parseRelationPredicate;
|
|
16877
|
-
private parseRelationPredicateWhere;
|
|
16878
|
-
private parseRelationPredicateWith;
|
|
16879
|
-
private parseRelationExpr;
|
|
16880
|
-
private parseViewRule;
|
|
16881
|
-
private parseViewManualLaout;
|
|
16882
|
-
private parseDynamicParallelSteps;
|
|
16883
|
-
private parseDynamicStep;
|
|
16884
|
-
private parseElementView;
|
|
16885
|
-
private parseDynamicElementView;
|
|
16886
|
-
protected resolveFqn(node: Element | ExtendElement): Fqn$1;
|
|
16887
|
-
private getAstNodePath;
|
|
16888
|
-
private getMetadata;
|
|
16889
|
-
private convertTags;
|
|
16890
|
-
private convertLinks;
|
|
16196
|
+
type LayoutResult = {
|
|
16197
|
+
dot: DotSource;
|
|
16198
|
+
diagram: DiagramView;
|
|
16199
|
+
};
|
|
16200
|
+
declare class GraphvizLayouter {
|
|
16201
|
+
private graphviz;
|
|
16202
|
+
constructor(graphviz: GraphvizPort);
|
|
16203
|
+
get port(): GraphvizPort;
|
|
16204
|
+
changePort(graphviz: GraphvizPort): void;
|
|
16205
|
+
layout(view: ComputedView): Promise<LayoutResult>;
|
|
16206
|
+
svg(view: ComputedView): Promise<{
|
|
16207
|
+
svg: string;
|
|
16208
|
+
dot: DotSource;
|
|
16209
|
+
}>;
|
|
16210
|
+
dot(computedView: ComputedView): Promise<DotSource>;
|
|
16211
|
+
layoutOverviewGraph(views: ComputedView[]): Promise<OverviewGraph>;
|
|
16891
16212
|
}
|
|
16892
16213
|
|
|
16893
16214
|
// This definition file follows a somewhat unusual format. ESTree allows
|
|
@@ -17525,8 +16846,12 @@ type CliAddedServices = {
|
|
|
17525
16846
|
type CliServices = LikeC4Services & CliAddedServices;
|
|
17526
16847
|
|
|
17527
16848
|
type GraphvizOut = {
|
|
16849
|
+
dot: string;
|
|
16850
|
+
diagram: DiagramView;
|
|
16851
|
+
};
|
|
16852
|
+
type GraphvizSvgOut = {
|
|
17528
16853
|
id: ViewID$1;
|
|
17529
|
-
dot:
|
|
16854
|
+
dot: string;
|
|
17530
16855
|
svg: string;
|
|
17531
16856
|
};
|
|
17532
16857
|
declare class Views {
|
|
@@ -17538,9 +16863,9 @@ declare class Views {
|
|
|
17538
16863
|
constructor(services: CliServices);
|
|
17539
16864
|
private inflightRequest;
|
|
17540
16865
|
computedViews(): Promise<ComputedView[]>;
|
|
17541
|
-
layoutViews(): Promise<Array<Readonly<
|
|
16866
|
+
layoutViews(): Promise<Array<Readonly<GraphvizOut>>>;
|
|
17542
16867
|
diagrams(): Promise<Array<DiagramView>>;
|
|
17543
|
-
viewsAsGraphvizOut(): Promise<Array<
|
|
16868
|
+
viewsAsGraphvizOut(): Promise<Array<GraphvizSvgOut>>;
|
|
17544
16869
|
overviewGraph(): Promise<OverviewGraph>;
|
|
17545
16870
|
}
|
|
17546
16871
|
|
|
@@ -17560,9 +16885,10 @@ type LikeC4Options = {
|
|
|
17560
16885
|
throwIfInvalid?: boolean;
|
|
17561
16886
|
/**
|
|
17562
16887
|
* Logger to use for the language service.
|
|
16888
|
+
* false - no output
|
|
17563
16889
|
* @default 'default'
|
|
17564
16890
|
*/
|
|
17565
|
-
logger?: Logger | 'vite' | 'default';
|
|
16891
|
+
logger?: Logger | 'vite' | 'default' | false;
|
|
17566
16892
|
/**
|
|
17567
16893
|
* Whether to use the `dot` binary for layouting or the WebAssembly version.
|
|
17568
16894
|
* @default 'wasm'
|
|
@@ -17578,19 +16904,37 @@ declare class LikeC4 {
|
|
|
17578
16904
|
* Prevents multiple instances of LikeC4 for the same workspace
|
|
17579
16905
|
*/
|
|
17580
16906
|
private static likec4Instances;
|
|
17581
|
-
|
|
17582
|
-
|
|
16907
|
+
/**
|
|
16908
|
+
* Initializes a LikeC4 instance from the specified workspace path.
|
|
16909
|
+
* By default in current folder
|
|
16910
|
+
*/
|
|
16911
|
+
static fromWorkspace(path?: string, opts?: LikeC4Options): Promise<LikeC4>;
|
|
16912
|
+
private modelComputedRef;
|
|
16913
|
+
private modelLayoutedRef;
|
|
17583
16914
|
private logger;
|
|
17584
16915
|
private langiumDocuments;
|
|
17585
16916
|
readonly views: Views;
|
|
17586
16917
|
private constructor();
|
|
17587
|
-
computed(): Promise<ComputedLikeC4Model>;
|
|
17588
|
-
model(): LikeC4Model;
|
|
17589
16918
|
/**
|
|
17590
16919
|
* Diagram is a computed view, layouted using Graphviz
|
|
17591
16920
|
* Used in React components
|
|
17592
16921
|
*/
|
|
17593
16922
|
diagrams(): Promise<DiagramView[]>;
|
|
16923
|
+
/**
|
|
16924
|
+
* @deprecated use computedModel
|
|
16925
|
+
*/
|
|
16926
|
+
model(): LikeC4Model.Computed;
|
|
16927
|
+
/**
|
|
16928
|
+
* Synchronously builds architecture model
|
|
16929
|
+
* Only compute views predicates {@link ComputedView} - i.e. no layout
|
|
16930
|
+
* Not ready for rendering, but enough to traverse
|
|
16931
|
+
*/
|
|
16932
|
+
computedModel(): LikeC4Model.Computed;
|
|
16933
|
+
/**
|
|
16934
|
+
* Same as {@link computedModel()}, after applies layout
|
|
16935
|
+
* Ready for rendering
|
|
16936
|
+
*/
|
|
16937
|
+
layoutedModel(): Promise<LikeC4Model.Layouted>;
|
|
17594
16938
|
getErrors(): {
|
|
17595
16939
|
message: string;
|
|
17596
16940
|
line: number;
|
|
@@ -17609,8 +16953,11 @@ declare class LikeC4 {
|
|
|
17609
16953
|
changed?: string;
|
|
17610
16954
|
removed?: string;
|
|
17611
16955
|
}): Promise<boolean>;
|
|
16956
|
+
/**
|
|
16957
|
+
* @returns a function to dispose the listener
|
|
16958
|
+
*/
|
|
17612
16959
|
onModelUpdate(listener: () => void): () => void;
|
|
17613
16960
|
dispose(): void;
|
|
17614
16961
|
}
|
|
17615
16962
|
|
|
17616
|
-
export { type AutoLayoutDirection, type BBox, BorderStyles, type Color$1 as Color, type ComputedDynamicView, type ComputedEdge, type ComputedElementView, type ComputedLikeC4Model, type ComputedNode, type ComputedView, type DiagramEdge, type DiagramNode, type DiagramView, type DynamicView$1 as DynamicView, type EdgeId$1 as EdgeId, type Element$1 as Element, ElementColors, type ElementKind$1 as ElementKind, ElementShapes, type ElementView$1 as ElementView, type Fqn$1 as Fqn, type HexColorLiteral, LikeC4, LikeC4Model, type LikeC4View$1 as LikeC4View, LikeC4ViewModel, type NodeId, type ParsedLikeC4Model, type Point, type Relation$1 as Relation, type RelationExpr, type RelationID$1 as RelationID, RelationshipColors, StepEdgeId, type Tag$
|
|
16963
|
+
export { type AutoLayoutDirection, type BBox, BorderStyles, type Color$1 as Color, type ComputedDynamicView, type ComputedEdge, type ComputedElementView, type ComputedLikeC4Model, type ComputedNode, type ComputedView, type DiagramEdge, type DiagramNode, type DiagramView, type DynamicView$1 as DynamicView, type EdgeId$1 as EdgeId, type Element$1 as Element, ElementColors, type ElementKind$1 as ElementKind, ElementShapes, type ElementView$1 as ElementView, type Fqn$1 as Fqn, type HexColorLiteral, type LayoutedLikeC4Model, LikeC4, LikeC4DiagramModel, LikeC4Model, type LikeC4View$1 as LikeC4View, LikeC4ViewModel, type NodeId, type ParsedLikeC4Model, type Point, type Relation$1 as Relation, type RelationExpr, type RelationID$1 as RelationID, RelationshipColors, StepEdgeId, type Tag$1 as Tag, type ThemeColor$1 as ThemeColor, type ViewID$1 as ViewID, type XYPoint, ancestorsFqn, commonAncestor, compareByFqnHierarchically, compareFqnHierarchically, compareRelations, defaultTheme, extractStep, hasAtLeast, invariant, isAncestor, isComputedDynamicView, isDescendantOf, isSameHierarchy, isStepEdgeId, nameFromFqn, nonNullable, nonexhaustive, parentFqn };
|