diff --git a/app/api/chat/route.ts b/app/api/chat/route.ts index cc84465..5c44683 100644 --- a/app/api/chat/route.ts +++ b/app/api/chat/route.ts @@ -8,7 +8,9 @@ import { stepCountIs, streamText, } from "ai" +import fs from "fs/promises" import { jsonrepair } from "jsonrepair" +import path from "path" import { z } from "zod" import { getAIModel, supportsPromptCaching } from "@/lib/ai-providers" import { findCachedResponse } from "@/lib/cached-responses" @@ -596,6 +598,69 @@ Example: If previous output ended with ' { + // Sanitize input - prevent path traversal attacks + const sanitizedLibrary = library + .toLowerCase() + .replace(/[^a-z0-9_-]/g, "") + + if (sanitizedLibrary !== library.toLowerCase()) { + return `Invalid library name "${library}". Use only letters, numbers, underscores, and hyphens.` + } + + const baseDir = path.join( + process.cwd(), + "docs/shape-libraries", + ) + const filePath = path.join( + baseDir, + `${sanitizedLibrary}.md`, + ) + + // Verify path stays within expected directory + const resolvedPath = path.resolve(filePath) + if (!resolvedPath.startsWith(path.resolve(baseDir))) { + return `Invalid library path.` + } + + try { + const content = await fs.readFile(filePath, "utf-8") + return content + } catch (error) { + if ( + (error as NodeJS.ErrnoException).code === "ENOENT" + ) { + return `Library "${library}" not found. Available: aws4, azure2, gcp2, alibaba_cloud, cisco19, kubernetes, network, bpmn, flowchart, basic, arrows2, vvd, salesforce, citrix, sap, mscae, atlassian, fluidpower, electrical, pid, cabinets, floorplan, webicons, infographic, sitemap, android, lean_mapping, openstack, rack` + } + console.error( + `[get_shape_library] Error loading "${library}":`, + error, + ) + return `Error loading library "${library}". Please try again.` + } + }, + }, }, ...(process.env.TEMPERATURE !== undefined && { temperature: parseFloat(process.env.TEMPERATURE), diff --git a/components/chat-message-display.tsx b/components/chat-message-display.tsx index b2dafad..58f2aaf 100644 --- a/components/chat-message-display.tsx +++ b/components/chat-message-display.tsx @@ -634,6 +634,8 @@ export function ChatMessageDisplay({ return "Generate Diagram" case "edit_diagram": return "Edit Diagram" + case "get_shape_library": + return "Get Shape Library" default: return name } @@ -728,6 +730,25 @@ export function ChatMessageDisplay({ ) })()} + {/* Show get_shape_library output on success */} + {output && + toolName === "get_shape_library" && + state === "output-available" && + isExpanded && ( +
+
+ Library loaded ( + {typeof output === "string" ? output.length : 0}{" "} + chars) +
+
+                                {typeof output === "string"
+                                    ? output.substring(0, 800) +
+                                      (output.length > 800 ? "\n..." : "")
+                                    : String(output)}
+                            
+
+ )} ) } diff --git a/docs/shape-libraries/README.md b/docs/shape-libraries/README.md new file mode 100644 index 0000000..44ef00e --- /dev/null +++ b/docs/shape-libraries/README.md @@ -0,0 +1,78 @@ +# Draw.io Shape Libraries + +Reference: `style="shape=mxgraph.."` + +## Cloud Providers + +| Library | Shapes | Prefix | Description | File | +|---------|--------|--------|-------------|------| +| aws4 | 1031 | `mxgraph.aws4` | Amazon Web Services (2025) - EC2, S3, Lambda, RDS, etc. | [aws4.md](./aws4.md) | +| azure2 | 608 | `img/lib/azure2/` | Microsoft Azure (2024) - VMs, Storage, AI, Networking, etc. | [azure2.md](./azure2.md) | +| gcp2 | 297 | `mxgraph.gcp2` | Google Cloud Platform - Compute Engine, BigQuery, GKE, etc. | [gcp2.md](./gcp2.md) | +| alibaba_cloud | 273 | `mxgraph.alibaba_cloud` | Alibaba Cloud - ECS, OSS, RDS, SLB, VPC, etc. | [alibaba_cloud.md](./alibaba_cloud.md) | +| openstack | 18 | `mxgraph.openstack` | OpenStack cloud platform icons | [openstack.md](./openstack.md) | +| digitalocean | 74 | `mxgraph.digitalocean` | DigitalOcean - Droplets, Spaces, Kubernetes, etc. | [digitalocean.md](./digitalocean.md) | +| salesforce | 96 | `mxgraph.salesforce` | Salesforce platform icons | [salesforce.md](./salesforce.md) | + +## Networking & Infrastructure + +| Library | Shapes | Prefix | Description | File | +|---------|--------|--------|-------------|------| +| cisco19 | 232 | `mxgraph.cisco19` | Cisco network equipment - routers, switches, firewalls | [cisco19.md](./cisco19.md) | +| network | 58 | `mxgraph.networks` | General network diagram symbols | [network.md](./network.md) | +| arista | 45 | `mxgraph.arista` | Arista network switches and equipment | [arista.md](./arista.md) | +| kubernetes | 40 | `mxgraph.kubernetes` | Kubernetes - pods, services, deployments, nodes | [kubernetes.md](./kubernetes.md) | +| vvd | 93 | `mxgraph.vvd` | VMware Validated Design icons | [vvd.md](./vvd.md) | +| rack | 11 | `mxgraph.rack` | Server rack and data center equipment | [rack.md](./rack.md) | + +## Business Process + +| Library | Shapes | Prefix | Description | File | +|---------|--------|--------|-------------|------| +| bpmn | 39 | `mxgraph.bpmn` | Business Process Model and Notation - events, gateways, tasks | [bpmn.md](./bpmn.md) | +| eip | 36 | `mxgraph.eip` | Enterprise Integration Patterns - messaging, routing | [eip.md](./eip.md) | +| lean_mapping | 13 | `mxgraph.lean_mapping` | Lean/Value Stream Mapping symbols | [lean_mapping.md](./lean_mapping.md) | + +## General Diagrams + +| Library | Shapes | Prefix | Description | File | +|---------|--------|--------|-------------|------| +| flowchart | 34 | `mxgraph.flowchart` | Standard flowchart symbols - process, decision, data | [flowchart.md](./flowchart.md) | +| basic | 30 | `mxgraph.basic` | Basic shapes - stars, banners, callouts, hearts | [basic.md](./basic.md) | +| arrows2 | 34 | `mxgraph.arrows2` | Arrow shapes and connectors | [arrows2.md](./arrows2.md) | +| infographic | 29 | `mxgraph.infographic` | Infographic elements - charts, icons, badges | [infographic.md](./infographic.md) | +| sitemap | 50 | `mxgraph.sitemap` | Website sitemap icons - pages, forms, navigation | [sitemap.md](./sitemap.md) | + +## UI/Mockups + +| Library | Shapes | Prefix | Description | File | +|---------|--------|--------|-------------|------| +| android | 17 | `mxgraph.android` | Android UI mockup components | [android.md](./android.md) | + +## Enterprise Software + +| Library | Shapes | Prefix | Description | File | +|---------|--------|--------|-------------|------| +| citrix | 97 | `mxgraph.citrix` | Citrix virtualization - XenApp, XenDesktop, NetScaler | [citrix.md](./citrix.md) | +| sap | 98 | `mxgraph.sap` | SAP enterprise software icons | [sap.md](./sap.md) | +| mscae | 73 | `mxgraph.mscae` | Microsoft Cloud and Enterprise symbols | [mscae.md](./mscae.md) | +| atlassian | 26 | `mxgraph.atlassian` | Atlassian - Jira, Confluence issue types | [atlassian.md](./atlassian.md) | + +## Engineering + +| Library | Shapes | Prefix | Description | File | +|---------|--------|--------|-------------|------| +| fluidpower | 246 | `mxgraph.fluid_power` | Hydraulic/pneumatic engineering symbols | [fluidpower.md](./fluidpower.md) | +| electrical | 50 | `mxgraph.electrical` | Electrical circuit symbols - resistors, capacitors | [electrical.md](./electrical.md) | +| pid | 18 | `mxgraph.pid2` | Piping and Instrumentation Diagram symbols | [pid.md](./pid.md) | +| cabinets | 53 | `mxgraph.cabinets` | Electrical cabinet components - breakers, terminals | [cabinets.md](./cabinets.md) | +| floorplan | 44 | `mxgraph.floorplan` | Floor plan furniture and fixtures | [floorplan.md](./floorplan.md) | + +## Icons & Graphics + +| Library | Shapes | Prefix | Description | File | +|---------|--------|--------|-------------|------| +| webicons | 176 | `mxgraph.webicons` | Web/social media logos - GitHub, Twitter, AWS, etc. | [webicons.md](./webicons.md) | +| un-ocha-icons | 242 | `mxgraph.un-ocha-icons` | UN OCHA humanitarian icons | [un-ocha-icons.md](./un-ocha-icons.md) | + +**Total: 33 libraries, 4,281 shapes** diff --git a/docs/shape-libraries/alibaba_cloud.md b/docs/shape-libraries/alibaba_cloud.md new file mode 100644 index 0000000..ffcb81e --- /dev/null +++ b/docs/shape-libraries/alibaba_cloud.md @@ -0,0 +1,328 @@ +# alibaba_cloud + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.alibaba_cloud` + +## Usage + +```xml + + + +``` + + + +## Shapes (311) + +- `abap_business_application_platform` +- `acms_application_configuration_manangement` +- `acr_cloud_container_registry` +- `actiontrail` +- `adam_advanced_database_and_application_migration` +- `adb_analyticdb_for_mysql` +- `address_purification` +- `afs_fraud_service` +- `agw_aligateway` +- `ahas_application_high_availability_service` +- `airec_artificial_intelligence_recommendation` +- `alb_application_load_balancer_01` +- `alb_application_load_balancer_02` +- `alibaba_cloud_logo` +- `alibaba_cloud_logo_chinese` +- `alibaba_cloud_logo_english` +- `alimail` +- `alimt_machine_translation` +- `aliyun_linux` +- `amqp_advanced_message_queuing_protocol` +- `amscloudapp` +- `analyticdb_for_postgresql` +- `antibot` +- `apigateway` +- `apsara_file_storage_for_hdfs` +- `apsaravideo_vod` +- `arms_application_real-time_monitoring_service` +- `ask_ack_container_service_for_kubernetes` +- `asm_service_mesh` +- `assettech` +- `avds_vulnerability_db_scanning` +- `baas_blockchain_as_a_service` +- `bandwidth_bag` +- `bastionhost` +- `batchcompute` +- `bccluster` +- `beebot` +- `beian` +- `bizdevops` +- `bizworks` +- `bpstudio` +- `cas_ssl_central_authentication_service` +- `cassandra_wide-column_database_01` +- `cassandra_wide-column_database_02` +- `ccc_cloud_call_center` +- `ccn_cloud_connect_network` +- `ccs_customer_service_01` +- `ccs_customer_service_02` +- `cddc_cloud_database_dedicated_cluster` +- `cdn_content_distribution_network` +- `cdp_cloudera_cdp` +- `cdt_cloud_datatransfer` +- `cen_cloud_enterprise_network` +- `cfw_cloud_firewall` +- `cityvisual` +- `clb_classic_load_balancer_01` +- `clb_classic_load_balancer_02` +- `clickhouse` +- `cloud_auth` +- `cloud_config` +- `cloud_display` +- `cloud_governance_center` +- `cloud_security_center` +- `cloud_shield` +- `cloudap` +- `cloudbox` +- `clouddesktop` +- `clouddev` +- `cloudphoto` +- `cloudproc` +- `cloudshell` +- `cmn_cloud_managed_network` +- `cmp_cloud_mobile_push` +- `cms_cloud_monitor_service` +- `codepipeline` +- `codestore` +- `companyreg` +- `computenest` +- `content_security` +- `coo` +- `cpns_cell_phone_number_service` +- `csas_cloud_security_access_service` +- `cvc_cloud_video_conferencing` +- `cwh_cloud_web_hosting` +- `das_database_autonomy_service` +- `databot` +- `datahub` +- `dataphin` +- `dataquotient` +- `datav` +- `dataworks_dataide` +- `dbaudit` +- `dbes_database_expert_service` +- `dbfs_database_file_system` +- `dbs_database_backup` +- `dcdn_dynamic_route_for_cdn` +- `ddh_dedicated_host` +- `ddos-bgp` +- `ddos-dip` +- `ddos-pro` +- `ddos_protection` +- `devops` +- `dg_database_gateway` +- `directmail` +- `disk_block_storage` +- `dlf_data_lake_formation` +- `dms_data_management_service` +- `dns_domain_name_system` +- `dns_privatezone_01` +- `dns_privatezone_02` +- `domain` +- `domain_and_website` +- `drds_distribute_relational_database_service` +- `dsi_data_security_insurance` +- `dts_data_transmission_service` +- `e-mapreduce` +- `eais_elastic_accelerated_computing_instances` +- `eci_elastic_container_instance` +- `ecs_elastic_compute_service` +- `edas_enterprise_distributed_application_service` +- `ehpc_elastic_high_performance_computing` +- `eip_elastic_ip_address` +- `elastic_web_hosting` +- `elasticsearch` +- `emas_enterprise_mobile_application_studio` +- `energyexpert` +- `ens_edge_node_service` +- `enterprise_website` +- `eprofile` +- `esign` +- `ess_elastic_scaling_service` +- `eventbridge` +- `express_connect` +- `face_recognition` +- `fc_function_compute` +- `flow_service` +- `flowbag` +- `fnf_serverless_function_flow` +- `fpga_field_programmable_gate_array` +- `fraud_detection` +- `ga_global_accelerator` +- `gameshield` +- `gdb_graph_database` +- `graphanalytics` +- `graphcompute` +- `gtm_global_traffic_manager` +- `gts_global_transaction_service` +- `gws_graphic_workstation` +- `havip_high-availability_virtual_ip_address` +- `hbase` +- `hbr_hybrid_backup_recovery` +- `hcs-hgw_hybrid_cloud_storage_array` +- `hcs-mgw_hybrid_cloud_storage_datatransport` +- `hcs-sgw_hybrid_cloud_storage_gateway` +- `hdr_hybrid_disaster_recovery` +- `hologres` +- `holowatcher` +- `hsm_hardware_security_module` +- `httpdns` +- `idrsservice` +- `image_recognition` +- `imagesearch` +- `imarketing` +- `imm_intelligent_media_management` +- `imp_intelligent_media_production` +- `imp_low_code_video_factory` +- `indvi_industrial_visual_intelligence` +- `intelligent_advisor` +- `iot_internet_of_things_platform` +- `iot_wireless_connection_service` +- `iotid_identity` +- `iov_iot_vehicle_cloud` +- `ipv6_gateway` +- `isoc_iot_security_operations_center` +- `isu_intelligent_semantic_understanding` +- `ivision` +- `ivpd_intelligent_visual_production` +- `kafka` +- `linkedmall` +- `linkwan` +- `live` +- `livinglink` +- `log_streaming` +- `logic_composer` +- `machine_learning` +- `man_mobile_analytics` +- `mariadb` +- `mas_mobile_acceleration_service` +- `maxcompute` +- `memcache` +- `miniappdev` +- `mns_message_service` +- `mobile_hotfix` +- `mobsec` +- `mongodb` +- `mps-ai` +- `mps-censor` +- `mps-cover` +- `mps-dna` +- `mps-multimod` +- `mps-produce` +- `mps_apsaravideo_media_processing` +- `mq_message_queue` +- `mqc_mobile_quality_center` +- `mse_microservices_engine` +- `multi-cloud_finops` +- `multi-mode_database_lindorm` +- `multimediaai` +- `mxgraph.alibaba_cloud` +- `mysql` +- `nas_network_attached_storage` +- `nat_gateway` +- `network_acl_access_control_list` +- `nlb_network_load_balancer_01` +- `nlb_network_load_balancer_02` +- `nlp-address` +- `nlp-automl` +- `nlp-ie_text_information_extraction` +- `nlp-ke_keyword_extraction` +- `nlp-ner_named_entity_recognition` +- `nlp-pos_part-of-speech_tagging` +- `nlp-ra_reflexive_anaphora` +- `nlp-sa_sentiment_analysis` +- `nlp-tc_text_categorization` +- `nlp-ws_word_segmentation` +- `nlp_natural_language_processing` +- `nls` +- `nls-asrbag` +- `nls-asrcustommodel` +- `nls-filebag` +- `nls-service` +- `nls-shortasrbag` +- `nls-ttsbag` +- `nodejs_performance_platform` +- `oceanbase` +- `ocr_optical_character_recognition` +- `onsmqtt_micro_message_queuing_telemetry_transport` +- `oos_operation_orchestration_service` +- `openanalytics` +- `openapi_explorer` +- `opensearch` +- `oss_object_storage_service` +- `ots_tablestore` +- `outboundbot` +- `pcdn_p2p_cdn` +- `petadata_hybriddb_for_mysql` +- `physical_connection` +- `pnvs_phone_number_verification_service` +- `polardb` +- `porana_portrait_analysis` +- `postgresql` +- `ppas_pay-as-you-go_database` +- `privatelink` +- `prometheus` +- `prophet` +- `pts_performance_test_service` +- `quickbi` +- `ram_resource_access_management` +- `re_recommendation_engine` +- `realtime_compute` +- `redis_kvstore` +- `region` +- `retailir` +- `ros_resource_orchestration_service` +- `route_table` +- `router` +- `rsimganalys` +- `rtc_real-time_communication` +- `sae_serverless_app_engine` +- `sag_smart_access_gateway_01` +- `sag_smart_access_gateway_02` +- `sas_situational_awareness` +- `sca_smart_conversation_analysis_01` +- `sca_smart_conversation_analysis_02` +- `scc_super_computing_cluster` +- `scdn_secure_cdn` +- `scu_storage_capacity_unit` +- `sddp_sensitive_data_protection` +- `shared_bandwidth` +- `shared_flow_bag` +- `shc_shield_hybrid_cloud` +- `slb_server_load_balancer_01` +- `slb_server_load_balancer_02` +- `slb_server_load_balancer_03` +- `sls_simple_log_service` +- `smc_server_migration_center` +- `sms_short_message_service` +- `sos` +- `spark_data_insights` +- `sppc` +- `sqlserver` +- `swas_simple_application_server` +- `tr_transit_router` +- `trademark_service` +- `uis_ultimate_internet_service` +- `user` +- `user_feedback_01` +- `user_feedback_02` +- `vbr_virtual_border_router` +- `vcs_visual_computing_service` +- `vms_voice_messaging_service` +- `voicebot_intelligent_voice_navigation` +- `vpc_virtual_private_cloud` +- `vpn_gateway` +- `vs_video_surveillance` +- `vswitch` +- `waf_web_application_firewall` +- `webplus_web_app_service` +- `xdragon_bare_metal_server` +- `xtrace` +- `yida` diff --git a/docs/shape-libraries/android.md b/docs/shape-libraries/android.md new file mode 100644 index 0000000..3a3fb9c --- /dev/null +++ b/docs/shape-libraries/android.md @@ -0,0 +1,62 @@ +# android + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.android` + +## Usage + +```xml + + + +``` + +## Shapes (47) + +- `action_bar` +- `action_bar_landscape` +- `anchor` +- `checkbox` +- `contact_badge_focused` +- `contextual_action_bar` +- `contextual_action_bar_landscape` +- `contextual_split_action_bar` +- `contextual_split_action_bar_landscape` +- `contextual_split_action_bar_landscape_white` +- `indeterminateSpinner` +- `indeterminate_progress_bar` +- `keyboard` +- `navigation_bar_1` +- `navigation_bar_1_landscape` +- `navigation_bar_1_vertical` +- `navigation_bar_2` +- `navigation_bar_3` +- `navigation_bar_3_landscape` +- `navigation_bar_4` +- `navigation_bar_5` +- `navigation_bar_5_vertical` +- `navigation_bar_6` +- `phone2` +- `progressBar` +- `progressScrubberDisabled` +- `progressScrubberFocused` +- `progressScrubberPressed` +- `quick_contact` +- `quickscroll2` +- `quickscroll3` +- `rect` +- `rrect` +- `scrollbars2` +- `spinner2` +- `split_action_bar` +- `split_action_bar_landscape` +- `statusBar` +- `switch_off` +- `switch_on` +- `tab2` +- `textSelHandles` +- `text_insertion_point` +- `textfield` +- `time_picker` +- `time_picker_dark` +- `transparent` diff --git a/docs/shape-libraries/arrows2.md b/docs/shape-libraries/arrows2.md new file mode 100644 index 0000000..5cd8137 --- /dev/null +++ b/docs/shape-libraries/arrows2.md @@ -0,0 +1,33 @@ +# arrows2 + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.arrows2` + +## Usage + +```xml + + + +``` + +## Shapes (18) + +- `arrow` +- `bendArrow` +- `bendDoubleArrow` +- `calloutArrow` +- `calloutDouble90Arrow` +- `calloutDoubleArrow` +- `calloutQuadArrow` +- `jumpInArrow` +- `quadArrow` +- `sharpArrow` +- `sharpArrow2` +- `stripedArrow` +- `stylisedArrow` +- `tailedArrow` +- `tailedNotchedArrow` +- `triadArrow` +- `twoWayArrow` +- `uTurnArrow` diff --git a/docs/shape-libraries/atlassian.md b/docs/shape-libraries/atlassian.md new file mode 100644 index 0000000..d6612d8 --- /dev/null +++ b/docs/shape-libraries/atlassian.md @@ -0,0 +1,32 @@ +# atlassian + +**Type:** SVG images +**Path:** `img/lib/atlassian/` + +## Usage + +```xml + + + +``` + +## Shapes (17) + +- `Atlassian_Logo` +- `Bamboo_Logo` +- `Bitbucket_Logo` +- `Clover_Logo` +- `Confluence_Logo` +- `Crowd_Logo` +- `Crucible_Logo` +- `Fisheye_Logo` +- `Hipchat_Logo` +- `Jira_Core_Logo` +- `Jira_Logo` +- `Jira_Service_Desk_Logo` +- `Jira_Software_Logo` +- `Sourcetree_Logo` +- `Statuspage_Logo` +- `Stride_Logo` +- `Trello_Logo` diff --git a/docs/shape-libraries/aws4.md b/docs/shape-libraries/aws4.md new file mode 100644 index 0000000..4a1e2dd --- /dev/null +++ b/docs/shape-libraries/aws4.md @@ -0,0 +1,1049 @@ +# aws4 + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.aws4` + +## Usage + +```xml + + + +``` + +For simple shapes use: `shape=mxgraph.aws4.{shape};fillColor=#232F3D;` + +## Shapes (1032) + +- `a1_instance` +- `access_analyzer` +- `action` +- `activate` +- `actuator` +- `ad_connector` +- `addon` +- `agent` +- `agent2` +- `alarm` +- `alert` +- `alexa_enabled_device` +- `alexa_for_business` +- `alexa_skill` +- `alexa_smart_home_skill` +- `alexa_voice_service` +- `all_products` +- `ami` +- `amplify` +- `amplify_aws_amplify_studio` +- `analytics` +- `apache_mxnet_on_aws` +- `api_gateway` +- `app_config` +- `app_mesh` +- `app_runner` +- `app_studio` +- `app_wizard` +- `appfabric` +- `appflow` +- `application` +- `application_auto_scaling` +- `application_composer` +- `application_cost_profiler` +- `application_discovery_service` +- `application_discovery_service_aws_agentless_collector` +- `application_discovery_service_aws_discovery_agent` +- `application_discovery_service_migration_evaluator_collector` +- `application_integration` +- `application_load_balancer` +- `application_recovery_controller` +- `apps` +- `appstream_20` +- `appsync` +- `ar_vr` +- `archive` +- `artifact` +- `athena` +- `athena_data_source_connectors` +- `attribute` +- `attributes` +- `audit_manager` +- `augmented_ai` +- `aurora` +- `aurora_instance` +- `aurora_instance_alt` +- `authenticated_user` +- `auto_scaling` +- `auto_scaling2` +- `auto_scaling3` +- `automation` +- `autoscaling` +- `aws_backup_for_aws_cloudformation` +- `aws_backup_legal_hold` +- `aws_backup_support_for_amazon_fsx_for_netapp_ontap` +- `aws_backup_vault_lock` +- `aws_backup_virtual_machine_monitor` +- `aws_cloud` +- `aws_glue_data_quality` +- `aws_glue_for_ray` +- `aws_user_notifications` +- `b2b_data_interchange` +- `backint_agent` +- `backup` +- `backup_audit_manager` +- `backup_aws_backup_support_for_amazon_s3` +- `backup_aws_backup_support_for_vmware_workloads` +- `backup_backup_plan` +- `backup_backup_restore` +- `backup_compliance_reporting` +- `backup_compute` +- `backup_database` +- `backup_gateway` +- `backup_plan` +- `backup_recovery_point_objective` +- `backup_recovery_time_objective` +- `backup_restore` +- `backup_storage` +- `backup_vault` +- `backup_virtual_machine` +- `backup_virtual_machine_monitor` +- `bank` +- `batch` +- `bedrock` +- `blockchain` +- `blockchain_resource` +- `bottlerocket` +- `braket` +- `braket_chandelier` +- `braket_chip` +- `braket_embedded_simulator` +- `braket_managed_simulator` +- `braket_noise_simulator` +- `braket_qpu` +- `braket_simulator` +- `braket_simulator_1` +- `braket_simulator_2` +- `braket_simulator_3` +- `braket_simulator_4` +- `braket_state_vector` +- `braket_tensor_network` +- `bucket` +- `bucket_with_objects` +- `budgets` +- `budgets_2` +- `business_application` +- `bycicle` +- `c4_instance` +- `c5_instance` +- `c5a` +- `c5ad` +- `c5d` +- `c5n_instance` +- `c6g_instance` +- `c6gd` +- `cache_node` +- `cached_volume` +- `camera` +- `camera2` +- `car` +- `cart` +- `certificate_manager` +- `certificate_manager_2` +- `certificate_manager_3` +- `change_set` +- `chat` +- `chatbot` +- `checklist` +- `checklist_cost` +- `checklist_fault_tolerant` +- `checklist_performance` +- `checklist_security` +- `chime` +- `chime_sdk` +- `classic_load_balancer` +- `clean_rooms` +- `client` +- `client_vpn` +- `cloud9` +- `cloud_control_api` +- `cloud_development_kit` +- `cloud_digital_interface` +- `cloud_directory` +- `cloud_extension_ros` +- `cloud_map` +- `cloud_map_resource` +- `cloud_wan` +- `cloud_wan_segment_network` +- `cloud_wan_transit_gateway_route_table_attachment` +- `cloud_wan_virtual_pop` +- `cloudendure_disaster_recovery` +- `cloudendure_migration` +- `cloudformation` +- `cloudfront` +- `cloudfront_functions` +- `cloudhsm` +- `cloudsearch` +- `cloudsearch2` +- `cloudshell` +- `cloudtrail` +- `cloudtrail_cloudtrail_lake` +- `cloudwatch` +- `cloudwatch_2` +- `cloudwatch_cross_account_observability` +- `cloudwatch_data_protection` +- `cloudwatch_evidently` +- `cloudwatch_logs` +- `cloudwatch_metrics_insights` +- `cloudwatch_rum` +- `cloudwatch_synthetics` +- `cluster` +- `codeartifact` +- `codebuild` +- `codecatalyst` +- `codecommit` +- `codedeploy` +- `codeguru` +- `codeguru_2` +- `codepipeline` +- `codestar` +- `codewhisperer` +- `coffee_pot` +- `cognito` +- `cold_storage` +- `command_line_interface` +- `comprehend` +- `comprehend_medical` +- `compute` +- `compute_optimizer` +- `config` +- `connect` +- `connector` +- `contact_center` +- `container_1` +- `container_2` +- `container_3` +- `container_registry_image` +- `containers` +- `control_tower` +- `corporate_data_center` +- `corporate_data_center2` +- `corretto` +- `cost_and_usage_report` +- `cost_explorer` +- `cost_management` +- `credentials` +- `custom_billing_manager` +- `custom_event_bus_resource` +- `customer_enablement` +- `customer_engagement` +- `customer_gateway` +- `d2_instance` +- `d3_instance` +- `d3en_instance` +- `data_encryption_key` +- `data_exchange` +- `data_exchange_for_apis` +- `data_lake_resource_icon` +- `data_pipeline` +- `data_set` +- `data_stream` +- `data_table` +- `data_transfer_terminal` +- `database` +- `database_migration_service` +- `database_migration_workflow_job` +- `datasync` +- `datasync_discovery` +- `datazone` +- `datazone_business_data_catalog` +- `datazone_data_portal` +- `datazone_data_projects` +- `db_instance` +- `db_instance_read_replica` +- `db_instance_standby` +- `db_on_instance` +- `db_on_instance2` +- `deadline_cloud` +- `deep_learning_amis` +- `deep_learning_containers` +- `deepcomposer` +- `deeplens` +- `deepracer` +- `default_event_bus_resource` +- `dense_compute_node` +- `dense_storage_node` +- `deployment` +- `deployments` +- `desired_state` +- `desktop_and_app_streaming` +- `detective` +- `developer_tools` +- `development_environment` +- `device_farm` +- `devops_guru` +- `devops_guru_insights` +- `direct_connect` +- `directory_service` +- `disk` +- `distro_for_opentelemetry` +- `document` +- `documentdb_elastic_clusters` +- `documentdb_with_mongodb_compatibility` +- `documents` +- `documents2` +- `documents3` +- `door_lock` +- `download_distribution` +- `dynamodb` +- `dynamodb_dax` +- `dynamodb_standard_access_table_class` +- `dynamodb_standard_infrequent_access_table_class` +- `dynamodb_stream` +- `ec2` +- `ec2_aws_microservice_extractor_for_net` +- `ec2_c6a_instance` +- `ec2_c6gn_instance` +- `ec2_c6i_instance` +- `ec2_c6in_instance` +- `ec2_c7g_instance` +- `ec2_c7gn_instance` +- `ec2_dl1_instance` +- `ec2_g5_instance` +- `ec2_g5g_instance` +- `ec2_hpc6a_instance` +- `ec2_hpc6id_instance` +- `ec2_i4i_instance` +- `ec2_im4gn_instance` +- `ec2_image_builder` +- `ec2_inf2_instance` +- `ec2_instance_contents` +- `ec2_is4gen_instance` +- `ec2_m1_mac_instance` +- `ec2_m6a_instance` +- `ec2_m6i_instance` +- `ec2_m6idn_instance` +- `ec2_m6in_instance` +- `ec2_p4de_instance` +- `ec2_r6a_instance` +- `ec2_r6i_instance` +- `ec2_r6idn_instance` +- `ec2_r6in_instance` +- `ec2_r7iz_instance` +- `ec2_trn1_instance` +- `ec2_vt1_instance` +- `ec2_x2gd_instance` +- `ec2_x2idn_instance` +- `ec2_x2iedn_instance` +- `ec2_x2iezn_instance` +- `echo` +- `ecr` +- `ecs` +- `ecs_anywhere` +- `ecs_copilot_cli` +- `ecs_service` +- `ecs_service_connect` +- `ecs_task` +- `edge_location` +- `efs_infrequentaccess` +- `efs_standard` +- `eks` +- `eks_anywhere` +- `eks_cloud` +- `eks_distro` +- `eks_on_outposts` +- `elastic_beanstalk` +- `elastic_block_store` +- `elastic_block_store_amazon_data_lifecycle_manager` +- `elastic_block_store_volume_gp3` +- `elastic_fabric_adapter` +- `elastic_file_system` +- `elastic_file_system_elastic_throughput` +- `elastic_file_system_infrequent_access` +- `elastic_file_system_intelligent_tiering` +- `elastic_file_system_one_zone` +- `elastic_file_system_one_zone_infrequent_access` +- `elastic_file_system_one_zone_standard` +- `elastic_file_system_standard` +- `elastic_file_system_standard_infrequent_access` +- `elastic_inference` +- `elastic_inference_2` +- `elastic_ip_address` +- `elastic_load_balancing` +- `elastic_network_adapter` +- `elastic_network_interface` +- `elastic_transcoder` +- `elastic_vmware_service` +- `elasticache` +- `elasticache_for_memcached` +- `elasticache_for_redis` +- `elasticache_for_valkey` +- `elasticsearch_service` +- `elemental` +- `elemental_link` +- `elemental_mediaconnect` +- `elemental_mediaconvert` +- `elemental_medialive` +- `elemental_mediapackage` +- `elemental_mediastore` +- `elemental_mediatailor` +- `email` +- `email_2` +- `email_notification` +- `emr` +- `emr_engine` +- `emr_engine_mapr_m3` +- `emr_engine_mapr_m5` +- `emr_engine_mapr_m7` +- `encrypted_data` +- `end_user_messaging` +- `endpoint` +- `endpoints` +- `entity_resolution` +- `event` +- `event_event_based` +- `event_resource` +- `event_time_based` +- `eventbridge` +- `eventbridge_custom_event_bus_resource` +- `eventbridge_default_event_bus_resource` +- `eventbridge_pipes` +- `eventbridge_saas_partner_event_bus_resource` +- `eventbridge_scheduler` +- `eventbridge_schema` +- `eventbridge_schema_registry` +- `express_workflow` +- `external_sdk` +- `external_toolkit` +- `f1_instance` +- `factory` +- `fargate` +- `fault_injection_simulator` +- `file_cache` +- `file_cache_hybrid_nfs_linked_datasets` +- `file_cache_on_premises_nfs_linked_datasets` +- `file_cache_s3_linked_datasets` +- `file_gateway` +- `file_system` +- `filtering_rule` +- `finding` +- `finspace` +- `firetv` +- `firetv_stick` +- `firewall_manager` +- `fleet_management` +- `flow_logs` +- `folder` +- `folders` +- `forecast` +- `forums` +- `fraud_detector` +- `freertos` +- `fsx` +- `fsx_file_gateway` +- `fsx_for_lustre` +- `fsx_for_netapp_ontap` +- `fsx_for_openzfs` +- `fsx_for_windows_file_server` +- `g3_instance` +- `g4ad_instance` +- `g4dn` +- `game_tech` +- `game_tech2` +- `gamekit` +- `gamelift` +- `gamelift_2` +- `gamelift_streams` +- `games` +- `gamesparks` +- `gateway` +- `gateway_load_balancer` +- `gear` +- `general` +- `general_access_points` +- `generic` +- `generic_application` +- `generic_database` +- `generic_firewall` +- `genomics_cli` +- `git_repository` +- `glacier` +- `glacier_deep_archive` +- `global_accelerator` +- `global_secondary_index` +- `globe` +- `glue` +- `glue_crawlers` +- `glue_data_catalog` +- `glue_databrew` +- `glue_elastic_views` +- `greengrass` +- `ground_station` +- `group_account` +- `group_auto_scaling_group` +- `group_availability_zone` +- `group_aws_cloud` +- `group_aws_cloud_alt` +- `group_aws_step_functions_workflow` +- `group_corporate_data_center` +- `group_ec2_instance_contents` +- `group_elastic_beanstalk` +- `group_elastic_load_balancing` +- `group_iot_greengrass` +- `group_iot_greengrass_deployment` +- `group_on_premise` +- `group_region` +- `group_security_group` +- `group_spot_fleet` +- `group_subnet` +- `group_vpc` +- `group_vpc2` +- `guardduty` +- `h1_instance` +- `habana_gaudi` +- `hardware_board` +- `hdfs_cluster` +- `healthimaging` +- `healthlake` +- `healthscribe` +- `high_memory_instance` +- `honeycode` +- `hosted_zone` +- `house` +- `http2_protocol` +- `http_notification` +- `http_protocol` +- `i2` +- `i3_instance` +- `i3en` +- `identity_access_management_iam_roles_anywhere` +- `identity_and_access_management` +- `illustration_desktop` +- `illustration_devices` +- `illustration_notification` +- `illustration_office_building` +- `illustration_users` +- `import_export` +- `inf1` +- `inferentia` +- `infrequent_access_storage_class` +- `inspector` +- `instance` +- `instance2` +- `instance_with_cloudwatch` +- `instance_with_cloudwatch2` +- `instances` +- `instances_2` +- `intelligent_tiering` +- `interactive_video` +- `internet` +- `internet_alt1` +- `internet_alt2` +- `internet_alt22` +- `internet_gateway` +- `internet_of_things` +- `inventory` +- `iot_1click` +- `iot_analytics` +- `iot_analytics_channel` +- `iot_analytics_data_store` +- `iot_analytics_dataset` +- `iot_analytics_pipeline` +- `iot_button` +- `iot_core` +- `iot_core_device_advisor` +- `iot_core_device_location` +- `iot_device_defender` +- `iot_device_defender_iot_device_jobs` +- `iot_device_gateway` +- `iot_device_jobs_resource` +- `iot_device_management` +- `iot_device_management_fleet` +- `iot_device_tester` +- `iot_edukit` +- `iot_events` +- `iot_expresslink` +- `iot_fleetwise` +- `iot_greengrass_artifact` +- `iot_greengrass_component` +- `iot_greengrass_component_machine_learning` +- `iot_greengrass_component_nucleus` +- `iot_greengrass_component_private` +- `iot_greengrass_component_public` +- `iot_greengrass_interprocess_communication` +- `iot_greengrass_protocol` +- `iot_greengrass_recipe` +- `iot_greengrass_stream_manager` +- `iot_lorawan_protocol` +- `iot_over_the_air_update` +- `iot_roborunner` +- `iot_sailboat` +- `iot_sitewise` +- `iot_sitewise_asset` +- `iot_sitewise_asset_hierarchy` +- `iot_sitewise_asset_model` +- `iot_sitewise_asset_properties` +- `iot_sitewise_data_streams` +- `iot_thing_freertos_device` +- `iot_thing_humidity_sensor` +- `iot_thing_industrial_pc` +- `iot_thing_plc` +- `iot_thing_relay` +- `iot_thing_stacklight` +- `iot_thing_temperature_humidity_sensor` +- `iot_thing_temperature_sensor` +- `iot_thing_temperature_vibration_sensor` +- `iot_thing_vibration_sensor` +- `iot_things_graph` +- `iot_twinmaker` +- `iq` +- `item` +- `items` +- `json_script` +- `kendra` +- `key_management_service` +- `key_management_service_external_key_store` +- `keyspaces` +- `kinesis` +- `kinesis_data_analytics` +- `kinesis_data_firehose` +- `kinesis_data_streams` +- `kinesis_video_streams` +- `lake_formation` +- `lambda` +- `lambda_function` +- `layers` +- `lex` +- `license_manager` +- `license_manager_application_discovery` +- `license_manager_license_blending` +- `lightbulb` +- `lightsail` +- `lightsail_for_research` +- `local_zones` +- `location_service` +- `location_service_geofence` +- `location_service_map` +- `location_service_place` +- `location_service_routes` +- `location_service_track` +- `logs` +- `long_term_security_credential` +- `lookout_for_equipment` +- `lookout_for_metrics` +- `lookout_for_vision` +- `lumberyard` +- `m4_instance` +- `m5_instance` +- `m5a_instance` +- `m5d_instance` +- `m5dn_instance` +- `m5n` +- `m5n_instance` +- `m5zn_instance` +- `m6g_instance` +- `m6gd_instance` +- `mac_instance` +- `machine_learning` +- `macie` +- `magnifying_glass` +- `magnifying_glass_2` +- `mainframe_modernization` +- `mainframe_modernization_analyzer` +- `mainframe_modernization_compiler` +- `mainframe_modernization_converter` +- `mainframe_modernization_developer` +- `mainframe_modernization_runtime` +- `maintenance_windows` +- `managed_apache_cassandra_service` +- `managed_blockchain` +- `managed_ms_ad` +- `managed_service_for_apache_flink` +- `managed_service_for_grafana` +- `managed_service_for_prometheus` +- `managed_services` +- `managed_streaming_for_kafka` +- `managed_workflows_for_apache_airflow` +- `management_and_governance` +- `management_console` +- `management_console2` +- `marketplace` +- `media_services` +- `mediaconnect_gateway` +- `medical_emergency` +- `memorydb_for_redis` +- `mesh` +- `message` +- `metrics` +- `mfa_token` +- `migration_and_transfer` +- `migration_evaluator` +- `migration_hub` +- `migration_hub_refactor_spaces_applications` +- `migration_hub_refactor_spaces_environments` +- `migration_hub_refactor_spaces_services` +- `mobile` +- `mobile_application` +- `mobile_client` +- `mobile_hub` +- `monitoring` +- `monitron` +- `mq` +- `mq_broker` +- `mqtt_protocol` +- `ms_sql_instance` +- `ms_sql_instance_alternate` +- `msk_amazon_msk_connect` +- `multimedia` +- `multiple_volumes_resource` +- `mxgraph.aws4` +- `mysql_db_instance` +- `mysql_db_instance_alternate` +- `namespace` +- `nat_gateway` +- `neptune` +- `network_access_control_list` +- `network_firewall` +- `network_firewall_endpoints` +- `network_load_balancer` +- `networking_and_content_delivery` +- `neuron_ml_sdk` +- `nice_dcv` +- `nice_enginframe` +- `nimble_studio` +- `nitro_enclaves` +- `non_cached_volume` +- `notebook` +- `nova` +- `nova2` +- `object` +- `office_building` +- `omics` +- `one_zone_ia` +- `open_3d_engine` +- `open_3d_engine_2` +- `opensearch_dashboards` +- `opensearch_ingestion` +- `opensearch_observability` +- `opensearch_service_cluster_administrator_node` +- `opensearch_service_data_node` +- `opensearch_service_index` +- `opensearch_service_traces` +- `opensearch_service_ultrawarm_node` +- `opsworks` +- `opsworks_apps` +- `opsworks_permissions` +- `optimized_instance` +- `oracle_database_at_aws` +- `oracle_db_instance` +- `oracle_db_instance_alternate` +- `organizations` +- `organizations_account` +- `organizations_account2` +- `organizations_management_account` +- `organizations_management_account2` +- `organizations_organizational_unit` +- `organizations_organizational_unit2` +- `outposts` +- `outposts_1u_and_2u_servers` +- `outposts_family` +- `p2_instance` +- `p3_instance` +- `p3dn_instance` +- `p4_instance` +- `p4d_instance` +- `panorama` +- `parallel_cluster` +- `parallel_computing_service` +- `parameter_store` +- `patch_manager` +- `payment_cryptography` +- `peering` +- `permissions` +- `permissions_2` +- `personal_health_dashboard` +- `personalize` +- `pinpoint` +- `pinpoint_journey` +- `police_emergency` +- `policy` +- `polly` +- `postgresql_instance` +- `private_5g` +- `private_certificate_authority` +- `privatelink` +- `professional_services` +- `programming_language` +- `proton` +- `q` +- `quantum_ledger_database` +- `quantum_technologies` +- `question` +- `queue` +- `quicksight` +- `quicksight_paginated_reports` +- `r4_instance` +- `r5_instance` +- `r5a_instance` +- `r5ad_instance` +- `r5b_instance` +- `r5d_instance` +- `r5gd_instance` +- `r5n` +- `r5n_instance` +- `r6g_instance` +- `rdn_instance` +- `rds` +- `rds_blue_green_deployments` +- `rds_instance` +- `rds_instance_alt` +- `rds_mariadb_instance` +- `rds_mariadb_instance_alt` +- `rds_multi_az` +- `rds_multi_az_db_cluster` +- `rds_mysql_instance` +- `rds_mysql_instance_alt` +- `rds_on_vmware` +- `rds_optimized_writes` +- `rds_oracle_instance` +- `rds_oracle_instance_alt` +- `rds_piop` +- `rds_piops` +- `rds_postgresql_instance` +- `rds_postgresql_instance_alt` +- `rds_proxy` +- `rds_proxy_alt` +- `rds_sql_server_instance` +- `rds_sql_server_instance_alt` +- `rds_trusted_language_extensions_for_postgresql` +- `recover` +- `red_hat_openshift` +- `redshift` +- `redshift_auto_copy` +- `redshift_data_sharing_governance` +- `redshift_ml` +- `redshift_query_editor_v20_light` +- `redshift_ra3` +- `redshift_streaming_ingestion` +- `registry` +- `rekognition` +- `rekognition_2` +- `rekognition_image` +- `rekognition_video` +- `replication` +- `replication_time_control` +- `reported_state` +- `repost` +- `repost_private` +- `rescue` +- `reserved_instance_reporting` +- `resilience_hub` +- `resource` +- `resource_access_manager` +- `resource_explorer` +- `resources` +- `robomaker` +- `robotics` +- `role` +- `route_53` +- `route_53_application_recovery_controller` +- `route_53_readiness_checks` +- `route_53_resolver` +- `route_53_resolver_dns_firewall` +- `route_53_resolver_query_logging` +- `route_53_routing_controls` +- `route_table` +- `router` +- `rule` +- `rule_2` +- `rule_3` +- `run_command` +- `s3` +- `s3_batch_operations` +- `s3_express_one_zone` +- `s3_file_gateway` +- `s3_multi_region_access_points` +- `s3_object_lambda` +- `s3_object_lambda_access_points` +- `s3_object_lock` +- `s3_on_outposts` +- `s3_on_outposts_storage` +- `s3_replication_time_control` +- `s3_select` +- `s3_storage_lens` +- `s3_tables` +- `s3_vectors` +- `saas_event_bus_resource` +- `sagemaker` +- `sagemaker_2` +- `sagemaker_canvas` +- `sagemaker_geospatial_ml` +- `sagemaker_ground_truth` +- `sagemaker_model` +- `sagemaker_notebook` +- `sagemaker_shadow_testing` +- `sagemaker_studio_lab` +- `sagemaker_train` +- `saml_token` +- `satellite` +- `savings_plans` +- `search_documents` +- `secrets_manager` +- `security_group` +- `security_hub` +- `security_hub_finding` +- `security_identity_and_compliance` +- `security_incident_response` +- `security_lake` +- `sensor` +- `server_migration_service` +- `serverless` +- `serverless_application_repository` +- `servers` +- `service` +- `service_catalog` +- `service_management_connector` +- `servo` +- `shadow` +- `shield` +- `shield2` +- `shield_shield_advanced` +- `signer` +- `simple_ad` +- `simple_email_service` +- `simple_storage_service_directory_bucket` +- `simple_storage_service_s3_glacier_instant_retrieval` +- `simspace_weaver` +- `simulation` +- `simulator` +- `single_sign_on` +- `site_to_site_vpn` +- `snapshot` +- `snowball` +- `snowball_edge` +- `snowcone` +- `snowmobile` +- `sns` +- `source_code` +- `spot_instance` +- `sql_primary` +- `sql_replica` +- `sql_workbench` +- `sqs` +- `ssl_padlock` +- `stack` +- `stack2` +- `standard_ia` +- `state_manager` +- `step_functions` +- `storage` +- `storage_gateway` +- `streaming_distribution` +- `sts` +- `sts_alternate` +- `sumerian` +- `supply_chain` +- `support` +- `systems_manager` +- `systems_manager_application_manager` +- `systems_manager_change_calendar` +- `systems_manager_change_manager` +- `systems_manager_compliance` +- `systems_manager_distributor` +- `systems_manager_incident_manager` +- `systems_manager_opscenter` +- `systems_manager_session_manager` +- `t2_instance` +- `t3_instance` +- `t3a_instance` +- `t4g_instance` +- `table` +- `tape_gateway` +- `tape_storage` +- `telco_network_builder` +- `template` +- `temporary_security_credential` +- `tensorflow_on_aws` +- `textract` +- `textract_analyze_lending` +- `thermostat` +- `thinkbox_deadline` +- `thinkbox_draft` +- `thinkbox_frost` +- `thinkbox_krakatoa` +- `thinkbox_sequoia` +- `thinkbox_stoke` +- `thinkbox_xmesh` +- `timestream` +- `tools_and_sdks` +- `topic` +- `topic_2` +- `torchserve` +- `traditional_server` +- `training_certification` +- `trainium_instance` +- `transcribe` +- `transfer_family` +- `transfer_family_aws_as2` +- `transfer_for_ftp_resource` +- `transfer_for_ftps_resource` +- `transfer_for_sftp` +- `transfer_for_sftp_resource` +- `transform` +- `transit_gateway` +- `transit_gateway_attachment` +- `translate` +- `travel` +- `trusted_advisor` +- `user` +- `user_notifications` +- `users` +- `utility` +- `vault` +- `verified_access` +- `verified_permissions` +- `virtual_gateway` +- `virtual_node` +- `virtual_private_cloud` +- `virtual_router` +- `virtual_service` +- `virtual_tape_library` +- `vmware_cloud_on_aws` +- `volume` +- `volume_gateway` +- `vpc` +- `vpc_access_points` +- `vpc_carrier_gateway` +- `vpc_lattice` +- `vpc_network_access_analyzer` +- `vpc_privatelink` +- `vpc_reachability_analyzer` +- `vpc_traffic_mirroring` +- `vpc_virtual_private_cloud_vpc` +- `vpn_connection` +- `vpn_gateway` +- `waf` +- `waf_bad_bot` +- `waf_bot` +- `waf_bot_control` +- `waf_labels` +- `waf_managed_rule` +- `waf_rule` +- `wavelength` +- `well_architect_tool` +- `well_architected_tool` +- `wickr` +- `windfarm` +- `work_package` +- `workdocs` +- `worklink` +- `workmail` +- `workspaces` +- `workspaces_family` +- `workspaces_family_amazon_workspaces` +- `workspaces_family_amazon_workspaces_core` +- `workspaces_thin_client` +- `workspaces_workspaces_web` +- `x1_instance` +- `x1_instance2` +- `x1e_instance` +- `xray` +- `z1d_instance` diff --git a/docs/shape-libraries/azure2.md b/docs/shape-libraries/azure2.md new file mode 100644 index 0000000..8015c2a --- /dev/null +++ b/docs/shape-libraries/azure2.md @@ -0,0 +1,431 @@ +# azure2 + +**Type:** SVG images +**Path:** `img/lib/azure2/` + +## Usage + +```xml + + + +``` + +## Shapes (648) + +Shapes are organized by category: `azure2/{category}/{shape}.svg` + +### ai_machine_learning (30) + +- `AI_Studio` +- `Anomaly_Detector` +- `Azure_Applied_AI` +- `Azure_Experimentation_Studio` +- `Azure_Object_Understanding` +- `Azure_OpenAI` +- `Batch_AI` +- `Bonsai` +- `Bot_Services` +- `Cognitive_Services` +- `Cognitive_Services_Decisions` +- `Computer_Vision` +- `Content_Moderators` +- `Content_Safety` +- `Custom_Vision` +- `Face_APIs` +- `Form_Recognizers` +- `Genomics` +- `Immersive_Readers` +- `Language_Services` +- `Language_Understanding` +- `Machine_Learning` +- `Machine_Learning_Studio_Classic_Web_Services` +- `Machine_Learning_Studio_Web_Service_Plans` +- `Machine_Learning_Studio_Workspaces` +- `Personalizers` +- `QnA_Makers` +- `Serverless_Search` +- `Speech_Services` +- `Translator_Text` + +### analytics (14) + +- `Analysis_Services` +- `Azure_Databricks` +- `Azure_Synapse_Analytics` +- `Azure_Workbooks` +- `Data_Lake_Analytics` +- `Data_Lake_Store_Gen1` +- `Endpoint_Analytics` +- `Event_Hub_Clusters` +- `Event_Hubs` +- `HD_Insight_Clusters` +- `Log_Analytics_Workspaces` +- `Power_BI_Embedded` +- `Power_Platform` +- `Stream_Analytics_Jobs` + +### app_services (9) + +- `API_Management_Services` +- `App_Service_Certificates` +- `App_Service_Domains` +- `App_Service_Environments` +- `App_Service_Plans` +- `App_Services` +- `CDN_Profiles` +- `Notification_Hubs` +- `Search_Services` + +### compute (38) + +- `App_Services` +- `Application_Group` +- `Automanaged_VM` +- `Availability_Sets` +- `Azure_Compute_Galleries` +- `Azure_Spring_Cloud` +- `Batch_Accounts` +- `Cloud_Services_Classic` +- `Container_Instances` +- `Container_Services_Deprecated` +- `Disk_Encryption_Sets` +- `Disks` +- `Disks_Classic` +- `Disks_Snapshots` +- `Function_Apps` +- `Host_Groups` +- `Host_Pools` +- `Hosts` +- `Image_Definitions` +- `Image_Templates` +- `Image_Versions` +- `Images` +- `Kubernetes_Services` +- `Maintenance_Configuration` +- `Managed_Service_Fabric` +- `Mesh_Applications` +- `Metrics_Advisor` +- `OS_Images_Classic` +- `Restore_Points` +- `Restore_Points_Collections` +- `Service_Fabric_Clusters` +- `Shared_Image_Galleries` +- `VM_Images_Classic` +- `VM_Scale_Sets` +- `Virtual_Machine` +- `Virtual_Machines_Classic` +- `Workspaces` +- `Workspaces2` + +### containers (7) + +- `App_Services` +- `Azure_Red_Hat_OpenShift` +- `Batch_Accounts` +- `Container_Instances` +- `Container_Registries` +- `Kubernetes_Services` +- `Service_Fabric_Clusters` + +### databases (27) + +- `Azure_Cosmos_DB` +- `Azure_Data_Explorer_Clusters` +- `Azure_Database_MariaDB_Server` +- `Azure_Database_Migration_Services` +- `Azure_Database_MySQL_Server` +- `Azure_Database_PostgreSQL_Server` +- `Azure_Database_PostgreSQL_Server_Group` +- `Azure_Purview_Accounts` +- `Azure_SQL` +- `Azure_SQL_Edge` +- `Azure_SQL_Server_Stretch_Databases` +- `Azure_SQL_VM` +- `Azure_Synapse_Analytics` +- `Cache_Redis` +- `Data_Factory` +- `Elastic_Job_Agents` +- `Instance_Pools` +- `Managed_Database` +- `Oracle_Database` +- `SQL_Data_Warehouses` +- `SQL_Database` +- `SQL_Elastic_Pools` +- `SQL_Managed_Instance` +- `SQL_Server` +- `SQL_Server_Registries` +- `SSIS_Lift_And_Shift_IR` +- `Virtual_Clusters` + +### identity (35) + +- `AAD_Licenses` +- `Active_Directory_Connect_Health` +- `Active_Directory_Connect_Health2` +- `Administrative_Units` +- `App_Registrations` +- `Azure_AD_B2C` +- `Azure_AD_B2C2` +- `Azure_AD_Domain_Services` +- `Azure_AD_Identity_Protection` +- `Azure_AD_Privilege_Identity_Management` +- `Azure_Active_Directory` +- `Azure_Information_Protection` +- `Custom_Azure_AD_Roles` +- `Enterprise_Applications` +- `Entra_Connect` +- `Entra_Domain_Services` +- `Entra_Global_Secure_Access` +- `Entra_ID_Protection` +- `Entra_Internet_Access` +- `Entra_Managed_Identities` +- `Entra_Private_Access` +- `Entra_Privileged_Identity_Management` +- `Entra_Verified_ID` +- `External_Identities` +- `Groups` +- `Identity_Governance` +- `Managed_Identities` +- `Multi_Factor_Authentication` +- `PIM` +- `Security` +- `Tenant_Properties` +- `User_Settings` +- `Users` +- `Verifiable_Credentials` +- `Verification_As_A_Service` + +### networking (51) + +- `ATM_Multistack` +- `Application_Gateway_Containers` +- `Application_Gateways` +- `Azure_Communications_Gateway` +- `Azure_Firewall_Manager` +- `Azure_Firewall_Policy` +- `Bastions` +- `CDN_Profiles` +- `Connections` +- `DDoS_Protection_Plans` +- `DNS_Multistack` +- `DNS_Private_Resolver` +- `DNS_Security_Policy` +- `DNS_Zones` +- `ExpressRoute_Circuits` +- `Firewalls` +- `Front_Doors` +- `IP_Address_manager` +- `IP_Groups` +- `Load_Balancer_Hub` +- `Load_Balancers` +- `Local_Network_Gateways` +- `NAT` +- `Network_Interfaces` +- `Network_Security_Groups` +- `Network_Watcher` +- `On_Premises_Data_Gateways` +- `Private_Endpoint` +- `Private_Link` +- `Private_Link_Hub` +- `Private_Link_Service` +- `Proximity_Placement_Groups` +- `Public_IP_Addresses` +- `Public_IP_Addresses_Classic` +- `Public_IP_Prefixes` +- `Reserved_IP_Addresses_Classic` +- `Resource_Management_Private_Link` +- `Route_Filters` +- `Route_Tables` +- `Service_Endpoint_Policies` +- `Spot_VM` +- `Spot_VMSS` +- `Subnet` +- `Traffic_Manager_Profiles` +- `Virtual_Network_Gateways` +- `Virtual_Networks` +- `Virtual_Networks_Classic` +- `Virtual_Router` +- `Virtual_WAN_Hub` +- `Virtual_WANs` +- `Web_Application_Firewall_Policies_WAF` + +### security (14) + +- `Application_Security_Groups` +- `Azure_AD_Risky_Signins` +- `Azure_AD_Risky_Users` +- `Azure_Defender` +- `Azure_Sentinel` +- `Conditional_Access` +- `Detonation` +- `ExtendedSecurityUpdates` +- `Identity_Secure_Score` +- `Key_Vaults` +- `Keys` +- `MS_Defender_EASM` +- `Multifactor_Authentication` +- `Security_Center` + +### storage (17) + +- `Azure_Fileshare` +- `Azure_HCP_Cache` +- `Azure_NetApp_Files` +- `Azure_Stack_Edge` +- `Data_Box` +- `Data_Box_Edge` +- `Data_Lake_Storage_Gen1` +- `Data_Share_Invitations` +- `Data_Shares` +- `Import_Export_Jobs` +- `Recovery_Services_Vaults` +- `StorSimple_Data_Managers` +- `StorSimple_Device_Managers` +- `Storage_Accounts` +- `Storage_Accounts_Classic` +- `Storage_Explorer` +- `Storage_Sync_Services` + +### general (98) + +- `All_Resources` +- `Backlog` +- `Biz_Talk` +- `Blob_Block` +- `Blob_Page` +- `Branch` +- `Browser` +- `Bug` +- `Builds` +- `Cache` +- `Code` +- `Commit` +- `Controls` +- `Controls_Horizontal` +- `Cost_Alerts` +- `Cost_Analysis` +- `Cost_Budgets` +- `Cost_Management` +- `Cost_Management_and_Billing` +- `Counter` +- `Cubes` +- `Dashboard` +- `Dashboard2` +- `Dev_Console` +- `Download` +- `Error` +- `Extensions` +- `FTP` +- `File` +- `Files` +- `Folder_Blank` +- `Folder_Website` +- `Free_Services` +- `Gear` +- `Globe` +- `Globe_Error` +- `Globe_Success` +- `Globe_Warning` +- `Guide` +- `Heart` +- `Help_and_Support` +- `Image` +- `Information` +- `Input_Output` +- `Journey_Hub` +- `Launch_Portal` +- `Learn` +- `Load_Test` +- `Location` +- `Log_Streaming` +- `Management_Groups` +- `Management_Portal` +- `Marketplace` +- `Media` +- `Media_File` +- `Mobile` +- `Mobile_Engagement` +- `Module` +- `Power` +- `Power_Up` +- `Powershell` +- `Preview` +- `Preview_Features` +- `Process_Explorer` +- `Production_Ready_Database` +- `Quickstart_Center` +- `Recent` +- `Reservations` +- `Resource_Explorer` +- `Resource_Group_List` +- `Resource_Groups` +- `Resource_Linked` +- `SSD` +- `Scale` +- `Scheduler` +- `Search` +- `Search_Grid` +- `Server_Farm` +- `Service_Bus` +- `Service_Health` +- `Storage_Azure_Files` +- `Storage_Container` +- `Storage_Queue` +- `Subscriptions` +- `TFS_VC_Repository` +- `Table` +- `Tag` +- `Tags` +- `Templates` +- `Toolbox` +- `Troubleshoot` +- `Versions` +- `Web_Slots` +- `Web_Test` +- `Website_Power` +- `Website_Staging` +- `Workbooks` +- `Workflow` + +### other (149) + +(See draw.io for complete list of 149 shapes in the "other" category) + +Selected shapes: +- `Azure_Backup_Center` +- `Azure_Chaos_Studio` +- `Azure_Cloud_Shell` +- `Azure_Communication_Services` +- `Azure_Deployment_Environments` +- `Azure_Load_Testing` +- `Azure_Monitor_Dashboard` +- `Azure_Network_Manager` +- `Azure_Orbital` +- `Azure_Sphere` +- `Azure_Storage_Mover` +- `Grafana` +- `Kubernetes_Fleet_Manager` +- `SSH_Keys` + +### Additional Categories + +- **azure_ecosystem** (3): Applens, Azure_Hybrid_Center, Collaborative_Service +- **azure_stack** (8): Azure_Stack, Capacity, Infrastructure_Backup, Multi_Tenancy, Offers, Plans, Updates, User_Subscriptions +- **azure_vmware_solution** (1): AVS +- **blockchain** (6): ABS_Member, Azure_Blockchain_Service, Azure_Token_Service, Blockchain_Applications, Consortium, Outbound_Connection +- **cxp** (2): Elixir, Elixir_Purple +- **devops** (10): API_Connections, Application_Insights, Azure_DevOps, Change_Analysis, CloudTest, Code_Optimization, DevOps_Starter, DevTest_Labs, Lab_Accounts, Lab_Services +- **hybrid_multicloud** (5): Azure_Operator_5G_Core, Azure_Operator_Insights, Azure_Operator_Nexus, Azure_Operator_Service_Manager, Azure_Programmable_Connectivity +- **integration** (21): API_Management_Services, App_Configuration, Azure_API_for_FHIR, Azure_Data_Catalog, Event_Grid_Domains, Event_Grid_Subscriptions, Event_Grid_Topics, Integration_Accounts, Integration_Environments, Integration_Service_Environments, Logic_Apps, Logic_Apps_Custom_Connector, Partner_Namespace, Partner_Registration, Partner_Topic, Relays, SQL_Data_Warehouses, SendGrid_Accounts, Service_Bus, Software_as_a_Service, System_Topic +- **internet_of_things** (3): Digital_Twins, Logic_Apps, Time_Series_Insights_Access_Policies +- **intune** (17): Azure_AD_Roles_and_Administrators, Client_Apps, Device_Compliance, Device_Configuration, Device_Enrollment, Device_Security_Apple, Device_Security_Google, Device_Security_Windows, Devices, Exchange_Access, Intune, Intune_For_Education, Mindaro, Security_Baselines, Software_Updates, Tenant_Status, eBooks +- **iot** (19): Azure_IoT_Operations, Azure_Maps_Accounts, Azure_Stack_HCI_Sizer, Device_Provisioning_Services, Digital_Twins, Event_Hubs, Function_Apps, Industrial_IoT, IoT_Central_Applications, IoT_Edge, IoT_Hub, Logic_Apps, Notification_Hubs, Stack_HCI_Premium, Stream_Analytics_Jobs, Time_Series_Data_Sets, Time_Series_Insights_Environments, Time_Series_Insights_Event_Sources, Windows10_Core_Services +- **management_governance** (32): Activity_Log, Advisor, Alerts, Application_Insights, Arc_Machines, Automation_Accounts, Azure_Arc, Azure_Lighthouse, Blueprints, Compliance, Cost_Management_and_Billing, Customer_Lockbox_for_MS_Azure, Diagnostics_Settings, Education, Log_Analytics_Workspaces, MachinesAzureArc, Managed_Applications_Center, Managed_Desktop, Metrics, Monitor, My_Customers, Operation_Log_Classic, Policy, Recovery_Services_Vaults, Resource_Graph_Explorer, Resources_Provider, Scheduler_Job_Collections, Service_Catalog_MAD, Service_Providers, Solutions, Universal_Print, User_Privacy +- **menu** (1): Keys +- **migrate** (5): Azure_Migrate, Cost_Management_and_Billing, Data_Box, Data_Box_Edge, Recovery_Services_Vaults +- **mixed_reality** (2): Remote_Rendering, Spatial_Anchor_Accounts +- **monitor** (1): SAP_Azure_Monitor +- **power_platform** (9): AIBuilder, CopilotStudio, Dataverse, PowerApps, PowerAutomate, PowerBI, PowerFx, PowerPages, PowerPlatform +- **preview** (9): Azure_Cloud_Shell, Azure_Sphere, Azure_Workbooks, IoT_Edge, Private_Link_Hub, RTOS, Static_Apps, Time_Series_Data_Sets, Web_Environment +- **web** (5): API_Center, App_Space, Azure_Media_Service, Notification_Hub_Namespaces, SignalR diff --git a/docs/shape-libraries/basic.md b/docs/shape-libraries/basic.md new file mode 100644 index 0000000..9f73040 --- /dev/null +++ b/docs/shape-libraries/basic.md @@ -0,0 +1,48 @@ +# basic + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.basic` + +## Usage + +```xml + + + +``` + + + +## Shapes (31) + +- `4_point_star` +- `6_point_star` +- `8_point_star` +- `banner` +- `cloud_callout` +- `cloud_rect` +- `cone` +- `cross` +- `document` +- `flash` +- `half_circle` +- `heart` +- `loud_callout` +- `moon` +- `mxgraph.basic` +- `no_symbol` +- `octagon` +- `orthogonal_triangle` +- `oval_callout` +- `parallelepiped` +- `pentagon` +- `pointed_oval` +- `rectangular_callout` +- `rounded_rectangular_callout` +- `smiley` +- `star` +- `sun` +- `tick` +- `trapezoid` +- `wave` +- `x` diff --git a/docs/shape-libraries/bpmn.md b/docs/shape-libraries/bpmn.md new file mode 100644 index 0000000..6f9117e --- /dev/null +++ b/docs/shape-libraries/bpmn.md @@ -0,0 +1,60 @@ +# bpmn + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.bpmn` + +## Usage + +```xml + + + +``` + +## Parameters + +- `outline` - Event type: `start`, `end`, `catching`, `throwing`, `none` +- `symbol` - Icon inside: `message`, `timer`, `error`, `cancel`, `compensation`, `link`, `terminate`, `general`, `multiple`, `rule` + +## Shapes (40) + +- `ad_hoc` +- `business_rule_task` +- `cancel_end` +- `cancel_intermediate` +- `compensation` +- `compensation_end` +- `compensation_intermediate` +- `error_end` +- `error_intermediate` +- `gateway` +- `gateway_and` +- `gateway_complex` +- `gateway_or` +- `gateway_xor_(data)` +- `gateway_xor_(event)` +- `general_end` +- `general_intermediate` +- `general_start` +- `link_end` +- `link_intermediate` +- `link_start` +- `loop` +- `loop_marker` +- `manual_task` +- `message_end` +- `message_intermediate` +- `message_start` +- `multiple_end` +- `multiple_instances` +- `multiple_intermediate` +- `multiple_start` +- `mxgraph.bpmn` +- `rule_intermediate` +- `rule_start` +- `script_task` +- `service_task` +- `terminate` +- `timer_intermediate` +- `timer_start` +- `user_task` diff --git a/docs/shape-libraries/cabinets.md b/docs/shape-libraries/cabinets.md new file mode 100644 index 0000000..553af7d --- /dev/null +++ b/docs/shape-libraries/cabinets.md @@ -0,0 +1,71 @@ +# cabinets + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.cabinets` + +## Usage + +```xml + + + +``` + + + +## Shapes (54) + +- `auxiliary_contact_contactor_1_32a` +- `auxiliary_contact_contactor_32_125a` +- `cb_1p` +- `cb_1p_x10` +- `cb_2p` +- `cb_2p_x10` +- `cb_3p` +- `cb_3p_x5` +- `cb_4p` +- `cb_4p_x5` +- `cb_auxiliary_contact` +- `contactor_125_400a` +- `contactor_1_32a` +- `contactor_32_125a` +- `din_rail` +- `distribution_block_4p_125a_11_connections` +- `distribution_block_4p_125a_11_connections_2` +- `mccb_25_63a_3p` +- `mccb_25_63a_4p` +- `mccb_63_250a_3p` +- `mccb_63_250a_4p` +- `motor_cb_125_400a` +- `motor_cb_1_32a` +- `motor_cb_32_125a` +- `motor_protection_cb` +- `motor_starter_125_400a` +- `motor_starter_1_32a` +- `motor_starter_32_125a` +- `motorized_switch_3p` +- `motorized_switch_4p` +- `mxgraph.cabinets` +- `overcurrent_relay_125_400a` +- `overcurrent_relay_1_32a` +- `overcurrent_relay_32_125a` +- `plugin_relay_1` +- `plugin_relay_2` +- `residual_current_device_2p` +- `residual_current_device_4p` +- `surge_protection_1p` +- `surge_protection_2p` +- `surge_protection_3p` +- `surge_protection_4p` +- `terminal_40mm2` +- `terminal_40mm2_x10` +- `terminal_4_6mm2` +- `terminal_4_6mm2_x10` +- `terminal_4mm2` +- `terminal_4mm2_x10` +- `terminal_50mm2` +- `terminal_50mm2_x10` +- `terminal_6_25mm2` +- `terminal_6_25mm2_x10` +- `terminal_75mm2` +- `terminal_75mm2_x10` diff --git a/docs/shape-libraries/cisco19.md b/docs/shape-libraries/cisco19.md new file mode 100644 index 0000000..ea1d70f --- /dev/null +++ b/docs/shape-libraries/cisco19.md @@ -0,0 +1,250 @@ +# cisco19 + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.cisco19` + +## Usage + +```xml + + + +``` + + + +## Shapes (233) + +- `3g_4g_indicator` +- `6500_vss` +- `6500_vss2` +- `access_control_and_trustsec` +- `aci` +- `aci2` +- `acibg` +- `acs` +- `ad_decoder` +- `ad_encoder` +- `analysis_correlation` +- `anomaly_detection` +- `anti_malware` +- `anti_malware2` +- `appnav` +- `asa_5500` +- `asr_1000` +- `asr_9000` +- `avc_application_visibility_control` +- `avc_application_visibility_control2` +- `bg1` +- `bg10` +- `bg2` +- `bg3` +- `bg4` +- `bg5` +- `bg6` +- `bg7` +- `bg8` +- `bg9` +- `blade_server` +- `branch` +- `branch2` +- `camera` +- `camera2` +- `cell_phone` +- `cell_phone2` +- `cisco_15800` +- `cisco_dna` +- `cisco_dna_center` +- `cisco_meetingplace_express` +- `cisco_security_manager` +- `cisco_unified_contact_center_enterprise_and_hosted` +- `cisco_unified_presence_service` +- `clock` +- `cloud` +- `cloud2` +- `cognitive` +- `collab1` +- `collab2` +- `collab3` +- `collab4` +- `communications_manager` +- `contact_center_express` +- `content_recording_streaming_server` +- `content_router` +- `csr_1000v` +- `da_decoder` +- `da_encoder` +- `data_center` +- `data_center2` +- `database_relational` +- `dns_server` +- `dns_server2` +- `dual_mode_access_point` +- `email_security` +- `fabric_interconnect` +- `fibre_channel_director_mds_9000` +- `fibre_channel_fabric_switch` +- `firewall` +- `flow_analytics` +- `flow_analytics2` +- `flow_collector` +- `h323` +- `handheld` +- `handheld2` +- `hdtv` +- `hdtv2` +- `home_office` +- `home_office2` +- `host_based_security` +- `hypervisor` +- `immersive_telepresence_endpoint` +- `ip_ip_gateway` +- `ip_phone` +- `ip_phone2` +- `ip_telephone_router` +- `ips_ids` +- `ironport` +- `ise` +- `joystick_keyboard` +- `joystick_keyboard2` +- `key` +- `key2` +- `l2_modular` +- `l2_modular2` +- `l2_switch` +- `l2_switch_with_dual_supervisor` +- `l3_modular` +- `l3_modular2` +- `l3_modular3` +- `l3_switch` +- `l3_switch_with_dual_supervisor` +- `laptop` +- `laptop2` +- `laptop_video_client` +- `laptop_video_client2` +- `layer3_nexus_5k_switch` +- `ldap` +- `ldap2` +- `load_balancer` +- `lock` +- `lock2` +- `media_server` +- `meeting_scheduling_and_management_server` +- `mesh_access_point` +- `monitor` +- `monitoring` +- `multipoint_meeting_server` +- `mxgraph.cisco19` +- `nac_appliance` +- `nam_virtual_service_blade` +- `net_mgmt_appliance` +- `netflow_router` +- `netflow_router2` +- `netflow_router3` +- `next_generation_intrusion_prevention_system` +- `nexus_1010` +- `nexus_1k` +- `nexus_1kv_vsm` +- `nexus_2000_10ge` +- `nexus_2k` +- `nexus_3k` +- `nexus_4k` +- `nexus_5k` +- `nexus_5k_with_integrated_vsm` +- `nexus_7k` +- `nexus_9300` +- `nexus_9500` +- `operations_manager` +- `phone_polycom` +- `phone_polycom2` +- `policy_configuration` +- `pos` +- `pos2` +- `posture_assessment` +- `primary_codec` +- `printer` +- `printer2` +- `router` +- `router_with_firewall` +- `router_with_firewall2` +- `router_with_voice` +- `rps` +- `secondary_codec` +- `secure_catalyst_switch_color` +- `secure_catalyst_switch_color2` +- `secure_catalyst_switch_color3` +- `secure_catalyst_switch_subdued` +- `secure_catalyst_switch_subdued2` +- `secure_endpoint_pc` +- `secure_endpoint_pc2` +- `secure_endpoints` +- `secure_endpoints2` +- `secure_router` +- `secure_server` +- `secure_server2` +- `secure_switch` +- `security_management` +- `server` +- `server2` +- `service_ready_engine` +- `set_top` +- `set_top2` +- `shield` +- `ssl_terminator` +- `stealthwatch_management_console_smc` +- `stealthwatch_management_console_smc2` +- `storage` +- `surveillance_camera` +- `surveillance_camera2` +- `tablet` +- `tablet2` +- `telepresence_endpoint` +- `telepresence_endpoint_twin_data_display` +- `telepresence_exchange` +- `threat_intelligence` +- `transcoder` +- `ucs_5108_blade_chassis` +- `ucs_c_series_server` +- `ucs_express` +- `unity` +- `upc_unified_personal_communicator` +- `upc_unified_personal_communicator2` +- `ups` +- `user` +- `user2` +- `vbond` +- `video_analytics` +- `video_call_server` +- `video_gateway` +- `virtual_desktop_service` +- `virtual_matrix_switch` +- `virtual_private_network` +- `virtual_private_network2` +- `virtual_private_network_connector` +- `vmanage` +- `vpn_concentrator` +- `vsmart` +- `vts` +- `vts2` +- `web_application_firewall` +- `web_reputation_filtering` +- `web_reputation_filtering_2` +- `web_security` +- `web_security_services` +- `web_security_services2` +- `webex` +- `wifi_indicator` +- `wireless_access_point` +- `wireless_access_point2` +- `wireless_bridge` +- `wireless_bridge2` +- `wireless_connector` +- `wireless_intrusion_prevention` +- `wireless_lan_controller` +- `wireless_location_appliance` +- `wireless_router` +- `workgroup_switch` +- `workstation` +- `workstation2` +- `x509_certificate` +- `x509_certificate2` diff --git a/docs/shape-libraries/citrix.md b/docs/shape-libraries/citrix.md new file mode 100644 index 0000000..cfa0668 --- /dev/null +++ b/docs/shape-libraries/citrix.md @@ -0,0 +1,115 @@ +# citrix + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.citrix` + +## Usage + +```xml + + + +``` + + + +## Shapes (98) + +- `1u_2u_server` +- `access_card` +- `branch_repeater` +- `browser` +- `cache_server` +- `calendar` +- `cell_phone` +- `chassis` +- `citrix_hdx` +- `citrix_logo` +- `cloud` +- `command_center` +- `database` +- `database_server` +- `datacenter` +- `desktop` +- `desktop_web` +- `dhcp_server` +- `directory_server` +- `dns_server` +- `document` +- `edgesight_server` +- `file_server` +- `firewall` +- `ftp_server` +- `geolocation_database` +- `globe` +- `goto_meeting` +- `government` +- `home_office` +- `hq_enterprise` +- `inspection` +- `ip_phone` +- `kiosk` +- `laptop_1` +- `laptop_2` +- `license_server` +- `merchandising_server` +- `middleware` +- `mxgraph.citrix` +- `netscaler_gateway` +- `netscaler_mpx` +- `netscaler_sdx` +- `netscaler_vpx` +- `pbx_server` +- `pda` +- `podio` +- `printer` +- `process` +- `provisioning_server` +- `proxy_server` +- `radius_server` +- `remote_office` +- `reporting` +- `role_appcontroller` +- `role_applications` +- `role_cloudbridge` +- `role_desktops` +- `role_load_testing_controller` +- `role_load_testing_launcher` +- `role_receiver` +- `role_repeater` +- `role_secure_access` +- `role_security` +- `role_services` +- `role_storefront` +- `role_storefront_services` +- `role_synchronizer` +- `role_xenmobile` +- `role_xenmobile_device_manager` +- `router` +- `security` +- `sharefile` +- `site` +- `smtp_server` +- `storefront_services` +- `switch` +- `tablet_1` +- `tablet_2` +- `thin_client` +- `tower_server` +- `user_control` +- `users` +- `web_server` +- `web_service` +- `worxenroll` +- `worxhome` +- `worxmail` +- `worxweb` +- `xenapp_server` +- `xenapp_services` +- `xenapp_web` +- `xencenter` +- `xenclient` +- `xenclient_synchronizer` +- `xendesktop_server` +- `xenmobile` +- `xenserver` diff --git a/docs/shape-libraries/electrical.md b/docs/shape-libraries/electrical.md new file mode 100644 index 0000000..ab41c00 --- /dev/null +++ b/docs/shape-libraries/electrical.md @@ -0,0 +1,50 @@ +# electrical + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.electrical` + +## Usage + +```xml + + + +``` + +Shapes are organized by category: `mxgraph.electrical.{category}.{shape}` + +## Categories + +### resistors +- `resistor_1` +- `resistor_2` + +### capacitors +- `capacitor_1` +- `capacitor_3` + +### inductors +- `inductor_3` +- `transformer_1` + +### diodes +- `diode` +- `zener_diode_1` + +### transistors +- `npn_transistor_1` +- `pnp_transistor_1` + +### mosfets1 +- `n-channel_mosfet_1` +- `p-channel_mosfet_1` + +### logic_gates +- `logic_gate` +- `dual_inline_ic` + +### electro-mechanical +- `singleSwitch` +- `pushbutton` + +(See draw.io Electrical shape library for complete list) diff --git a/docs/shape-libraries/floorplan.md b/docs/shape-libraries/floorplan.md new file mode 100644 index 0000000..ab67dd1 --- /dev/null +++ b/docs/shape-libraries/floorplan.md @@ -0,0 +1,62 @@ +# floorplan + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.floorplan` + +## Usage + +```xml + + + +``` + + + +## Shapes (45) + +- `bathtub` +- `bathtub2` +- `bed_double` +- `bed_single` +- `bookcase` +- `chair` +- `copier` +- `couch` +- `crt_tv` +- `desk_corner` +- `desk_corner_2` +- `dresser` +- `drying_machine` +- `elevator` +- `fireplace` +- `flat_tv` +- `floor_lamp` +- `laptop` +- `mxgraph.floorplan` +- `office_chair` +- `piano` +- `plant` +- `printer` +- `range_1` +- `range_2` +- `refrigerator` +- `shower` +- `shower2` +- `sink_1` +- `sink_2` +- `sink_22` +- `sink_double` +- `sink_double2` +- `sofa` +- `spiral_stairs` +- `table` +- `table_1` +- `table_2` +- `table_3` +- `table_4` +- `table_5` +- `toilet` +- `washing_machine` +- `water_cooler` +- `workstation` diff --git a/docs/shape-libraries/flowchart.md b/docs/shape-libraries/flowchart.md new file mode 100644 index 0000000..9c8e4a8 --- /dev/null +++ b/docs/shape-libraries/flowchart.md @@ -0,0 +1,52 @@ +# flowchart + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.flowchart` + +## Usage + +```xml + + + +``` + + + +## Shapes (35) + +- `annotation_1` +- `annotation_2` +- `card` +- `collate` +- `data` +- `database` +- `decision` +- `delay` +- `direct_data` +- `display` +- `document` +- `extract_or_measurement` +- `internal_storage` +- `loop_limit` +- `manual_input` +- `manual_operation` +- `merge_or_storage` +- `multi-document` +- `mxgraph.flowchart` +- `off-page_reference` +- `on-page_reference` +- `or` +- `paper_tape` +- `parallel_mode` +- `predefined_process` +- `preparation` +- `process` +- `sequential_data` +- `sort` +- `start_1` +- `start_2` +- `stored_data` +- `summing_function` +- `terminator` +- `transfer` diff --git a/docs/shape-libraries/fluidpower.md b/docs/shape-libraries/fluidpower.md new file mode 100644 index 0000000..58abfa2 --- /dev/null +++ b/docs/shape-libraries/fluidpower.md @@ -0,0 +1,264 @@ +# fluidpower + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.fluid_power` + +## Usage + +```xml + + + +``` + +Shapes are named like x10010, x10020, etc. + +## Shapes (247) + +- `mxgraph.fluid_power` +- `x10010` +- `x10020` +- `x10030` +- `x10040` +- `x10050` +- `x10060` +- `x10070` +- `x10080` +- `x10090` +- `x10100` +- `x10110` +- `x10120` +- `x10130` +- `x10140` +- `x10150` +- `x10160` +- `x10170` +- `x10180` +- `x10190` +- `x10200` +- `x10210` +- `x10220` +- `x10230` +- `x10240` +- `x10250` +- `x10260` +- `x10270` +- `x10280` +- `x10290` +- `x10300` +- `x10310` +- `x10320` +- `x10330` +- `x10340` +- `x10350` +- `x10360` +- `x10370` +- `x10380` +- `x10390` +- `x10400` +- `x10410` +- `x10420` +- `x10430` +- `x10440` +- `x10441` +- `x10442` +- `x10450` +- `x10460` +- `x10470` +- `x10480` +- `x10490` +- `x10500` +- `x10510` +- `x10520` +- `x10530` +- `x10540` +- `x10550` +- `x10560` +- `x10570` +- `x10580` +- `x10590` +- `x10600` +- `x10610` +- `x10620` +- `x10630` +- `x10640` +- `x10650` +- `x10660` +- `x10670` +- `x10680` +- `x10690` +- `x10700` +- `x10710` +- `x10720` +- `x10730` +- `x10740` +- `x10750` +- `x10760` +- `x10770` +- `x10780` +- `x10790` +- `x10800` +- `x10810` +- `x10820` +- `x10830` +- `x10840` +- `x10850` +- `x10860` +- `x10870` +- `x10880` +- `x10890` +- `x10900` +- `x10910` +- `x10920` +- `x10930` +- `x10940` +- `x10950` +- `x10960` +- `x10970` +- `x10980` +- `x10990` +- `x11000` +- `x11010` +- `x11020` +- `x11030` +- `x11040` +- `x11050` +- `x11060` +- `x11070` +- `x11080` +- `x11090` +- `x11100` +- `x11110` +- `x11120` +- `x11130` +- `x11140` +- `x11150` +- `x11160` +- `x11170` +- `x11180` +- `x11190` +- `x11200` +- `x11210` +- `x11220` +- `x11230` +- `x11240` +- `x11250` +- `x11260` +- `x11270` +- `x11280` +- `x11290` +- `x11300` +- `x11310` +- `x11320` +- `x11330` +- `x11340` +- `x11350` +- `x11360` +- `x11370` +- `x11380` +- `x11390` +- `x11400` +- `x11410` +- `x11420` +- `x11430` +- `x11440` +- `x11450` +- `x11460` +- `x11470` +- `x11480` +- `x11490` +- `x11500` +- `x11510` +- `x11520` +- `x11530` +- `x11540` +- `x11550` +- `x11560` +- `x11570` +- `x11580` +- `x11590` +- `x11600` +- `x11610` +- `x11620` +- `x11630` +- `x11640` +- `x11650` +- `x11660` +- `x11670` +- `x11680` +- `x11690` +- `x11700` +- `x11710` +- `x11720` +- `x11730` +- `x11740` +- `x11750` +- `x11760` +- `x11770` +- `x11780` +- `x11790` +- `x11800` +- `x11810` +- `x11820` +- `x11830` +- `x11840` +- `x11850` +- `x11860` +- `x11870` +- `x11880` +- `x11890` +- `x11900` +- `x11910` +- `x11920` +- `x11930` +- `x11940` +- `x11950` +- `x11960` +- `x11970` +- `x11980` +- `x11990` +- `x12000` +- `x12010` +- `x12020` +- `x12030` +- `x12040` +- `x12050` +- `x12060` +- `x12070` +- `x12080` +- `x12090` +- `x12100` +- `x12110` +- `x12120` +- `x12130` +- `x12140` +- `x12150` +- `x12160_detailed` +- `x12160_simplified` +- `x12170` +- `x12180` +- `x12190` +- `x12200` +- `x12210` +- `x12220` +- `x12230` +- `x12240` +- `x12250` +- `x12260` +- `x12270` +- `x12280` +- `x12290` +- `x12300` +- `x12310` +- `x12320` +- `x12330` +- `x12340` +- `x12350` +- `x12360` +- `x12370` +- `x12380` +- `x12390` +- `x12400` +- `x12410` +- `x12420` +- `x12430` diff --git a/docs/shape-libraries/gcp2.md b/docs/shape-libraries/gcp2.md new file mode 100644 index 0000000..729dcb6 --- /dev/null +++ b/docs/shape-libraries/gcp2.md @@ -0,0 +1,315 @@ +# gcp2 + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.gcp2` + +## Usage + +```xml + + + +``` + + + +## Shapes (298) + +- `a7_power` +- `admin_connected` +- `admob` +- `advanced_solutions_lab` +- `ai_hub` +- `anomaly_detection` +- `api_analytics` +- `api_monetization` +- `apigee_api_platform` +- `apigee_sense` +- `app_engine` +- `app_engine_icon` +- `application` +- `application_system` +- `arrow_cycle` +- `arrows_system` +- `aspect_ratio` +- `automl_natural_language` +- `automl_tables` +- `automl_translation` +- `automl_video_intelligence` +- `automl_vision` +- `avere` +- `beacon` +- `beyondcorp` +- `big_query` +- `bigquery` +- `biomedical_beaker` +- `biomedical_test_tube` +- `biomedical_trio` +- `blank` +- `blue_hexagon` +- `bucket` +- `bucket_scale` +- `calculator` +- `campaign_manager` +- `capabilities` +- `certified_industry_standard` +- `check` +- `check_2` +- `check_available` +- `check_scale` +- `circuit_board` +- `clock` +- `cloud` +- `cloud_apis` +- `cloud_armor` +- `cloud_automl` +- `cloud_bigtable` +- `cloud_cdn` +- `cloud_checkmark` +- `cloud_code` +- `cloud_composer` +- `cloud_computer` +- `cloud_connected_insight` +- `cloud_data_catalog` +- `cloud_data_fusion` +- `cloud_dataflow` +- `cloud_dataflow_icon` +- `cloud_datalab` +- `cloud_dataprep` +- `cloud_dataproc` +- `cloud_dataproc_icon` +- `cloud_datastore` +- `cloud_deployment_manager` +- `cloud_dns` +- `cloud_endpoints` +- `cloud_external_ip_addresses` +- `cloud_filestore` +- `cloud_firestore` +- `cloud_firewall_rules` +- `cloud_functions` +- `cloud_iam` +- `cloud_inference_api` +- `cloud_information` +- `cloud_iot_core` +- `cloud_iot_edge` +- `cloud_jobs_api` +- `cloud_load_balancing` +- `cloud_machine_learning` +- `cloud_memorystore` +- `cloud_messaging` +- `cloud_monitoring` +- `cloud_nat` +- `cloud_natural_language_api` +- `cloud_network` +- `cloud_pubsub` +- `cloud_router` +- `cloud_routes` +- `cloud_run` +- `cloud_scheduler` +- `cloud_security` +- `cloud_security_command_center` +- `cloud_security_scanner` +- `cloud_server` +- `cloud_service_mesh` +- `cloud_spanner` +- `cloud_speech_api` +- `cloud_sql` +- `cloud_storage` +- `cloud_sub_pub` +- `cloud_tasks` +- `cloud_test_lab` +- `cloud_text_to_speech` +- `cloud_tools_for_powershell` +- `cloud_tpu` +- `cloud_translation_api` +- `cloud_video_intelligence_api` +- `cloud_vision_api` +- `cloud_vpn` +- `cluster` +- `compute_engine` +- `compute_engine_2` +- `compute_engine_icon` +- `connected` +- `container_builder` +- `container_engine` +- `container_engine_icon` +- `container_optimized_os` +- `container_registry` +- `cost` +- `cost_arrows` +- `cost_savings` +- `data_access` +- `data_increase` +- `data_loss_prevention_api` +- `data_storage_cost` +- `data_studio` +- `database` +- `database_2` +- `database_3` +- `database_cycle` +- `database_speed` +- `database_uploading` +- `debugger` +- `dedicated_game_server` +- `dedicated_interconnect` +- `desktop` +- `desktop_and_mobile` +- `developer_portal` +- `dialogflow_enterprise_edition` +- `enhance_ui` +- `enhance_ui_2` +- `error_reporting` +- `external_data_center` +- `external_data_resource` +- `external_payment_form` +- `fastly` +- `files` +- `firebase` +- `folders` +- `forseti_lockup` +- `forseti_logo` +- `frontend_platform_services` +- `game` +- `gateway` +- `gateway_icon` +- `gear` +- `gear_arrow` +- `gear_chain` +- `gear_load` +- `genomics` +- `gke_on_prem` +- `globe_world` +- `google_ad_manager` +- `google_ads` +- `google_analytics` +- `google_analytics_360` +- `google_cloud_platform` +- `google_cloud_platform_lockup` +- `google_network` +- `google_network_edge_cache` +- `google_play_game_service` +- `gpu` +- `half_cloud` +- `https_load_balancer` +- `identity_aware_proxy` +- `image_services` +- `increase_cost_arrows` +- `internal_payment_authorization` +- `internet_connection` +- `istio_logo` +- `key` +- `key_management_service` +- `kubernetes_logo` +- `kubernetes_name` +- `laptop` +- `legacy_cloud` +- `legacy_cloud_2` +- `lifecycle` +- `lightbulb` +- `list` +- `live` +- `load_balancing` +- `loading` +- `loading_2` +- `loading_3` +- `lock` +- `logging` +- `logs_api` +- `management_security` +- `maps_api` +- `mem_instances` +- `memcache` +- `memory_card` +- `mobile_devices` +- `modifiers_autoscaling` +- `modifiers_custom_virtual_machine` +- `modifiers_high_cpu_machine` +- `modifiers_high_memory_machine` +- `modifiers_preemptable_vm` +- `modifiers_shared_core_machine_f1` +- `modifiers_shared_core_machine_g1` +- `modifiers_standard_machine` +- `modifiers_storage` +- `monitor` +- `monitor_2` +- `mxgraph.gcp2` +- `nat` +- `network` +- `network_load_balancer` +- `node` +- `outline_blank_1` +- `outline_blank_2` +- `outline_blank_3` +- `outline_highcomp` +- `outline_highmem` +- `partner_interconnect` +- `payment` +- `people_security_management` +- `persistent_disk` +- `persistent_disk_snapshot` +- `phone` +- `phone_android` +- `placeholder` +- `play_gear` +- `play_start` +- `prediction_api` +- `premium_network_tier` +- `primary` +- `process` +- `profiler` +- `push_notification_service` +- `recommendations_ai` +- `record` +- `replication_controller` +- `replication_controller_2` +- `replication_controller_3` +- `report` +- `repository` +- `repository_2` +- `repository_3` +- `repository_primary` +- `retail` +- `safety` +- `save` +- `scale` +- `scheduled_tasks` +- `search` +- `search_api` +- `security_key_enforcement` +- `segments` +- `segments_2` +- `segments_overlap` +- `servers_stacked` +- `service` +- `service_discovery` +- `social_media_time` +- `solution` +- `speaker` +- `speed` +- `squid_proxy` +- `stackdriver` +- `stacked_ownership` +- `standard_network_tier` +- `storage` +- `stream` +- `swap` +- `systems_check` +- `tape_record` +- `task_queues` +- `task_queues_2` +- `tensorflow_lockup` +- `tensorflow_logo` +- `thumbs_up` +- `time_clock` +- `trace` +- `traffic_director` +- `transfer_appliance` +- `users` +- `view_list` +- `virtual_file_system` +- `virtual_private_cloud` +- `visibility` +- `vpn` +- `vpn_gateway` +- `webcam` +- `website` diff --git a/docs/shape-libraries/infographic.md b/docs/shape-libraries/infographic.md new file mode 100644 index 0000000..2a98611 --- /dev/null +++ b/docs/shape-libraries/infographic.md @@ -0,0 +1,24 @@ +# infographic + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.infographic` + +## Usage + +```xml + + + +``` + +## Shapes + +- `shadedCube` (needs `isoAngle=15;`) +- `ribbonSimple` (needs `notch1=20;notch2=20;`) +- `ribbonRolled` +- `ribbonDoubleFolded` +- `shadedTriangle` +- `shadedPyramid` +- `cylinder` +- `banner` +- `flag` diff --git a/docs/shape-libraries/kubernetes.md b/docs/shape-libraries/kubernetes.md new file mode 100644 index 0000000..da023d3 --- /dev/null +++ b/docs/shape-libraries/kubernetes.md @@ -0,0 +1,58 @@ +# kubernetes + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.kubernetes` + +## Usage + +```xml + + + +``` + + + +## Shapes (41) + +- `api` +- `c_c_m` +- `c_m` +- `c_role` +- `cm` +- `crb` +- `crd` +- `cronjob` +- `deploy` +- `ds` +- `ep` +- `etcd` +- `frame` +- `group` +- `hpa` +- `ing` +- `job` +- `k_proxy` +- `kubelet` +- `limits` +- `master` +- `mxgraph.kubernetes` +- `netpol` +- `node` +- `ns` +- `pod` +- `psp` +- `pv` +- `pvc` +- `quota` +- `rb` +- `role` +- `rs` +- `sa` +- `sc` +- `sched` +- `secret` +- `sts` +- `svc` +- `user` +- `vol` diff --git a/docs/shape-libraries/lean_mapping.md b/docs/shape-libraries/lean_mapping.md new file mode 100644 index 0000000..811a18a --- /dev/null +++ b/docs/shape-libraries/lean_mapping.md @@ -0,0 +1,31 @@ +# lean_mapping + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.lean_mapping` + +## Usage + +```xml + + + +``` + + + +## Shapes (14) + +- `airplane_7` +- `electronic_info_flow` +- `finished_goods_to_customer` +- `go_see_production_scheduling` +- `kaizen_lightening_burst` +- `kanban_post` +- `load_leveling` +- `manual_info_flow` +- `move_by_forklift` +- `mrp_erp` +- `mxgraph.lean_mapping` +- `operator` +- `quality_problem` +- `verbal` diff --git a/docs/shape-libraries/mscae.md b/docs/shape-libraries/mscae.md new file mode 100644 index 0000000..5d935ac --- /dev/null +++ b/docs/shape-libraries/mscae.md @@ -0,0 +1,22 @@ +# mscae + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.mscae` + +## Usage + +```xml + + + +``` + +## Categories + +Shapes are organized by category: `mscae.cloud`, `mscae.intune`, `mscae.oms`, `mscae.system_center` + +- `conditional_access_exchange` +- `conditional_access_sharepoint` +- `primary_site` + +(See draw.io for complete shape list within each category) diff --git a/docs/shape-libraries/network.md b/docs/shape-libraries/network.md new file mode 100644 index 0000000..4764157 --- /dev/null +++ b/docs/shape-libraries/network.md @@ -0,0 +1,72 @@ +# network + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.networks` + +## Usage + +```xml + + + +``` + +## Shapes (57) + +- `biometric_reader` +- `bus` +- `business_center` +- `cloud` +- `comm_link` +- `comm_link_edge` +- `community` +- `copier` +- `desktop_pc` +- `external_storage` +- `firewall` +- `gamepad` +- `hub` +- `laptop` +- `load_balancer` +- `mail_server` +- `mainframe` +- `mobile` +- `modem` +- `monitor` +- `nas_filer` +- `patch_panel` +- `phone_1` +- `phone_2` +- `printer` +- `proxy_server` +- `rack` +- `radio_tower` +- `router` +- `satellite` +- `satellite_dish` +- `scanner` +- `secured` +- `security_camera` +- `server` +- `server_storage` +- `storage` +- `supercomputer` +- `switch` +- `tablet` +- `tape_storage` +- `terminal` +- `unsecure` +- `ups_enterprise` +- `ups_small` +- `usb_stick` +- `user_female` +- `user_male` +- `users` +- `video_projector` +- `video_projector_screen` +- `virtual_pc` +- `virtual_server` +- `virus` +- `web_server` +- `wireless_hub` +- `wireless_modem` diff --git a/docs/shape-libraries/openstack.md b/docs/shape-libraries/openstack.md new file mode 100644 index 0000000..b92b854 --- /dev/null +++ b/docs/shape-libraries/openstack.md @@ -0,0 +1,36 @@ +# openstack + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.openstack` + +## Usage + +```xml + + + +``` + + + +## Shapes (19) + +- `cinder_volume` +- `cinder_volumeattachment` +- `designate_recordset` +- `designate_zone` +- `heat_autoscalinggroup` +- `heat_resourcegroup` +- `heat_scalingpolicy` +- `mxgraph.openstack` +- `neutron_floatingip` +- `neutron_floatingipassociation` +- `neutron_net` +- `neutron_port` +- `neutron_router` +- `neutron_routerinterface` +- `neutron_securitygroup` +- `neutron_subnet` +- `nova_keypair` +- `nova_server` +- `swift_container` diff --git a/docs/shape-libraries/pid.md b/docs/shape-libraries/pid.md new file mode 100644 index 0000000..58b088a --- /dev/null +++ b/docs/shape-libraries/pid.md @@ -0,0 +1,22 @@ +# pid + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.pid2valves`, `mxgraph.pid2inst`, `mxgraph.pid2misc` + +## Usage + +```xml + + + +``` + +## Valve Types + +For `mxgraph.pid2valves.valve`, use `valveType=` with: +- `gate`, `globe`, `needle`, `ball`, `butterfly`, `diaphragm`, `plug`, `check` + +## Other Prefixes + +- `mxgraph.pid2inst` - Instruments (discInst, sharedCont, compFunc) +- `mxgraph.pid2misc` - Miscellaneous diff --git a/docs/shape-libraries/rack.md b/docs/shape-libraries/rack.md new file mode 100644 index 0000000..18ecc3f --- /dev/null +++ b/docs/shape-libraries/rack.md @@ -0,0 +1,57 @@ +# rack + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.rack` + +## Usage + +```xml + + + +``` + +Shapes are organized by vendor: `mxgraph.rack.{vendor}.{model}` + +## Vendors + +### F5 + +- `arx_500` +- `big_ip_1600` +- `big_ip_2000` +- `big_ip_4000` + +### Dell + +- `dell_poweredge_1u` +- `poweredge_630` +- `poweredge_730` + +### HPE Aruba + +HPE Aruba shapes have subcategories: `mxgraph.rack.hpe_aruba.{category}.{model}` + +**gateways_controllers:** +- `aruba_7010_mobility_controller_front` +- `aruba_7010_mobility_controller_rear` +- `aruba_7024_mobility_controller_front` +- `aruba_7205_mobility_controller_front` + +**security:** +- `aruba_clearpass_c1000_front` +- `aruba_clearpass_c2000_front` +- `aruba_clearpass_c3000_front` + +**switches:** +- `j9772a_2530_48g_poeplus_switch` +- `j9773a_2530_24g_poeplus_switch` +- `jl253a_aruba_2930f_24g_4sfpplus_switch` + +### General (rackGeneral) + +Use `mxgraph.rackGeneral.{shape}` for generic rack items: +- `rackCabinet3` +- `plate` + +(See draw.io Rack shape library for complete list) diff --git a/docs/shape-libraries/salesforce.md b/docs/shape-libraries/salesforce.md new file mode 100644 index 0000000..4356243 --- /dev/null +++ b/docs/shape-libraries/salesforce.md @@ -0,0 +1,116 @@ +# salesforce + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.salesforce` + +## Usage + +```xml + + + +``` + +Replace `analytics` with any shape from the list below. + + + +## Shapes (97) + +- `analytics` +- `analytics2` +- `apps` +- `apps2` +- `automation` +- `automation2` +- `automotive` +- `automotive2` +- `bots` +- `bots2` +- `builders` +- `builders2` +- `channels` +- `channels2` +- `commerce` +- `commerce2` +- `communications` +- `communications2` +- `consumer_goods` +- `consumer_goods2` +- `customer_360` +- `customer_3602` +- `data` +- `data2` +- `education` +- `education2` +- `employees` +- `employees2` +- `energy` +- `energy2` +- `field_service` +- `field_service2` +- `financial_services` +- `financial_services2` +- `government` +- `government2` +- `health` +- `health2` +- `heroku` +- `heroku2` +- `inbox` +- `inbox2` +- `industries` +- `industries2` +- `integration` +- `integration2` +- `iot` +- `iot2` +- `learning` +- `learning2` +- `loyalty` +- `loyalty2` +- `manufacturing` +- `manufacturing2` +- `marketing` +- `marketing2` +- `media` +- `media2` +- `mxgraph.salesforce` +- `non_profit` +- `non_profit2` +- `partners` +- `partners2` +- `personalization` +- `personalization2` +- `philantrophy` +- `philantrophy2` +- `platform` +- `platform2` +- `privacy` +- `privacy2` +- `retail` +- `retail2` +- `sales` +- `sales2` +- `segments` +- `segments2` +- `service` +- `service2` +- `smb` +- `smb2` +- `social_studio` +- `social_studio2` +- `stream` +- `stream2` +- `success` +- `success2` +- `sustainability` +- `sustainability2` +- `transportation_and_technology` +- `transportation_and_technology2` +- `web` +- `web2` +- `work_com` +- `work_com2` +- `workflow` +- `workflow2` diff --git a/docs/shape-libraries/sap.md b/docs/shape-libraries/sap.md new file mode 100644 index 0000000..7c6853f --- /dev/null +++ b/docs/shape-libraries/sap.md @@ -0,0 +1,179 @@ +# sap + +**Type:** SVG images +**Path:** `img/lib/sap/` + +## Usage + +```xml + + + +``` + +## Shapes (164) + +- `1` +- `2` +- `3` +- `4` +- `5` +- `6` +- `7` +- `8` +- `9` +- `10` +- `11` +- `12` +- `13` +- `Adapter` +- `Admin` +- `Alert` +- `API` +- `API_Business_Hub_Enterprise` +- `App` +- `Application_Autoscaler` +- `Application_Frontend_Service` +- `Application_Vulnerability_Report` +- `Building` +- `Business_Application_Studio` +- `Business_Entity_Recognition` +- `Business_Process_Model_Connector_for_SAP_Signavio_Solutions` +- `Cloud` +- `Cloud_Connector` +- `Cloud_Connector2` +- `Cloud_Integration_Automation` +- `Cloud_Integration_Automation2` +- `Cloud_Transport_Management` +- `Data_Attribute_Recommendation` +- `Deploy` +- `Desktop` +- `Devices` +- `Document` +- `Document_Information_Extraction` +- `Documents` +- `Edge_Integration_Cell` +- `Event` +- `Extensibility_Service` +- `Factory` +- `Feature` +- `HTML5_App_Repository` +- `Identity_Authentication` +- `Identity_Authentication2` +- `Identity_Directory` +- `Identity_Directory2` +- `Identity_Provisioning` +- `Identity_Provisioning2` +- `Info` +- `Intelligent_Situation_Automation` +- `Invoice_Object_Recommendation` +- `Invoice_Object_Recommendation2` +- `Key` +- `Landscape_Portal_for_SAP_S4HANA_Cloud_ABAP_Environment` +- `Link` +- `Locked` +- `Machine` +- `Message` +- `Mobile` +- `OAuth_20` +- `Object_Store_on_SAP_BTP` +- `On-Premise` +- `Personalized_Recommendation` +- `SAP_AI_Core` +- `SAP_AI_Launchpad` +- `SAP_Alert_Notification_service_for_SAP_BTP` +- `SAP_Analytics_Cloud` +- `SAP_Analytics_Cloud_Embedded_Edition` +- `SAP_Application_Logging_service_for_SAP_BTP` +- `SAP_Asset_Performance_Management` +- `SAP_Audit_Log_Service` +- `SAP_Authorization_Management_Service` +- `SAP_Authorization_and_Trust_Management_service` +- `SAP_Automation_Pilot` +- `SAP_BTP,_ABAP_environment` +- `SAP_BTP,_Cloud_Foundry_runtime` +- `SAP_BTP,_Kyma_runtime` +- `SAP_Build` +- `SAP_Build_Apps` +- `SAP_Build_Apps_-_Copy` +- `SAP_Build_Code` +- `SAP_Build_Process_Automation` +- `SAP_Build_Process_Automation_-_Copy` +- `SAP_Build_Work_Zone_-_Advanced_Edition` +- `SAP_Build_Work_Zone_-_Standard_Edition` +- `SAP_Business_Accelerator_Hub` +- `SAP_Business_Data_Cloud` +- `SAP_Cloud_ALM` +- `SAP_Cloud_Application_Programming_Model` +- `SAP_Cloud_Identity,_SAP_Malware_Scanning_Service` +- `SAP_Cloud_Identity_Service` +- `SAP_Cloud_Logging` +- `SAP_Cloud_Management_Service` +- `SAP_Cloud_Transport_Management` +- `SAP_Collaborative_Demand_and_Capacity_Management` +- `SAP_Connectivity_Service` +- `SAP_Content_Agent_Service` +- `SAP_Continuous_Integration_and_Delivery` +- `SAP_Credential_Store` +- `SAP_Custom_Domain_service` +- `SAP_Data_Privacy_Integration` +- `SAP_Data_Retention_Manager` +- `SAP_Datasphere` +- `SAP_Destination_service` +- `SAP_Digital_Assistant` +- `SAP_Digital_Assistant_Service` +- `SAP_Digital_Manufacturing` +- `SAP_Document_Grounding` +- `SAP_Document_Management_Service` +- `SAP_Event_Broker_for_SAP_Cloud_Applications` +- `SAP_Green_Token` +- `SAP_HANA_Cloud` +- `SAP_HANA_Spatial_Services` +- `SAP_Health_Data_Services_for_FHIR` +- `SAP_Integration_Suite` +- `SAP_Integration_Suite_-_API_Managment` +- `SAP_Integration_Suite_-_Advanced_Event_Mesh` +- `SAP_Integration_Suite_-_Cloud_Integration` +- `SAP_Integration_Suite_-_Data_Space_Integration` +- `SAP_Integration_Suite_-_Event_Mesh` +- `SAP_Integration_Suite_-_Integration_Advisor` +- `SAP_Integration_Suite_-_Integration_Assessment` +- `SAP_Integration_Suite_-_Migration_Assessment` +- `SAP_Integration_Suite_-_Open_Connectors` +- `SAP_Integration_Suite_-_SAP_Graph` +- `SAP_Integration_Suite_-_Trading_Partner_Management` +- `SAP_Job_Scheduling_service` +- `SAP_Keystore_Service` +- `SAP_Landscape_Management_Cloud` +- `SAP_Logo` +- `SAP_Master_Data_Governance` +- `SAP_Master_Data_Integration` +- `SAP_Mobile_Services` +- `SAP_Monitoring_service_for_SAP_BTP` +- `SAP_Omnichannel_Promotion_Pricing` +- `SAP_PKI_Certificate_Service` +- `SAP_Persistence_Service_ASE` +- `SAP_Personal_Data_Manager` +- `SAP_Private_Link_service` +- `SAP_Project_and_Resource_Management` +- `SAP_Responsibility_Management_Service` +- `SAP_S4HANA_Cloud_for_Intelligent_Intercompany_Reconciliation` +- `SAP_S4HANA_for_MS_Teams` +- `SAP_Secure_Login_Service_for_SAP_GUI` +- `SAP_Service_Manager` +- `SAP_Software_as_a_Service_Provisioning_Service` +- `SAP_Solution_Lifecycle_Management_Service` +- `SAP_Sustainability_Data_Exchange` +- `SAP_Task_Center` +- `SAP_Translation_Hub` +- `SAP_Variant_Configuration_and_Pricing` +- `SAP_Watch_List_Screening` +- `Service_Ticket_Intelligence` +- `Service_Ticket_Intelligence2` +- `Settings` +- `Success` +- `Third_Party` +- `UI5_flexibility_for_key_users` +- `UI_Theme_Designer` +- `User` +- `Web` diff --git a/docs/shape-libraries/sitemap.md b/docs/shape-libraries/sitemap.md new file mode 100644 index 0000000..bdd3cac --- /dev/null +++ b/docs/shape-libraries/sitemap.md @@ -0,0 +1,68 @@ +# sitemap + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.sitemap` + +## Usage + +```xml + + + +``` + + + +## Shapes (51) + +- `about_us` +- `audio` +- `biography` +- `blog` +- `calendar` +- `chart` +- `chat` +- `cloud` +- `contact` +- `contact_us` +- `document` +- `download` +- `error` +- `faq` +- `form` +- `gallery` +- `game` +- `home` +- `info` +- `jobs` +- `log` +- `login` +- `mail` +- `map` +- `mxgraph.sitemap` +- `news` +- `page` +- `payment` +- `photo` +- `portfolio` +- `post` +- `pricing` +- `print` +- `products` +- `profile` +- `references` +- `script` +- `search` +- `security` +- `services` +- `settings` +- `shopping` +- `sitemap` +- `slideshow` +- `sports` +- `success` +- `text` +- `upload` +- `user` +- `video` +- `warning` diff --git a/docs/shape-libraries/vvd.md b/docs/shape-libraries/vvd.md new file mode 100644 index 0000000..7d9540d --- /dev/null +++ b/docs/shape-libraries/vvd.md @@ -0,0 +1,112 @@ +# vvd + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.vvd` + +## Usage + +```xml + + + +``` + + + +## Shapes (95) + +- `administrator` +- `app` +- `app_volumes_manager` +- `appstack_volume` +- `array_manager` +- `blueprint` +- `business_continuity_data_protection` +- `cd` +- `cloud_computing` +- `collective_nsx_esg` +- `consumption_plane` +- `cpu` +- `datacenter` +- `datastore` +- `disk` +- `document` +- `edge_gateway` +- `endpoint` +- `ethernet_port` +- `external_networks` +- `flash_drive` +- `folder` +- `guest_agent_customization` +- `horizon` +- `infrastructure` +- `key` +- `keyboard` +- `laptop` +- `log_files` +- `logical_distribution` +- `logical_firewall` +- `machine` +- `memory` +- `monitor` +- `mouse` +- `mxgraph.vvd` +- `networking` +- `networks` +- `nfvo` +- `nsx` +- `nsx_controller` +- `nsx_dashboard` +- `nsx_edge_and_load_balancer` +- `nsx_esg` +- `nsx_manager` +- `nsx_public_cloud_gateway` +- `on_demand_self_service` +- `ovdc_networks` +- `pair_sites` +- `phone` +- `physical_network_adapter` +- `physical_storage` +- `physical_upstream_router` +- `platform_services_controller` +- `protection_group` +- `protection_group_config` +- `recovery_plan` +- `resource_pool` +- `scsi_controller` +- `security` +- `server` +- `service_provider_cloud_environment` +- `site` +- `site_container` +- `site_recovery` +- `site_recovery_functional_icon` +- `ssd` +- `storage` +- `switch` +- `telco_network` +- `template` +- `tenant_key` +- `user_group` +- `vapp_network` +- `vcenter_server` +- `vcloud_director` +- `virtual_appliance` +- `virtual_machine` +- `virtual_switch` +- `vm_group` +- `vnf_m` +- `volumes_agent` +- `vpn` +- `vrealize_automation` +- `vrealize_log_insight` +- `vrealize_operations` +- `vrealize_orchestrator` +- `vrops` +- `vsan` +- `vshield` +- `vxlan` +- `wavefront` +- `web_browser` +- `wi_fi` +- `writable_volume` diff --git a/docs/shape-libraries/webicons.md b/docs/shape-libraries/webicons.md new file mode 100644 index 0000000..c7f9271 --- /dev/null +++ b/docs/shape-libraries/webicons.md @@ -0,0 +1,194 @@ +# webicons + +**Type:** mxgraph shapes +**Prefix:** `mxgraph.webicons` + +## Usage + +```xml + + + +``` + + + +## Shapes (177) + +- `adfty` +- `adobe_pdf` +- `aim` +- `allvoices` +- `amazon` +- `amazon_2` +- `android` +- `apache` +- `apple` +- `apple_classic` +- `arduino` +- `ask` +- `atlassian` +- `audioboo` +- `aws` +- `aws_s3` +- `baidu` +- `bebo` +- `behance` +- `bing` +- `bitbucket` +- `blinklist` +- `blogger` +- `blogmarks` +- `bookmarks.fr` +- `box` +- `buddymarks` +- `buffer` +- `buzzfeed` +- `chrome` +- `citeulike` +- `confluence` +- `connotea` +- `dealsplus` +- `delicious` +- `designfloat` +- `deviantart` +- `digg` +- `diigo` +- `dopplr` +- `drawio1` +- `drawio2` +- `dribbble` +- `dropbox` +- `dropbox2` +- `drupal` +- `dzone` +- `ebay` +- `edmodo` +- `evernote` +- `facebook` +- `fancy` +- `fark` +- `fashiolista` +- `feed` +- `feedburner` +- `flickr` +- `folkd` +- `forrst` +- `fotolog` +- `freshbump` +- `fresqui` +- `friendfeed` +- `funp` +- `fwisp` +- `gabbr` +- `gamespot` +- `github` +- `gmail` +- `google` +- `google_drive` +- `google_hangout` +- `google_photos` +- `google_play` +- `google_play_light` +- `google_plus` +- `grooveshark` +- `hatena` +- `html5` +- `identi.ca` +- `instagram` +- `instapaper` +- `ios` +- `jamespot` +- `java` +- `joomla` +- `jquery` +- `json` +- `json_2` +- `last.fm` +- `linkagogo` +- `linkedin` +- `livejournal` +- `mail.ru` +- `meetup` +- `meneame` +- `messenger` +- `messenger_2` +- `messenger_3` +- `mind_body_green` +- `mongodb` +- `mxgraph.webicons` +- `myspace` +- `n4g` +- `netlog` +- `netvibes` +- `netvouz` +- `networkedblogs` +- `newsvine` +- `odnoklassniki` +- `oknotizie` +- `onedrive` +- `oracle` +- `paypal` +- `phone` +- `phonefavs` +- `pinterest` +- `plaxo` +- `playfire` +- `plurk` +- `pocket` +- `protopage` +- `readernaut` +- `reddit` +- `rss` +- `scoopit` +- `scribd` +- `segnalo` +- `sina` +- `sitejot` +- `skype` +- `skyrock` +- `slashdot` +- `sms` +- `socialvibe` +- `society6` +- `sonico` +- `soundcloud` +- `sourceforge` +- `sourceforge_2` +- `spring.me` +- `stackexchange` +- `stackoverflow` +- `startaid` +- `startlap` +- `steam` +- `stumbleupon` +- `stumpedia` +- `technorati` +- `translate` +- `tumblr` +- `tunein` +- `twitter` +- `two` +- `typepad` +- `viadeo` +- `viber` +- `viddler` +- `vimeo` +- `virb` +- `vkontakte` +- `wakoopa` +- `weheartit` +- `whatsapp` +- `wix` +- `wordpress` +- `wordpress_2` +- `xanga` +- `xerpi` +- `xing` +- `yahoo` +- `yahoo_2` +- `yammer` +- `yandex` +- `yelp` +- `yoolink` +- `youmob` diff --git a/lib/system-prompts.ts b/lib/system-prompts.ts index 2f1bc3b..e2afa20 100644 --- a/lib/system-prompts.ts +++ b/lib/system-prompts.ts @@ -48,12 +48,19 @@ description: Continue generating diagram XML when display_diagram was truncated parameters: { xml: string // Continuation fragment (NO wrapper tags like or ) } +---Tool4--- +tool name: get_shape_library +description: Get shape/icon library documentation. Use this to discover available icon shapes (AWS, Azure, GCP, Kubernetes, etc.) before creating diagrams with cloud/tech icons. +parameters: { + library: string // Library name: aws4, azure2, gcp2, kubernetes, cisco19, flowchart, bpmn, etc. +} ---End of tools--- IMPORTANT: Choose the right tool: - Use display_diagram for: Creating new diagrams, major restructuring, or when the current diagram XML is empty - Use edit_diagram for: Small modifications, adding/removing elements, changing text/colors, repositioning items - Use append_diagram for: ONLY when display_diagram was truncated due to output length - continue generating from where you stopped +- Use get_shape_library for: Discovering available icons/shapes when creating cloud architecture or technical diagrams (call BEFORE display_diagram) Core capabilities: - Generate valid, well-formed XML strings for draw.io diagrams @@ -84,7 +91,7 @@ Note that: - When artistic drawings are requested, creatively compose them using standard diagram shapes and connectors while maintaining visual clarity. - Return XML only via tool calls, never in text responses. - If user asks you to replicate a diagram based on an image, remember to match the diagram style and layout as closely as possible. Especially, pay attention to the lines and shapes, for example, if the lines are straight or curved, and if the shapes are rounded or square. -- Note that when you need to generate diagram about aws architecture, use **AWS 2025 icons**. +- For cloud/tech diagrams (AWS, Azure, GCP, K8s), call get_shape_library first to discover available icon shapes and their syntax. - NEVER include XML comments () in your generated XML. Draw.io strips comments, which breaks edit_diagram patterns. When using edit_diagram tool: diff --git a/package-lock.json b/package-lock.json index 390fde3..43420f1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "next-ai-draw-io", - "version": "0.4.2", + "version": "0.4.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "next-ai-draw-io", - "version": "0.4.2", + "version": "0.4.3", "license": "Apache-2.0", "dependencies": { "@ai-sdk/amazon-bedrock": "^3.0.70", @@ -63,7 +63,7 @@ }, "devDependencies": { "@anthropic-ai/tokenizer": "^0.0.4", - "@biomejs/biome": "2.3.8", + "@biomejs/biome": "^2.3.8", "@tailwindcss/postcss": "^4", "@tailwindcss/typography": "^0.5.19", "@types/node": "^20", diff --git a/package.json b/package.json index 3cd3165..967a970 100644 --- a/package.json +++ b/package.json @@ -73,7 +73,7 @@ }, "devDependencies": { "@anthropic-ai/tokenizer": "^0.0.4", - "@biomejs/biome": "2.3.8", + "@biomejs/biome": "^2.3.8", "@tailwindcss/postcss": "^4", "@tailwindcss/typography": "^0.5.19", "@types/node": "^20",